• Tidak ada hasil yang ditemukan

BAB 2 LANDASAN TEORI. Plaintext Ciphertext Plaintext Enkripsi. Dekripsi. Gambar 2.1 Skema proses enkripsi dan dekripsi. Universitas Sumatera Utara

N/A
N/A
Protected

Academic year: 2021

Membagikan "BAB 2 LANDASAN TEORI. Plaintext Ciphertext Plaintext Enkripsi. Dekripsi. Gambar 2.1 Skema proses enkripsi dan dekripsi. Universitas Sumatera Utara"

Copied!
23
0
0

Teks penuh

(1)

2.1. Kriptografi

2.1.1. Definisi Kriptografi

Kriptografi berasal dari bahasa yunani, menurut bahasa dibagi menjadi dua yaitu kripto dan graphia, kripto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut teminologinya kriptografi adalah ilmu dan seni untuk menjaga keamanan pesan (message) ketika pesan di kirim dari suatu tempat ketempat yang lain. Kriptografi adalah ilmu atau metode yang memungkinkan informasi yang akan dikirim dalam bentuk aman sehingga dengan cara ini orang yang dapat memperoleh informasi ini adalah penerima pesan yang ditujukan (Purnama & Rohayani, 2015).

Menurut Singh (2015), kriptografi adalah transformasi pesan biasa untuk membuat pesan tersebut aman dan kebal dari penyusup. Kriptografi dilakukan dengan cara menyandikannya ke dalam bentuk yang tidak dapat dimengerti lagi maknanya sehingga pesan atau kunci ataupun keduanya tetap terjaga kerahasiaannya dari penyadap (attacker).

Pesan asli dikenal sebagai plaintext sementara pesan berkode disebut ciphertext. Kriptografi pada dasarnya terdiri dari dua proses, yaitu proses enkripsi dan proses dekripsi. Enkripsi adalah proses encoding pesan atau informasi dalam sedemikian rupa sehingga penyadap atau hacker tidak bisa membacanya, tapi bisa dibaca oleh pihak yang berwenang. Enkripsi adalah cara yang paling efektif untuk mencapai keamanan data. Dekripsi adalah proses mengubah data yang telah dienkripsi kembali ke bentuk terenkripsinya (Devipriya & Sasikala, 2015). Secara umum, proses enkripsi dan dekripsi dapat digambarkan sebagai berikut :

Plaintext Ciphertext Plaintext

Gambar 2.1 Skema proses enkripsi dan dekripsi

(2)

Pada Gambar 2.1 ditunjukkan skema proses enkripsi dan dekripsi. Pada proses enkripsi, dapat dilihat bahwa masukan berupa plaintext akan masuk ke dalam blok enkripsi dan keluarannya akan berupa ciphertext, kemudian ciphertext akan masuk ke dalam blok dekripsi dan keluarannya akan kembali menjadi plaintext semula.

2.1.2. Tujuan Kriptografi

Kriptografi tidak hanya bertujuan memberikan kerahasiaan dalam telekomunikasi, namun juga bertujuan untuk memberikan layanan keamanan sebagai berikut:

1. Confidentiality : Menjamin bahwa data tersebut hanya bisa diakses oleh pihak-pihak tertentu saja.

2. Authentication : Baik pada saat mengirim atau menerima informasi, kedua belah pihak perlu mengetahui bahwa pengirim dari pesan tersebut adalah orang yang sebenarnya seperti yang diklaim. Dengan kata lain, penerima pesan dapat memastikan keaslian pengirimnya.

3. Integrity : Tuntutan ini berhubungan dengan jaminan setiap pesan yang dikirim pasti sampai pada penerimanya tanpa ada bagian dari pesan tersebut yang diganti, diduplikasi, dirusak, diubah urutannya, dan ditambahkan.

4. Nonrepudiation : Mencegah pengirim maupun penerima mengingkari bahwa mereka telah mengirimkan atau menerima suatu pesan/informasi. Jika sebuah pesan dikirim, penerima dapat membuktikan bahwa pesan tersebut memang dikirim oleh pengirim yang tertera.

2.1.3. Elemen Kriptografi

Berikut merupakan elemen-elemen kriptografi, antara lain : 1. Pesan, Plaintext dan Ciphertext.

Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Pesan disebut juga dengan plaintext. Agar pesan tidak bisa dimengerti maknanya oleh pihak lain, maka pesan tersebut perlu disandikan ke bentuk lain yang tidak dapat dimengerti maknanya. Bentuk pesan yang tersandi itulah yang disebut ciphertext.

(3)

2. Pengirim dan Penerima

Pengirim adalah entitas yang akan mengirim pesan kepada entitas lainnya. Penerima adalah entitas yang menerima pesan tersebut. Entitas di sini dapat berupa orang, mesin (komputer), kartu kredit dan sebagainya.

3. Enkripsi dan dekripsi

Proses menyandikan plaintext menjadi ciphertext disebut enkripsi. Sedangkan proses mengembalikan ciphertext menjadi plaintext disebut dekripsi.

4. Cipher

Algoritma kriptografi disebut juga cipher yaitu aturan untuk enciphering dan deciphering, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Konsep matematis yang mendasari algoritma kriptografi adalah relasi antara dua buah himpunan yaitu himpunan yang berisi elemen-elemen plaintext dan himpunan yang berisi ciphertext. Enkripsi dan dekripsi adalah fungsi yang memetakan elemen-elemen antara kedua himpunan tersebut.

5. Sistem kriptografi

Sistem kriptografi merupakan kumpulan yang terdiri dari algoritma kriptografi, semua plaintext dan ciphertext yang mungkin dan kunci.

6. Penyadap

Penyadap adalah orang yang berusaha mencoba menangkap pesan selama ditransmisikan dengan tujuan mendapatkan informasi sebanyak-banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud untuk memecahkan ciphertext.

