Algoritma Spritz

         Algoritma spritz merupakan varian dari algoritma RC4 yang dilakukan oleh Ron Rivest dan Jacob Schultz pada tahun 2014. Algoritma ini menghasilkan sponge-base construction dalam menghasilkan kunci dalam proses enkripsi dan dekripsi. Algoritma ini bekerja berdasarkan konsep stream cipher yaitu enkripsi satu per satu. Salah satu kelebihan dari algoritma ini adalah proses pembangkitan kunci yang digunakan dalam proses enkripsi maupun dekripsi[1][2]
    Penambahan elemen w yang relatif prima dengan nilai N pada proses pseudo-random generation algorithm adalah perbedaan algoritma ini dengan RC4. Selain sebagai stream cipher, algoritma spritz dapat juga digunakan sebagai hash function (fungsi hash) dan Message Authentication Code (MAC) dengan menggunakan sponge function dalam mengamankan data [3].  Kunci yang dibangkitkan berikutnya selalu bergantung pada aliran kunci sebelumnya. Tingginya kompleksitas dari performansi algoritma spritz menyebabkan rumitnya para kriptanalis untuk menemukan kunci dan memecahkan algoritma ini.
     Prosedur utama pada algoritma spritz sebagai stream cipher terdiri dari tiga proses yaitu proses Key Scheduling Algorithm (KSA), Pseudo-Random Generation Algorithm (PRGA) dan proses enkripsi atau dekripsi. Proses ini secara umum, sama dengan proses yang dilakukan pada algoritma RC4.
Adapun algoritma dari Spritz sebagai stream cipher dalam proses pembangkitan kunci adalah :

wehile
     i := (i + w) mod 256
     j := (k + S[ j + S[ i ] ]) mod 256
     k := (k + i + S[ j ]) mod 256
     Swap S[ i ], S[ j ]
    output:
     x := (S[ j + S[ i + S[ z + k]]]) mod 256
endwhile

Bila anda bandingkan dengan algoritma RC4, maka algoritma ini hampir sama, perbedaan mendasar adalah adanya penambahan nilai w pada proses pembangkitan kunci enkripsi dan dekripsi.

Silahkan anda download jurnal penelitian yang membahas Implementasi Algoritma Spritz sebagai stream cipher disini..... atau melalui link ini.... Penelitian ini membahas mengenai penyandian record database soal ujian Computer Based Test (Ujian Berbasis Komputer), semoga dapat menjadi referensi bagi kita dalam mengoptimalkan pengamanan data dan informasi penting.

No comments: