• Tidak ada hasil yang ditemukan

Optimasi Algoritma RSA dengan Menggunakan Pembangkit Bilangan Acak ISAAC

N/A
N/A
Protected

Academic year: 2021

Membagikan "Optimasi Algoritma RSA dengan Menggunakan Pembangkit Bilangan Acak ISAAC"

Copied!
7
0
0

Teks penuh

(1)

Makalah IF3058 Kriptografi – Sem. II Tahun 2010/2011

Optimasi Algoritma RSA dengan Menggunakan

Pembangkit Bilangan Acak ISAAC

Shauma Hayyu Syakura (13507025) Program Studi Teknik Informatika Sekolah Teknik Elektro dan Informatika

Institut Teknologi Bandung, Jl. Ganesha 10 Bandung 40132, Indonesia

1

if17025@students.if.itb.ac.id

Abstrak— Seperti yang kita ketahui, tingkat keama-nan algoritma RSA bergantung pada panjang kunci dan kunci itu sendiri. Untuk mendapatkan kunci bila-ngan prima yang besar, sulit untuk membuatnya sen-diri, oleh karena itu digunakan pembangkit bilangan acak untuk menghasilkan kunci tersebut. Namun pembangkit bilangan random konvensional yang ter-sedia pada program untuk pengembangan seperti Java, C#, dan lain-lain, memiliki masalah tersendiri. Bilangan acak yang dihasilkan sebenarnya adalah bi-langan pseudorandom (tidak benar-benar acak), dan bilangan-bilangan tersebut akan muncul lagi secara berulang setelah periode tertentu, sehingga mengura-ngi keamanan dari bilangan random tersebut. Oleh karena itu, pembangkit bilangan random khusus un-tuk kriptografi dibuat, dan pembangkit ini disebut Cryptographically Secure Pseudorandom Generator. ISAAC adalah sebuah Cryptographic Pseudorandom Generator yang dikenal cepat. ISAAC merupakan singkatan dari Indirect, Shift, Accumulate, Add, dan Count. Dalam makalah ini, akan dilakukan studi dan analisis optimasi RSA dengan menggunakan ISAAC. Pseudorandom generator ini diharapkan dapat meng-hasilkan RSA yang lebih aman dan cepat.

Index Terms—Algoritma Kunci Publik, RSA, pseudorandom generator, ISAAC, optimasi

I. PENDAHULUAN

Kriptografi adalah ilmu untuk menyamarkan pesan agar pesan tersebut hanya diketahui oleh pihak pemberi pesan dan pihak penerima pesan, dan tidak diketahui oleh pihak lain. Pesan disamarkan dengan cara mengganti pesan asli menjadi pesan lain yang hanya bisa dimengerti oleh pihak pemberi pesan dan pihak penerime pesan. Pe-san yang disamarkan tersebut, dapat diubah kembali menjadi pesan asli dengan menggunakan kunci atau cara-cara tertentu.

Kriptografi sudah digunakan sejak zaman dahulu, salah satu penggunaannya adalah untuk menyampaikan pesan saat perang. Pengiriman pesan dalam sebuah peperangan biasanya menggunakan kriptografi agar pesan rahasia ter-sebut tidak dapat dibaca dan diketahui oleh pihak musuh. Kriptografi dalam peperangan mulai digunakan sejak

za-man pemerintahan Julius Caesar yang terkenal dengan Caesar Chiper-nya hingga Perang Dunia II.

Kriptografi pada zaman tersebut masih menggunakan cara manual, seperti menggunakan cryptex atau mesin. Namun sejak lahirnya komputer dan dimulainya era digi-tal, kriptografi mulai berkembang pesat, berbagai macam algoritma kriptografi untuk menyembunyikan pesan di-buat. Dan penggunaannya tidak lagi hanya untuk menyampaikan pesan dalam peperangan, karena saat ini, privasi dalam penyampaian pesan dan penyimpanan data menjadi penting. Oleh karena itu, saat ini kriptografi juga digunakan dalam penyampaian pesan-pesan digital, seperti e-mail, sms, atau chatting, dan juga untuk penyimpanan data-data penting seperti password (kata kunci), tanda tangan digital, dan lain-lain.

Ada dua algoritma kriptografi digital yang berkembang hingga saat ini, yaitu algoritma kunci simetri dan algorit-ma kunci publik. Proses algoritalgorit-ma kriptografi terdiri dari proses enkripsi dan dekripsi. Proses enkripsi adalah proses pengubahan pesan asli (disebut plaintext) menjadi pesan yang tersamarkan (disebut chipertext), sedangkan proses dekripsi adalah proses sebaliknya.