7. Kriptanalisis dan kriptologi

Kriptanalisis (cryptanalysis) adalah ilmu dan seni untuk memecahkan ciphertext menjadi plaintext tanpa mengetahui kunci yang digunakan. Pelakunya disebut kriptanalis. Kriptologi adalah studi mengenai kriptografi dan kriptanalisis.

2.1.4. Jenis-jenis Algoritma Kriptografi

Secara umum ada dua jenis kriptografi berdasarkan kuncinya, yaitu Algoritma Simetris dan Algoritma Asimetris.

2.1.4.1. Algoritma Simetris

Algoritma simetris (symmetric algorithm) yang disebut juga sebagai algoritma konvensional adalah suatu algoritma yang menggunakan kunci enkripsi yang sama

(4)

dengan kunci dekripsinya. Disebut algoritma konvensional karena algoritma ini adalah jenis algoritma yang biasa digunakan orang sejak berabad-abad yang lalu. Algoritma simetrik sering juga disebut sebagai algoritma kunci rahasia, algoritma kunci tunggal, atau algoritma satu kunci, dan mengharuskan pengirim dan penerima menyetujui suatu kunci tertentu sebelum mereka dapat berkomunikasi dengan aman. Keamanan algoritma simetri tergantung pada kunci, membocorkan kunci berarti bahwa orang lain dapat mengenkrip dan mendekrip pesan (Kurniawan, 2004). Skema algoritma simetris ini ditunjukkan pada gambar berikut :

Plainteks Cipherteks Plainteks

Sender Receiver

Gambar 2.2 Skema Algoritma Simetris

Pada Gambar 2.2 ditunjukkan skema algoritma simetris, yang mana dalam gambar tersebut dilakukan proses enkripsi dan dekripsi dengan menggunakan kunci yang sama. Sebelum melakukan pengiriman pesan, pengirim dan penerima harus memilih suatu kunci tertentu yang sama untuk dipakai bersama, dan kunci ini haruslah rahasia bagi pihak yang tidak berkepentingan sehingga algoritma ini disebut juga algoritma kunci rahasia (secret-key algorithm).

a. Kelebihan Algoritma Simetris :

1. Kecepatan operasi enkripsi dan dekripsi lebih tinggi bila dibandingkan dengan algoritma asimetris.

2. Karena kecepatannya yang cukup tinggi, maka dapat digunakan pada sistem real-time.

3. Ukuran kunci simetri relatif lebih pendek. b. Kekurangan Algoritma Simetris :

1. Untuk tiap pengiriman pesan dengan pengguna yang berbeda dibutuhkan kunci yang berbeda juga, sehingga akan terjadi kesulitan dalam manajemen kunci tersebut.

Kunci

(5)

2. Kunci harus sering diubah, setiap kali melakasanakan komunikasi demi keamanan pesan.

2.1.4.2. Algoritma Asimetris

Algoritma asimetris (asymmetric algorithm) adalah suatu algoritma dimana kunci enkripsi yang digunakan tidak sama dengan kunci dekripsi. Pada algoritma ini menggunakan dua kunci yakni kunci publik (public key) dan kunci privat (private key).

Kunci publik disebarkan secara umum sedangkan kunci privat disimpan secara rahasia oleh si pengguna. Walau kunci publik telah diketahui namun akan sangat sukar mengetahui kunci privat yang digunakan. Sebarang orang dapat menggunakna kunci enkripsi tersebut untuk mengenkrip pesan, namun hanya orang tertentu (calon penerima pesan sekaligus pemilik kunci dekripsi yang merupakan pasangan kunci publik) yang dapat melakukan dekripsi terhadap pesan tersebut. Dalam sistem ini, kunci enkripsi sering disebut kunci publik, sementara kunci dekripsi sering disebut kunci privat. Skema algoritma asimetris ini ditunjukkan pada gambar berikut :

Plainteks Cipherteks Plainteks

Sender Receiver

Gambar 2.3 Skema Algoritma Asimetris

Pada Gambar 2.3 ditunjukkan skema algoritma asimetris, yang mana dalam gambar tersebut dilakukan proses enkripsi dengan menggunakan kunci publik dan proses dekripsi dengan menggunakan kunci rahasia. Kriptografi asimetri ini dapat dianalogikan seperti kotak surat yang terkunci dan memiliki lubang untuk memasukan surat. Setiap orang dapat memasukkan surat ke dalam kotak surat tersebut, tetapi hanya pemilik surat yang memiliki kunci dan yang dapat membuka kotak surat tersebut. Kunci publik dapat dikirim ke penerima melalui saluran yang sama dengan saluran yang digunakan untuk mengirim pesan, tidak perlu takut, karena pihak yang

Enkripsi

Kunci Publik Kunci Rahasia Dekripsi

(6)

tidak berkepentingan tidak akan dapat mendekripsi pesan tersebut, karena tidak memiliki kunci privat.

a. Kelebihan algoritma asimetris :

1. Masalah keamanan pada distribusi kunci dapat lebih baik.

2. Manajemen kunci yang lebih baik karena jumlah kunci yang lebih sedikit. 3. Hanya kunci privat yang perlu dijaga kerahasiaanya oleh setiap entitas yang

berkomunikasi. Tidak ada kebutuhan mengirim kunci privat sebagaimana pada kunci simetri.

4. Pasangan kunci privat dan kunci publik tidak perlu diubah dalam jangka waktu yang sangat lama.

b. Kekurangan algoritma asimetris :

1. Kecepatan proses enkripsi dan dekripsi lebih rendah bila dibandingkan dengan algoritma simetris.

2. Ukuran kunci yang digunakan lebih panjang dibandingkan dengan algoritma simetris.

