Untuk mengenkripsikan plaintext, kita membutuhkan sebuah tabel viginere yang berisi alfabet yang dituliskan dalam 26 baris, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 kemungkinan Caesar cipher. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang.
Gambar 1. Tabel Viginere
Misalnya, plaintext yang hendak disandikan adalah "Sukses Besar" dan kunci "apel". Maka kita buang terlebih dahulu spasi pada plaintext, dan mengulang-ulang kunci hingga jumlah hurufnya sama menjadi:
plaintext : suksesbesar
kunci : victoryvict
Untuk mengenkripsi plaintext diatas caranya :
- Ambil huruf-1 plaintext yaitu "s" dan tarik 1 kolom "s" lurus pada tabel viginere, kemudian ambil huruf-1 kunci yaitu "v" dan kita tarik 1 baris lurus sehingga memotong kolom sebelumnya. maka ciphertext untuk huruf pertama adalah "n".
- Ambil huruf-2 plaintext yaitu "u" dan tarik 1 kolom "u" lurus pada tabel viginere, kemudian ambil huruf-2 kunci yaitu "i" dan taris 1 baris lurus sehingga memotong kolom sebelumnya, maka ciphertext untuk huruf kedua adalah "c".
- dst
Keuntungan Viginere cipher dibanding Caesar cipher, adalah lebih aman dari serangan Analisis Frekuensi.
Sedangkan untuk dekripsinya proses yang kita lakukan adalah sebaliknya contoh:
- Ambil huruf pertama kunci yaitu "v" kemudian cari huruf ciphertext pertama yaitu "n", maka plaintext nya merupakan kolom yang ditempati huruf "n" yaitu "s".
- dst
Referensi:
http://id.wikipedia.org/wiki/Sandi_Vigenere
No comments:
Post a Comment