Algoritma kunci simetri adalah algoritma kriptografi yang menggunakan kunci yang sama untuk mengenkripsi dan mendekripsi pesan. Kunci tersebut hanya boleh diketahui oleh pihak pemberi dan penerima pesan. Bebe-rapa contoh algoritma yang menggunakan kunci simetri a-dalah algoritma vigenere chiper, algoritma block chiper, dan one time pad.

Sedang algoritma kunci publik adalah algoritma yang memiliki 2 buah kunci, yaitu kunci publik dan kunci privat. Kunci publik digunakan untuk mengenkripsi pesan, dan dapat diketahui oleh siapa saja. Sedangkan kunci privat digunakan untuk mendekripsi pesan dan tidak boleh diketahui oleh siapapun, hanya pemberi dan penerima pesan. Beberapa contoh algoritma yang meng-gunakan kunci publik adalah algoritma RSA, ElGamal dan DSA.

Salah satu algoritma kunci publik yang populer digunakan adalah Algoritma RSA. Algoritma RSA banyak digunakan untuk pengamanan pesan dan pembu-atan tanda tangan digital (digital signature). Keamanan-nya terletak pada sulitKeamanan-nya memfaktorkan bilangan prima yang menjadi kunci dari algoritma tersebut.

(2)

Makalah IF3 Keamananny yang menjad Karena bi dak mungkin rena itu dib menghasilkan Namun, pe mahan, karen kan pembang pseudorando langan terseb ma secara pe manan dari kriptanalis d yang menjad Oleh kare bangkit bilan sebut, frekue dik dikurang sebut denga generator. Salah satu adalah ISAA ISAAC adal dengan kece ditebak, dan mirip dengan namun ISAA Dengan m kan kelebiha optimasi terh bilangan pri diharapkan d dari bilangan ngan kunci b Algoritma besar karen bilangan bes Komputasi y algoritma pem lebih mening menurunkan II Algoritma gunakan kun untuk meng Terdapat dua privat. Pengi kunci publik banyak orang ngirimkan p pesan meng pesan terenk yang dimilik Algoritma Algoritma ku pada algorit 058 Kriptogra ya juga terleta di kunci. langan prima n untuk dimas butuhkan pem n bilangan pri embangkit bil na sebenarny gkit bilangan om). Hal terse but menghasil eriodik. Hal i kunci bilanga apat lebih mu di kunci.