3. Berapa pun panjangnya kunci publik telah diketahui kriptanalis sehingga untuk men-derive kunci privat hanya tinggal menunggu waktu saja.

2.2. Algoritma Vernam Cipher

Vernam Cipher merupakan algoritma kriptografi yang ditemukan oleh Mayor J. Maugborne dan G. Vernam pada tahun 1917. Algoritma Vernam Cipher diadopsi dari One Time Pad Cipher, dimana dalam hal ini karakter diganti dengan bit (0 atau 1). Dengan kata lain, Vernam Cipher merupakan versi lain dari One Time Pad Cipher.

Algoritma kriptografi vernam cipher merupakan algoritma kriptografi berjenis symmetric key. Kunci yang digunakan untuk melakukan enkripsi dan dekripsi menggunakan kunci yang sama. Untuk pesan biner, enkripsi OTP menggunakan operasi XOR antara setiap bit dari pesan dengan bit yang sesuai dengan kunci pribadi (Nagaraj, 2012). Pada metode ini plainteks diubah kedalam kode ASCII dan kemudian dikenakan operasi XOR terhadap kunci yang sudah diubah ke dalam kode ASCII (Sholeh & Hamokwarong, 2011).

Pada One Time Pad, tiap huruf kunci digunakan satu kali untuk satu pesan dan tidak digunakan kembali. Panjang stream karakter kunci sama dengan panjang pesan. One time pad berisi barisan karakter-karakter kunci yang dibangkitkan secara acak.

(7)

Satu pad hanya digunakan sekali saja untuk mengenkripsi pesan, setelah itu pad yang telah digunakan dihancurkan (makanya disebut satu kali pakai atau one time). Satu kali enkripsi hanya mungkin dilakukan jika kedua pengirim dan penerima berada dalam kepemilikan kunci yang sama. Oleh karena itu, kedua belah pihak harus saling bertukar kunci mereka sebelumnya. Ini berarti bahwa komunikasi yang aman diharapkan dan direncanakan dalam jangka waktu tertentu (Sharma & Gupta, 2013).

OTP akan aman sempurna bila aliran kunci K tidak dapat ditebak lawan dan tidak pernah digunakan lebih dari satu kali untuk mengenkrip data (Kurniawan, 2004). Proses enkripsi dan dekripsi algoritma vernam cipher dapat dilihat pada Gambar 2.4.

Plainteks Cipherteks Plainteks

Gambar 2.4 Proses Enkripsi dan Dekripsi Algoritma Vernam Cipher

Pada Gambar 2.4 ditunjukkan proses enkripsi dan dekripsi algoritma Vernam Cipher, yang mana plainteks di-XOR-kan dengan kunci menghasilkan cipherteks, lalu cipherteks tersebut di-XOR-kan kembali dengan kunci yang sama sehingga menghasilkan plainteks semula.

Secara umum, skenario algoritma Vernam Cipher adalah sebagai berikut : 1. Alice dan Bob bersepakat menggunakan sebuah kunci untuk mengenkripsi dan

mendekripsi pesan yang akan dikirim.

2. Kunci yang dihasilkan kemudian digunakan untuk mengenkripsi pesan dari Alice kepada Bob.

3. Bob mendekripsi pesan dari Alice dengan menggunakan kunci yang telah mereka sepakati sehingga pesan asli bisa terbaca.

Shannon membuktikan apabila sandi One Time Pad diterapkan secara benar maka sandi One Time Pad mencapai kerahasiaan sempurna (perfect secrecy). Kelemahan utama sandi One Time Pad adalah ketidakpraktisan. Kunci pada sandi One Time Pad memiliki panjang sama dengan panjang teks asli. Selain itu, kunci harus dapat diberikan ke pendekripsi secara aman. Jika kunci bocor, maka keamanan sandi One Time Pad runtuh (Sadikin, 2012).

XOR XOR

(8)

Berikut ini rumus enkripsi dan dekripsi Vernam Cipher : 𝐶 ≡ 𝑃  𝐾 ……….… (1) 𝑃 ≡ 𝐶  𝐾 ………. (2) Dimana : C = Cipherteks P = Plainteks K = Kunci Contoh :

Jika kita ingin mengenkripsi kata “AULYA” dan diketahui kuncinya yaitu “CINTA”. Maka proses enkripsi dan dekripsi yang dilakukan adalah sebagai berikut :

1. Pertama, ubah kata AULYA menjadi kode ASCII, kemudian kode ASCII tersebut diubah menjadi bilangan biner, maka diperoleh :

Karakter ASCII Notasi Biner

A 65 01000001

U 85 01010101

L 76 01001100

Y 89 01011001

A 65 01000001

Hal yang sama juga harus dilakukan pada kunci yang digunakan.

Karakter ASCII Notasi Biner

C 67 01000011

I 73 01001001

N 78 01001110

T 84 01010100

A 65 01000001

2. Setelah itu, enkripsi pesan dengan meng-XOR-kan plainteks dengan kunci, yaitu : P : 01000001 01010101 01001100 01011001 01000001

K : 01000011 01001001 01001110 01010100 01000001  C : 00000010 00011100 00000010 00001101 00000000

(9)

3. Setelah didapat cipherteksnya, maka selanjutnya pesan akan didekripsi dengan meng-XOR-kan cipherteks dengan kunci, yaitu :

C : 00000010 00011100 00000010 00001101 00000000 K : 01000011 01001001 01001110 01010100 01000001  P : 01000001 01010101 01001100 01011001 01000001

4. Dari hasil dekripsi di atas, maka diperoleh pesan sebenarnya, yaitu : Plainteks : 01000001 01010101 01001100 01011001 01000001 ASCII : 65 85 76 89 65 Karakter : A U L Y A

2.3. Three-Pass Protocol

