Sandi Vigenère merupakan pengembangan dari sandi Caesar. Pada sandi Caesar, setiap huruf teks terang digantikan dengan huruf lain yang memiliki perbedaan tertentu pada urutan alfabet. Misalnya pada sandi Caesar dengan geseran 3, A menjadi D, B menjadi E and dan seterusnya. Sandi Vigenère terdiri dari beberapa sandi Caesar dengan nilai geseran yang berbeda.
Untuk menyandikan suatu pesan, digunakan sebuah tabel alfabet yang disebut tabel Vigenère. Tabel Vigenère berisi alfabet yang dituliskan dalam 26 baris atau lebih, masing-masing baris digeser satu urutan ke kiri dari baris sebelumnya, membentuk ke-26 atau lebih kemungkinan sandi Caesar. Setiap huruf disandikan dengan menggunakan baris yang berbeda-beda, sesuai kata kunci yang diulang.
Gambar Tabel Sandi Vigenere
Contoh kasus :
Enkripsi | |
---|---|
Jumlah Data Huruf | : a-z index 0-25 jumlah 26 |
Pesan | : roni |
Kunci | : iron |
Chiper | : zfbv |
Rumus Enkripsi :
Ci = Pi + Ki
Jika Ci < Jumlah data huruf maka : Ci ,
jika Ci > Jumlah data huruf maka : ( Ci – Jumlah data huruf ).
Perhitungan :
index pesan : r = 17, o = 14, n = 13, i = 8.
index kunci : i =8, r = 17, o = 14, n = 13.
C0 (r) = 17 + 8 =25
25 < 26 maka C0 = 25
C1 (o) = 14 +17 = 31
C1 > 26 maka C1 = 31 – 26 = 5
C2 (n) = 13 + 14 = 27
27 > 26 maka C2 = 27 – 26 = 1
C3 (i) = 8 + 13 =21
21 < 26 maka C3 = 21
Maka kita dapatkan chiper dari pesan tersebut : 25 5 1 21. Maka 25 : z, 5 : f, 1 : b, 21 : v.
Maka enkripsi dari roni adalah zfbv.