ena itu, dibua ngan acak un ensi bilangan s gi. Dan pemba an cryptograp tu pseudoran AC. ISAAC d lah pembangk epatannya, pe aman secara n algoritma p AC tiga kali leb melihat kelebih an tersebut dap hadap algorit ima acak se didapatkan bi n kunci yang d biasa. a RSA sendiri na modulasi sar dalam pr yang digunak mbangkit bila gkatkan perfo biaya kompu I. ALGRORIT a kunci publik nci asimetri, genkripsi dan a jenis kunci irim pesan me k, dan kunci p g. Namun ap pesan tersebut irimkan pesa kripsi tersebut ki penerima pe a kunci publ unci publik m tma kunci si afi – Sem. II T ak pada besarn a yang dibutuh sukkan secara mbangkit bila ima yang besa langan acak bi ya pembangkit acak semu (at but dikarenak lkan bilangan ini tentu akan an acak yang udah menemu atlah algoritm tuk menguran sama yang mu angkit bilanga phycally secu dom generat dibuat oleh Ro kit bilangan a ersebarannya a kriptografi. pembangkit bi bih cepat[1]. han-kelebihan pat digunakan tma RSA dal ebagai kunci. ilangan kunci dihasilkan dar i membutuhka dan perpan roses enkripsi kan ISAAC angan acak bia rmansi dari a tasi. TMA KUNCI P k adalah algo yaitu kunci n mendekrips i yaitu kunci engenkripsi pe publik ini da abila pengirim t ke penerima an yang teren t didekripsi de esan. lik ditemuka muncul karena metri. Masal Tahun 2010/20 nya bilangan p hkan besar da a manual, ole angan acak u ar tersebut. iasa memiliki t tersebut me tau disebut de kan pembangk -bilangan yan n mengurangi digunakan, s ukan bilangan ma-algoritma ngi kelemahan uncul secara p an acak tersebu ure pseudoran tor yang terk obert J. Jenkin acak yang terk merata, tidak Algoritma IS ilangan acak n ISAAC, dih n untuk melak lam pembang Dengan IS i yang lebih ri pembangkit an komputasi ngkatan bilan i dan dekrips lebih rendah asa, sehingga algoritma RSA PUBLIK oritma yang m i yang digun si pesan ber publik dan k esan menggun pat diketahui m pesan ingin a pesan, pen nkripsi. Kemu engan kunci p an Diffie-Hel a terdapat ma lahnya adalah 011 prima an ti-eh ka-untuk kele- erupa-engan kit bi-ng sa-i kea-sebab n acak pem-n ter- perio-ut di-ndom rkenal ns Jr. rkenal k bisa SAAC RC4, harap-kukan gkitan SAAC aman t bila-yang ngan-sinya. h dari dapat A dan meng-nakan rbeda. kunci nakan i oleh n me-ngirim udian privat lman. asalah h ba-gaim Men man bat d Pr adala Ku mela publ raha Pe publ ran d fakto dan algor pula bilan ritma DSA K priva han algor enkr kunc bilan ngan bilan ritma lebih pun nya k man tanga Pe kript kunc kitan tri, d Se umu acak naka bilan mana mengirim ngirim kunci m , sedangkan m dan sangat ma rosedur enkrip ah sebagai ber Gambar 1 unci publik d alui saluran ti ik adalah tid sia sehingga j embangkitn s ik didasarkan dan logaritma orkan, semaki dibutuhkan ritma yang m dengan log ngannya sema a yang menaf A. elebihan algor at yang dijaga untuk mengir ritma kunci ripsi dan dek ci simertri, kar ngan besar dan n besar. Al ngan-bilangan a tersebut. U h besar dari p lebih besar da kunci publik d kunci simetr an digital. III. CRY PSEU embangkit bi tografi, seper ci publik yang n initialization dan sebagainya ebenarnya, alg m tidak ben k. Bilangan ac an rumus-rum ngan acak sem

m kunci rahasi melalui jalur menggunakan j

hal.

psi dan dekrip rikut:

Prosedur Algor

dan pesan ter dak aman. Ke dak perlu mel

umlah kunci d sepasang kun n pada persoal . Semakin bes in sulit faktori waktu yang memakai prins garitma bilang akin sulit dan

faatkan prinsi ritma kunci as a kerahasiann rimkan kunci simetri. Kele kripsi lebih la rena enkripsi n melibatkan goritma kun n besar sebaga Ukuran chiper plainteks, beg ari kunci sime digunakan unt ri dan diguna YPTOGRAPHY UDORANDOM langan acak ti pembangki g membutuhka n vector (IV) p a. goritma pemb nar-benar men ak yang dihas mus matemati mu (pseudoran ia kepada pen pengiriman b jalur kedua um psi algoritma

ritma Kunci Asim

renkripsi dapa euntungan alg lakukan peng dapat ditekan. nci pada krip lan integer ya sar bilangan y risasi yang ha

g sangat la sip ini adalah gan besar, s lama komput ip ini adalah simetri adalah nya, dan tidak i privat sebag emahannya a ambat daripa dan dekripsi m operasi perpa nci publik m ai inti dari ke rteks dapat m gitu pula uku

etri. Oleh kar ntuk mengama akan untuk m YCALLY SEC M GENERATOR banyak digu itan kunci pa an bilanga bes pada algoritm bangkit bilang nghasilkan de silkan sebenar ika, yang dis ndom). Deret b nerima pesan? biasa tidak a-mumnya lam-kunci publik metri at dikirimkan goritma kunci giriman kunci . tografi kunci itu pemfakto-yang harus di-rus dilakukan ama. Contoh RSA. Begitu semakin sulit tasinya. Algo-ElGamal dan h hanya kunci k ada kebutu-gaimana pada adalah proses ada algoritma menggunakan angkatan bila-menggunakan amanan algo-menjadi jauh uran kuncinya rena itu biasa-ankan pengiri-memberi tanda URE R unakan dalam ada algoritma sar, pembang-ma kunci sime-gan acak yang eret bilangan rnya menggu-sebut dengan bilangan acak ? -k n i i i -n h u t -n i -a s a n -n -h a -a m a -g n -n k

(3)

Makalah IF3058 Kriptografi – Sem. II Tahun 2010/2011 yang dihasilkan dari rumus matematika tidak benar-benar acak karena dapat berulang secara periodik. Pembangkit bilangan acak semacam itu disebut dengan pseudorandom number generator (PRNG). Salah satu contoh algoritma-nya adalah Linear Congruental Generator.

Hal tersebut menyebabkan pseudorandom number generator biasa tidak dapat digunakan untuk kriptografi. Kemunculan periodik dari deret bilangan acak tersebut dapat dimanfaatkan oleh kriptanalis untuk menemukan bi-langan acak yang digunakan dalam enkripsi atau dekripsi suatu pesan rahasia lebih mudah. Hal ini tentu menyebab-kan penggunaan pembangkit bilangan acak semu biasa menjadi tidak benar-benar aman.

Pembangkit bilangan acak yang cocok untuk kriptogra-fi disebut cryptographycally secure pseudrandom genera-tor (CSPRNG). Pembangkit bilangan acak yang aman secara kriptografi harus lolos uji keacakan statistik dan ttahan terhadap serangan yang serius, yaitu serangan un-tuk memprediksi bilangan acak yang dihasilkan. Contoh CSPRNG adalah algoritma BBS (Blum Blum Shut).

IV. ALGORITMA RSA

Algoritma RSA adalah algoritma kunci publik paling terkenal dan paling banyak aplikasinya. Ditemukan oleh tiga peneliti MIT yaitu Ron Rivest, Adi Shmir, dan Len Adleman. Keamanannya terletak pada sulitnya menmfak-torkan bilangan-bilangan prima besar.

Proses enkripsi dan dekripsi pesan RSA, terdiri dari pembangkitan kunci terlebih dahulu, setelah itu baru dilakukan proses enkripsi menggunakan kunci publik, dan dekripsi menggunakan kunci privat. Proses enkripsi dan dekripsi filenya mirip dengan blok chiper, yaitu dilakukan per blok, dengan panjang blok sesuai dengan panjang kunci.

Proses pembangkitan kunci RSA adalah sebagai berikut:

1. Pilih 2 buah bilangan prima p dan q.

Untuk tujuan keamanan, bilangan integer p dan q di-pilih secara random, dan harus memiliki panjang bit yang sama. Biasanya panjang bit yang dipilih untuk bilangan p dan q ukurannya besar, agar kunci semakin aman.

2. Hitung n, yaitu n = pq.

Bilangan n akan digunakan sebagai modulus untuk kunci publik dan kunci privat.

3. Hitung φ(n) = (p – 1)(q – 1), dimana φ adalah fungsi totient Euler.

4. Pilih bilangan integer e, dimana 1 < e < φ(n), fpb(e, φ(n)) = 1, e dan φ(n) adalah coprime (e relatif prima terhadap φ(n)). Bilangan e adalah bilangan yang men-jadi kunci publik.

5. Hitung kunci dekripsi d, dengan persamaan: ed  1 (mod (n)) atau d  e-1 mod ((n))

6. Dari perhitungan di atas didapatkan kunci publik dan kunci privat:

 Kunci publik adalah pasangan (e, n)  Kunci privat adalah pasangan (d, n)

Proses enkripsi dan dekripsi algoritma RSA:

1. Nyatakan pesan menjadi blok-blok plainteks m1, m2,

m3, ..., mn, dengan syarat 0 < mi < n-1.

2. Hitung blok chiperteks ci untuk blok plainteks pi

dengan persamaan ci = mie mod n.

3. Proses dekripsi dilakukan dengan menggunakan persamaan mi = cid mod n.

Kekuatan algoritma RSA terletak pada tingkat kesuli-tan dalam memfaktorkan bilangan menjadi faktor-faktor prima, dalam hal ini n = a  b. Bila a dan b diketahui, dan karena kunci enkripsi e tidak rahasia, maka kunci dekripsi d dapat diketahui.

Penemu algoritma RSA menyarankan nilai a dan b panjangnya lebih dari 100 digit, dengan demikian hasil n = ab bisa berukuran lebih dari 200 digit. Usaha untuk mencari faktor dari bilangan 200 digit membutuhkan waktu komputasi yang sangat lama, hinga bermilyar-milyar tahun. Oleh karena itu, RSA hanya aman jika nilai n cukup besar.

Kelemahan RSA adalah komputasinya lebih lambar dari pada algroitma kunci simetri seperti DES dan AES. Karena komputasinya yang sangat lambat, RSA dalam praktek tidak digunakan untuk mengenkripsi pesan, melainkan kunci simetri, atau digunakan untuk mengen-kripsi pesan yang ukurannya pendek. Selain itu RSA juga digunakan dalam tanda tangan digital, yaitu untuk mengenkripsi message digest hasil fungsi hash file yang ingin dibuat tanda tangan digitalnya.

V. PEMBANGKIT BILANGAN ACAK ISAAC

ISAAC merupakan algoritma pembangkit bilangan acak yang dirancang oleh Robert J. Jenkins Jr. Jenkins membuat algoritma ISAAC bersaamaan dengan dua algoritma pembangkit bilangan acak lainnya, yaitu IA dan IBAA, dimana ISAAC merupakan hasil dari pengemba-ngan keduanya. ISAAC membutuhkan 18,75 instruksi untuk menghasilkan nilai sebesar 32-bit.

Pembangkit bilangan acak IA (Inderection, Addition), lebih mudah diprediksi, tetapi aman, dan tahan terhadap serangan eliminasi Gaussian. IA didesain dengan me-nyimpulkan bahwa keadaan internal dari hasilnya tidak dapat ditelusuri, agar kodenya mudah disimpan di memo-ri, dan beroperasi secepat mungkin.

Sedangkan lebih banyak kebutuhan ditambahkan dalam pembuatan IBAA (Indirection, Barrelshif, Accumulate, Add). IBAA didesain agar aman secara kriptografi (cryp-tographically secure), tidak dapat diprediksi (tidak terda-pat bilangan sama muncul secara periodik) sepanjang ke-seluruhan siklus, dan kemunculan siklus pendek jarang. IBAA dibuat dengan mengkombinasikannya dengan IA tanpa mengurangi keamanan IA atau menghasilkan bias.

ISAAC merupakan pengembangan dari IBAA, dengan tambahan agar mudah disimpan di memori. Selain itu kode ISAAC dioptimisasikan untuk kecepatan, state-state yang berurutan akan diubah menjadi tidak berurutan dengan cepat, dan tidak ada siklus pendek sama sekali.

(4)

Makalah IF3 ISAAC lebih kan nilai se menjadi state pendek[]. I untuk mengh mesin untuk operasi terseb 32-bit. Algoritma algoritma PR integer 32-bi array 256 int hingga array rekomputasi. dengan mm[ indireksi, ak dari 0 hingg bagaimana IB dalam r[] dan Gam Banyak im mereka dapa bahkan deng bukan keama VI. RAN Kekuatan prima dan sebagai kun digunakan, m karena sema saat ini, un dipecahkan d itu, bilangan Disinilah peran. Karen dilakukan se goritma pem PRNG. Karena ke maka pemba pembangkita langan rando 058 Kriptogra h cepat dari I eed yang bur e tidak urut le SAAC memb hasilkan nilai k menghasilka but akan berja a ISAAC

RNG RC4. IS it sebagai stat teger lain, dim y-nya kosong . Kom-putasin i^128], 2 elem kumulator, dan ga 255. Diag

BAA atau ISA n menggantika mbar 2 Proses Ko mplementasi d at bersaing d gan PRNG y anan[3]. NCANGAN OP dari algoritm panjang bila nci. Semakin maka kunci akin sulit dipr ntuk nilai n dengan bebera n yang digun letak pseudor na untuk bilan ecara manual. mbangkit kun ekuatan kema angkitan kunc an kunci dilak om, oleh karen

afi – Sem. II T BAA, dijamin ruk, menguba ebih cepat, da butuhkan 18,7 sebesar 32-bi an nilai sebes alan sangat ce memiliki ke SAAC mengg te internal, m mana mereka d g, sampai sua nya terdiri dar men dari mm n counter, un ram di bawa AAC mempro an satu nilai d omputasi Algorit dari ISAAC sa dengan algor yang didesain PTIMASI ALG ma RSA terle angan prima n besar bilan tersebut aka rediksi oleh k sepanjang 5 apa ratus kom nakan harus di random numb ngan prima seb Oleh karena nci untuk R anan RSA ter ci pun menjad kukan dengan na itu algoritm Tahun 2010/20 n tidak mengh ah state beru an tidak ada s 75 instruksi m it, dan 19 inst sar 64-bit. Ju epat pada kom emiripan de gunakan array menulis hasilny

dibaca satu per atu saat merek ri mengubah m ditemukan de ntuk semua n ah ini menunj oduksi sebuah dalam m[]. tma ISAAC angat cepat, hi ritma PRNG n untuk kecep GORITMA RS

etak dari bila yang digun ngan prima an semakin a kriptanalis. Sa 12-bit sudah mputer. Oleh k atas 512-bit. ber generator besar itu tidak itu dibutuhka SA menggun rletak pada k di penting. K pembangkita ma PRNG yan 011 hasil-urutan siklus mesin truksi umlah mputer engan y 256 ya ke r satu ka di mm[i] engan nilai i jukan h hasil ingga lain, epatan SA angan nakan yang aman, ampai bisa karena r ber-k bisa an al-nakan kunci, Karena an bi-ng di-guna D adala pemb seba ISAA ngur naan Ol algor ISAA bang Un seba byte kin b Kare n da mele dalam D blok file u padd kura dalam perh dari itu p plain terja bit, o 768 plain Dan head file disim D tamb meru peng Kela ngan 96 by Se mert mem digu Jenk mak bit, 384 b Ol bilan buah bit. menj akan harus am ari syarat-syar ah PRNG ya bangkit kunci agai cryptogr AC berjalan s rangi beban k n PRNG biasa leh karena i ritma RSA, AC sebagai a gkitan bilangan ntuk algoritm agai nilai p dan

, yang berarti besar bilanga ena bilangan p an d akan men ebihi nilai 512 m sebuah prog alam proses k-blok sepanja umumnya jara ding untuk m ang. Namun h m blok-blok itungan ci = m 384 bit, nam panjang chip nteksnya. Pad adi. Karena cip

oleh karena i bit. Hasil nteks 384 bit

padding pu der panjang fi

bit yang diam mpan pada hea

alam pembua bahan yang upakan kelas golahan bilan as BigInteger n-bilangan bes yte, beserta pe edang proses p ta-merta langs mbangkitkan n unakan kelas kins, dan ke simal hanya d sementara bi bit.

leh karena itu ngan random y h 64-bit intege Kemudian Bi jadi BigIntege

man secara krip rat tersebut, d ang potensial RSA. Karena raphically se sangat cepat. komputasi kom . itu dalam pa diusulkan un alternatif algo n-bilangan ku ma RSA, besar n q untuk pem 384 bit, untuk an kunci, sem p dan q sebesa ncapai 96 byt 2-bit. Algoritm gram C#. enkripsinya, ng p dan q ya ang yang habis

memenuhi b hasil enkripsi

sepanjang 7 mie mod n besa

mun tidak mele erteks menja da proses dek perteks ditamp tu ciperteks d dekripsi dita agar kembal n dihilangkan file pada file

mbil hanya s ader. tan algoritma didapat dar BigInteger y ngan-bilangan ini digunakan sar seperti bil engolahannya pembangkitan sung menggun nilai p dan q. ISAAC yang elas ISAAC dapat mengha langan kunci u dilakukan pe yang dihasilka er tersebut me itArray 384 b er sebesar 384 ptografi. dapat dilihat b untuk digun a selain mema ecure PRNG Hal ini tentun mputer diban aper ini, un ntuk menggun oritma PRNG unci. r bilangan yan mbangkitan ku k keamanan. K makin sulit un ar 48 byte, ma te (768 bit). N ma RSA diimp plainteks dib aitu 384 bit. K s dibagi 384 b blok yang ju atau cipertek 768 bit, karen arnya dapat m ebihi 768 bit. adi jauh lebi kripsi hal yan mpung dalam b dipecah menj ampung dala li menjadi se an, dengan c ciperteks, se sebesar panja a RSA ini, dig ri sumber in yang khusus n dalam Alg an untuk men langan sebesa a. n kuncinya sen nakan PRNG I Dalam algori g diimplemen yang diimp asilkan bilanga yang dibutu enggabungan an oleh ISAA enjadi sebuah bit tersebut d 4 bit. bahwa ISAAC nakan sebagai ang dirancang G, algoritma nya akan me-ding penggu-ntuk optimasi nakan PRNG G untuk pem-ng digunakan unci adalah 48 Karena sema-ntuk diserang. aka besar nilai Nilai ini tentu plementasikan bagi menjadi Karena ukuran bit, digunakan umlah bitnya ks ditampung na hasil dari mencapai lebih . Oleh karena ih besar dari ng sebaliknya blok-blok 768 adi blok-blok am blok-blok eperti semula. cara memberi hinga jumlah ang file yang gunakan kelas nternet yang dibuat untuk oritma RSA. ampung bila-r 48 byte dan ndiri tidak se-ISAAC untuk itma RSA ini, ntasikan oleh plementasikan an sebesar 64 uhkan sebesar bit-bit 6 buah C, sehingga 6 h bitarray 384 dikonversikan C i g a -i G -n 8 -. i u n i n n a g i h a i a 8 k k . i h g s g k . -n -k , h n 4 r h 6 4 n

(5)

Makalah IF3 Gambar 3 D Setelah n BigInteger t bilangan prim maka nilai B dan q, yang k Berikut in nakan PRNG public voi { p = q = n = Big e = whi { } d = } public Big { Big whi { } ret } public Big { int //v bilangan r Int Bit Bit false); Big //K memanggil copyBitArr RSA 058 Kriptogra iagram penggab nilai BigInteg tersebut diper ma. Jika bila BigInteger itu kemudian aka ni adalah kode G ISAAC dala id Generate = gen48Byte = gen48Byte = p * q; gInteger T = gen48Byte ile (e.gcd( e = gen = e.modInve gInteger ge gInteger b ile (!b.isP b.genRa turn b; gInteger ge t i=0; variabel un random ISAA t64() aInt tArray[] In tArray IntB gInteger b Kelas RSA d fungsi man ray dan get A R = new R afi – Sem. II T bungan bit-bit bi ISAAC ger tersebut riksa apakah angan tersebu ulah yang aka an diolah menj e pembangkit am kode C#: eKeyISAAC() ePrimeISAAC ePrimeISAAC = (p - 1) ePrimeISAAC (T) != 1) n48BytePri erse(T); en48BytePri = new BigI ProbablePri andom48Byt enRandom48B ntuk menamp AC = new Int6 ntBits = Bi Bit = new B = new BigI dipanggil u nipulasi bi tBigIntFrom RSA(); Tahun 2010/20 ilangan hasil PR didapatkan, bilangan ter ut bilangan p an menjadi ni jadi kunci. tan kunci men

) C(); C(); * (q - 1); C(); meISAAC(); imeISAAC() Integer(); ime()) eISAAC(); ByteISAAC() pung hasil 64(); itArray[6]; BitArray(38 Integer();; untuk it mBitArray 011 RNG nilai rsebut prima, ilai p nggu-; ) ; 84, ; dari BitC BitA i * } Fu terle adala publ BitA inde { inde i++, brea } publ getB { Byte } D kunc Pe //Kelas Rand r for (i { i kelas r Converter.G Array(intBy } for (i { R.copyB 64), 64); } b = get return ungsi copyB tak dalam k ah : lic void co Array Sourc exTarget, i for (in exTarget; j , j++) { ak; } lic BigInte BigIntFromB Byte[] e[bitArray. Console bitArra BigInte return ari algoritma ci privat (d dan engujian dil s PRNG ISAA = new Rand = 0; i < 6 r.Isaac(); //mendapat aInt = r.v Byte[] int GetBytes(aI intBits[i] yte); = 0; i < 6 BitArray(In tBigIntFrom b; BitArray dan elas RSA.cs. opyBitAray( ce, int ind int Length) nt i = inde j < (indexT if (i >= S Target.Set eger BitArray(Bi Data = new .Length/8]; e.WriteLine ay.CopyTo(D eger b = ne b; tersebut, kun n n) didapatka VII. PENG lakukan den AC 64-bit d(); 6 ; i++) tkan nilai val(); tByte = Int); = new 6 ; i++) ntBit,intBi mBitArray(I n getBigIntF . Isi dari fu (BitArray T dexAwal, in ) exAwal, j = Target + Le Source.Leng t(j, Source itArray bit w ; e(Data.Leng Data,0); ew BigInteg unci publik (e an. GUJIAN ngan menge random its[i],0,( IntBit); FromBitArray ungsi tersebut Target, nt = ength); gth) e.Get(i)); tArray) gth); ger(Data); e dan n) dan enkripsi dan y t n n

