Pada gambar 3.2 dapat kita lihat alur dari plaintext menjadi chipertext masih sama tetapi hanya terjadi perubahan pada isi proses enkripsinya dimana
pada proses enkripsinya sudah ada perubahan dimana yang sebelumnya hanya enkripsi vigenere tetapi pada gambar 3.2 sudah ada penambahan modifikasi
Fibonacci .
3.3 Perancangan Proses
Pada bagian ini akan dijelaskan bagaimana proses pembuatan sebuah aplikasi chipertext generator menggunakan algoritma vigenere berbasis
modifikasi Fibonacci.
3.3.1 Proses Modifikasi Fibonacci
Sebenarnya penggunaan deret Fibonacci pada sebuah aplikasi enkripsi akan mudah diketahui karena deret Fibonacci merupakan sebuah deretan yang
tidak asing bagi tiap orang. Oleh sebab itu kita lakukan modifikasi pada rumusan deret Fibonacci, berikut ini merupakan rumus untuk mencari deretan ke-n dari
sebuah deret Fibonacci :
Fn = F n – 1 + F n – 2
Namun jika algoritma vigenere dimodifikasi dengan rumus fibonacci yang demikian saja maka akan mudah untuk dikenali, karena orang pasti bisa menebak
modifikasi apa yang digunakan pada algoritma vigenere tersebut. Sehingga plaintext
yang seharusnya sulit untuk diketahui setelah berupa chipertext maka akan diketahui oleh pihak yang seharusnya tidak mengetahui apa isi plaintext
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
tersebut, oleh sebab itu kita lakukan modifikasi pada rumus Fibonacci tersebut menjadi :
Fn = F n – k + F n – k+m
Keterangan: n = merupakan deret kunci ke – n
k = panjang dari kata kunci m= 1 +
∑ kunci input mod k – 1 m merupakan variable penambahan dalam penambahan kunci yang bersifat
dinamis karena akan menyesuaikan dengan panjang kunci yang dimasukan. Kunci yang dimasukan minimal terbentuk dari 2 karakter. Dengan menggunakan
variable m ini maka rumus tersebut akan menjadi lebih dinamis dikarenakan urutan yang dijumlahkan tidak akan selalu sama. Namun menyesuaikan dengan
jumlah karakter kata kunci yang dimasukkan. Dengan melakukan modifikasi tersebut maka ciri dari sandi Fibonacci
tidak akan begtu terlihat , berikut ini merupakan contoh dengan menggunakan metode Fibonacci yang sudah dimodifikasi:
Contoh : Kunci Input : “kamu” k panjang kata kunci = 4
m variable penambah kunci = 1 + 11+1+13+21 mod 4-1 = 2 Menjadi : F5 = 5-4 + 5-4+2
= 1 + 3 = 4 D F6 = 6-4 + 6-4+2
= 2 + 4 = 6 F F7 = 7-4 + 7-4+2
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
= 3 + 5 = 8 H F8 = 8-4 + 8-4+2
= 4 + 6 = 10 J Jadi kata yang didapat untuk menjadi tambahan kunci adalah DFHJ.
Berikut ini contoh jika kata tersebut digabungkan dan dienkripsi dengan sebuah plaintext maka akan menjadi :
Plaintext : AZER AMAN Kata Kunci : kamu DFHJ
Chippertext : KZQL DRHW Dapat kita lihat dari proses diatas maka penggunaan deret Fibonacci
pada sebuah algoritma vigenere untuk pengenkripsian sebuah text tidaklah begitu nampak, disini deretan tersebut seperti terlihat acak dan tidak mencerminkan deret
Fibonacci .
Berikut ini merupakan algoritma untuk mengetahui bagaimana kondisi yang diperlukan untuk dapat menggunakan rumus tersebut :
1 Pertama kita lakukan pengecekan terhadap panjang plaintext yang ada dengan panjang kata kunci.
2 Kedua jika panjang plaintext panjang kunci maka panjang kunci disamakan dengan panjang plaintextnya, lalu jumlahkan keduanya.
3 Ketiga jika panjang kunci panjang plaintextnya maka baru kita gunakan rumus tersebut.
4 Langkah ke-empat kita hitung dulu berapa panjang kata kunci sehingga deret keberapa dari kata kunci tersebut yang akan mulai kita cari dengan
rumus tersebut.
Hak Cipta © milik UPN Veteran Jatim : Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan dan menyebutkan sumber.
5 Langkah kelima hitung juga berapa panjang plaintextnya untuk menentukan perulangan yang diperlukan agar panjang kata kunci sama
dengan panjang plaintextnya. 6 Langkah ke-enam setelah melakukan 5 langkah sebelumnya baru kita
dapat mencari variable m dengan rumus berikut ini : m= 1 +
∑ kunci input mod k – 1 . 7 Langkah ketujuh adalah dengan mencari karakter kunci setelah panjang
kunci yang di masukkan misalnya panjang kunci input adalah 4 berarti kita mencari panjang kunci input ke 5 atau jika dirumuskan k + 1.
8 Langkah ke delapan ialah setelah kita mengetahui deret berapa yang kita cari misalnya deretan kunci ke 5 baru kita memasukkan rumus :
F n = F n – k + F n – k+m 9 Langkah terakhir adalah setelah panjang kata kunci input sama dengan
panjang plaintext baru kita lakukan penjumlahan antara kunci input setelah dimodifikasi dengan panjang plaintext.
3.3.2 Proses Alur Program