pada tahun 1994. RC5 memiliki sebuah variable ukuran word, iterasi round!,dan ukuran kun"i. RC5 memiliki tiga parameter, yaitu w#word size $%, &4, atau 1%'bit!, bkey size (#%55!) *umlah byte pada kun"i, dan r#round (#%55!. RC5 memiliki % word %w+bit! input dan output ukuran blok. RC5 terdiri atas tiga komponen, yaitu algoritma key expansion, algoritma enkripsi, dan algoritma dekripsi. ,etiga komponen ini menggunakan tiga operasi primiti-, yaitu. + Pen*umlahan words modulo %w, dinyatakan dengan /01. + XOR bit dari words, dinyatakan dengan 2. + Rotasi. rotasi x ke kiri sebanyak y dinyatakan dengan /x 333 y1. Catatan. hanya log% w! low-order bit dari y yang mempengaruhi rotasi ini. 4ebelum melakukan enkripsi, kun"i rahasia digunakan untuk memenuhi kun"i table 4 dengan %r0% word. 5isalkan A,6! merupakan dua word Algoritma enkripsi tersebut adalah. A 7 A 0 S8(9) B 7 B 0 S819) for i 7 1 to r do A 7 A B! 333 B! 0 S8%i9) B 7 B A! 333 A! 0 S8%i 0 19) input dan output.
4ebuah keistimewaan pembeda dari RC5 adalah digunakan pada data+dependent rotation+ *umlah rotasi adalah variable random yang bergantung pada data input, nilai mereka belum ditetapkan sebelumnya. ,eamanan RC5 terletak pada operasi rotasi menggunakan di--erent operation. Pada paper ini untuk dasar utama di--erential "ryptanalysis adalah dua "hosen plainteks P dan P: dengan perbedaannya P;7 P P: setelah dienkrip dapat menghasilkan dua "hiperte<t C dan C:, C;7 C C : memiliki nilai spesi-ik probabilitas yang tidak dapat disederhanakan seperti karakteristik P;,C;! digunakan untuk menurunkan bit dari kun"i. =ntuk menyerang RC5, yang harus di"oba untuk menemukan kun"i rahasia pada e<panded table kun"i 4. >leh karena itu di--erential atta"k independent terhadap pan*ang kun"i rahasia ?i--erential atta"k sangat e-ekti- digunakan pada RC5 bila *umlah round yang digunakan sedikit. ?an pada tiap round menemukan kembali setiap bit saat e<pended table kun"i 4. banyak *umlah pasangan yang di butuhkan untuk "hoosen plainte<t atta"k RC5+ $% adalah %45 untuk r7 9. sama seperti 1& round ?@4! dan *umlah pasangan plainte<t untuk r7 1% adalah %&% . >leh karena itu, *umlah plainte<t yang dibutuhkan untuk serangan ini men*adi tidak praktis ketika *umlah roundnya besar. Auga men*adi kasus untuk blo"k "ipher lainnya. ,ita implementasikan serangan kita pada pilihan w dan r dan *umlah dari plainte<t yang match pada teori perhitungan kita. 4ebuah keutamaan pada serangan di--erential ini terletak pada tipe karakteristik yang digunakan pada di--erent yang digunakan pada serangan blo"k "ipher lainnya., seperti
?@4. Baktanya untuk memberikan plainte<t di--eren"e P; dan "ipherte<t C; ada beberapa kemungkinan *alan untuk P; ke C;. setiap P; ke C; untuk probabilitas yang sama. kontras, dimana kemungkinan ada pada blo"k "ipher lainnya. 6iasanya satu *alan menguasai sisanya.! path ini sama dengan -orm, membiarkan kita untuk memperbaiki yang seragam. Cang utama dapat memberikan e-ek mendorong probabilitas untuk mendapatkan pasangan plainte<t dengan menetapkan P; dan C;. 4erangan di--erential ini e-ekti- untuk menentukan bit kun"i, setelah pasangan plainteksD "ipherteks "ukup digenerate. 4eluruh table 4 di hitung bit per bit tanpa men"oba seluruh kemungkinan. 4ebagai "ontoh pada implementasi serangan di--erential kami semua running time digunakan untuk mengenerate pasangana plainte<tD "ipherte<t. Eaktu untuk men"ari kun"i, perhitungan di abaikan karena lebih ke"il dari sedetik. ,ita dapat menyimpulkan pilihan r7 1% -or RC5+$% yang diusulkan oleh Rivest menyediakan keamanan yang baik melawan di--erential dan linear "ryptanalysis. Fentu sa*a kemingkinan sisa tersebut pada *alan lainnya apa sa*a -akta nilai parameter. 1. Gotation 4atu round terdiri dari dua persamaan, dan pada masing+masing persamaan, salah satu A atau 6 dimodi-ikasi sementara yang lain tetap tidak berubah. ,ita akan lihat setiap persamaan sebagai setengah round. 4ehingga satu hal-+round pada RC5 sama dengan -ullround pada sebuah -eistel "ipher. ,ita mengambil notasi untuk -eistel "ipher. H1 7 H( 0 4( R1 7 R ( 0 4 1 Bor i7% to %r01 do Hi 7 Ri+1 Ri 7 Hi+1 Ri+1! 3333 Ri+1! 0 4i ,ita akan menggunakan deskripsi di atas dari keseluruhan RC5 pada paper. ,ita akan melihat dua persamaan yang melibatkan Hi+1 , Ri+1! dan Hi , Ri! sebagai hal-+round ke I pada RC5. 4ebab itu, dua initial eJuations H1 7 H( 0 4( dan R1 7 R(041! bersama+ sma dipertimbangkan sebagai hal-+round pertama, dan RC5 berisi %r01 hal-+round pada untuk menyerang RC5. ?an membutuhkan study lebih lan*ut untuk sepenuhnya menentukan keamanan RC5. =ntuk
keseluruhan. 6lok input adalah H(,R(! dan blok output adalah H%r01 , R%r01!. =ntuk mempermudah penggunaan kita ganti 48i9 men*adi 4i. =ntuk sebuah vektor binary < dengan pan*ang w, kita beri label posisi bit dari 546 ke H46 sebagai w+1, K, 1, (. ,ita gunakan <8s9 untuk menun*ukan bit ke s dari < dan <8s..t9 s L7 t! untuk menun*ukan bit ke s sampat ke t dari <. ,ita gunakan lg w! untuk menun*ukan lg% w!. "atatan bahwa < mod w 7 <8lg w!+1..(9 adalah bit+bit dari < yang digunakan untuk menentukan *umlah sebuah rotasi. ,ita gunakan <8s,t,K,u9 untuk menun*ukan <8s9 <8t9 K <8u9. 4oal .
1. Fentukan Probabilitas karakteristik e(, e$, e&, eM N
Aawab .
1. =ntuk sembarang input a"ak < dan y yang memenuhi <y=es dan untuk sembarang
kunci acak K masing- masing dengan panjang w bit maka Pr((x+K) (y+K))=es =
1 , u n t u k s =w 1 1 , u n t u k s =(,1 , , w % %
Aika <y=0 maka x=y dan z=0. Banyaknya semua kemungkinan input acak x dan y dengan xy=0 ada a! "w.
ii.
#ika xy = es maka ni ai bit x pada p$sisi ke-s% maka x &y se!ingga kemungkinan ( x's(=) ) ( y ( s )= ( ) (x's(=) ) ( y ( s )= ( ) . Banyaknya kemungkinan input x dan y dengan x y ada a! "w.
iii.
Banyaknya kemungknan input acak x dan y dengan xy = e s untuk setiap ni ai s=0%)%"%..%(w-)) serta ni ai k K ada a! "wx"w=""w.
*i ai input pada +,- disimp i.ikasi menjadi / bit se!ingga terdapat p$sisi bit dari e0% e)% ....% e0.
a) Untuk posisi e1
x'0(&y'0( meng!asi kan 2 kemungkinan z'0(=)% c'x( dan c'y( ada a! n$tasi carry dari (xK) dan (yK).
ii.
x[i]=y[i], i =( , , ( w 1 ) karena x[1] = y[1] maka (x[1]+K[1]) (y')( K')()=0 untuk apapun ni ai K')( se!ingga 1 z')(=(x')( K')( cx')() (y')( K')( cy')() z')(= cx')( cy')(=0cx')(=cy')(% 3apat disimpu kan ba!wa terdapat " kemungkinan pada ta!ap ) akibat dari cx')(=cy')(=0. 3engan demikian !anya terdapat ""=2 kemungkinan se!ingga z')(=0 yag ditentukan $ e! apapun ni ai x')( dan K')(.
Per!atikan ba!wa cx'"(=cy'"( dan x'"(=y'"( maka z'"(=0 untuk apapun ni ai x'"(=y'"( dan K'"( yang menyebabkan cx'4(=cy'4( se!ingga di!asi kan "" kemungkinan. 3engan demikian beru ang sebanyak i=0. 3ari kedua ta!ap diatas dapat diambi ni ai dari kejadian xy=e 0 se!ingga z=e0 untuk sembarang K1
Karena xy = ew-) maka x'(8)...0(= y'(8).....0( dan x'0(&y'0( :kibatnya% z'(8)....0(='0...0( untuk apapun ni ai x+y dan K dan menyebabkan cx(0)=cy(0). Karena x'0(&y'0(% maka z'0(=x'0( y'0(. #adi banyaknya kejadian xy=e0se!ingga z=e0 untuk sembarang K ada a! 1 ""(0)x "" = ")8 5e!ingga untuk sembarang K% Pr(z=e06xy=e0)=")87")8=).
b) 9ntuk p$sisi e4
Karena xy = e4% maka x'(0...2)(=y'(0...2)(% x'("..0)(=y'("...0)( dengan x'4(&y'4( 5e!ingga berakibat z'("..0)(='0...0(% apapun ni ai x=y dan K%
menyebabkan cx(4)=cy(4). Karena x'4(&y'4( maka ;'4(=(x'4( K'4( cx'4() (y'4( K'4( cy'4(= x'4( y'4(=)% apapu ni ai cx'4( dan K'4( % se!ingga terdapat / kemungkinan
[!]
K'4( "[!
] 1
#x(s+ 1) $
#y(s+ 1) $
,<(s)
$00
1 1 1 $ $ $ $
$ $ 1 $ 1 1 1
1 1 1 $ $ $ 1
%ari tabel &iatas terli'at ba'(a ter&apat ) ke*a&ian yang menyebabkan nilai "[+...)]=[$...$] yaitu *ika &an 'anya *ika ,x())=,y()). Ter*a&i ketika K[s]=,x(!)=,y(!), aapapun nilai x[!]-y[!]. %ari argumen &iatas maka apapun nilai input ,x(!) =,y(!)menyebabkan nlai "=e!, maka ter&apat ..(!) kemungkinan yang &itentukan ole' apapun nilai x[!]-y[!] pa&a posisi ke !. %engan &emikian &apat &isimpulkan ba'(a banyaknya ke*a&ian xy=e4
se!ingga z=e4
Karena xy = e8% maka x'(0)(=y'(0)(%x'(-..0)(=y'(-...0)( dengan x'8(&y'8( %5e!ingga berakibat z'(-..0)(='0...0(% apapun ni ai x=y dan K% menyebabkan cx(8)=cy(8). Karena x'8(&y'8( maka ;'8(=(x'8( K'8( cx'8() (y'8( K'8( cy'8(= x'8( y'8(=)% apapu ni ai cx'8( dan K'8( % se!ingga terdapat / kemungkinan
[/]
K'8( "[/
] 1 1 1
#x( +) $ $ $
#y(+ ) $ 1 1
,<(8)
$00 $)0 $0)
1 $ $ $ $
1 $ 1 1 1
1 $ $ $ 1
%ari tabel &iatas terli'at ba'(a ter&apat ) ke*a&ian yang menyebabkan nilai "[+]=[$] yaitu *ika &an 'anya *ika ,x(+)=,y(+). Ter*a&i ketika K[/]=,x(/)=,y(/), aapapun nilai x[/]-y[/]. %ari argumen &iatas maka apapun nilai input ,x(/) =,y(/)menyebabkan nlai "=e/, maka ter&apat ..(/) kemungkinan yang &itentukan ole' apapun nilai x[/]-y[/] pa&a posisi ke /. %engan &emikian &apat &isimpulkan ba'(a banyaknya ke*a&ian xy=e8 se!ingga z=e8 untuk sembarang K dengan s ada a! ""(8)x"x""=")-