(6)

Makalah IF3 mendekripsi ngujian dilak kunci men memakai alg Gambar Nilai kunc menggunaka tersebut adal p = 2297454166 0756992434 1952032793 q = 2904297885 3130482011 9106836453 e = 3007272880 0829541420 6760828389 n = 6672491279 9893999180 1291667728 1681231225 1564554199 4330176852 d = 1830589086 1055921955 4548468687 8813487334 2991553077 2095102991 Walaupun kali mengha bilangan ran dengan prose hasil bilanga ra kriptografi Kemudian 058 Kriptogra suatu pesan p kukan dengan nggunakan a goritma PRNG r 4 Pembangkita ci publik dan k an algoritma ah : 66822187734 40732384985 30658413729 58913204237 14979414140 37753678577 07786816098 01644697972 95773344579 92273732720 01159466129 88421232680 56117493622 93114594533 2935903 67979266646 58576876933 75537972446 45456613861 74827402912 1214267 n secara kasat silkan bilanga ndom 384 bit es komputasi an acak yang d fi. n kunci yang afi – Sem. II T pendek dalam terlebih dahu algoritma pe G ISAAC yang an kunci menggu kunci privat b yang sudah 41519597569 52940187538 96551730931 70584429915 07893387266 71168019813 87979985377 22527253635 99612649243 02900056890 93429769988 06619953968 23253482816 30239673401 63098559252 38748834029 67354452282 11455122473 21527245286 tmata tidak te an random un t, hal tersebu ISAAC yang didapatkan pu g dihasilkan Tahun 2010/20 m string. Prose ulu membangk embangkit k g sudah dibuat unakan ISAAC berhasil didap dibuat. Nilai 97723718653 81308184900 1 54634410896 68922698288 3 73569868191 54104249012 3 00089364598 81646416618 88156709286 60715134297 10350446893 21110646893 92332646945 25852582580 35034713841 69197421465 erlihat dan ha ntuk menda-p ut dapat diimb g cepat. Selai n lebih aman digunakan u 011 es pe-kitkan kunci t atkan i-nilai 3486 0832 6331 8438 1829 2842 8562 8026 6226 7037 3351 3797 5274 0899 1766 5941 arus 6 atkan bangi in itu seca-untuk meng Pl seme mal Hasi 0B00 5EC1 F65F 343A A818 K kunc . H menj D pemb keam tan b bang bilan kript Al digu karen Nam PNR dapa kede cang Untu mem peng genkripsi suat G lainteks yang entara hasil e dari chipertek il chiperte 00000197823 18F0C84A452 FEC9019EADA A5EA248EF28 89FA43531EF emudian chip ci privat asil dekripsi jadi plainteks

