RS5 ver 0.1

Posted on December 12, 2007. Filed under: CrypWorld | Tags: |

RC5 adalah blok cipher yang dikenal dengan kesederhanannya. RC5 didisain oleh Ronald Rivest pada tahun 1994. RC merupakan kepanjangan dari “Rivest Cipher”. Tidak seperti skema lainnya, RC5 memiliki ukuran blok (simbol w, dalam bit) yang bervariasi (16, 32 atau 64-bit), panjang kunci eksternal K (simbol b, dalam byte) yang bervariasi(0 sampai 255) dan rotasi (simbol r) yang bervariasi (0 sampai 255). Pembuatnya menyarankan menggunkan ukuran blok 64-bit 128-bit kunci dan 12 kali rotasi.

Terdapat tiga operasi yaitu XOR, penambahan (addition) dan perputaran (rotation). Rotasi (perputaran) merupakan operasi yang waktunya konstan untuk kebanyakan prosesor dan variabel rotasi merupakan fungsi yang non-linier. Rotasi ini bergantung pada kunci dan data. Ada dua macam rotasi yaitu x <<< y (berarti menggeser bit-bit di dalam x sejauh y bit ke kiri secara silkuler) dan x>>>y (berarti menggeser bit-bit di dalam x sejauh y bit ke kanan secara silkuler). Struktur umum algoritma menggunakan jaringan feistel.

Pembentukan Kunci Internal

Kunci internal ada sebanyak 2r+2 buah yang maig-masing disimpan di dalam elemen-elemen larik yang dilabeli sebagai S[1],S[1],…,S[t-1] dengan t = 2r+2. Setiap elemen larik panjangnya satu word (1 word = w bit ). Pembentukan kunci internal lebih rumit. Mula-mula, semua byte dari kunci eksternal, K[0...b-1], disalin ke dalam larik Lc word, L[0...b-1] lalu padding dengan sejumlah 0 jika perlu (padding terjadi jika b bukan kelipatan w). Kemudian inisialisasi larik S sebagai berikut: yang berukuran

S[0]<-Pw
for i <- 1 to t – 1 do
S[i] <- S[i - 1] + Qw
endfor

yang dalam hal ini Pw dan Qw (dalam hexadesimal) berbeda-beda tergantung w sebagai berikut:

w

Pw

Qw

16

B7E1

9E37

32

B7E15163

9E3779B9

64

B7E151628AED2A6B

9E3779B97F4A7C15

Konstanta Pw dan Qw diasarkan pada representasi bilangan alan e dan φ dalam biner,

Pw = Odd [(e - 2) 2 ]

Qw = Odd [(φ - 2) 2 w]

Akhirnya campurkan L dan S sebagai berikut:

i <- 0

j <- 0

X <- 0

Y <- 0

n <- 3 * max (r,c)

for k <- 1 to n do

S[i] <- (S[i] + X+ Y) <<< 3

X <- S[i]

i <- (1 + 1) mod (t)

L[j] <- (L[j] + X+ Y) <<< (X+ Y)

Y <- L[i]

j <- (j +1) mod (c)

endfor

Enkripsi

Misalkan yang ditinjau RC5 denganukuran blok 64-bit dan jumlah rotasi r. Enkripsi menggunakan kunci internal S 32 ) dengan S0 dan S1:

A <- A + S[0]

B <- B + S[1]

Seanjutnya untuk setiap rotasi dari 1 sampai r dilakukanoprasi XOR, penggeseran ke kiri secara silkulern dan penjumlahan dalam modulo 232 dengan kunci internal sebagai berikut:

for i <- to r do A

A <- ((A XOR B)<<< B) + S [2i]

B <- ((B XOR A)<<< A) + S [2i + 1]

endfor

Cipherteks pada rotasi terakhir disimpan di dalam A dan B. Gabungan keduanya adalah blok palin teks yang berukuran 64-bit. Proses enkripsi satu rotasi dipelihatkan pada gambar di bawah ini.

Dekripsi

Dekripsi berkebalikan dengan enkripsi. Mula-mula bagi blok cipherteks menjadi dua bagian, A dan B, yang masing-masing panjangnya 32-bit. Selanjutnya untuk setiap putaran dari 1 sampai r dilakukan operasi pengurangan dalam modulo 232 dengan kunci internal, penggeseran ke kanan secar silkuler (rotasi) dan operasi XOR sebagi berikut:

for i <- to r do

B <- ((B – S [2i + 1]) >>> A) XOR A

A <- ((A – S [2i]) >>> B) XOR B

endfor

B <- B + S [1]

A <- A + S[0]

 

 

2 be continued……..

sumber:

Applied Cryptography (Bruce Schneier)

Kriptografi (Rinaldi Munir)

Wikipedia

Advertisement

Make a Comment

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

One Response to “RS5 ver 0.1”

RSS Feed for SePenGGal iLmU uNtuK seMuA ….. Comments RSS Feed

aduuhhh…
RC5 yang kamu bwt ini ngebantu saya bgt dlm pengerjaan tugas saya
thx ya
klo bisa penulisan tentang RC5 ini dilanjutkan sampai finish yah..
skali lg trima kasih byk


Where's The Comment Form?

Liked it here?
Why not try sites on the blogroll...

Follow

Get every new post delivered to your Inbox.