One Time Pad OTP

Tabel 2.1 Hasil pembangkitan bilangan acak dengan metode LCG n � �−1 a b �. � �−1 + � m � � = �. � �−1 + � mod m 1 2 13 7 33 11 2 13 7 7 11 7 3 7 13 7 98 11 10 4 10 13 7 137 11 5 5 5 13 7 72 11 6 6 6 13 7 85 11 8 7 8 13 7 111 11 1 8 1 13 7 20 11 9 9 9 13 7 124 11 3 10 3 13 7 46 11 2

2.10 One Time Pad OTP

One Time Pad OTP ditemukan pada tahun 1917 oleh G. Vernam dan Major Joseph Mauborgne. OTP sering disebut “Vernam Cipher”. OTP merupakan algoritma yang relatif gampang untuk dipelajari dan sudah dinyatakan oleh para ahli kriptografi sebagai “perfect encryption algorithm”. [3] sebelumnya pernah melakukan penelitian tentang penggunaan algoritma OTP untuk sistem pengamanan access database server. Cipher yang tidak dapat dipecahkan dikatakan memiliki tingkat kerahasiaan yang sempurna perfect secrecy. Satu-satunya algoritma kriptografi sempurna, aman dan tidak dapat dipecahkan adalah One Time Pad [8]. Sistem cipher One Time Pad ini tidak dapat dipecahkan karena barisan kunci acak yang ditambahkan ke pesan plaintext yang tidak acak menghasilkan ciphertext yang seluruhnya acak serta panjang kunci harus sama dengan panjang plaintext. Beberapa barisan kunci yang digunakan untuk mendekripsi ciphertext mungkin menghasilkan pesan-pesan plaintext yang mempunyai makna, sehingga kriptanalis tidak punya cara untuk menentukan plaintext mana yang benar. Meskipun One Time UNIVERSITAS SUMATERA UTARA Pad merupakan cipher yang sempurna aman, namun faktanya ia tidak digunakan secara universal dalam aplikasi kriptografi sebagai satu-satunya sistem cipher yang tidak dapat dipecahkan hanya sedikit sistem komunikasi yang menggunakan OTP. Malahan orang masih tetap menggunakan sistem cipher yang dapat dipecahkan. Alasannya adalah dari segi kepraktisan, yaitu karena panjang kunci harus sama dengan panjang pesan, maka One Time Pad hanya cocok untuk pesan berukuran kecil.

2.10.1 Proses Enkripsi dan Dekripsi

Prinsip enkripsi pada algoritma ini adalah dengan mengkombinasikan masing-masing karakter pada plaintext dengan satu karakter pada kunci. Oleh karena itu, panjang kunci harus sama dengan panjang plaintext. Enkripsi dapat dinyatakan sebagai penjumlahan modulo 256 menggunakan kode ASCII 8 bit dari satu karakter plaintext dengan satu karakter kunci OTP : c i = p i + k i mod 256 2.2 Dalam hal ini, p i adalah plaintext ke-i, k i adalah kunci ke-i, dan c i adalah huruf ciphertext ke-i. Panjang kunci sama dengan panjang plaintext, sehingga tidak ada kebutuhan mengulang penggunaan kunci selama proses enkripsi. Setelah pengirim mengenkripsikan pesan dengan kunci, ia menghancurkan kunci tersebut. Penerimaan pesan menggunakan kunci yang sama untuk mendekripsikan karakter-karakter ciphertext menjadi karakter-karakter plaintext dengan persamaan : p i = c i - k i mod 256 2.3 Sebagai contoh : Sebuah huruf plaintext ‘B’ akan dienkripsi dengan menggunakan kunci ‘I’ kunci ini masih dipilih sembarang, karena belum menggunakan metode pembangkit bilangan acak, untuk sistem yang akan dibuat selanjutnya, kunci yang terpilih sudah menggunakan metode LCG seperti yang sudah UNIVERSITAS SUMATERA UTARA dibahas pada subbab sebelumnya, maka akan menghasilkan sebuah huruf ciphertext sebagai berikut: Plaintext : B 66 Kunci : I 73 Plaintext + kunci : 139 Plaintext + kunci mod 256 : 139 ‹ Untuk mendekripsikannya, akan diproses sebaliknya, yaitu : Ciphertext : ‹ 139 Kunci : I 73 Ciphertext - kunci : 66 Ciphertext - kunci mod 256 : 66 B UNIVERSITAS SUMATERA UTARA BAB 3 ANALISIS DAN PERANCANGAN SISTEM

3.1 Analisis Algoritma One Time Pad