ari paper ini, bangkitan ku manan algoritm bilangan kunc gkit bilangan ngan acak ya tografi menjad lgoritma ISAA unakan untuk na kecepatann mun, hal ini t RG lain yang at lebih mengo epannya mun ggih untuk le uk saat ini IS miliki kualit ggunaannya[3 tu pesan pende Gambar 5 Conto g akan dienk enkripsinya m ks yang dihasil eks = 3C44B1B3567 2626FC51486 AB2D78DB74F 8F4888ECA07 FAAF16DC3BB erteks didekri berhasil m semula. V. KESIMP kesimpulan y nci sangat pe ma RSA. Sem i yang sangat n acak, oleh ang cepat, ma di dibutuhkan. AC adalah alg k mengoptim nya dan keama tidak menutup lebih mangku optimasikan a cul algoritma ebih mengopt SAAC termas as dan ke ]. dek. oh enkripsi kripsi adalah merupakan nil lkan. 787A4E225CE 685D9C07F62 FEA9B303953 77C0C35B66D BB3AF ipsi kembali m mengembalika PULAN yang didapat a enting dalam mentara prose t besar membu h karena itu mangkus, dan . goritma PNR masikan algo anannya secar up kemungkin us, cepat, dan algoritma RSA a PNRG lain timasikan alg suk beberapa kecepatan tin h kriptografi, lai heksadesi-EF3559C1AD 2F8634603C 305624FF83 DC0F7E4517 menggunakan an chiperteks adalah, proses m menentukan s pembangki-utuhkan pem-pembangkit aman secara G yang dapat oritma RSA, ra kriptografi. nan algoritma n aman, untuk A. Diharapkan n yang lebih goritma RSA. PNRG yang nggi dalam , -n s s n -t a t , . a k n h . g m

(7)

Makalah IF3058 Kriptografi – Sem. II Tahun 2010/2011 VIII. ACKNOWLEDGMENT

Ucapan terima kasih pertama-tama saya ucapkan sebesar-besarnya kepada Tuhan Yang Maha Kuasa. Kemudian terima kasih saya ucapkan kepada Bapak Rinaldi Munir yang telah membimbing kami selama mempelajari mata kuliah kriptografi. Kemudian kepada teman-teman saya yang telah mengajari saya bagaimana memanipulasi bit dan memberi tahu saya mengenai kelas BigInteger. Dan kepada penulis-penulis sumber referensi yang telah memberikan saya pengetahuan yang saya butuhkan.

REFERENCES

[1]Robert J. Jenkins Jr., ISAAC. Fast Software Encryption 1996, pp41– 49. [2]http://burtleburtle.net/bob/rand/isaacafa.html [3]http://en.wikipedia.org/wiki/ISAAC_(cipher) [4]http://burtleburtle.net/bob/rand/isaac.html [5]http://en.wikipedia.org/wiki/RSA PERNYATAAN

Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan saduran, atau terjemahan dari makalah orang lain, dan bukan plagiasi.

Bandung, 9 Mei 2011

Referensi

Dokumen terkait

Pada proses pengujian yang dilakukan dapat diketahui kemampuan dari system yang dibuat mampu mengenali segala aktifitas yang dilakukan intruder dalam usaha untuk menyusup

This study have limitations in studying this field, where the measurements to the media exposure variable using dummy variable where a value of 1 for companies that

Menurut analisis penulis upaya Wilayatul Hisbah dalam mengawasi dan menindak pelaku Maisir di lapangan pacuan kuda Aceh tengah belum maksimal dalam menjalankan tugas

[r]

1) Guru membuka kesempatan secara luas dan bervariasi kepada peserta didik untuk melakukan pengamatan melalui kegiatan membaca dan melihat tentang perlawanan rakyat

Perubahan aksesibilitas petani terhadap sumber teknologi, lokasi usahtani padi, jalan raya dan pasar input akan mempengaruhi peluang petani dalam mengadopsi

d) Selain mendapatkan hadiah, setiap anggota berhak mendapatkan bagi hasil pada akhir periode simpanan. e) Setoran Si Wadiah dapat dilakukan di seluruh kantor

- Bahan atau alat untuk melaksanakan suatu prosedur; dan - Langkah/ tahapan dengan urutan yang benar.. Rangkuman B.Indo: Menyibak Ilmu Dalam Laporan Hasil Observasi  Pengertian