Three-Pass Protocol merupakan suatu kerangka kerja yang memungkinkan pengirim bisa mengirim pesan terenkripsi ke penerima tanpa perlu mendistribusikan kunci ke penerima (Rahim & Ikhwan, 2015). Jadi, pengirim dan penerima mempunyai kunci masing-masing. Disebut Three-Pass Protocol karena pengirim dan penerima melakukan tiga tahap pertukaran untuk mengenkripsi pesan tersebut.

Protokol ini dikembangkan oleh Adi Shamir sekitar tahun 1980. Konsep dasar dari Three-Pass Protocol adalah bahwa masing-masing pihak memiliki kunci enkripsi pribadi dan kunci dekripsi pribadi. Kedua belah pihak secara independen menggunakan kunci untuk mengenkripsi pesan, dan kemudian untuk mendekripsi pesan (Oktaviana & Siahaan, 2016). Skema dari Three-Pass Protocol dapat dilihat pada Gambar 2.5.

(10)

Keterangan :

: kunci enkripsi pengirim : kunci enkripsi penerima : kunci dekripsi pengirim : kunci dekripsi penerima

Pada Gambar 2.5 ditunjukkan bahwa Three-Pass Protocol memiliki beberapa tahapan untuk dapat menyampaikan pesan itu dari pengirim kepada penerima. Berikut tahapannya :

a. Alice (pengirim pesan) memiliki kunci KA. Alice mengenkripsi pesan dengan kuncinya sendiri dan mengirimkan pesan terenkripsi (C1) kepada Bob (penerima pesan).

b. Bob (penerima pesan) memiliki kunci KB. Bob mengenkripsi pesan C1 dengan

kunci pribadi miliknya dan mengirim pesan yang telah dienkripsi lagi (C2) kepada

Alice.

c. Alice yang telah menerima C2 mendekripsi pesan tersebutdengan menggunakan kunci pribadi yang dimilikinya dan mengirim kembali pesan yang telah didekripsi (C3) kepada Bob.

d. Bob yang telah menerima C3 juga mendekripsi pesan tersebut dengan kunci pribadi yang dimilikinya sehingga didapatlah pesan asli (P) yang dikirim oleh Alice.

Sebagai contoh jika ingin mengenkripsi kata “AULYA”. Diketahui kunci pengirim yaitu KA = “citra”. Maka enkripsi tahap pertama dapat dilihat pada Tabel 2.1

berikut ini :

Tabel 2.1 Perhitungan Enkripsi Tahap Pertama

Plainteks ASCII Biner Kunci (KA) ASCII Biner C1 = (P  KA)

A 65 01000001 C 99 01100011 00100010

U 85 01010101 I 105 01100110 00110011

L 76 01001100 T 116 01110100 00111000

Y 89 01011001 R 114 01110010 00101011

(11)

Pada Tabel 2.1 ditunjukkan bahwa pada enkripsi tahap pertama dihasilkan cipherteks pertama (C1) yang nantinya akan digunakan untuk enkripsi tahap kedua.

Selanjutnya akan dihitung enkripsi tahap kedua. Kunci pihak penerima yaitu diketahui KB = “ilkom”. Perhitungan enkripsi tahap kedua ditunjukkan pada Tabel 2.2.

Tabel 2.2 Perhitungan Enkripsi Tahap Kedua

Cipherteks (C1) Kunci (KB) ASCII Biner C2 = (C1  KB)

00100010 i 105 01101001 01001011

00110011 l 108 01101100 01011111

00111000 k 107 01101011 01010011

00101011 o 111 01101111 01000100

00100000 m 109 01101101 01001101

Pada Tabel 2.2 ditunjukkan bahwa pada enkripsi tahap kedua dihasilkan cipherteks kedua (C2) yang nantinya akan digunakan untuk enkripsi tahap ketiga.

Selanjutnya dihitung enkripsi tahap ketiga. Hasil perhitungan enkripsi tahap ketiga dapat dilihat pada Tabel 2.3.

Tabel 2.3 Perhitungan Enkripsi Tahap Ketiga

Cipherteks (C2) Kunci (KA) ASCII Biner C3 = (C2  KA)

01001011 c 99 01100011 00101000

01011111 i 105 01100110 00111001

01010011 t 116 01110100 00100111

01000100 r 114 01110010 00110110

01001101 a 97 01100001 00101100

Pada Tabel 2.3 ditunjukkan bahwa pada enkripsi tahap ketiga dihasilkan cipherteks ketiga (C3) yang nantinya akan digunakan untuk tahap selanjutnya.

Selanjutnya pesan tersebut dapat didekripsi kembali menjadi pesan asli. Hasil perhitungan proses dekripsi dapat dilihat pada Tabel 2.4.

(12)

Tabel 2.4. Perhitungan Dekripsi Pesan Asli

Cipherteks (C3) Kunci (KB) Biner P = (C3  KB) Plainteks

00101000 I 01101001 01000001 A

00111001 L 01101100 01010101 U

00100111 K 01101011 01001100 L

00110110 O 01101111 01011001 Y

00101100 M 01101101 01000001 A

Pada Tabel 2.4 ditunjukkan bahwa hasil dekripsi sesuai dengan plainteks sebelum dienkripsi yaitu “AULYA”. Itu berarti penggunaan algoritma Vernam Cipher dalam Three-Pass Protocol memenuhi parameter keutuhan data.

2.4. Citra

Citra adalah representasi dari sebuah objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat analog, berupa sinyal-sinyal video, seperti gambar pada monitor televisi atau yang bersifat digital yang dapat langsung disimpan pada suatu pita magnetic. Citra merupakan salah satu bentuk multimedia yang berbentuk informasi visual. Citra memiliki beberapa jenis format, diantaranya yaitu JPG, PNG, Bitmap, GIF dan lain-lain. Diantara multimedia lainnya, citra sangat rentan untuk disalahgunakan seperti diduplikasi, dimodifikasi bahkan dipalsukan. Maka dari itu keamanan suatu citra sangat dibutuhkan agar tidak ada pihak yang dirugikan.

Citra digital adalah representasi dari sebuah citra dua dimensi sebagai sebuah kumpulan nilai digital yang disebut elemen gambar atau piksel. Berikut contoh citra 200 x 284 piksel.

Gambar 2.6 Citra 350 x 250 piksel 350 Piksel

250

P

(13)

Suatu citra dapat didefinisikan sebagai fungsi f(x,y) berukuran M baris dan N kolom, dengan x dan y adalah koordinat spasial dan amplitudo f di titik koordinat (x,y) dinamakan intensitas atau tingkat keabuan dari citra pada titik tersebut. Indeks baris dan kolom (x,y) dari sebuah pixel dinyatakan dalam bilangan bulat (Masya, 2016).

2.4.1.Piksel

Piksel adalah kata yang berasal dari singkatan Picture Elements. Sensor citra secara fisik (dua dimensi) dibuat dari rangkaian ribuan sel yang peka terhadap cahaya, tiap sel disebut piksel. Piksel adalah elemen terkecil yang menyusun citra dan mengandung nilai yang mewakili kecerahan dari sebuah warna pada sebuah titik tertentu, semakin banyak jumlah piksel semakin tajam pula gambar yang diperoleh.

Setiap piksel memiliki koordinat sesuai posisinya dalam citra. Koordinat ini biasanya dinyatakan dalam bilangan bulat positif, yang dapat dimulai dari 0 atau 1 tergantung pada sistem yang digunakan. Setiap piksel juga memiliki nilai berupa angka digital yang merepresentasikan informasi yang diwakili oleh piksel tersebut. Masing-masing piksel membawa informasi yang menentukan warna (hue), kekuatan warna tersebut (saturation) dan seberapa terang warna tersebut ditampilkan

(brightness). Berikut adalah contoh citra dengan resolusi yang berbeda, semakin

rendah tingkat resolusi piksel, semakin bisa kita melihat bagaimana piksel menyusun foto.

(a) 500 x 375 piksel (b) 100 x 75 piksel (c) 60 x 45 piksel

Gambar 2.7 Perbandingan ukuran piksel yang berbeda-beda

Pada Gambar 2.7, ketiga foto tersebut memiliki ukuran piksel yang berbeda-beda. Pada gambar 2.7. (a), kita masih belum bisa melihat sebuah piksel, semua tampak halus dan mulus. Namun dengan mengubah resolusi menjadi lebih kecil, seperti gambar 2.7 (b), kita mulai bisa melihat bagaimana piksel menyusun foto.

Dalam foto tersebut mulai terlihat kumpulan titik-titik yang berdekatan sehingga terlihat seperti membentuk sebuah gambar. Begitu juga dengan gambar 2.7 (c), pada

(14)

gambar ini susunan piksel lebih terlihat dari gambar sebelumnya, masing-masing kotak piksel mulai terlihat seperti susunan puzzle. Jadi, dapat disimpulkan bahwa semakin tinggi ukuran piksel, maka semakin tajam pula kualitas gambar yang diperoleh.

2.4.2.Jenis-jenis Warna pada Citra

Pada citra, ada beberapa jenis warna yang sering dijumpai saat melakukan proses pengolahan pada citra. Warna-warna yang umum digunakan antara lain citra biner (White & Black), citra grayscale, dan citra RGB (Red, Green, Blue).

2.4.2.1. Citra Biner (White & Black)

Citra biner (binary image) adalah citra dengan setiap piksel hanya dinyatakan dengan sebuah nilai dari dua kemungkinan (yaitu 0 dan 1). Nilai 0 menyatakan warna hitam dan nilai 1 menyatakan warna putih. Sehingga citra biner hanya memiliki 2 kemungkinan warna, yaitu hitam dan putih. Citra biner disebut juga dengan citra W&B (White & Black) atau citra monokrom.

Pembentukan citra biner memerlukan nilai batas keabuan yang akan digunakan sebagai nilai patokan. Piksel dengan derajat keabuan lebih besar dari nilai batas akan diberi nilai 1 dan sebaliknya piksel dengan derajat keabuan lebih kecil dari nilai batas akan diberi nilai 0. Fungsi dari binerisasi sendiri adalah untuk mempermudah proses pengenalan pola, karena pola akan lebih mudah terdeteksi pada citra yang mengandung lebih sedikit warna. Contoh citra biner ditunjukkan pada gambar 2.8.

Gradasi warna :

bit 0 = warna hitam bit 1 = warna putih

Gambar 2.8 Contoh citra biner

2.4.2.2. Citra Grayscale

Citra grayscale merupakan citra digital yang menangani gradasi warna hitam dan putih, yang tentu saja menghasilkan efek warna abu-abu. Pada jenis gambar ini, warna

(15)

dinyatakan dengan intensitas. Dalam hal ini, intensitas berkisar antara 0 sampai dengan 255. Nilai 0 menyatakan hitam dan nilai 255 menyatakan putih.

Citra grayscale berbeda dengan citra “hitam-putih”, dimana pada konteks komputer, citra hitam putih hanya terdiri atas 2 warna saja yaitu hitam dan putih saja. Pada citra grayscale warna bervariasi antara hitam dan putih, tetapi variasi warna diantaranya sangat banyak. Banyaknya warna tergantung pada jumlah bit yang disediakan di memori untuk menampung kebutuhan warna ini (Sutoyo, 2007).

Citra 2 bit mewakili 4 warna dengan gradasi warna berikut :

Citra 3 bit mewakili 8 warna dengan gradasi warna berikut :

