Thursday, April 18, 2013

Pengertian Algoritma Serpent

Algoritma Serpent

Algoritma Serpent didesain oleh Ross Andersen dari Cambridge Universitiy Inggris, Eli Biham dar Technion Israel, dan Lars Knudsen dari University of Bergen Norwegia. 10 Serpent adalah algoritma dengan 32 putaran jaringan SP yang beroperasi pada empat word 32 bit, yang berarti ukuran bloknya adalah 128 bir. Semua nilai yang digunakan direpresentasikan sebagai bitstream. Untuk komputasi internal, semua nilai direpresentasikan dalam little-endian, di mana word pertama adalah least-significant word, dan word terakhir adalah most-significant word. Secara eksternal, setiap blok dituliskan sebagai plain hexadesimal 128 bit . Serpent mengenkripsi plainteks P 128 bit menjadi cipherteks C 128 bit dalam 32 putaran dengan kontrol dari 33 sub-kunci 128 bit K0,...,K32. Panjang kunci masukan user fleksibel, namun untuk memenuhi persyaratan AES, maka ditetapkan 128, 192,dan 256 bit. Kunci yang lebih pendek dari 256 bit dipetakan menjadi kunci sepanjang 256 bit dengan menambahkan satu “1” bit pada akhir MSB, dan diikuti dengan “0” bit sampai mencapai 256 bit.

 S-Box Serpent

S-Box Serpent adalah permutasi 4 bit dengan ketentuan sebagai berikut:
1. Masing-masing karakteristik diferensial memiliki probabilitas maksimal ¼, dan sebuah input dengan perbedaan satu bit tidak akan meghasilkan output dengan perbedaan satu bit
2. Masing-masing karakteristik linear memiliki probabilitas antara ½ ± ¼, dan hubungan linear antara sebuah bit pada input dan sebuah bit pada output memiliki probabilitas ½ ±1/8
3. Urutan non-linear bit output sebagai fungsi dari bit input maksimal 3 Pembangkitan S-Box terinspirasi dari EC4, yaitu menggunakan matriks dengan 32 array yang masing-masing memiliki 16 entri.
Matriks diinisialisasi dengan 32 baris S-Box DES dan ditransformasikan dengan menukar entri pada array ke-r bergantung pada nilai entri ke-(r+1) array dan pada inisial string yang merepresentasikan kunci. Jika array hasilnya memenuhi ketentuan yang telah disebutkan sebelumnya, maka simpan array sebagai Serpent S-Box. Ulangi prosedur tadi sampai 8 S-Box berhasil dibangkitkan.


1 comment:

Kebahagiaan sejati bukanlah pada saat kita berhasil meraih apa yg kita perjuangkan, melainkan bagaimana kesuksesan kita itu memberi arti atau membahagiakan orang lain.