Semakin besar jumlah bit warna yang disediakan di memori, semakin halus gradiasi warna yang terbentuk (Sutoyo, 2007). Contoh citra grayscale ditunjukkan pada gambar 2.9.

Gambar 2.9 Contoh citra grayscale

2.4.2.3. Citra Berwarna (RGB)

Citra berwarna atau biasa dinamakan citra RGB (Red, Green, Blue) merupakan citra digital yang menyajikan warna dalam bentuk komponen R (merah), G (hijau), dan B (biru). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna mempunyai gradasi sebanyak 255 warna. berarti setiap piksel mempunyai kombinasi warna sebanyak 28. 28. 28 = 224 = 16 juta warna lebih (Sutoyo, 2007).

Setiap piksel pada citra warna mewakili warna yang merupakan kombinasi dari ketiga warna dasar RGB. Setiap titik pada citra warna membutuhkan data sebesar

0 1 2 3

(16)

3 byte. Setiap warna dasar memiliki intensitas tersendiri dengan nilai minimum nol (0) dan nilai maksimum 255 (8 bit). Gambar warna berbasis RGB adalah representasi yang baik untuk menunjukkan karakteristik frekuensi, dimana warna yang berbeda mewakili frekuensi akustik yang berbeda. (Guo et al, 2013). Contoh citra RGB ditunjukkan pada gambar 2.10.

Gambar 2.10 Contoh citra RGB

2.4.3.Citra Bitmap

Citra bitmap adalah representasi dari citra grafis yang terdiri dari susunan titik (pixel) yang tersimpan sebagai suatu matriks, dimana elemen dari matriks tersebut merupakan informasi warna dari setiap piksel. (Masya, 2016). Nilai setiap piksel diawali oleh satu bit data (untuk gambar hitam putih) atau lebih (untuk gambar berwarna). Kerapatan titik-titik tersebut dinamakan resolusi, yang menunjukkan seberapa tajam gambar ini ditampilkan, ditunjukkan dengan jumlah baris dan kolom. Jumlah warna yang dapat disimpan ditentukan dengan satuan bit per piksel. Semakin besar ukuran bit-per-pixel dari suatu bitmap, semakin banyak pula jumlah warna yang dapat disimpan.

Format file bitmap terdiri atas susunan titik atau pixel yang berada pada memori komputer. Hal tersebut tentu membuat file ekstensi ini masih merupakan file asli untuk gambar dengan jenis gambar bitmap. Karakteristik lain dari bitmap yang juga penting adalah jumlah warna yang dapat disimpan dalam bitmap tersebut. Ini ditentukan oleh banyaknya bit yang digunakan untuk menyimpan setiap titik dari bitmap yang menggunakan satuan bpp (bit per pixel). Dalam Windows dikenal bitmap dengan 1, 4, 8, 16, dan 24 bit per pixel. Jumlah warna maksimum yang dapat disimpan dalam suatu bitmap adalah sebanyak 2n, dimana n adalah banyaknya bit yang digunakan untuk menyimpan satu titik dari bitmap.

(17)

Berikut contoh enkripsi dan dekripsi citra menggunakan algoritma Vernam Cipher dalam skema Three-Pass Protocol.

- Diketahui nilai RGB pixel (3,3) yaitu (26,8,95) dengan kunci pengirim (KA) :

00010101, maka proses perhitungan enkripsi dan dekripsi dapat dilihat dibawah ini :

Gambar 2.11 Piksel 3 x 3

1. Pertama ubah RGB Desimal ke Biner :

R G B

Desimal 26 8 95

Biner 00011010 00001000 01011111

Maka akan di dapat “00011010 00001000 01011111” sebagai plainteks (P). 2. Lalu plainteks (P) dienkripsi dengan kunci yang telah diketahui diatas sebagai

berikut :

Tabel 2.5 Proses Perhitungan Enkripsi Piksel Tahap Pertama

Plainteks(P) Kunci (KA) C1 = (P  KA) Desimal

00011010 00010101 00001111 15

00001000 00010101 00011101 29

01011111 00010101 01001010 74

Pada Tabel 2.5 ditunjukkan bahwa pada enkripsi piksel tahap pertama dihasilkan cipherteks yang nantinya akan digunakan untuk enkripsi piksel tahap kedua. Selanjutnya akan dihitung enkripsi piksel tahap kedua. Kunci pihak penerima yaitu diketahui KB = “00011101”. Perhitungan enkripsi tahap kedua ditunjukkan pada

Tabel 2.6.

(R G B) 26 8 95

(18)

Tabel 2.6 Perhitungan Enkripsi Piksel Tahap Kedua

Cipherteks (C1) Kunci (KB) C2 = (C1KB) Desimal

00001111 00011101 00010010 18

00011101 00011101 00000000 0

01001010 00011101 01010111 87

Pada Tabel 2.6 ditunjukkan bahwa pada enkripsi piksel tahap kedua dihasilkan cipherteks kedua (C2) yang nantinya akan digunakan untuk enkripsi piksel tahap

ketiga. Selanjutnya dihitung enkripsi piksel tahap ketiga. Hasil perhitungan enkripsi piksel tahap ketiga dapat dilihat pada Tabel 2.7.

Tabel 2.7 Perhitungan Enkripsi Piksel Tahap Ketiga

Cipherteks (C2) Kunci (KA) C3 = (C2KA) Desimal

00010010 00010101 00000111 7

00000000 00010101 00010101 21

01010111 00010101 01000010 66

Pada Tabel 2.7 ditunjukkan bahwa pada enkripsi piksel tahap ketiga dihasilkan cipherteks ketiga (C3) yang nantinya akan digunakan untuk tahap selanjutnya.

Selanjutnya pesan tersebut dapat didekripsi kembali menjadi pesan asli. Hasil perhitungan proses dekripsi dapat dilihat pada Tabel 2.4.

Tabel 2.8 Perhitungan Dekripsi Piksel Asli

Cipherteks (C3) Kunci (KB) P = (C3KB) Desimal

00000111 00011101 00011010 26

00010101 00011101 00001000 8

01000010 00011101 01011111 95

Pada Tabel 2.8 ditunjukkan bahwa hasil dekripsi piksel sesuai dengan piksel sebelum dienkripsi yaitu “26,8,95”. Itu berarti penggunaan algoritma Vernam Cipher dalam Three-Pass Protocol memenuhi parameter keutuhan data.

(19)

2.4.4. Perhitungan Kualitas Hasil Rekonstruksi Citra

Dalam suatu pengembangan dan pelaksanaan rekonstruksi citra diperlukan perbandingan antara citra hasil rekonstruksi dengan citra asli untuk mengukur kinerja prosedur perbaikan citra. Perhitungan yang dapat dilakukan adalah dengan menentukan Mean Squared Error (MSE) dan Peak Signal to Noise Ratio (PSNR).

2.4.4.1 Mean Squared Error (MSE)

Mean squared error (MSE) adalah nilai error kuadrat rata-rata antara citra cover (citra asli) dengan citra tersteganografi (citra yang dihasilkan) (Male et al, 2012). MSE dihitung dengan rata-rata intensitas kuadrat gambar asli (input) dan piksel gambar resultan (output) seperti berikut :

Keterangan :

M : panjang citra (dalam pixel) N : lebar citra (dalam pixel)

𝑓(𝑖,𝑗) : intensitas citra di titik (i,j) citra asli 𝑓’(𝑖,𝑗) : intensitas citra di titik (i,j) citra hasil

Berikut diberikan contoh dari perhitungan untuk Mean Square Error (MSE), yaitu :

Dengan contoh potongan matriks 2x2 dari citra asli dan citra rekonstruksi: Citra asli : Citra rekonstruksi:

Maka nilai dari MSE = 1 ((2-2)2+ (6-5)2 + (2-2)2 + (3-1)2)

4 = 1.25 2 5 2 1 2 6 2 3

(20)

Semakin rendah nilai Mean Square Error, maka kualitas citra yang dihasilkan akan semakin baik (Male et al, 2012).

2.4.4.2. Peak Signal to Noise Ratio (PSNR)

Peak Signal to Noise Ratio (PSNR) adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya derau yang berpengaruh pada sinyal tersebut (Male et al, 2012). Ukuran PSNR adalah perkiraan kualitas gambar yang direkonstruksi dibandingkan dengan gambar asli. Nilai PSNR yang lebih tinggi menyiratkan kemiripan yang lebih erat antara hasil rekonstruksi dan gambar asli. PSNR didefinisikan dengan persamaan berikut :

Dimana s adalah nilai maksimum dari pixel citra yang digunakan.

Berdasarkan contoh pada perhitungan Mean Squared Error sebelumnya, yaitu 1.25. Maka nilai PSNR dapat diselesaikan dengan perhitungan berikut.

= 47.161

2.5. Android

Android adalah sistem operasi yang didasarkan pada kernel Linux dan digunakan di banyak gadget yang berbeda, yaitu : ponsel, tablet, komputer, laptop, televisi, jam tangan dan perangkat lainnya (Saparkhojayev et al, 2013). Awalnya, sistem operasi ini dikembangkan oleh perusahaan yang sama Android Inc, yang kemudian dibeli oleh Google, dan kemudian menciptakan aliansi dalam perusahaan Open Handset Alliance (OHA), yang bertanggung jawab untuk mendukung dan pengembangan lebih lanjut dari platform. Sistem operasi ini bersifat open source sehingga para programmer dapat membuat aplikasi secara mudah (Nihe, 2015). Android merupakan sekumpulan software untuk perangkat berbasis mobile yang berisi Sistem Operasi, Middleware,

(21)

dan aplikasi berdaya guna. Google Inc sepenuhnya membangun Android dan menjadikannya bersifat terbuka (open source) agar para pengembang dapat menggunakan Android tanpa mengeluarkan biaya untuk lisensi dari Google dan dapat membangun Android tanpa adanya batasan-batasan.

Sejak diakuisisi oleh Google dan diterapkan ke dalam sebuah perangkat mobile, OS Android dikembangkan dengan kode yang dinamai berdasarkan nama dessert (pencuci mulut) dan diurut berdasarkan alfabet, seperti Cupcake (OS Android 1.5), Donut (OS Android 1.6), Eclair (OS Android 2.0 – 2.1), Froyo (OS Android 2.2 – 2.2.3), Gingerbread (OS Android 2.3–2.3.7), Honeycomb (OS Android 3.0 –3.2.6), Ice Cream Sandwich (OS Android 4.0–4.0.4), Jelly Bean (OS Android 4.1– 4.3), KitKat (OS Android 4.4+), Lollipop (OS Android 5.0) dan Marshmallow (OS Android 6.0). Android terkenal dengan logonya yang berbentuk robot berwarna hijau. Logo Android dapat dilihat pada Gambar 2.12.

Gambar 2.12 Logo Android

2.5.1. Kelebihan Android

Beberapa kelebihan Android sehingga sistem operasi ini sangat populer adalah sebagai berikut :

1. Bersifat open source karena berbasis linux, sehingga banyak developer yang ingin mengembangkan Android.

2. Android tergolong sistem yang fleksibel. Pengguna bisa mengombinasikan Apps, Folder, dan Widgets satu sama lain dan men-download interface lainnya di Android market.

3. Info bar-nya berguna bagi pengguna, misalnya untuk mengetahui aplikasi (app) yang aktif.

(22)

2.6. Penelitian yang Relevan

Berikut ini beberapa penelitian yang terkait dengan algoritma Vernam Cipher atau yang dikenal dengan Algoritma One-Time Pad :

1. Tasliyah Haramaini (2014) dalam tesis yang berjudul Algoritma One Time Pad pada Skema Three-Pass Protocol. Dalam tesis ini, beliau menyimpulkan bahwa, pada algoritma One Time Pad, lama waktu pemrosesan pesan teks dipengaruhi oleh panjang pesan teks dan panjang kunci. Semakin panjang pesan teks yang di proses maka waktu yang dibutuhkan akan semakin lama. Peneliti meningkatkan keamanan data dengan menambah panjang range bilangan prima yang akan diacak, semakin panjang range prime maka data akan semakin aman dan semakin sulit menebak perulangan kuncinya.

2. Sagar Chandrakar, Bhagya Shree Jain, dan Shrikant Tiwari (2014) dalam jurnal yang berjudul Implementation of One-Time Pad over Web. Dalam jurnal ini disimpulkan bahwa metode One Time Pad mencapai kerahasiaan sempurna untuk proses enkripsi, berdasarkan pengamatan karakteristik dan pendekatan pro dan kontra yang dianalisis. Perbandingan dengan pendekatan yang ada menunjukkan bahwa One Time Pad mampu melindungi privasi dan mengurangi situs pengguna Web dalam cara yang jauh lebih kuat.

3. Gustaf Prameswara (2012) dalam skripsi yang berjudul Implementasi Algoritma One Time Pad dan Knapsack Pada Kunci. Dalam skripsi ini, beliau menyimpulkan bahwa enkripsi plainteks dengan menggunakan Algoritma One Time Pad dapat melindungi informasi yang terdapat dalam file teks tersebut dan enkripsi kunci dengan menggunakan Algoritma Knapsack dapat melindungi kunci yang telah digunakan untuk mengamankan file teks tersebut. Beliau juga meneliti ukuran file teks hasil enkripsi dan dekripsi. Ukuran file teks hasil enkripsi akan bertambah besar, karena setiap karakter dari plainteks diganti menjadi beberapa digit angka. Namun ketika didekripsi kembali, file teks ini akan kembali ke ukurannya semula. 4. Muhammad Khoiruddin Harahap (2016) dalam jurnal yang berjudul Analisis

Perbandingan Algoritma Kriptografi Klasik Vigenere Cipher dan One Time Pad. Dalam jurnal ini disimpulkan bahwa algoritma Vigenere Cipher dan algoritma One Time Pad memiliki rumus yang sama dalam enkripsi dan dekripsi. Perbedaan kedua algoritma ini terletak pada deretan kunci yang digunakan. Algoritma Vigenere Cipher menggunakan kunci yang selalu berulang sepanjang pesan yang

(23)

akan dienkripsi, sedangkan algoritma One Time Pad menggunakan kunci yang benar-benar acak dan tidak memiliki pola tertentu, dimana ukuran panjang kuncinya juga sepanjang pesan yang akan dienkripsi. Dari segi keamanan, algoritma One Time Pad lebih sulit untuk ditembus oleh para kriptanalis. Kunci acak yang digunakan oleh algoritma One Time Pad membuat algoritma ini memiliki tingkat keamanan yang sempurna.

5. Zaeniah & Bambang Eka Purnama (2015) dalam jurnal yang berjudul An Analysis of Encryption and Decryption Application by Using One Time Pad Algorithm. Dalam jurnal ini disimpulkan bahwa aplikasi yang menerapkan algoritma One Time Pad ini dapat melindungi data dengan benar. Aplikasi ini dapat membantu pengguna untuk menyimpan data dan informasi dari orang-orang yang tidak memiliki kewenangan. Aplikasi ini juga dapat mengenkripsi dan mendekripsi data dalam berbagai format file dan ukuran file tidak berubah saat melakukan proses enkripsi dan dekripsi dokumen.

Gambar

Gambar 2.1 Skema proses enkripsi dan dekripsi
Gambar 2.2  Skema Algoritma Simetris
Gambar 2.3  Skema Algoritma Asimetris
Gambar 2.4  Proses Enkripsi dan Dekripsi Algoritma Vernam Cipher
+7

Referensi

Dokumen terkait

Hasil penelitian menunjukkan bahwa: (1) ada perbedaan motivasi belajar siswa yang dibelajarkan dengan praktikum dan demonstrasi dalam pembelajaran inkuiri

1. Peserta didik belum terlibat dalam proses pembelajaran, sehingga materi yang diberikan menjadi sulit dipahami oleh siswa dan mengakibatkan hasil belajar

Dari hasil penelitian diatas dapat disimpulkan bahwa optimalisasi bimbingan dan konseling yang diberikan oleh guru BK, untuk memberikan bimbingan terhadap siswa

Untuk menemukan hubungan pola asuh orang tua, pergaulan teman sebaya dan media televisi terhadap karakter siswa di SMP Negeri 25 Purworejo, dengan unsur pokok kajian seperti

Sedangkan penelitian yang dilakukan oleh (Trilaksani, 2012) kadar lemak paling rendah yang dihasilkan dari gelatin kulit ikan kakap merah ini menggunakan larutan asam asetat

ditandai dengan redaksi-redaksi hadis mereka yang mengindikasikan ketidakpercayaan kaum Syi’ah Imamiyah dengan keotentikan al-Qur’an, Rukun Iman yang berbeda, adanya

Dilihat dari Praktek Konsinyasi Emas di Pegadaian Syariah Ngabean, praktek konsinyasi emas di Pegadaian Syariah cabang Ngabean merupakan layanan titip jual emas di

SURYA PRATAMA WIJAYA KUSUMA SLEMAN 29-12-2003 Laki-laki Tidak Kawin Cucu menganggur... SARWITI SLEMAN 31-12-1930 Laki-laki Nikah Kepala