$ Edisi : 0.0.5 - 27 Juni 1999 $ Catatan Tulisan ini dimaksudkan sebagai pengantar bagi Anda yang berminat mendalami bidang kriptografi, dan tulisan ini bukanlah sebuah referensi lengkap tentang kriptografi. Untuk mempelajari kriptografi lebih lanjut silakan Anda lihat pada bagian Sumber Informasi Lebih Lanjut tentang Kriptografi. Bila ada saran ataupun kritik tentang tulisan ini, silakan layangkan ke email penulis. Pendahuluan Kemajuan di idan! tele"omuni"asi dan "om#uter telah memun!"in"an seseoran! untu" mela"u"an transa"si isnis se$ara $ashless% selain itu ia ju!a da#at men!irim"an in&ormasi "e#ada temannya se$ara on-line. Ke!iatan-"e!iatan terseut tentu saja a"an menimul"an resi"o ilamana in&ormasi yan! sensiti& dan erhar!a terseut dia"ses oleh oran!-oran! yan! tida" erha" 'unauthori(ed #ersons). *isalnya% in&ormasi men!enai nomor "artu "redit anda% ila in&ormasi ini jatuh "e#ada oran!- oran! yan! jahat ma"a anda harus ersia#-sia# terhada# melonja"nya ta!ihan "artu "redit anda. +eelum tahun 1970-an% te"nolo!i "ri#to!ra&i di!una"an teratas hanya untu" tujuan militer dan di#lomati". ,"an teta#i "emudian idan! isnis dan #eroran!an mulai menyadari #entin!nya melindun!i in&ormasi erhar!a. Pengertian Dasar +uatu #esan yan! tida" disandi"an diseut sea!ai plaintet atau#un da#at diseut ju!a sea!ai !leartet. -roses yan! dila"u"an untu" men!uah #lainte.t "e dalam $i#herte.t diseut en!ryption atau en!ipherment. +edan!"an #roses untu" men!uah $i#herte.t "emali "e #lainte.t diseut de!ryption atau de!ipherment. +e$ara sederhana istilah-istilah di atas da#at di!amar"an sea!ai eri"ut : /. 1. -roses En"ri#si01e"ri#si +ederhana "ryptography adalah suatu ilmu atau#un seni men!aman"an #esan% dan dila"u"an oleh !ryptographer. +edan!% !ryptanalysis adalah suatu ilmu dan seni memu"a 'rea"in!) $i#herte.t dan oran! yan! mela"u"annya diseut !ryptanalyst. "ryptographi! system atau !ryptosystem adalah suatu &asilitas untu" men!"on2ersi"an #lainte.t "e $i#herte.t dan seali"nya. 1alam sistem ini% se#eran!"at #arameter yan! menentu"an trans&ormasi #en$i#heran tertentu diseut suatu set "un$i. -roses en"ri#si dan de"ri#si diatur oleh satu atau eera#a "un$i "ri#to!ra&i. +e$ara umum% "un$i-"un$i yan! di!una"an untu" #roses #en!en"ri#sian dan #ende"ri#sian tida" #erlu identi"% ter!antun! #ada sistem yan! di!una"an. +e$ara umum o#erasi en"ri#si dan de"ri#si da#at diteran!"an se$ara matematis sea!ai eri"ut : EK (M) = C (Proses Enkripsi) DK (C) = M (Proses Dekripsi) -ada saat #roses en"ri#si "ita menyandi"an #esan * den!an suatu "un$i K lalu dihasil"an #esan 3. +edan!"an #ada #roses de"ri#si% #esan 3 terseut diurai"an den!an men!!una"an "un$i K sehin!!a dihasil"an #esan * yan! sama se#erti #esan seelumnya. 1en!an demi"ian "eamanan suatu #esan ter!antun! #ada "un$i atau#un "un$i-"un$i yan! di!una"an% dan tida" ter!antun! #ada al!oritma yan! di!una"an. +ehin!!a al!oritma-al!oritma yan! di!una"an terseut da#at di#uli"asi"an dan dianalisis% serta #rodu"-#rodu" yan! men!!una"an al!oritma terseut da#at di#rodu"si massal. Tida"lah menjadi masalah a#aila seseoran! men!etahui al!oritma yan! "ita !una"an. +elama ia tida" men!etahui "un$i yan! di#a"ai% ia teta# tida" da#at mema$a #esan. Cryptographic system (cryptosystem) +uatu $ry#tosystem terdiri dari seuah al!oritma% seluruh "emun!"inan #lainte.t% $i#herte.t dan "un$i-"un$i. +e$ara umum $ry#tosystem da#at di!olon!"an menjadi dua uah% yaitu : 1. +ymmetri$ 3ry#tosystem 1alam symmetri$ $ry#tosystem ini% "un$i yan! di!una"an untu" #roses en"ri#si dan de"ri#si #ada #rinsi#nya identi"% teta#i satu uah "un$i da#at #ula diturun"an dari "un$i yan! lainnya. Kun$i-"un$i ini harus dirahasia"an. 4leh "arena itulah sistem ini serin! diseut sea!ai se!ret# key !iphersystem. Jumlah "un$i yan! diutuh"an umumnya adalah : n32 5 n . 'n-1) -------- 2 den!an n menyata"an anya"nya #en!!una. 3ontoh dari sistem ini adalah 1ata En$ry#tion +tandard '1E+)% 6lo7&ish% 81E,. 2. ,ssymmetri$ 3ry#tosystem 1alam assymmetri$ $ry#tosystem ini di!una"an dua uah "un$i. +atu "un$i yan! diseut "un$i #uli" 'publi! key) da#at di#uli"asi"an% sedan! "un$i yan! lain yan! diseut "un$i #ri2at 'pri$ate key) harus dirahasia"an. -roses men!!una"an sistem ini da#at diteran!"an se$ara sederhana sea!ai eri"ut : ila , in!in men!irim"an #esan "e#ada 6% , da#at menyandi"an #esannya den!an men!!una"an "un$i #uli" 6% dan ila 6 in!in mema$a surat terseut% ia #erlu mende"ri#si"an surat itu den!an "un$i #ri2atnya. 1en!an demi"ian "edua elah #iha" da#at menjamin asal surat serta "easlian surat terseut% "arena adanya me"anisme ini. 3ontoh sistem ini antara lain 9+, +$heme dan *er"le-Hellman +$heme. +etia# $ry#tosytem yan! ai" harus memili"i "ara"teristi" sea!ai eri"ut : Keamanan sistem terleta" #ada "erahasiaan "un$i dan u"an #ada "erahasiaan al!oritma yan! di!una"an. 3ry#tosystem yan! ai" memili"i ruan! "un$i '"eys#a$e) yan! esar. 3ry#tosystem yan! ai" a"an men!hasil"an $i#herte.t yan! terlihat a$a" dalam seluruh tes statisti" yan! dila"u"an terhada#nya. 3ry#tosystem yan! ai" mam#u menahan seluruh seran!an yan! telah di"enal seelumnya :amun demi"ian #erlu di#erhati"an ah7a ila suatu $ry#tosystem erhasil memenuhi seluruh "arateristi" di atas elum tentu ia meru#a"an sistem yan! ai". 6anya" $ry#tosystem lemah yan! terlihat ai" #ada a7alnya. Kadan! "ala untu" menunju""an ah7a suatu $ry#tosystem "uat atau ai" da#at dila"u"an den!an men!!una"an #emu"tian matemati"a. Hin!!a saat ini masih anya" oran! yan! men!!una"an $ry#tosystem yan! relati& mudah diu"a% alasannya adalah mere"a tida" men!etahui sistem lain yan! leih ai" serta "adan! "ala terda#at moti2asi yan! "uran! untu" men!in2estasi"an seluruh usaha yan! di#erlu"an untu" memu"a suatu sistem. Cryptographic Protokol -en!ertian +uatu #roto"ol adalah seran!"aian lan!"ah yan! meliat"an dua #iha" atau leih dan diran$an! untu" menyelesai"an suatu tu!as. 1ari de&inisi ini da#at diamil eera#a arti sea!ai eri"ut : #roto"ol memili"i urutan dari a7al hin!!a a"hir; setia# lan!"ah harus dila"sana"an se$ara er!iliran; suatu lan!"ah tida" da#at di"erja"an ila lan!"ah seelumnya elum selesai; di#erlu"an dua #iha" atau leih untu" mela"sana"an #roto"ol; #roto"ol harus men$a#ai suatu hasil; +elain itu% suatu #roto"ol #un memili"i "ara"teristi" yan! lain% yaitu : setia# oran! yan! terliat dalam #roto"ol harus men!etahui terleih dahulu men!enai #roto"ol dan seluruh lan!"ah yan! a"an dila"sana"an; setia# oran! yan! terliat dalam #roto"ol harus menyetujui untu" men!i"utinya; #roto"ol tida" oleh menimul"an "eran$uan; #roto"ol harus len!"a#; 3ry#to!ra#hi$ #roto$ol adalah suatu #roto"ol yan! men!!una"an "ri#to!ra&i. -roto"ol ini meliat"an sejumlah al!oritma "ri#to!ra&i% namun se$ara umum tujuan #roto"ol leih dari se"edar "erahasiaan. -iha"-#iha" yan! er#artisi#asi mun!"in saja in!in mema!i sea!ian rahasianya untu" men!hitun! seuah nilai% men!hasil"an urutan random% atau #un menandatan!ani "ontra" se$ara ersamaan. -en!!unaan "ri#to!ra&i dalam seuah #roto"ol terutama dituju"an untu" men$e!ah atau #un mendete"si adanya ea$esdropping dan !heating. <un!si -roto"ol 1alam "ehidu#an "ita sehari-hari terda#at anya" se"ali #roto"ol tida" resmi% misalnya saja dalam #ermainan "artu% #emun!utan suara dalam #emilihan umum. ,"an teta#i tida" ada seoran! #un yan! memi"ir"an men!enai #roto"ol-#roto"ol ini% #roto"ol-#roto"ol ini terus er"eman!% semua oran! men!etahui a!aimana men!!una"annya. +aat ini% sema"in anya" intera"si antar manusia dila"u"an melalui jarin!an "om#uter. Kom#uter ini tentu saja memerlu"an suatu #roto"ol &ormal a!ar da#at mela"u"an hal yan! iasa dila"u"an manusia tan#a er#i"ir. 6ila "ita er#indah dari satu daerah "e daerah lain dan men!etahui ah7a "artu #emilihan suaranya ereda den!an yan! iasa "ita !una"an% "ita da#at erada#tasi den!an mudah. ,"an teta#i "emam#uan ini elum dimili"i oleh "om#uter% sehin!!a di#erlu"an suatu #roto"ol. -roto"ol di!una"an untu" men!atra"si"an #roses #enyelesaian suatu tu!as dari me"anisme yan! di!una"an. -roto"ol "omuni"asi adalah sama mes"i#un diim#lementasi"an #ada -3 atau =,>. 6ila "ita ya"in ah7a "ita memili"i #roto"ol yan! ai"% "ita da#at men!im#lementasi"annya dalam se!ala enda mulai dari tele#on hin!!a #eman!!an! roti $erdas. -enyeran!an terhada# #roto"ol -enyeran!an $ry#to!ra#hi$ da#at dituju"an #ada eera#a hal eri"ut : al!oritma $ry#to!ra#hi$ yan! di!una"an dalam #roto"ol; te"ni" $ry#to!ra#hi$ yan! di!una"an untu" men!im#lementasi"an al!oritma dan #roto"ol; #roto"ol itu sendiri; +eseoran! da#at men$oa era!ai $ara untu" menyeran! suatu #roto"ol. *ere"a yan! tida" terliat dalam #roto"ol da#at menyada# sea!ian atau seluruh #roto"ol. Tinda"an ini diseut #enyeran!an #asi&% "arena si #enyeran! tida" mem#en!aruhi atau men!uah #roto"ol% ia hanya men!amati #roto"ol dan erusaha untu" mem#eroleh in&ormasi. +elain itu% seoran! #enyeran! da#at erusaha untu" men!uah #roto"ol demi "euntun!annya sendiri. 8a da#at men!irim"an #esan dalam #roto"ol% men!ha#us #esan% atau ah"an men!uah in&ormasi yan! ada di dalam suatu "om#uter. Tinda"an-tinda"an ini diseut sea!ai #enyeran!an a"ti&% "arena ia memutuh"an suatu $am#ur tan!an a"ti&. +eoran! #enyeran! tida"lah hanya erasal dari lin!"un!an luar #roto"ol% namun ia mun!"in ju!a erasal dari dalam #roto"ol itu sendiri% ia da#at meru#a"an salah satu #iha" yan! terliat dalam #roto"ol. Ti#e #enyeran! sema$am ini diseut sea!ai !heater. %assi$e !heater men!i"uti #roto"ol% teta#i erusaha mem#eroleh in&ormasi leih anya" dari#ada yan! di#eroleh"an #roto"ol a!i dirinya. A!ti$e !heater men!uah #roto"ol dalam usahanya untu" eruat $uran!. ?saha untu" menja!a "eamanan #roto"ol a"an sema"in sulit a#aila #iha"-#iha" yan! terliat umumnya meru#a"an a$ti2e $heater% oleh "arena itu suatu #roto"ol yan! ai" harus mam#u atau #un harus aman terhada# "emun!"inan passi$e !heating. Berbagai macam basic cryptanalytic attacks Tujuan !ryptanalyti! atta!k adalah untu" men!etahui eera#a #lainte.t yan! sesuai den!an $i#herte.t yan! ada dan erusaha menentu"an "un$i yan! memeta"an satu den!an yan! lainnya. -lainte.t ini da#at di"etahui "arena ia meru#a"an standar atau "arena #endu!aan. Ji"a suatu te"s didu!a erada di dalam suatu #esan% #osisinya mun!"in tida" di"etahui% teta#i suatu #esan la(imnya $u"u# #ende" sehin!!a memun!"in"an $ry#tanalyst mendu!a #lainte.t yan! di"etahui dalam setia# #osisi yan! mun!"in dan mela"u"an #enyeran!an #ada setia# "asus se$ara #aralel. +uatu al!oritma en"ri#si yan! "uat tida" hanya mam#u ertahan terhada# seran!an #lainte.t yan! di"enal teta#i ju!a mam#u ertahan terhada# ada#ti2e $hosen #lainte.t. 1alam #enyeran!an ini% $ry#tanalyst er"esem#atan memilih #lainte.t yan! di!una"an dan da#at mela"u"annya se$ara erulan! "ali% memilih #lainte.t untu" taha# :@1 setelah men!analisis hasil taha# :. Aan! dima"sud $ry#tanalyti$ atta$"s adalah usaha-usaha yan! dila"u"an seseoran! untu" mem#eroleh in&ormasi atau#un data yan! telah dien"ri#si. +e$ara rin!"as terda#at tujuh ma$am asi$ $ry#tanalyti$ atta$"s erdasar"an tin!"at "esulitannya a!i #enyeran!% dimulai dari yan! #alin! sulit adalah : 3i#herte.t-only atta$". 1alam #enyeran!an ini% seoran! $ry#tanalyst memili"i $i#herte.t dari sejumlah #esan yan! seluruhnya telah dien"ri#si men!!una"an al!oritma yan! sama. Kno7n-#lainte.t atta$". 1alam ti#e #enyeran!an ini% $ry#tanalyst memili"i a"ses tida" hanya "e $i#herte.t sejumlah #esan% namun ia ju!a memili"i #lainte.t #esan-#esan terseut. 3hosen-#lainte.t atta$". -ada #enyeran!an ini% $ry#tanalyst tida" hanya memili"i a"ses atas $i#herte.t dan #lainte.t untu" eera#a #esan% teta#i ia ju!a da#at memilih #lainte.t yan! dien"ri#si. ,da#ti2e-$hosen-#lainte.t atta$". -enyeran!an ti#e ini meru#a"an suatu "asus "husus $hosen-#lainte.t atta$". 3ry#tanalyst tida" hanya da#at memilih #lainte.t yan! dien"ri#si% ia #un memili"i "emam#uan untu" memodi&i"asi #ilihan erdasar"an hasil en"ri#si seelumnya. 1alam $hosen-#lainte.t atta$"% $ry#tanalyst mun!"in hanya da#at memili"i #lainte.t dalam suatu lo" esar untu" dien"ri#si; dalam ada#ti2e-$hosen-#lainte.t atta$" ini ia da#at memilih lo" #lainte.t yan! leih "e$il dan "emudian memilih yan! lain erdasar"an hasil yan! #ertama% #roses ini da#at dila"u"annya terus menerus hin!!a ia da#at mem#eroleh seluruh in&ormasi. 3hosen-$i#herte.t atta$". -ada ti#e ini% $ry#tanalyst da#at memilih $i#herte.t yan! ereda untu" dide"ri#si dan memili"i a"ses atas #lainte.t yan! dide"ri#si. 3hosen-"ey atta$". 3ry#tanalyst #ada ti#e #enyeran!an ini memili"i #en!etahuan tentan! huun!an antara "un$i-"un$i yan! ereda. 9uer-hose $ry#tanalysis. -ada ti#e #enyeran!an ini% $ry#tanalyst men!an$am% memeras% atau ah"an mema"sa seseoran! hin!!a mere"a memeri"an "un$inya. Analisis berbagai tipe penyerangan secara matematis +uatu #enyeran!an #asi& atas $ry#tosystem adalah semua metode untu" men!un!"a#"an in&ormasi tentan! #lainte.t dan $i#herte.tnya den!an tan#a men!etahui "un$i. +e$ara matematis : Diberikan fungsi F, G, dan H yang terdiri dari n variabe! Diberikan siste" enkripsi E! Diberikan suatu distribusi painte#t dan kun$i! +uatu #enyeran!an atas E den!an men!!una"an / den!an men!asumsi"an < mema!i H den!an #roailitas # adalah suatu al!oritma , den!an se#asan! in#ut &%! dan satu uah out#ut h sedemi"ian hin!!a terda#at #roailitas # atas % = H(P & , ', P n )% ji"a "ita memili"i f = F(P & , ', P n ) dan g = G(E K (P & ), ', EK(P n )). -erlu di#erhati"an ah7a #roailitas ini ter!antun! #ada distriusi 2e"tor-2e"tor (K,P & ,',P n ). -enyeran!an a"an meru#a"an suatu tri2ial ila terda#at #roailitas #alin! sedi"ir # untu" % = H(P & , ', P n ) ji"a f = F (P & ,',P n ) dan g = G (C & ,',C n ). 1i sini 31%B%3n terleta" #ada $i#herte.t yan! mun!"in% dan tida" memili"i huun!an tertentu den!an P & ,',P n . 1en!an "ata lain% suatu seran!an a"an meru#a"an tri2ial ila ia tida" enar-enar men!!una"an en"ri#si E K (P & ),',E K (P n ). 1en!an merumus"an #enyeran!an se$ara matematis% "ita da#at se$ara te#at mem&ormulasi"an dan ah"an memu"ti"an #ernyataan ah7a suatu $ry#tosystem itu "uat. Kita "ata"an% sea!ai $ontoh% ah7a suatu $ry#tosystem adalah aman terhada# seluruh #enyeran!an #asi& ji"a semaran! #enyeran!an nontri2ial terhada#nya tida" #ra"tis. Ji"a "ita da#at memu"ti"an #ernyataan ini ma"a "ita a"an memili"i "eya"inan ah7a $ry#tosystem "ita a"an ertahan terhada# seluruh te"ni" $ry#tanalyti$ #asi&. Ji"a "ita da#at meredu"si #ernyataan ini hin!!a #ada eera#a masalah yan! tida" ter#e$ah"an ma"a "ita masih teta# memili"i "eya"inan ah7a $ry#tosystem "ita tida" mudah diu"a. 3i#herte.t-only atta$" 1en!an men!!una"an notasi di atas% suatu $i#herte.t-only atta$" adalah suatu #enyeran!an den!an < adalah "onstanta. 1ieri"an hanya eera#a in&ormasi /'EK'-1)%..EK'-n)) tentan! n $i#herte.t% #enyeran!an harus memili"i "esem#atan men!hasil"an eera#a in&ormasi H'-1% B%-n) tentan! #lainte.t. -enyeran!an a"an meru#a"an suatu tri2ial ila ia hanya men!hasil"an H'-1%B%-n) "eti"a dieri"an /'31%B%3n) untu" 31%B%3n a$a". +ea!ai $ontoh% misal"an / ' 3 ) 5 3 dan misal"an H'-) adalah it #ertama -. Kita da#at se$ara mudah menulis suatu #enyeran!an% #endu!aan% yan! mendu!a ah7a H'-) adalah 1. -enyeran!an ini adalah tri2ial "arena tida" men!!una"an $i#herte.t% #roailitas "eerhasilannya adalah 50 C. 1i lain #iha"% terda#at #enyeran!an atas 9+, yan! mem#rodu"si satu it in&ormasi tentan! -% den!an #roailitas "eerhasilan 100 C% men!!una"an 3. Ji"a dieri"an suatu 3 a$a" ma"a tin!"at "esu"sesan turun menjadi 50C. 8nilah yan! diseut #enyeran!an nontri2ial. Kno7n-#lainte.t atta$" -enyeran!an "no7n-#lainte.t "lasi" memili"i <'-1%-2) 5 -1% /'31%32) 5 '31%32)% dan H'-1%-2) ter!antun! hanya #ada -2. 1en!an "ata lain% ila dieri"an dua $i#herte.t 31 dan 32 dan satu de"ri#si -1% #enyeran!an "no7n-#lainte.t seharusnya men!hasil"an in&ormasi tentan! de"ri#si -2. 6rute-&or$e atta$" ?m#ama"an #enyeran!an "no7n-#lainte.t eri"ut. Kita dieri"an sejumlah #lainte.t -1%B%-n-1 dan $i#herte.t 31%B%3n-1. Kita ju!a dieri"an seuah $i#herte.t 3n. Kita jalan"an seluruh "un$i K. 6ila "ita temu"an K sedemi"ian sehin!!a EK'-1) 5 3i untu" setia# 8Dn% "ita $eta" 1K'3n). Ji"a n $u"u# esar sehin!!a hanya satu "un$i yan! e"erja% #enyeran!an ini a"an su"ses untu" seluruh in#ut yan! 2alid #ada setia# 7a"tu% sementara ia a"an men!hasil"an hasil yan! te#at hanya se"ali untu" in#ut a$a". -enyeran!an ini adalah nontri2ial% masalahnya ia san!at lamat ila terda#at anya" "emun!"inan "un$i. Kon2ersi "e HT*E oleh Tedi Heriyanto. $ 12 +e#temer 1999. 10.F0 $
Sumber Informasi Lebih Lanut (belum selesai) Gesite dan <T- htt#:00777.rsa.$om '9+, 8n$.) htt#:00777.$ounter#ane.$om '3ounter#ane 8n$.) htt#:00theory.l$s.mit.edu0Hri2est0 '9onald E. 9i2est-the 9 in 9+,) htt#:00777.$ry#to!ra#hy.$om
Key-encripting Key Kun$i "ri#to!ra&i yan! di!una"an untu" men!en"ri#si "un$i lain% teta#i iasanya tida" di!una"an untu... Cipher ,l!oritma "ri#to!ra&i '$ry#to!ra#hi$ al!orithm) eru#a #ersamaan matemati" yan! di!una"an dalam #ros... RSA *eru#a"an al!oritma "ri#to!ra&i untu" "un$i #uli$ '#uli$ "ey $ry#to!ra#hy) yan! umum di!una"an saa... Cryptographers -ara #ela"u atau #ra"tisi "ri#to!ra&i. Digital Signature Algorithm 1+, adalah meru#a"an te"ni" "ri#to!ra&i yan! erasis "e#ada masalah matemati"a yan! diseut dis$ret... KRIPTOGRAFI Sebelum melangkah lebih jauh untuk melakukan analisis terhadap beberapa SPI yang ada, diperlukan perangkat-perangkat untuk membantu proses analisis tersebut. Salah satu dasar yang penting adalah penggunaan kriptografi sebagai landasan-landasan teoritis bagaimana sistem-sistem perdagangan di Internet tersebut melakukan pengamanan. Kriptografi adalah ilmu yang mempelajari bagaimana membuat suatu pesan yang dikirim pengirim dapat disampaikan kepada penerima dengan aman [Schn !". Kriptografi dapat memenuhi kebutuhan umum suatu transaksi# $. Kerahasiaan %confidentiality& dijamin dengan melakukan enkripsi %penyandian&. 2. Keutuhan %integrity& atas data-data pembayaran dilakukan dengan fungsi hash satu arah. '. (aminan atas identitas dan keabsahan %authenticity& pihak-pihak yang melakukan transaksi dilakukan dengan menggunakan password atau sertifikat digital. Sedangkan keotentikan data transaksi dapat dilakukan dengan tanda tangan digital. ). *ransaksi dapat dijadikan barang bukti yang tidak bisa disangkal %non- repudiation& dengan memanfaatkan tanda tangan digital dan sertifikat digital. Pembakuan penulisan pada kriptografi dapat ditulis dalam bahasa matematika. +ungsi- fungsi yang mendasar dalam kriptografi adalah enkripsi dan dekripsi. ,nkripsi adalah proses mengubah suatu pesan asli %plaintext& menjadi suatu pesan dalam bahasa sandi %ciphertext&. C - E %M& dimana M = pesan asli E = proses enkripsi C = pesan dalam bahasa sandi %untuk ringkasnya disebut sandi& Sedangkan dekripsi adalah proses mengubah pesan dalam suatu bahasa sandi menjadi pesan asli kembali. M - D %C& D - proses dekripsi .mumnya, selain menggunakan fungsi tertentu dalam melakukan enkripsi dan dekripsi, seringkali fungsi itu diberi parameter tambahan yang disebut dengan istilah kunci. .ntuk memudahkan penggambaran suatu skenario komunikasi dalam pembahasan selanjutnya, maka dipergunakan nama-nama orang yang rele/an dengan peran yang dilakukannya dalam komunikasi itu. Kode & nama Penjelasan 0# 0nto Pihak pertama 1# 1adu Pihak kedua 2# 2handra Pihak ketiga ,# ,di Pihak penyadap informasi yang tidak diperuntukkan kepadanya %eavesdropper& 3# 3aman Pihak yang tidak hanya menyadap informasi, namun juga mengubah informasi yang disadap %malacious person& *# *ari, *ata, *ania Pihak yang dipercaya oleh pihak pertama, kedua dan ketiga %trusted person& *abel '.$. 4ama-nama ganti untuk mempermudah penjelasan 1ab ini akan menguraikan mengenai beberapa jenis serangan, jenis-jenis kunci kriptografi, berbagai jenis perangkat dan protokol kriptografi, serta masalah panjang kunci kriptografi. !enis Serangan Selain ada pihak yang ingin menjaga agar pesan tetap aman, ada juga ternyata pihak- pihak yang ingin mengetahui pesan rahasia tersebut secara tidak sah. 1ahkan ada pihak- pihak yang ingin agar dapat mengubah isi pesan tersebut. Ilmu untuk mendapatkan pesan yang asli dari pesan yang telah disandikan tanpa memiliki kunci untuk membuka pesan rahasia tersebut disebut kriptoanalisis. Sedangkan usaha untuk membongkar suatu pesan sandi tanpa mendapatkan kunci dengan cara yang sah dikenal dengan istilah serangan %attack&. 5i ba6ah ini dijelaskan beberapa macam penyerangan terhadap pesan yang sudah dienkripsi# $. Ciphertext only attack, penyerang hanya mendapatkan pesan yang sudah tersandikan saja. 2. Known plaintext attack, dimana penyerang selain mendapatkan sandi, juga mendapatkan pesan asli. *erkadang disebut pula clear-text attack. '. Choosen plaintext attack, sama dengan known plaintext attack, namun penyerang bahkan dapat memilih penggalan mana dari pesan asli yang akan disandikan. 1erdasarkan bagaimana cara dan posisi seseorang mendapatkan pesan-pesan dalam saluran komunikasi, penyerangan dapat dikategorikan menjadi# $. Sniffing# secara harafiah berarti mengendus, tentunya dalam hal ini yang diendus adalah pesan %baik yang belum ataupun sudah dienkripsi& dalam suatu saluran komunikasi. 7al ini umum terjadi pada saluran publik yang tidak aman. Sang pengendus dapat merekam pembicaraan yang terjadi. 2. eplay attack [5733 !"# (ika seseorang bisa merekam pesan-pesan handshake %persiapan komunikasi&, ia mungkin dapat mengulang pesan-pesan yang telah direkamnya untuk menipu salah satu pihak. '. Spoofing [5733 !"# Penyerang 8 misalnya 3aman 8 bisa menyamar menjadi 0nto. Semua orang dibuat percaya bah6a 3aman adalah 0nto. Penyerang berusaha meyakinkan pihak-pihak lain bah6a tak ada salah dengan komunikasi yang dilakukan, padahal komunikasi itu dilakukan dengan sang penipu9penyerang. 2ontohnya jika orang memasukkan PI4 ke dalam mesin 0*3 palsu 8 yang benar-benar dibuat seperti 0*3 asli 8 tentu sang penipu bisa mendapatkan PI4-nya dan copy pita magentik kartu 0*3 milik sang nasabah. Pihak bank tidak tahu bah6a telah terjadi kejahatan. ). Man-in-the-middle [Schn !"# (ika spoofing terkadang hanya menipu satu pihak, maka dalam skenario ini, saat 0nto hendak berkomunikasi dengan 1adu, 3aman di mata 0nto seolah-olah adalah 1adu, dan 3aman dapat pula menipu 1adu sehingga 3aman seolah-olah adalah 0nto. 3aman dapat berkuasa penuh atas jalur komunikas ini, dan bisa membuat berita fitnah. Kabel koaksial yang sering dipergunakan pada jaringan sangat rentan terhadap serangan vampire tap [*ane :"! yakni perangkat keras sederhana yang bisa menembus bagian dalam kabel koaksial sehingga dapat mengambil data yang mengalir tanpa perlu memutuskan komunikasi data yang sedang berjalan. Seseorang dengan vampire tap dan komputer jinjing dapat melakukan serangan pada bagian apa saja dari kabel koaksial. Penyerang juga bisa mendapatkan kunci dengan cara yang lebih tradisional, yakni dengan melakukan penyiksaan, pemerasan, ancaman, atau bisa juga dengan menyogok seseorang yang memiliki kunci itu. Ini adalah cara yang paling ampuh untuk mendapat kunci. "unci Simetris Ini adalah jenis kriptografi yang paling umum dipergunakan. Kunci untuk membuat pesan yang disandikan sama dengan kunci untuk membuka pesan yang disandikan itu. (adi pembuat pesan dan penerimanya harus memiliki kunci yang sama persis. Siapapun yang memiliki kunci tersebut 8 termasuk pihak-pihak yang tidak diinginkan 8 dapat membuat dan membongkar rahasia ciphertext. Problem yang paling jelas disini terkadang bukanlah masalah pengiriman ciphertext-nya, melainkan masalah bagaimana menyampaikan kunci simetris tersebut kepada pihak yang diinginkan. 2ontoh algoritma kunci simetris yang terkenal adalah 5,S %Data Encryption Standard& dan ;2-). <ambar '.$. Kunci simetris "unci Asimetris Pada pertengahan tahun =>-an ?hitfield 5iffie dan 3artin 7ellman menemukan teknik enkripsi asimetris yang mere/olusi dunia kriptografi. Kunci asimetris adalah pasangan kunci-kunci kriptografi yang salah satunya dipergunakan untuk proses enkripsi dan yang satu lagi untuk dekripsi. Semua orang yang mendapatkan kunci publik dapat menggunakannya untuk mengenkripsikan suatu pesan, sedangkan hanya satu orang saja yang memiliki rahasia tertentu 8 dalam hal ini kunci pri/at 8 untuk melakukan pembongkaran terhadap sandi yang dikirim untuknya. 5engan cara seperti ini, jika 0nto mengirim pesan untuk 1adu, 0nto dapat merasa yakin bah6a pesan tersebut hanya dapat dibaca oleh 1adu, karena hanya 1adu yang bisa melakukan dekripsi dengan kunci pri/atnya. *entunya 0nto harus memiliki kunci publik 1adu untuk melakukan enkripsi. 0nto bisa mendapatkannya dari 1adu, ataupun dari pihak ketiga seperti *ari. <ambar '.2. Penggunaan kunci asimetris *eknik enkripsi asimetris ini jauh lebih lambat ketimbang enkripsi dengan kunci simetris. @leh karena itu, biasanya bukanlah pesan itu sendiri yang disandikan dengan kunci asimetris, namun hanya kunci simetrislah yang disandikan dengan kunci asimetris. Sedangkan pesannya dikirim setelah disandikan dengan kunci simetris tadi. 2ontoh algoritma terkenal yang menggunakan kunci asimetris adalah ;S0 %merupakan singkatan penemunya yakni ;i/est, Shamir dan 0dleman&. #ungsi Hash Satu Arah Kini akan dibahas mengenai keutuhan pesan saat dikirimkan. 1agaimana jika 0nto mengirimkan surat pembayaran kepada 1adu sebesar $ juta rupiah, namun di tengah jalan 3aman %yang ternyata berhasil membobol sandi entah dengan cara apa& membubuhkan angka > lagi dibelakangnya sehingga menjadi $> juta rupiahA 5i mata *ari, pesan tersebut harus utuh, tidak diubah-ubah oleh siapapun, bahkan bukan hanya oleh 3aman, namun juga termasuk oleh 0nto, 1adu dan gangguan pada transmisi pesan %noise&. 7al ini dapat dilakukan dengan fungsi hash satu arah %one-way hash function&, yang terkadang disebut sidik jari %fingerprint&, hash, message integrity check! atau manipulation detection code. Saat 0nto hendak mengirimkan pesannya, dia harus membuat sidik jari dari pesan yang akan dikirim untuk 1adu. Pesan %yang besarnya dapat ber/ariasi& yang akan di-hash disebut pre-image! sedangkan outputnya yang memiliki ukurannya tetap, disebut hash- value %nilai hash&" Kemudian, melalui saluran komunikasi yang aman, dia mengirimkan sidik jarinya kepada 1adu. Setelah 1adu menerima pesan si 0nto 8 tidak peduli le6at saluran komunikasi yang mana 8 1adu kemudian juga membuat sidik jari dari pesan yang telah diterimanya dari 0nto. Kemudian 1adu membandingkan sidik jari yang dibuatnya dengan sidik jari yang diterimanya dari 0nto. (ika kedua sidik jari itu identik, maka 1adu dapat yakin bah6a pesan itu utuh tidak diubah-ubah sejak dibuatkan sidik jari yang diterima 1adu. (ika pesan pembayaran $ juta rupiah itu diubah menjadi $> juta rupiah, tentunya akan menghasilkan nilai hash yang berbeda. <ambar '.'. 3embuat sidik jari pesan +ungsi hash untuk membuat sidik jari tersebut dapat diketahui oleh siapapun, tak terkecuali, sehingga siapapun dapat memeriksa keutuhan dokumen atau pesan tertentu. *ak ada algoritma rahasia dan umumnya tak ada pula kunci rahasia. (aminan dari keamanan sidik jari berangkat dari kenyataan bah6a hampir tidak ada dua pre-image yang memiliki hash-/alue yang sama. Inilah yang disebut dengan sifat collision free dari suatu fungsi hash yang baik. Selain itu, sangat sulit untuk membuat suatu pre-image jika hanya diketahui hash-/aluenya saja. 2ontoh algoritma fungsi hash satu arah adalah 35-B dan S70. Message authentication code %302& adalah salah satu /ariasi dari fungsi hash satu arah, hanya saja selain pre- image! sebuah kunci rahasia juga menjadi input bagi fungsi 302. $anda $angan Digital 1adu memang dapat merasa yakin bah6a sidik jari yang datang bersama pesan yang diterimanya memang berkorelasi. 4amun bagaimana 1adu dapat merasa yakin bah6a pesan itu berasal dari 0ntoA 1isa saja saat dikirimkan oleh 0nto melalui saluran komunikasi yang tidak aman, pesan tersebut diambil oleh 3aman. 3aman kemudian mengganti isi pesan tadi, dan membuat lagi sidik jari dari pesan yang baru diubahnya itu. Calu, 3aman mengirimkan lagi pesan beserta sidik jarinya itu kepada 1adu, seolah-oleh dari 0nto. .ntuk mencegah pemalsuan, 0nto membubuhkan tanda tangannya pada pesan tersebut. 5alam dunia elektronik, 0nto membubuhkan tanda tangan digitalnya pada pesan yang akan dikirimkan untuk 1adu sehingga 1adu dapat merasa yakin bah6a pesan itu memang dikirim oleh 0nto. Sifat yang diinginkan dari tanda tangan digital diantaranya adalah# $. *anda tangan itu asli %otentik&, tidak mudah ditulis9ditiru oleh orang lain. Pesan dan tanda tangan pesan tersebut juga dapat menjadi barang bukti, sehingga penandatangan tak bisa menyangkal bah6a dulu ia tidak pernah menandatanganinya. 2. *anda tangan itu hanya sah untuk dokumen %pesan& itu saja. *anda tangan itu tidak bisa dipindahkan dari suatu dokumen ke dokumen lainnya. Ini juga berarti bah6a jika dokumen itu diubah, maka tanda tangan digital dari pesan tersebut tidak lagi sah. '. *anda tangan itu dapat diperiksa dengan mudah. ). *anda tangan itu dapat diperiksa oleh pihak-pihak yang belum pernah bertemu dengan penandatangan. B. *anda tangan itu juga sah untuk kopi dari dokumen yang sama persis. 3eskipun ada banyak skenario, ada baiknya kita perhatikan salah satu skenario yang cukup umum dalam penggunaan tanda tangan digital. *anda tangan digital memanfaatkan fungsi hash satu arah untuk menjamin bah6a tanda tangan itu hanya berlaku untuk dokumen yang bersangkutan saja. 1ukan dokumen tersebut secara keseluruhan yang ditandatangani, namun biasanya yang ditandatangani adalah sidik jari dari dokumen itu beserta timestamp-nya dengan menggunakan kunci pri/at. #imestamp berguna untuk menentukan 6aktu pengesahan dokumen. <ambar '.). Pembuatan tanda tangan digital Keabsahan tanda tangan digital itu dapat diperiksa oleh 1adu. Pertama-tama 1adu membuat lagi sidik jari dari pesan yang diterimanya. Calu 1adu mendekripsi tanda tangan digital 0nto untuk mendapatkan sidik jari yang asli. 1adu lantas membandingkan kedua sidik jari tersebut. (ka kedua sidik jari tersebut sama, maka dapat diyakini bah6a pesan tersebut ditandatangani oleh 0nto. <ambar '.B. Pemeriksaan keabsahan tanda tangan digital %asalah Pertukaran "unci Publik 0nto hendak mengirimkan 1adu suatu dokumen rahasia. (ika mereka belum pernah bertemu sebelumnya, tentu 1adu harus mengirimkan kunci publiknya kepada 0nto agar 0nto dapat melakukan enkripsi yang pesannya hanya dapat dibuka oleh 1adu. 5emikian juga pula sebaliknya, 0nto harus mengirimkan kepada 1adu kunci publiknya agar 1adu dapat memeriksa keaslian tanda tangan 0nto pada pesan yang dikirim. 5engan cara ini 0nto dapat memastikan pesan itu sampai ke tujuannya, sedangkan 1adu dapat merasa yakin bah6a pengirim pesan itu adalah 0nto. 3asalah yang muncul adalah bagaimana mereka dapat saling bertukar kunci dengan amanA 1isa saja di tengah pertukaran kunci-kunci publik milik 0nto dan 1udi itu diganti dengan kunci publik milik 3aman. 5engan begitu 3aman dengan bebas dapat menyadap dan mengubah seluruh informasi. Inilah suatu contoh dari man-in-the-middle attack" 0nto dan 1adu harus sama-sama yakin bah6a kunci-kunci publik yang mereka dapatkan benar-benar otentik. 3ereka bisa mendapatkannya dari sesorang yang dipercaya, *ari misalnya. Setiap anggota jaringan diasumsikan telah memiliki saluran komunikasi pribadi yang aman dengan *ari. Saluran inilah yang dimanfaatkan untuk mengirim kunci publik 1adu ke 0nto %dan sebaliknya&. *ari menjadi penjamin keabsahan kunci jika 0nto dan 1adu sebelumnya tidak pernah bertukar kunci publik. Skenario ini tetap membutuhkan kunci-kunci kriptografi lagi %baik itu kunci simetris ataupun kunci asimetris& untuk pengamanan saluran komunikasi antara *ari dengan 0nto atau 1adu. Sertifikat Digital 3asalah di atas dapat dipecahkan dengan penggunaan sertifikat digital. *ari tidak lagi setiap saat menjadi penukar kunci, namun *ari cukup menandatangani kunci publik milik setiap orang di jaringan tersebut. Sebenarnya dalam sertifikat tersebut tak hanya berisi kunci publik, namun dapat berisi pula informasi penting lainnya mengenai jati diri pemilik kunci publik, seperti misalnya nama, alamat, pekerjaan, jabatan, perusahaan dan bahkan hash dari suatu informasi rahasia. Semua orang mempercayai otoritas *ari dalam memberikan tanda tangan, sehingga orang-orang dalam jaringan itu merasa aman menggunakan kunci publik yang telah ditandatangani *ari. <ambar '.!. 2ontoh sertifikat digital (ika 3aman berhasil mencuri sertifikat digital yang dipertukarkan antara 0nto dan 1adu, serta menggantinya dengan sertifikat digital milik dirinya sendiri, maka 0nto dan 1adu dapat segera melihat bah6a sertifikat digital yang diterimanya bukan Dla6an bicaraE yang semestinya. 1agaimana jika 2handra 8 yang berada di luar jaringan *ari 8 hendak berkomunikasi dengan 0ntoA 2handra memiliki juga sertifikat, tetapi tidak ditandatangani oleh *ari, melainkan oleh *ata, seseorang yang dipercaya dalam jaringan tempat 2handra berada. *ari dan *ata adalah otoritas sertifikat %certificate authority&, yaitu pihak-pihak yang ber6enang memberikan sertifikat. 4amun 0nto tidak mengenal dan tidak mempercayai *ata. 3asalah ini dapat diselesaikan jika ada otoritas sertifikat %@S& yang kedudukannya lebih tinggi dari *ata dan *ari 8 katakanlah *ania. *ania memberikan pengesahan kepada *ata dan *ari. (adi ada hirarki dari sertifikat digital. (ika *ania berada pada kedudukan hirarki yang paling tinggi, maka *ania disebut otoritas sertifikat utama %root certificate authority&. 0nto mempercayai tanda tangan *ari. 4amun karena *ari sendiri keberadaannya disahkan oleh *ania, tentunya 0nto harus mengakui otoritas *ania. (ika *ania memberikan pengesahan kepada @S lain diba6ahnya, seperti *ata, maka dengan merunut struktur hirarki percabangan @S, 0nto dapat memeriksa kebenaran sertifikat digital milik 2handra yang disahkan oleh *ata. <ambar '.=. 2ontoh hirarki otoritas sertifikat digital Serangan terhadap sistem yang memiliki pengamanan dengan sertifikat digital sulit dilakukan. (elas ,di tidak mendapatkan apa-apa kalaupun ia memainkan ulang percakapan antara 0nto dan 2handra. ,di membutuhkan kunci pri/at untuk bisa membuka pesan-pesan yang dipertukarkan, padahal kunci pri/at itu tidak ada di dalam sertifikat digital. Penukaran sertifikat digital 2handra dengan sertifikat digital 3aman akan segera diketahui, karena sertifikat digital itu pasti berbeda. Sedangkan jika sertifikat yang dipertukarkan antara 2handra dan 0nto tidak diganti, tetapi yang diganti oleh 3aman adalah pesan yang dipertukarkan, maka tentu ada ketidakcocokan dalam pemeriksaan tanda tangan digital. Secara teoritis keunggulan dari tanda tangan digital adalah kemampuan untuk melakukan proses otentikasi secara off-line. Pemeriksa cukup memiliki kunci publik dari @S utama untuk mengetahui sah-tidaknya kunci publik dari la6an bicaranya. Selain itu untuk meningkatkan keamanan, kunci publik @S utama bisa saja diintegrasikan dalam program aplikasi. 4amun kenyataannya, karena ada kemungkinan sertifikat digital tersebut hilang, tercuri atau identitas pemilik sertifikat berubah %perubahan alamat surat elektronik atau nomor K*P misalnya&, maka sertifikat digital perlu diperiksa keabsahannya dengan melihat daftar sertifikat terbatalkan %certificate revocation list& yang disimpan oleh @S. $anda $angan Pesan &anda 0ndaikan 0nto membuat perjanjian jual-beli dengan 1adu. .ntuk masalah pembayaran, 0nto menginstruksikan bank untuk memberikan kepada 1adu sejumlah uang sesuai dengan perjanjian jual-beli, namun 0nto tidak ingin agar bank mengetahui isi perjanjian jual-beli itu. $. 0nto membuat sidik jari dari SPP %yaitu $ash%SPP&& dan sidik jari SP(1 %yakni $ash%SP(1&&. 2. Kemudian, 0nto membuat sebuah sidik jari baru dari gabungan kedua sidik jari sebelumnya % $ash % %$ash%SPP& F $ash%SP(1& & &. 7asil hash tersebut dinamakan sidik jari pesan ganda SPP G SP(1. '. 0nto menyerahkan surat perjanjian jual belinya kepada 1adu. Selain itu 0nto juga menyerahkan surat perintah pembayaran beserta sidik jari pesan ganda SPP G SP(1 kepada bank. ). Saat 1adu ingin mengambil uang di bank, 1adu membuat sidik jari dari surat perjanjian jual beli %SP(1&. 1adu menyerahkan sidik jari SP(1 kepada bank. B. 1ank membuat sidik jari dari surat perintah pembayaran %SPP&. !. 1ank menggabungkan sidik jari SPP dengan sidik jari SP(1 yang diterimanya dari 1adu, kemudian meng-hash-nya sehingga dihasilkan sidik jari pesan ganda SPP G SP(1. =. (ika sidik jari pesan ganda SPP G SP(1 yang baru dibuat itu sama dengan yang telah diberikan oleh 0nto, maka bank menjalankan ke6ajibannya kepada 1adu. <ambar '.:. Pembuatan sidik jari pesan ganda (ika sidik jari pesan ganda SPP G SP(1 dienkripsi dengan kunci pri/at 0nto, maka akan menjadi tanda tangan pesan ganda %dual-signature& 0nto untuk kedua perjanjian tersebut [Hi3a =". Protokol Pembagian 'ahasia (ika 0nto memiliki rahasia, ia dapat memberikan DseparuhE rahasia itu kepada 1adu dan DseparuhE rahasia itu kepada 2handra. 1adu, yang menerima paruh pertama rahasia 0nto, tidak bisa mengetahui apa isi rahasia itu. 5emikian pula dengan 2handra. 4amun, jika 1adu dan 2handra menggabungkan potongan-potongan rahasia itu, maka akan tergambar rahasia 0nto. Pembagian rahasia %secret splitting% dapat dilakukan dengan cara# $. 0nto membuat seuntai string acak ; yang panjangnya sama dengan pesan rahasia 3. 2. 0nto melakukan operasi I@; antara 3 dengan ;, sehingga menghasilkan S. '. 0nto memberikan ; kepada 1adu dan S kepada 2handra ). (ika 1adu dengan 2handra bertemu, maka mereka sanggup mendapatkan pesan rahasia 3 dengan cara melakukan operasi I@; antara S dengan ;. Protokol "omitmen(Bit Protokol ini bermanfaat kalau misalnya 0nto hendak membuat suatu pernyataan atau komitmen %katakanlah suatu string binari $>>>&, namun 0nto tak ingin agar 1adu mengetahui isi pernyatan tersebut sebelum saatnya. 1adu harus merasa yakin bah6a 0nto pada saatnya nanti, benar-benar mengeluarkan isi pernyataan yang sebenarnya saat melakukan komitmen, dan tidak mengeluarkan pernyataan yang sudah diubah %misalnya mengubah string tadi menjadi $>>$&. 0da beberapa jenis protokol komitmen-bit, namun di ba6ah ini hanya dijelaskan salah satu diantaranya, yakni dengan fungsi hash satu arah# $. 0nto membuat dua buah string secara acak, yakni & dan ' 2. 0nto menggabungkan kedua string acak itu ke dalam pernyataannya %(& yang akan dikomitmenkan menjadi %&! '! (& '. 0nto menghitung hash dari gabungan string itu, $ash%&! '! (&. ). 0nto kemudian mengirimkan hash tersebut beserta & kepada 1adu. 1adu akan menyimpannya untuk pemeriksaan nanti. B. (ika sudah tiba saatnya untuk menunjukkan pernyataannya, 0nto memberikan seluruh string %&! '! (& kepada 1adu. !. 1adu memeriksa fungsi hash dari %&! '! (&. (ika cocok dengan hash yang diperiksanya dulu, maka pernyataan 0nto tidak diubah. $anda $angan Buta 1adu disodori $>> amplop tertutup oleh 0nto. 0mplop itu berisi secarik pesan dan kertas karbon. 1adu membuka amplop secara acak. (ika seluruh amplop yang dibuka ternyata berisi pesan yang mirip, maka 1adu dapat merasa bah6a amplop ke-$>> juga berisi pesan yang mirip pula. 4amun, jika satu saja dari amplop tadi ada yang isi berbeda dari yang lain, maka 1adu dapat mencurigai bah6a isi amplop ke-$>> bisa saja juga tidak mirip dengan isi ke-: amplop lainnya. 5alam kasus dimana ternyata ke- amplop yang dibuka secara acak tadi berisi pesan yang mirip, maka dengan keyakinan yang cukup tinggi 1adu berani menandatangani amplop terakhir yang belum dibuka. *anda tangan 1adu akan menembus amplop dan kertas karbon, sehingga pesan dalam amplop akan tertandatangani oleh 1adu. 1adu kurang lebih tahu apa isi pesan di amplop ke-$>> itu. Protokol tanda tangan buta %(lind signature& bekerja sebagai berikut# $. 0nto DmengalikanE dokumen %yang akan ditandatangani& dengan sebuah faktor pembuta. 2. 0nto mengirimkan dokumen itu kepada 1adu '. 1adu menandatangani dokumen itu ). 1adu mengembalikan dokumen yang sudah ditandatangani tadi kepada 0nto B. 0nto membaginya dengan faktor pembuta, sehingga mendapatkan dokumen yang asli sudah tertandatangani oleh 1adu. Protokol )ang Digital 1. Deskripsi Protokol 1erdasarkan beberapa teori penunjang di atas, maka dapatlah dibangun suatu protokol untuk uang digital. 5a/id 2haum, memiliki beberapa paten atas protokol uang digital yang diciptakannya. 1erikut ini dijelaskan salah satu protokol uang digital# $. 0nto menyiapkan n lembar uang dengan nilai tertentu. Setiap uang diberi nomor seri acak ) yang cukup panjang, sehingga kemungkinan 2 bilangan acak sama kecil sekali. 5alam setiap uang juga ada n %*&! *'! +! *n& string identifikasi yang berguna untuk memberikan informasi mengenai pemilik uang, yakni 0nto. 0nto kemudian memecah tiap-tiap string identitas diri itu tadi menjadi dua bagian dengan menggunakan protokol pemecahan rahasia. Cantas 0nto melakukan bit- komitmen pada setiap pecahan. 2ontoh uang yang disiapkan adalah# 4ilai# ;p.$.>>>,- 4omor seri acak# ) String identitas# *& - %*&,! *&& *' - %*',! *'& . . . . *n - %*n,! *n& 2. 0nto memasukkan uang itu kedalam yang juga disisipi kertas karbon amplop %mengalikan uang dengan faktor pembuta&, lalu memberikannya kepada bank. '. 1ank akan meminta 0nto untuk membuka n - $ amplop itu secara acak. 1ank memeriksa apakah semua uang tersebut memiliki nilai yang sama. 1ank juga meminta kepada 0nto untuk membuktikan kejujuran dirinya saat menuliskan string identifikasi pada uang itu, dengan cara menggabungkan pasangan-pasangan string identifikasi. ). (ika bank merasa bah6a 0nto tidak melakukan kecurangan, maka bank akan menandatangani uang terakhir yang masih di dalam amplop itu dan menyerahkannya kepada 0nto. *anda tangan bank akan menembus amplop dan kertas karbon sehingga uang di dalamnya tertandatangani. B. 0nto membuka amplop. .ang siap dipakai. !. 0nto menyerahkan uang kepada 1adu. 1adu sebagai penerima uang, akan memeriksa apakah tanda tangan bank pada uang itu absah. =. 1adu akan menyuruh 0nto untuk membuka salah satu sisi dari setiap string identifikasi di setiap uang dengan cara memberikan string pemilih sepanjang n- bit. 0rtinya, jika string pemilih itu (&! ('! +! (n maka 0nto harus membuka sisi kiri atau kanan dari *i, tergantung apakah (i itu > atau $. :. Setelah itu 1adu memba6a uang tersebut ke bank. 1ank akan memeriksa apakah nomor seri uang tersebut sudah pernah diterima oleh bank. Kalau belum ada, maka uang tersebut dinyatakan sah. . (ika nomor seri uang itu sudah pernah diterima oleh bank, maka bank akan memeriksa string identitas yang sudah terbuka pada uang itu dan membandingkannya dengan string identitas pada uang dengan nomor seri sama yang pernah diterima bank sebelumnya. (ika ternyata string identitas itu sama, maka berarti 1adu yang menggandakan uang tersebut. 4amun jika berbeda, maka berarti 0nto yang menggandakan uang digital tersebut. . Pem!elanjaan "anda (ika 0nto menggandakan uang digitalnya lalu menggunakan uang digital yang sama itu dua kali, bank dapat mendeteksinya meskipun 1adu tidak bisa. 1adu memang DmembukaE identitas uang, namun hanya separuh-separuh. Kalau uang digital itu pernah diberikan 0nto kepada 2handra, maka tentu 2handra juga pernah DmembukaE separuh identitas uang digital tadi secara acak. 4ah, kemungkinan bah6a proses pembukaan identitas oleh 1adu dan 2handra itu sama %maksudnya sama urutan pembukaannya, misalnya kiri-kiri-kanan-kiri-kanan, dan seterusnya& adalah $ per 2n. 0ndaikan n cukup besar, katakanlah $! saja, maka kemungkinan 1adu dan 2handra secara acak membuka paruhan identitas dengan urutan sama adalah $ # !BB'!. 0rtinya, jika 0nto memberikan uangnya kepada dua orang yang berbeda, kemungkinan besar paruhan identitas yang dibuka juga berbeda. (ika saat otentikasi uang digital oleh bank ditemukan bah6a ada uang digital dengan nomor seri sama yang telah diuangkan, dan paruhan identitasnya berbeda, maka kemungkinan besar 0nto menyerahkan uang digital yang sama kepada dua orang yang berbeda. Sedangkan apabila 1adu menguangkan uang digital yang sama dua kali, karena paruhan identitas dari uang digital yang diotentikasi itu sama persis dengan yang sudah tercatat, maka kemungkinan besar uang itu diberikan 0nto kepada orang yang sama. 1adulah yang ketahuan menguangkan uang digital yang sama dua kali. Penggunaan uang digital yang sama dua kali dikenal dengan istilah pembelanjaan ganda %dou(le spending&. Panang "unci Panjang Kunci Simetris 3eskipun ada beberapa cara bagi seorang kriptoanalis untuk memecahkan pesan rahasia, namun cara yang cukup umum dilakukan adalah dengan melakukan (rute-force attack. 5engan cara ini, seorang penyerang mencoba seluruh kemungkinan kunci yang ada, sampai menemukan sebuah kunci yang jika dipergunakan untuk mendekripsi pesan yang disandikan akan memunculkan suatu pesan yang bermakna. *entunya cara ini bermanfaat hanya jika sudah diketahui algoritmanya, namun tidak diketahui kuncinya apa. PI4 B digit berarti biasanya ada $>>.>>> kombinasi. Kelihatannya cukup, namun sebenarnya kurang. 5engan sebuah komputer pribadi saja bisa dengan mudah diselesaikan. Salah satu pencegahannya adalah dengan pembatasan seberapa banyak pemakai dapat mencoba memasukkan PI4. 1iasanya dibatasi tiga kali. 1erikut ini diberikan contoh dari (rute-force attack pada suatu algoritma Dgeser pada papan ketik J?,;*KE# Sandi -sdyrtvstf dicoba dengan kunci ' menjadi (.kwp/m./l Sandi -sdyrtvstf dicoba dengan kunci 2 menjadi nkle/w-kwa Sandi -sdyrtvstf dicoba dengan kunci $ menjadi mastercard *ernyata kunci $ cocok, karena dalam pesan yang disandikan itu mungkin ada transaksi yang menggunakan kartu kredit DmastercardE. 5engan menggunakan kunci yang sama, kemudian penyerang berusaha mendekripsikan bagian-bagian lain dari pesan, mungkin berusaha mengambil nomor kartu kreditnya. Kunci itu juga dapat dipakai untuk keperluan lain, misalnya untuk melakukan penipuan %spoofing&. 5,S, sebuah algoritma simetris, memiliki panjang kunci B!-bit, artinya ada 2 B! kemungkinan kunci. Sedangkan peraturan di 0merika Serikat yang akan diberlakukan pada tahun $: nanti akan melarang ekspor teknologi enkripsi lebih dari )>-bit. Sedangkan untuk keperluan dalam negeri 0merika Serikat, kunci $2:-bit masih diiLinkan penggunaannya [Star =". *ahun $B, 3ichael ?ierner merancang sebuah chip yang mengkhususkan diri untuk melakukan (rute-force attack pada metoda enkripsi 5,S [Schn !". 2hip tersebut dapat menemukan kunci rahasia dalam 6aktu rata-rata ',B jam dan kunci itu dijamin dapat ditemukan dalam 6aktu = jam. 7arga pembuatannya adalah $ juta dollar 0S. Sesuai hukum 3oore, setiap $: bulan kemampuan komputer meningkat 2 kali lipat untuk harga yang sama. 3aka, pada tahun 2>>>, harga chip itu hanya berkisar $>>.>>> dolar 0S. 7arga ini masih dalam jangkauan daya beli beberapa mafia kejahatan terorganisir. Karena itu, kini disarankan untuk menggunakan 5,S dengan kunci $$2-bit. Panjang kunci D#S $aminan %aktu untuk menemukan kunci )>-bit >,) detik B!-bit = jam !)-bit =) jam )> menit $2:-bit $B=.$2.2>'.B2.'>>.>>> tahun *abel '.2. Serangan brute-force pada 5,S Protokol keamanan SSC %Secure Socket ,ayer& pada 4etscape 4a/igator menggunakan algoritma ;2) )>-bit untuk enkripsi simetrisnya. *ahun $B, 5amien 5oligeL menjebolnya menggunakan $2> komputer .niM yang terhubung pada jaringan dalam 6aktu : hari [Star =". 5engan cara seperti ini, dijamin bah6a dalam $B hari kunci itu pasti ditemukan. Panjang kunci RC& $aminan %aktu untuk menemukan kunci )>-bit $B hari B!-bit 2.!$,) tahun !)-bit !:.>2$,B= tahun $2:-bit $2.=$>.2>).!B2.!$>.>>>.>>>.>>>.>>> tahun *abel '.'. Serangan (rute-force pada ;2) Panjang Kunci Asimetris Sedangkan pada sistem enkripsi kunci publik-pri/at, yang memegang peranan dalam menjebol kunci pri/at adalah kesulitan mencari faktor prima bilangan yang sangat besar. 1eberapa kunci yang dipergunakan $> tahun lalu saja kini sama sekali tidak laik pakai seiring dengan perkembangan ilmu pengetahuan dan teknologi. Kunci publik yang dimanfaatkan SSC adalah teknologi kunci publik )>-bit dari ;S0, yang ternyata dapat dijebol dalam 6aktu $,' hari dengan $>> komputer menggunakan (rute-force attack [5733 !". ;onald ;i/est, salah seorang penemu ;S0, juga pernah menghitung bah6a untuk menemukan kunci ;S0 B$2-bit dengan cara (rute-force attack membutuhkan biaya :,2 juta dollar 0S [5aCe !". .ntuk kasus tertentu, ini pun tidak aman. Kini perusahaan- perusahaan disarankan menggunakan kunci 2>): bit agar data aman sampai tahun 2>$B. Prospek Pada saat tulisan ini dibuat, ekspor teknologi enkripsi 5,S B!-bit keluar dari 0merika Serikat masih diiLinkan. .ntuk yang lainnya hanya diiLinkan )>-bit. Setelah tanggal '$ 5esember $:, ekspor teknologi enkripsi 5,S dari 0merika Serikat hanya dibatasi sampai )>-bit saja, atau boleh saja tetap B!-bit, namun pengembang perangkat lunak itu harus menyediakan perangkat untuk membuka kunci itu juga [Star =". Panjang-pendeknya kunci dalam teknik-teknik enkripsi pada sistem perdagangan di Internet, akan menjadi salah satu titik lemah sistem perdagangan di Internet itu sendiri. 0da argumen yang menyatakan bah6a kalau pada suatu saat ukuran kunci publik-pri/at terasa terlalu pendek, maka panjangkan saja lagi kunci itu, tentu proses penyerangannya akan makin sulit. 7al ini memang benar, namun ada pertimbangan lain bah6a pengguna kunci tersebut harus bisa melakukan proses enkripsi-dekripsi dengan teknologi yang secara komersil memungkinkan. *erlihat di sini bah6a dibutuhkan ukuran kunci yang cukup panjang supaya aman, tapi tidak terlalu panjang agar memudahkan dalam penggunannya secara umum. 1eberapa teknik (rute-force attack lain yang tidak akan dibahas panjang disini, seperti dengan penyebaran /irus, komputasi paralel pada jaringan raksasa, undian 2ina, atau penggunaan komputer biologis. Semua itu menunjukkan bah6a ada kemungkinan bah6a kunci bisa didapatkan dengan (rute-force attack" Satu hal yang patut dicatat adalah bukan berarti dengan mungkinnya suatu metoda enkripsi dijebol lantas metoda enkripsi itu tidak bermanfaat, namun yang penting apakah biaya untuk melakukan serangan itu lebih besar dari pada harga informasi yang dienkripsi itu. (ika ya, maka untuk apa sang pencuri melakukannyaA .ntuk apa melakukan penyerangan dengan biaya 2 milyar rupiah kalau informasi yang dienkripsi hanya berharga ;p.$>.>>>,- sajaA Kembali ke daftar isi 'a! . Keamanan Sistem
Kriptogra(i 5asar enkripsi cukup sederhana. Pengirim menjalankan fungsi enkripsi pada pesan plaintext! ciphertext yang dihasilkan kemudian dikirimkan le6at jaringan, dan penerima menjalankan fungsi dekripsi %decryption& untuk mendapatkan plaintext semula. Proses enkripsi9dekripsi tergantung pada kunci %key& rahasia yang hanya diketahui oleh pengirim dan penerima. Ketika kunci dan enkripsi ini digunakan, sulit bagi penyadap untuk mematahkan ciphertext, sehingga komunikasi data antara pengirim dan penerima aman. Kriptografi macam ini dirancang untuk menjamin pri/asi# mencegah informasi menyebar luas tanpa iLin. 0kan tetapi, pri/aci bukan satu-satunya layanan yang disediakan kriptografi. Kriptografi dapat juga digunakan untuk mendukung authentication %mem/erifikasi identitas pengguna& dan integritas %memastikan bah6a pesan belum diubah&. Kriptografi digunakan untuk mencegah orang yang tidak berhak untuk memasuki komunikasi, sehingga kerahasiaan data dapat dilindungi. Secara garis besar, kriptografi digunakan untuk mengirim dan menerima pesan. Kriptografi pada dasarnya berpatokan pada kunci yang secara selektif telah disebar pada komputer-komputer yang berada dalam satu jaringan dan digunakan untuk memroses suatu pesan. )perasional Keamanan operasional %operations security& adalah tindakan apa pun yang menjadikan sistem beroperasi secara aman, terkendali, dan terlindung. Kang dimaksud dengan sistem adalah jaringan, komputer, lingkungan. Suatu sistem dinyatakan operasional apabila sistem telah dinyatakan berfungsi dan dapat dijalankan dengan durasi yang berkesinambungan, yaitu dari hari ke hari, 2) jam sehari, = hari seminggu. 3anajemen 0dministratif %0dministrative Management& adalah penugasan indi/idu untuk mengelola fungsi-fungsi keamanan sistem. 1eberapa hal yang terkait# $. Pemisahan *ugas %Separation of Duties&. 3enugaskan hal-hal yang menyangkut keamanan kepada beberapa orang saja. 3isalnya, yang berhak menginstall program ke dalam system komputer hanya admin, user tidak diberi hak tersebut. 2. 7ak 0kses 3inimum %,east 1rivilege&. Setiap orang hanya diberikan hak akses minimum yang dibutuhkan dalam pelaksanaan tugas mereka '. Keingin-tahuan %2eed to Know&. Kang dimaksud dengan need to know adalah pengetahuan akan informasi yang dibutuhkan dalam melakukan suatu pekerjaan. Kategori utama dari kontrol keamanan operasional antara lain# $. Kendali Pencegahan %Pre/entati/e 2ontrol&. .ntuk mencegah error dan intruder temasuki sistem. 3isal, kontrol pencegahan untuk mencegah /irus memasuki sistem adalah dengan menginstall anti/irus. 2. Kontrol Pendeteksian %5etecti/e 2ontrol&. .ntuk mendeteksi error yang memasuki sistem. 3isal, mencari /irus yang berhasil memasuki sistem. '. Kontrol Perbaikan %2orrecti/e9;eco/ery 2ontrol&. 3embantu mengembalikan data yang hilang melalui prosedur reco/ery data. 3isal, memperbaiki data yang terkena /irus. Kategori lainnya mencakup# $. Kendali Pencegahan *Deterrent Control+. . .ntuk menganjurkan pemenuhan %compliance& dengan kontrol eksternal. 2. Kendali Aplikasi *Application Control+ . .ntuk memperkecil dan mendeteksi operasi-operasi perangkat lunak yang tidak biasa. '. Kendali ,ransaksi *Transaction Control+ . .ntuk menyediakan kendali di berbagai tahap transaksi %dari inisiasi sampai keluaran, melalui kontrol testing dan kontrol perubahan&. ,erminologi Kriptogra(i <!--[if !supportLists]--> a. Pesan, Plainteks dan 2ipherteks Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. 4ama lain untuk pesan adalah plainteks. 0gar pesan tidak bisa dimengerti maknanya oleh pihak lain, maka pesan perlu disandikan ke bentuk lain yang tidak dapat dipahami. 1entuk pesan yang tersandi disebut cipherteks b. Pengirim dan Penerima Pengirim adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima adalah entitas yang menerima pesan. ,ntitas di sini dapat berupa orang, mesin %komputer&, kartu kredit dan sebagainya. c. ,nkripsi dan dekripsi Proses menyandikan plainteks menjadi cipherteks disebut enkripsi. Sedangkan proses mengembalikan cipherteks menjadi plainteks semula dinamakan dekripsi d. 2ipher dan kunci 0lgoritma kriptografi disebut juga cipher yaitu aturan untuk enciphering dan deciphering, atau fungsi matematika yang digunakan untuk enkripsi dan dekripsi. Konsep matematis yang mendasari algoritma kriptografi adalah relasi antara dua buah himpunan yaitu himpunan yang berisi elemen-elemen plainteks dan himpunan yang berisi cipherteks. ,nkripsi dan dekripsi adalah fungsi yang memetakan elemen-elemen antara kedua himpunan tersebut. e. Sistem kriptografi Sistem kriptografi merupakan kumpulan yang terdiri dari algoritma kriptografi, semua plainteks dan cipherteks yang mungkin dan kunci. f. Penyadap Penyadap adalah orang yang berusaha mencoba menangkap pesan selama ditransmisikan dengan tujuan mendapatkan informasi sebanyak-banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud untuk memecahkan cipherteks. g. Kriptanalisis dan kriptologi Kriptanalisis %cryptanalysis& adalah ilmu dan seni untuk memecahkan cipherteks menjadi plainteks tanpa mengetahui kunci yang digunakan. Pelakunya disebut kriptanalis. Kriptologi adalah studi mengenai kriptografi dan kriptanalisis. Sejarah Kriptogra(i Sejarah kriptografi sebagian besar merupakan sejarah kriptografi klasik yaitu metode enkripsi yang menggunakan kertas dan pensil atau mungkin dengan bantuan alat mekanik sederhana. Secara umum algoritma kriptografi klasik dikelompokkan menjadi dua kategori, yaitu algoritma transposisi %transposition cipher& dan algoritma substitusi %substitution cipher&. 2ipher transposisi mengubah susunan huruf-huruf di dalam pesan, sedangkan cipher substitusi mengganti setiap huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf lain. Kriptografi modern dipicu oleh perkembangan peralatan komputer digital. *idak seperti kriptografi klasik yang mengenkripsi karakter per karakter %dengan menggunakan alfabet tradisionil&, kriptografi modern beroperasi pada string biner. Kriptografi modern tidak hanya memberikan aspek keamanan confidentially, tetapi juga aspek keamanan lain seperti otentikasi, integritas data dan nirpenyangkalan. Kriptogra(i Kunci Simetri dan Asimetri 1erdasarkan kunci yang digunakan untuk enkripsi dan dekripsi, kriptografi dapat dibedakan lagi menjadi kriptografi kunci simetri dan kriptografi kunci asimetri. Pada sistem kriptografi kunci simetri, kunci untuk enkripsi sama dengan kunci untuk dekripsi. (ika kunci untuk enkripsi tidak sama dengan kunci untuk dekripsi, maka dinamakan sistem kriptografi asimetri. KR-P,)"RA.- 1. 1 /atar !elakang 1erkat perkembangan teknologi yang begitu pesat memungkinkan manusia dapat berkomunikasi dan saling bertukar informasi9data secara jarak jauh. 0ntar kota antar 6ilayah antar negara bahkan antar benua bukan merupakan suatu kendala lagi dalam melakukan komunikasi dan pertukaran data. Seiring dengan itu tuntutan akan sekuritas %keamanan& terhadap kerahasiaan informasi yang saling dipertukarkan tersebut semakin meningkat. 1egitu banyak pengguna seperti departemen pertahanan, suatu perusahaan atau bahkan indi/idu-indi/idu tidak ingin informasi yang disampaikannya diketahui oleh orang lain atau kompetitornya atau negara lain. @leh karena itu dikembangkanlah cabang ilmu yang mempelajari tentang cara-cara pengamanan data atau dikenal dengan istilah Kriptografi. 5alam kriptografi terdapat dua konsep utama yakni enkripsi dan dekripsi. ,nkripsi adalah proses dimana informasi9data yang hendak dikirim diubah menjadi bentuk yang hampir tidak dikenali sebagai informasi a6alnya dengan menggunakan algoritma tertentu. 5ekripsi adalah kebalikan dari enkripsi yaitu mengubah kembali bentuk tersamar tersebut menjadi informasi a6al. 0lgoritma kriptografi berdasarkan jenis kunci yang digunakan dapat dibedakan menjadi dua jenis yaitu # 0lgoritma simetris 5imana kunci yang digunakan untuk proses enkripsi dan dekripsi adalah kunci yang sama 0lgoritma asimetris 5imana kunci yang digunakan untuk proses enkripsi dan dekripsi menggunakan kunci yang berbeda. Sedangkan berdasarkan besar data yang diolah dalam satu kali proses, maka algoritma kriptografi dapat dibedakan menjadi dua jenis yaitu # 0lgoritma (lock cipher Informasi9data yang hendak dikirim dalam bentuk blok-blok besar %misal !)-bit& dimana blok-blok ini dioperasikan dengan fungsi enkripsi yang sama dan akan menghasilkan informasi rahasia dalam blok-blok yang berukuran sama. 0lgoritma stream cipher Informasi9data yang hendak dikirim dioperasikan dalam bentuk blok-blok yang lebih kecil %byte atau bit&, biasanya satu karakter persatuan persatuan 6aktu proses, menggunakan tranformasi enkripsi yang berubah setiap 6aktu. 2amellia merupakan algoritma kriptografi simetris (lok cipher. 5alam 2amellia proses enkripsi dan dekripsi dilakukan pada blok data berukuran $2:-bit dengan kunci yang dapat berukuran $2:-bit, $2-bit, 2B!-bit. 0lgoritma 2amellia dikembangkan oleh # KaLumaro 0oki %4** - 4ippon *elegraph and *elephone 2orp.& *etsuya Ichika6a %3itsubishi electric 2orp.& 3asayuki Kanda %4** 8 4ippon *elegraph and *elephone 2orp.& 3itsuru 3atsui %3itsubishi electric 2orp.& Shiho 3oriai %4** 8 4ippon *elegraph and *elephone 2orp.& (unko 4akajima %3itsubishi electric 2orp.& *oshio *okita %3itsubishi electric 2orp.& 5imana /ersi $.> pada bulan (uli 2>>>, /ersi 2.> pada September 2>>$ dan /ersi 2.$ pada +ebuari 2>>2. -- Kriptogra(i . 1 Dasar Kriptogra(i . 1. 1 ,eori Kriptogra(i Kriptografi adalah suatu ilmu yang mempelajari bagaimana cara menjaga agar data atau pesan tetap aman saat dikirimkan, dari pengirim ke penerima tanpa mengalami gangguan dari pihak ketiga. 3enurut 1ruce Scheiner dalam bukunya N0pplied 2ryptographyN, kriptografi adalah ilmu pengetahuan dan seni menjaga message-message agar tetap aman %secure&. Konsep kriptografi sendiri telah lama digunakan oleh manusia misalnya pada peradaban 3esir dan ;oma6i 6alau masih sangat sederhana. Prinsip-prinsip yang mendasari kriptografi yakni# Confidelity %kerahasiaan& yaitu layanan agar isi pesan yang dikirimkan tetap rahasia dan tidak diketahui oleh pihak lain %kecuali pihak pengirim, pihak penerima 9 pihak-pihak memiliki ijin&. .mumnya hal ini dilakukan dengan cara membuat suatu algoritma matematis yang mampu mengubah data hingga menjadi sulit untuk dibaca dan dipahami. Data integrity %keutuhan data& yaitu layanan yang mampu mengenali9mendeteksi adanya manipulasi %penghapusan, pengubahan atau penambahan& data yang tidak sah %oleh pihak lain&. 0uthentication %keotentikan& yaitu layanan yang berhubungan dengan identifikasi. 1aik otentikasi pihak-pihak yang terlibat dalam pengiriman data maupun otentikasi keaslian data9informasi. 2on-repudiation %anti-penyangkalan& yaitu layanan yang dapat mencegah suatu pihak untuk menyangkal aksi yang dilakukan sebelumnya %menyangkal bah6a pesan tersebut berasal dirinya&. 1erbeda dengan kriptografi klasik yang menitikberatkan kekuatan pada kerahasiaan algoritma yang digunakan %yang artinya apabila algoritma yang digunakan telah diketahui maka pesan sudah jelas NbocorN dan dapat diketahui isinya oleh siapa saja yang mengetahui algoritma tersebut&, kriptografi modern lebih menitikberatkan pada kerahasiaan kunci yang digunakan pada algoritma tersebut %oleh pemakainya& sehingga algoritma tersebut dapat saja disebarkan ke kalangan masyarakat tanpa takut kehilangan kerahasiaan bagi para pemakainya. 1erikut adalah istilah-istilah yang digunakan dalam bidang kriptografi # Plainte0t %3& adalah pesan yang hendak dikirimkan %berisi data asli&. Cipherte0t %2& adalah pesan ter-enkrip %tersandi& yang merupakan hasil enkripsi. #nkripsi %fungsi ,& adalah proses pengubahan plaintext menjadi ciphertext. Dekripsi %fungsi 5& adalah kebalikan dari enkripsi yakni mengubah ciphertext menjadi plaintext, sehingga berupa data a6al9asli. Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi. Kriptografi itu sendiri terdiri dari dua proses utama yakni proses enkripsi dan proses dekripsi. Seperti yang telah dijelaskan di atas, proses enkripsi mengubah plaintext menjadi ciphertext %dengan menggunakan kunci tertentu& sehingga isi informasi pada pesan tersebut sukar dimengerti. plainteMt cipherteMt plainteMt
kunci enkripsi kunci dekripsi "am!ar .1 Diagram proses enkripsi dan dekripsi Peranan kunci sangatlah penting dalam proses enkripsi dan dekripsi %disamping pula algoritma yang digunakan& sehingga kerahasiaannya sangatlah penting, apabila kerahasiaannya terbongkar, maka isi dari pesan dapat diketahui. Secara matematis, proses enkripsi merupakan pengoperasian fungsi , %enkripsi& menggunakan e %kunci enkripsi& pada 3 3plaintext% sehingga dihasilkan 2 3ciphertext%! notasinya # #e*1+ 2 C Sedangkan untuk proses dekripsi, merupakan pengoperasian fungsi 5 %dekripsi& menggunakan d %kunci dekripsi& pada 2 3ciphertext% sehingga dihasilkan 3 3plaintext%! notasinya # enkripsi dekripsi Dd*C+ 3 1 Sehingga dari dua hubungan diatas berlaku # Dd*#e*1++ 3 1 . 1. Algoritma Simetris dan Asimetris . 1. . 1 Algoritma Simetris 0lgoritma simetris 3symmetric algorithm% adalah suatu algoritma dimana kunci enkripsi yang digunakan sama dengan kunci dekripsi sehingga algoritma ini disebut juga sebagai single-key algorithm" PlainteMt cipherteMt plainteMt
kunci enkripsi %K& kunci dekripsi %K& "am!ar . Diagram proses enkripsi dan dekripsi algoritma simetris Sebelum melakukan pengiriman pesan, pengirim dan penerima harus memilih suatu suatu kunci tertentu yang sama untuk dipakai bersama, dan kunci ini haruslah rahasia bagi pihak yang tidak berkepentingan sehingga algoritma ini disebut juga algoritma kunci rahasia 3secret-key algorithm%" Kelebihan # Kecepatan operasi lebih tinggi bila dibandingkan dengan algoritma asimetrik. Karena kecepatannya yang cukup tinggi, maka dapat digunakan pada sistem real-time Kelemahan # .ntuk tiap pengiriman pesan dengan pengguna yang berbeda dibutuhkan kunci yang berbeda juga, sehingga akan terjadi kesulitan dalam manajemen kunci tersebut. Permasalahan dalam pengiriman kunci itu sendiri yang disebut 4key distri(ution pro(lem5 2ontoh algoritma # *6o+ish, ;ijndael, 2amellia . 1. . Algoritma Asimetris enkripsi dekripsi 0lgoritma asimetris 3asymmetric algorithm% adalah suatu algoritma dimana kunci enkripsi yang digunakan tidak sama dengan kunci dekripsi. Pada algoritma ini menggunakan dua kunci yakni kunci publik 3pu(lic key% dan kunci pri/at 3private key%" Kunci publik disebarkan secara umum sedangkan kunci pri/at disimpan secara rahasia oleh si pengguna. ?alau kunci publik telah diketahui namun akan sangat sukar mengetahui kunci pri/at yang digunakan. PlainteMt cipherteMt plainteMt kunci enkripsi %K$& kunci dekripsi %K2& "am!ar .4 Diagram proses enkripsi dan dekripsi algoritma asimetris Pada umumnya kunci publik 3pu(lic key% digunakan sebagai kunci enkripsi sementara kunci pri/at 3private key% digunakan sebagai kunci dekripsi. Kelebihan # 3asalah keamanan pada distribusi kunci dapat lebih baik 3asalah manajemen kunci yang lebih baik karena jumlah kunci yang lebih sedikit Kelemahan # Kecepatan yang lebih rendah bila dibandingkan dengan algoritma simetris .ntuk tingkat keamanan sama, kunci yang digunakan lebih panjang dibandingkan dengan algoritma simetris. 2ontoh algoritma # ;S0, 5S0, ,l<amal . 1. 4 'lock Cipher dan Stream Cipher (ika kita melihat berdasarkan ukuran serta format data yang akan diproses, maka algoritma kriptografi dapat dibagi menjadi dua bagian yang utama yaitu# 'lock Cipher5 algoritma kriptografi ini bekerja pada suatu data yang berbentuk blok9kelompok data dengan panjang data tertentu %dalam beberapa byte&, jadi dalam sekali proses enkripsi atau dekripsi data yang masuk mempunyai ukuran yang sama. enkripsi dekripsi Stream cipher5 algoritma yang dalam operasinya bekerja dalam suatu pesan berupa bit tunggal atau terkadang dalam suatu byte, jadi format data berupa aliran dari bit untuk kemudian mengalami proses enkripsi dan dekripsi. Pada algoritma penyandian blok 3(lock cipher%! plainteks yang masuk akan diproses dengan panjang blok yang tetap yaitu n, namun terkadang jika ukuran data ini terlalu panjang maka dilakukan pemecahan dalam bentuk blok yang lebih kecil. (ika dalam pemecahan dihasilkan blok data yang kurang dari jumlah data dalam blok maka akan dilakukan proses pading %penambahan beberapa bit&. . 1ode )perasi dalam 'lock Cipher O. . 1 #lectronic Code!ook *#C'+ Pada mode operasi ,21 sebuah blok input plainteMt dipetakan secara statis ke sebuah blok output cipherteMt. Sehingga tiap plainteMt yang sama akan menghasilkan cipherteMt yang selalu sama pula. Sifat- sifat dari mode operasi ,21 # Sederhana dan efisien 3emungkinkan implementasi parallel *idak menyembunyikan pola plainteMt 5imungkinkan terjadi adanya acti/e attack. Skema dari mode operasi ,21 dapat digambarkan sebagai berikut # Sender ;ecei/er P 1 P 1 P 1 C 1 C 1 C 1 # # # C 1 C 1 C 1 P 1 P 1 P 1 # # # "am!ar .& Skema Mode 6perasi EC7 Cipher 'lock Chaining *C'C+ Pada mode oparasi ini hasil enkripsi dari blok sebelumnya mempengaruhi hasil enkripsi selanjutnya, atau enkripsi sebeluimnya menjadi feedback pada enkripsi blok saat itu., jadi tiap blok cipherteMt bergantung bukan hanya pada blok plainteMt-nya tapi bergantung pula pada blok-blok plainteMt sebelumnya. Sehingga untuk plainteMt yang sama, belum tentu menghasilkan cipherteMt yang sama pula. Skema dari mode operasi 212 dapat digambarkan sebagai berikut # Sender ;ecei/er "am!ar .6 Skema Mode 6perasi C7C" P 1 P 1 P 1 C 1 C 1 C 1 # # # C 1 C 1 C 1 P 1 P 1 P 1 # # # -7 -7 3ula-mula sebelum si pengirim hendak mengirimkan pesannya kepada si penerima, dia terlebih dahulu harus meng-I@; plainteMt dengan IH %initialiLation /ector& baru kemudian dienkripsi, setelah itu baru dikirimkan cipherteMt pertamanya kepada si penerima. PlainteMt ke-2 pun demikian, harus di-I@; terlebih dahulu dengan cipherteMt sebelumnya sebelum mengalami proses enkripsi baru kemudian dikirimkan ke si penerima sebagai cipherteMt 2 dan seterusnya. Sifat-sifat dari mode operasi 212 # Cebih aman dari acti/e attacks dibandingkan mode operasi ,21 ,rror pada satu cipherteMt dapat berakibat parah 3enutupi pola plainteMt Implementasi parallel belum diketahui 5alam kriptografi, Pu!lic Key -n(rastructure %PK-& adalah sebuah cara untuk otentikasi, pengamanan data dan perangkat anti sangkal. Secara teknis, PKI adalah implementasi dari berbagai teknik kriptografi yang bertujuan untuk mengamankan data, memastikan keaslian data maupun pengirimnya dan mencegah penyangkalan. *eknik-teknik kriptografi yang digunakan antara lain# - fungsi hash, - algoritma enkripsi simetrik, dan - algoritma enkripsi asimetrik. +ungsi hash akan digunakan bersama dengan algoritma enkripsi asimetrik dalam bentuk tanda tangan digital untuk memastikan integritas dan keaslian berita9data berikut pengirimnya. 0lgoritma enkripsi simetrik digunakan untuk mengamankan data dengan cara enkripsi. 5alam PKI penggunaan algoritma enkripsi simetrik tidak langsung didefinisikan tetapi telah diimplementasikan oleh berbagai perangat lunak. Secara garis besar PKI di6ujudkan dalam bentuk kolaborasi antar komponen-komponennya. Komponen-komponen PKI antara lain# - Subscriber, - 2ertification 0uthority %20&, - ;egistration 0uthority %;0&, - Sertifikat 5igital. Secara praktis 6ujud PKI adalah penggunaan sertifikat digital. Sertifikat digital adalah sebuah file komputer yang berisi data-data tentang sebuah public key, pemiliknya %subscriber atau 20&, 20 yang menerbitkannya dan masa berlakunya. PKI telah diimplementasikan dengan berbagai aplikasi seperti S93I3,, 7**PS, HP4, dll. 0nda dapat melihat fitur S93I3, pada soft6are email yang terkenal seperti @utlook ,Mpress, 3oLilla 3ail9*hunderbird, dan ,/olution. -PSec %singkatan dari IP Security& adalah sebuah protokol yang digunakan untuk mengamankan transmisi datagram dalam sebuah internetwork berbasis *2P9IP. IPSec mendefiniskan beberapa standar untuk melakukan enkripsi data dan juga integritas data pada lapisan kedua dalam 50;P0 ;eference 3odel % internetwork layer &. IPSec melakukan enkripsi terhadap data pada lapisan yang sama dengan protokol IP dan menggunakan teknik tunneling untuk mengirimkan informasi melalui jaringan Internet atau dalam jaringan Intranet secara aman. IPSec didefinisikan oleh badan Internet ,ngineering *ask +orce %I,*+& dan diimplementasikan di dalam banyak sistem operasi. ?indo6s 2>>> adalah sistem operasi pertama dari 3icrosoft yang mendukung IPSec. IPSec diimplementasikan pada lapisan transport dalam @SI ;eference 3odel untuk melindungi protokol IP dan protokol-protokol yang lebih tinggi dengan menggunakan beberapa kebijakan keamanan yang dapat dikonfigurasikan untuk memenuhi kebutuhan keamanan pengguna, atau jaringan. IPSec umumnya diletakkan sebagai sebuah lapsian tambahan di dalam stack protokol *2P9IP dan diatur oleh setiap kebijakan keamanan yang diinstalasikan dalam setiap mesin komputer dan dengan sebuah skema enkripsi yang dapat dinegosiasikan antara pengirim dan penerima. Kebijakan-kebijakan keamanan tersebut berisi kumpulan filter yang diasosiasikan dengan kelakuan tertentu. Ketika sebuah alamat IP, nomor port *2P dan .5P atau protokol dari sebuah paket datagram IP cocok dengan filter tertentu, maka kelakukan yang dikaitkan dengannya akan diaplikasikan terhadap paket IP tersebut. 5alam sistem operasi ?indo6s 2>>>, ?indo6s IP, dan ?indo6s Ser/er 2>>', kebijakan keamanan tersebut dibuat dan ditetapkan pada le/el domain 0cti/e 5irectory atau pada host indi/idual dengan menggunakan snap-in IPSec 3anagement dalam 3icrosoft 3anagement 2onsole %332&. Kebijakan IPSec tersebut, berisi beberapa peraturan yang menentukan kebutuhan keamanan untuk beberapa bentuk komunikasi. Peraturan-peraturan tersebut digunakan ntuk memulai dan mengontrol komunikasi yang aman berdasarkan sifat lalu lintas IP, sumber lalu lintas tersebut dan tujuannya. Peraturan- peraturan tersebut dapat menentukan metode-metode autentikasi dan negosiasi, atribut proses tunneling, dan jenis koneksi. .ntuk membuat sebuah sesi komunikasi yang aman antara dua komputer dengan menggunakan IPSec, maka dibutuhkan sebuah framework protokol yang disebut dengan -SAK1P8)akley. 8ramework tersebut mencakup beberapa algoritma kriptografi yang telah ditentukan sebelumnya, dan juga dapat diperluas dengan menambahkan beberapa sistem kriptografi tambahan yang dibuat oleh pihak ketiga. Selama proses negosiasi dilakukan, persetujuan akan tercapai dengan metode autentikasi dan kemanan yang akan digunakan, dan protokol pun akan membuat sebuah kunci yang dapat digunakan bersama %shared key& yang nantinya digunakan sebagi kunci enkripsi data. IPSec mendukung dua buah sesi komunikasi keamanan, yakni sebagai berikut# protokol Authentication 9eader %07&# mena6arkan autentikasi pengguna dan perlindungan dari beberapa serangan %umumnya serangan man in the middle&, dan juga menyediakan fungsi autentikasi terhadap data serta integritas terhadap data. Protokol ini mengiLinkan penerima untuk merasa yakin bah6a identitas si pengirim adalah benar adanya, dan data pun tidak dimodifikasi selama transmisi. 4amun demikian, protokol 07 tidak mena6arkan fungsi enkripsi terhadap data yang ditransmisikannya. Informasi 07 dimasukkan ke dalam header paket IP yang dikirimkan dan dapat digunakan secara sendirian atau bersamaan dengan protokol Encapsulating Security 1ayload. protokol #ncapsulating Security Payload %,SP&# Protokol ini melakukan enkapsulasi serta enkripsi terhadap data pengguna untuk meningkatkan kerahasiaan data. ,SP juga dapat memiliki skema autentikasi dan perlindungan dari beberapa serangan dan dapat digunakan secara sendirian atau bersamaan dengan 0uthentication $eader. Sama seperti halnya 07, informasi mengenai ,SP juga dimasukkan ke dalam header paket IP yang dikirimkan. 1eberapa perangkat keras serta perangkat lunak dapat dikonfigurasikan untuk mendukung IPSec, yang dapat dilakukan dengan menggunakan enkripsi kunci publik yang disediakan oleh Certificate 0uthority %dalam sebuah pu(lic key infrastructure& atau kunci yang digunakan bersama yang telah ditentukan sebelumnya %skema 1re-Shared Key9PSK& untuk melakukan enkripsi secara pri/at. *+ Searah dan perkembangan Kerberos pertama kali dikembangkan pada dekade $:>-an sebagai sebuah metode untuk melakukan autentikasi terhadap pengguna dalam sebuah jaringan yang besar dan terdistribusi. Kerberos menggunakan enkripsi kunci rahasia9kunci simetris dengan algoritma kunci yang kuat sehingga klien dapat membuktikan identitas mereka kepada ser/er dan juga menjamin pri/asi dan integritas komunikasi mereka dengan ser/er. Protokol ini dinamai Kerberos, karena memang Kerberos %atau 2erberus& merupakan seekor anjing berkepala tiga %protokol Kerberos memiliki tiga subprotokol& dalam mitologi Kunani yang menjadi penjaga *artarus, gerbang menuju 7ades %atau Pluto dalam mitologi ;oma6i&. ,+ -perasi Protokol Kerberos memiliki tiga subprotokol agar dapat melakukan aksinya# Authentication Service (AS) Exchange# yang digunakan oleh Key Distri(ution Center %K52& untuk menyediakan #icket-9ranting #icket %*<*& kepada klien dan membuat kunci sesi logon. Ticket-Granting Service (TGS) Exchange# yang digunakan oleh K52 untuk mendistribusikan kunci sesi layanan dan tiket yang diasosiasikan dengannya. ClientServer (CS) Exchange# yang digunakan oleh klien untuk mengirimkan sebuah tiket sebagai pendaftaran kepada sebuah layanan. Sesi autentikasi Kerberos yang dilakukan antara klien dan ser/er adalah sebagai berikut# 2ara kerja protokol Kerberos $. Informasi pribadi pengguna dimasukkan ke dalam komputer klien Kerberos, yang kemudian akan mengirimkan sebuah rePuest terhadap K52 untuk mengakses *<S dengan menggunakan protokol 0S ,Mchange. 5alam rePuest tersebut terdapat bukti identitas pengguna dalam bentuk terenkripsi. 2. K52 kemudian menerima rePuest dari klien Kerberos, lalu mencari kunci utama %disebut sebagai 3aster Key& yang dimiliki oleh pengguna dalam layanan direktori 0cti/e 5irectory %dalam ?indo6s 2>>>9?indo6s Ser/er 2>>'& untuk selanjutnya melakukan dekripsi terhadap informasi identitas yang terdapat dalam rePuest yang dikirimkan. (ika identitas pengguna berhasil di/erifikasi, K52 akan meresponsnya dengan memberikan *<* dan sebuah kunci sesi dengan menggunakan protokol 0S ,Mchange. '. Klien selanjutnya mengirimkan rePuest *<S kepada K52 yang mengandung *<* yang sebelumnya diterima dari K52 dan meminta akses tehradap beberapa layanan dalam ser/er dengan menggunakan protokol *<S ,Mchange. ). K52 selanjutnya menerima rePuest, malakukan autentikasi terhadap pengguna, dan meresponsnya dengan memberikan sebuah tiket dan kunci sesi kepada pengguna untuk mengakses ser/er target dengan menggunakan protokol *<S ,Mchange. B. Klien selanjutnya mengirimkan rePuest terhadap ser/er target yang mengandung tiket yang didapatkan sebelumnya dengan menggunakan protokol 2S ,Mchange. Ser/er target kemudian melakukan autentikasi terhadap tiket yang bersangkutan, membalasnya dengan sebuah kunci sesi, dan klien pun akhirnya dapat mengakses layanan yang tersedia dalam ser/er. 3eski terlihat rumit, pekerjaan ini dilakukan di balik layar, sehingga tidak terlihat oleh pengguna. Kriptoanalisis %dari bahasa Kunani krypt:s, NtersembunyiN, dan anal;ein, NmelepaskanN& adalah disiplin ilmu mengenai metode membaca pesan terenkripsi %tersandi&, tanpa mengetahui informasi rahasia atau kunci yang seharusnya digunakan untuk membaca pesan tersebut. 5alam bahasa sehari-hari, kriptoanalisis bisa dikatakan ilmu memecahkan sandi. 5isiplin ilmu yang digunakan pada kriptografi antara lain matematika, linguistik, logika, dan ilmu komputer. Kriptoanalisis pertama kali dicetuskan oleh ilmu6an 0rab Laman kekhalifahan 0bbasiyah al-Kindi. 5alam bukunya Se(uah 2askah dalam Memecahkan 1esan-1esan Kriptografis, ia menjelaskan secara detail metode analisis frekuensi, yang merupakan dasar bagi metode-metode kriptoanalisis. Kriptoanalisis terus berkembang sesuai perkembangan teknologi. Salah satu contoh terkenal adalah kriptoanalisis mesin ,nigma pada Perang 5unia II. Pada pertengahan $=>-an muncul kelompok baru kriptografi yang disebut kriptografi asimetrik. Penemuan ini menyebabkan terjadinya perubahan radikal pada metode-metode kriptoanalisis, yang melibatkan matematika murni. Serangan !rute-"orce adalah sebuah teknik serangan terhadap sebuah sistem keamanan komputer yang menggunakan percobaan terhadap semua kunci yang mungkin. Pendekatan ini pada a6alnya merujuk pada sebuah program komputer yang mengandalkan kekuatan pemrosesan komputer dibandingkan kecerdasan manusia. Sebagai contoh, untuk menyelesaikan sebuah persamaan kuadrat seperti MQF=M-))->, di mana x adalah sebuah integer, dengan menggunakan teknik serangan (rute-force, penggunanya hanya dituntut untuk membuat program yang mencoba semua nilai integer yang mungkin untuk persamaan tersebut hingga nilai x sebagai ja6abannya muncul. Istilah (rute force sendiri dipopulerkan oleh Kenneth *hompson, dengan mottonya# N<hen in dou(t! use (rute-forceN %jika ragu, gunakan (rute-force&. *eknik yang paling banyak digunakan untuk memecahkan password, kunci, kode atau kombinasi. 2ara kerja metode ini sangat sederhana yaitu mencoba semua kombinasi yang mungkin. Sebuah password dapat dibongkar dengan menggunakan program yang disebut sebagai password cracker. Program password cracker adalah program yang mencoba membuka sebuah pass6ord yang telah terenkripsi dengan menggunakan sebuah algoritma tertentu dengan cara mencoba semua kemungkinan. *eknik ini sangatlah sederhana, tapi efekti/itasnya luar biasa, dan tidak ada satu pun sistem yang aman dari serangan ini, meski teknik ini memakan 6aktu yang sangat lama, khususnya untuk pass6ord yang rumit. 4amun ini tidak berarti bah6a password cracker membutuhkan decrypt. Pada prakteknya, mereka kebayakan tidak melakukan itu. .mumnya, kita tidak dapat melakukan decrypt pass6ord-pass6ord yang sudah terenkripsi dengan algoritma yang kuat. Proses-proses enkripsi modern kebanyakan hanya memberikan satu jalan, di mana tidak ada proses pengembalian enkripsi. 4amun, anda menggunakan tool-tool simulasi yang mempekerjakan algoritma yang sama yang digunakan untuk mengenkripsi pass6ord orisinal. *ool-tool tersebut membentuk analisa komparatif. Program pass6ord cracker tidak lain adalah mesin-mesin ulet. Ia akan mencoba kata demi kata dalam kecepatan tinggi. 3ereka menganut N0LaL KeberuntunganN, dengan harapan bah6a pada kesempatan tertentu mereka akan menemukan kata atau kalimat yang cocok. *eori ini mungkin tepat mengena pada anda yang terbiasa membuat pass6ord asal-asalan. 5an memang pada kenyataannya, pass6ord-pass6ord yang baik sulit untuk ditembus oleh program password cracker. Key generation merupakan kegiatam manajemen kunci dalam menghasilkan kunci yang acak dimana keacakan kunci merupakan bagian terpenting dalam menjamin kekuatan suatu kiptografi syarat sayrat kunci dikatakan acak adalah # *elah lulus uji statistik untuk menguji keacakan pada suatu rangkaian kunci yang dihasilkan, kita dapat mengujinya dengan menggunakan uji statistik, diantaranya # fi/e basic test, tes ini terdiri dari # frePuency test untuk menentukan apakah jumlaj bit R>R dan R$R dalam barisan bit mempunyai jumlah bit yang relatif sama, seperti yang diharapkan untuk barisan acak. serial test. untuk mementukan apakah jumlah dari pasangan bit >>,>$,$> dan $$ dalam barisan bit mempunyai jumlah yang relatif sama, seperti yang diharapkan untuk barisan acak. poker test. untuk menentukan apakah jumlah dari barisan bit dengan lebar tertentu muncul dalam barisan bit seperti yang diharapkan untuk barisan acak. runs test. untuk menetukan apakah jumlah runtun dalam barisan bit, baik runtun bit R>R ataupun bit R$Rdalamb arisan bit mempunyai jumlah yang relatif sama, seperti yang diharapkan untuk barisan acak. autocorrelation test. untuk menentukan apakah perbedaan jumlah bit R>R dan R$R dalam barian bit %cycle& mempunyai jumlah yang relatif sama, seperti yang diharapkan untuk barisan acak. $. b. +IPS $)>.$ 2. c. +IPS $)>.2 '. d. 4IS* SP :>>.22./.$.: ). e. die hard test B. f. maurerRs uni/ersal statistic test. tidak dapat diramalkan maksudnya,selain telah lulus uji statistik juga unpredictable %tidak dapat diramalkan&.secara perhitungan akan sulit untuk menentukan atau menduga bit bit selanjutnya yang akan muncul dari rangkaian tersebut. selain itu rangkaian itu haruslah tidak memberikan pengetahuan yang lengkap tentang algoritma atu infrastruktur hard6are yang digunakan dalam pembangkitan rangkaian seluruh bit bit sebelumnya dalam rangkaian itu seniri apabila menggunakan alat yang menghasilkan suatu kunci, ia tidak pernah menghasilkan kunci yang hampir sama atu sama persis dengan kunci yang dihasilkan sebelumnya. hal ini berarti jika pembangkit tersebut digunakan dua kali dengan input yang sama maka akan didapatkan dua rangkaian acak yang sama sekali berbeda dan tidak saling berhubungan. namun untuk menghasilkan kunci yang acak tidaklah mudah. . ada dua macam untuk menghasilkan rangkaian kunci, yaitu # secara manual 3etode ini masih sederhana.1iasanya digunakan koin dalam membangkitkan kuncinya. 0taupun dapat menggunakan 1oudout 2ode jika yang dibangkitkan adalah karakter. 3isal # ;umah - > , 1urung - $ .ntuk menghasilkan 2 karakter maka pelemparan koin harus dilakukan sebanyak $> kali, hasilnya dapat dilihat pada tabel boudout. Kelebihan metode manual ini yaitu tidak membutuhkan biaya besar dan tidak memerlukan keahlian khusus. Sedangkan kekurangannya adalah membutuhkan tenaga yang besar dan membutuhkan 6aktu yang lama. 0rtikel ini membutuhkan judul dalam bahasa Indonesia yang sepadan dengan judul aslinya. Artikel !ertopik teknologi in(ormasi ini perlu dirapikan agar memenuhi standar :ikipedia 3erapikan artikel bisa berupa membagi artikel ke dalam paragraf atau 6ikifikasi artikel. Setelah dirapikan, tolong hapus pesan ini. *+ Secara elektronis Pembuatan kunci secara elektronis merupakan teknik pembuatan rangkaian kunci yang menggunakan suatu alat pembangkit rangakain kunci %key generator&. cara ini memiliki banyak. 3etode ini sudah menggunakan alat elektronik dalam pembangkitan kuncinya. 1iasanya menggunakan ;K <enerator seperti ;4< %;andom 4umber <enerator yang akan kami bahas pada paper kali ini&.cara ini memiliki banyak keuntungan contonya tenaga yang dibutuhkan kecil dan 6atu yang dibutuhkan sedikit. namun ia memiki kelemahan yaitu biaya yang dibutuhkan besar dan harus memiliki S53 yang mempunyai keahlian khusus. $. ;andom 1it <enerator ;andom 1it <enerator %pembangkit kunci acak& adalah sebuah alat ataupun algoritma yang mampu menghasilkan suatu rangkaian bit acak atau kunci. Idealnya, suatu algoritma sandi menggunakan kunci yang dihasilkan oleh ;andom 1it <enerator ini. 7al ini dikarenakan bit-bit yang dihasilkan oleh ;andom 1it <enerator benar-benar acak, sehingga sangat sulit untuk dianalisa. 0da beberapa metode yang dapat kita lakukan untuk membangkitkan rangkaian kunci dengan ;andom 1it <enerator ini, yaitu # $. $.Pembangkit kunci berbasis hard6are yaitu pembangkitan kunci yang dilakukan dengan memanfaatkan keacakan yang ditimbulkan oleh kejadian yang bersifat fisik, beberapa contoh kejadian fisik tersebut dapat adalah sebagai berikut# $. Suara dari mikropon atau input dari kamera. 2. Ketidakstabilan dari ascilator yang bekerja. '. *hermal noise yang dihasilkan oleh semi-konduktor dioda ataupun resistor. ). *urbulensi udara pada diskdri/e yang tertutup rapat menyebabkan fluktuasi yang acak pada diskdri/e sector read latency time. B. 2. Pembangkit kunci berbasis soft6are. Pada umumnya pembangkitan kunci dengan cara ini lebih sulit dibuat dibandingkan pembangkitan kunci berbasis hard6are. Pembangkitan kunci berbasis soft6are ini dalam prosesnya biasanya memanfaatkan # $. (am yang terdapat pada sistem 2. Cama 6aktu penekanan tombol '. 3ouse mo/ement ). Input yang diberikan user. 5ata yang digunakan pada pembangkit soft6are sangat ber/ariasi dan bergantung pada banyak faktor, seperti platform komputer. 4amun sulit untuk mencegah pihak- pihak yang tidak berkepentingan untuk meneliti dan memanipulasi data yang dihasilkan. Suatu soft6are pembangkit bit acak seharusnya menggunakan beberapa sumber yang sifatnya acak yang dihasilkan pada sistem komputer. Pseudo random bit generator. Pseudo random bit generator %P;4<& adalah pembangkit rangkainbilangan pseurandom, diman proses pembangkitan tiap elemen tergantung dari formulasi matematis yang digunakan, dan ia membutuhkan seed. Seed yaitu input yang digunakan pada pseudo random bit generator sedangkan outputnya disebutpseudo random bit sePuences %rangkaian bit semi acak&. seed berfungsi sebagai inputan pseudo random bit generator, karena seed meupakan inputan pembangkit kunci semi acak, maka panjangnya disesuiaikan dengan algoritma pseudorandom generator yang digunakan. .ntuk pseudorandom bit, seed inilah yang berperan penting, pada pseudorandom yang baik tidak ditentukan oleh seed melainkan oleh formulasi matematis yang digunakan pada algoritma tersebut. 1ilangan pseudorandom dapat dibangkitkan dari bit pseudorandom oleh karena itu sekarang berkembang Pseudorandom 1it <enerator. Pseudorandom 1it <enerator ini adalah suatu algoritma yang mempunya sifat deterministik, dimana apabila diberikan berisan biner dengan panjang M, maka akan mengahsilkan barisan biner dengan panjang M yang kelihatan acak, deterministik berarti apabila generator diberikan initial seed yang sama maka akan menghasilkan barisan output yang sama atau berulang. as6in--
Wiki: MD5 5alam kriptografi, 1D6 *#essage-Digest algortih$ %+ ialah fungsi hash kriptografik yang digunakan secara luas dengan hash value $2:-bit. Pada standart Internet %;+2 $'2$&, 35B telah dimanfaatkan secara bermacam-macam pada aplikasi keamanan, dan 35B juga umum digunakan untuk melakukan pengujian integritas sebuah file. 35B di desain oleh ;onald ;i/est pada tahun $$ untuk menggantikan hash function sebelumnya, 35). Pada tahun $!, sebuah kecacatan ditemukan dalam desainnya, 6alau bukan kelemahan fatal, pengguna kriptografi mulai menganjurkan menggunakan algoritma lain, seperti S70-$ %klaim terbaru menyatakan bah6a S70-$ juga cacat&. Pada tahun 2>>), kecacatan- kecacatan yang lebih serius ditemukan menyebabkan penggunaan algoritma tersebut dalam tujuan untuk keamanan jadi makin dipertanyakan. Da(tar isi; $. Sejarah dan kriptoanalisis 2. ,fek nyata dari kriptoanalisis '. Pengujian Integritas ). 0lgortima B. Pseudocode !. 7ash-hash 35B =. Cihat pula :. Pranala luar *+ Searah dan kriptoanalisis 35B adalah salah satu dari serangkaian algortima message digest yang didesain oleh Profesor ;onald ;i/est dari 3I* %;i/est, $)&. Saat kerja analitik menunjukkan bah6a pendahulu 35B S 35) S mulai tidak aman, 35B kemudian didesain pada tahun $$ sebagai pengganti dari 35) %kelemahan 35) ditemukan oleh 7ans 5obbertin&. Pada tahun $', den 1oer dan 1osselaers memberikan a6al, bahkan terbatas, hasil dari penemuan pseudo-collision dari fungsi kompresi 35B. 5ua /ektor inisialisasi berbeda dan dengan beda )-bit diantara keduanya. Pada tahun $! 5obbertin mengumumkan sebuah kerusakan pada fungsi kompresi 35B. 5ikarenakan hal ini bukanlah serangan terhadap fungsi hash 35B sepenuhnya, hal ini menyebabkan para pengguna kriptografi menganjurkan pengganti seperti ?7I;CP@@C, S70-$ atau ;IP,35-$!>. .kuran dari hash S $2:-bit S cukup kecil untuk terjadinya serangan (rute force (irthday attack. 35B2;K adalah proyek distribusi mulai 3aret 2>>) dengan tujuan untuk menunjukka kelemahan dari 35B dengan menemukan kerusakan kompresi menggunakan (rute force attack. 1agaimanapun juga, 35B2;K berhenti pada tanggal $= 0gustus 2>>), saat [[kerusakan hash"" pada 35B diumumkan oleh Iiaoyun ?ang, 5engguo +eng, Iuejia Cai dan 7ongbo Ku [$" [2". Serangan analitik mereka dikabarkan hanya memerlukan satu jam dengan menggunakan I13 P!> cluster. Pada tanggal $ 3aret 2>>B, 0rjen Censtra, Iiaoyun ?ang, and 1enne de ?eger mendemontrasikan['" kunstruksi dari dua buah sertifikat I.B> dengan pu(lic key yang berbeda dan hash 35B yang sama, hasil dari demontrasi menunjukkan adanya kerusakan. Konstruksi tersebut melibatkan private key untuk kedua pu(lic key tersebut. 5an beberapa hari setelahnya, Hlastimil Klima menjabarkan[)" dan mengembangkan algortima, mampu membuat kerusakan 3dB dalam beberapa jam dengan menggunakan sebuah komputer notebook. 7al ini menyebabkan 35B tidak bebas dari kerusakan. 5ikarenakan 35B hanya menggunakan satu langkah pada data, jika dua buah a6alan dengan hash yang sama dapat dibangun, sebuah akhiran yang umum dapat ditambahkan pada keduanya untuk membuat kerusakan lebih masuk akal. 5an dikarenakan teknik penemuan kerusakan mengijinkan pendahuluan kondisi hash menjadi arbitari tertentu, sebuah kerusakan dapat ditemukan dengan a6alan apapun. Proses tersebut memerlukan pembangkitan dua buah file perusak sebagai file templat, dengan menggunakan blok $2:-byte dari tatanan data pada !)-byte batasan, file-file tersebut dapat mengubah dengan bebas dengan menggunakan algoritma penemuan kerusakan. ,+ .fek nyata dari kriptoanalisis Saat ini dapat diketahui, dengan beberapa jam kerja, bagaimana proses pembangkitan kerusakan 35B. Kaitu dengan membangkitkan dua byte string dengan hash yang sama. 5ikarenakan terdapat bilangan yang terbatas pada keluaran 35B %2 $2: &, tetapi terdapat bilangan yang tak terbatas sebagai masukannya, hal ini harus dipahami sebelum kerusakan dapat ditimbulkan, tapi hal ini telah diyakini benar bah6a menemukannya adalah hal yang sulit. Sebagai hasilnya bah6a hash 35B dari informasi tertentu tidak dapat lagi mengenalinya secara berbeda. (ika ditunjukkan informasi dari sebuah pu(lic key, hash 35B tidak mengenalinya secata berbeda jika terdapat pu(lic key selanjutnya yang mempunyai hash 35B yang sama. 1agaimanapun juga, penyerangan tersebut memerlukan kemampuan untuk memilih kedua pesan kerusakan. Kedua pesan tersebut tidak dengan mudah untuk memberikan serangan preimage, menemukan pesan dengan hash 35B yang sudah ditentukan, ataupun serangan preimage kedua, menemukan pesan dengan hash 35B yang sama sebagai pesan yang diinginkan. $ash 35B lama, yang dibuat sebelum serangan-serangan tersebut diungkap, masih dinilai aman untuk saat ini. Khususnya pada digital signature lama masih dianggap layak pakai. Seorang user boleh saja tidak ingin membangkitkan atau mempercayai signature baru menggunakan 35B jika masih ada kemungkinan kecil pada teks %kerusakan dilakukan dengan melibatkan pelompatan beberapa bit pada bagian $2:-byte pada masukan hash& akan memberikan perubahan yang berarti. Penjaminan ini berdasar pada posisi saat ini dari kriptoanalisis. Situasi bisa saja berubah secara tiba-tiba, tetapi menemukan kerusakan dengan beberapa data yang belum-ada adalah permasalahan yang lebih susah lagi, dan akan selalu butuh 6aktu untuk terjadinya sebuah transisi. /+ Penguian Integritas ;ingkasan 35B digunakan secara luas dalam dunia perangkat lunak untuk menyediakan semacam jaminan bah6a file yang diambil %download& belum terdapat perubahan. Seorang user dapat membandingkan 35B sum yang dipublikasikan dengan checksum dari file yang diambil. 5engan asumsi bah6a checksum yang dipublikasikan dapat dipercaya akan keasliannya, seorang user dapat secara yakin bah6a dile tersebut adalah file yang sama dengan file yang dirilis oleh para de/eloper, jaminan perlindungan dari #ro.an $orse dan /irus komputer yang ditambahkan pada perangkat lunak. 1agaimanapun juga, seringkali kasus yangterjadi bah6a checksum yang dipublikasikan tidak dapat dipercaya %sebagai contoh, checksum didapat dari channel atau lokasi yang sama dengan tempat mengambil file&, dalam hal ini 35B hanya mampu melakukan error-checking. 35B akan mengenali file yang dido6nload tidak sempurna, cacat atau tidak lengkap. 0+ Algortima <ambar $. Satu operasi 35B S 35B terdiri atas !) operasi, dikelompokkan dalam empat putaran dari $! operasi. 8 adalah fungsi nonlinearT satu fungsi digunakan pada tiap-tiap putaran. Mi menujukkan blok '2-bit dari masukan pesan, dan Ki menunjukkan konstanta '2-bit, berbeda untuk tiap-tiap operasi. s menunjukkan perputaran bit kiri oleh sT s ber/ariasi untuk tiap- tiap operasi. menunjukan tambahan modulo 2 '2 . 35B memproses /ariasi panjang pesan kedalam keluaran $2:-bit dengan panjang yang tetap. Pesan masukan dipecah menjadi dua gumpalan blok B$2-bitT Pesan ditata sehingga panjang pesan dapat dibagi B$2. Penataan bekerja sebagai berikut# bit tunggal pertama, $, diletakkan pada akhir pedan. Proses ini diikuti dengan serangkaian nol %>& yang diperlukan agar panjang pesan lebih dari !)-bit dan kurang dari kelipatan B$2. 1it-bit sisa diisi dengan !)-bit integer untuk menunjukkan panjang pesan yang asli. Sebuah pesan selalu ditata setidaknya dengan $-bit tunggal, seperti jika panjang pesan adalah kelipatan B$2 dikurangi !)-bit untuk informasi panjang %panjang mod%B$2& - )):&, sebuah blok baru dari B$2-bit ditambahkan dengan $-bit diikuti dengan ))= bit-bit nol %>& diikuti dengan panjang !)-bit. 0lgortima 35B yang utama beroperasi pada kondisi $2:-bit, dibagi menjadi empat word '2-bit, menunjukkan 0, 7, C dan D. @perasi tersebut di inisialisasi dijaga untuk tetap konstan. 0lgoritma utama kemudian beroperasi pada masing-masing blok pesan B$2-bit, masing-masing blok melakukan pengubahan terhadap kondisi.Pemrosesan blok pesan terdiri atas empat tahap, batasan putaranT tiap putasan membuat $! operasi serupa berdasar pada fungsi non-linear 8, tambahan modular, dan rotasi ke kiri. <ambar satu mengilustrasikan satu operasi dalam putaran. 0da empat macam kemungkinan fungsi 8, berbeda dari yang digunakan pada tiap-tiap putaran# menunjukkan operasi logikan I@;, 045, @; dan 4@*. 1+ Pseudocode 1seudocode pada algoritma 35B adalah sebagai berikut. 99 Catatan= Seluruh varia(le tidak pada >'-(it dan dan wrap modulo '?>' saat melakukan perhitungan 99 Mendefinisikan r se(agai (erikut <ar int [!)" r, k r[ >..$B" #- U=, $2, $=, 22, =, $2, $=, 22, =, $2, $=, 22, =, $2, $=, 22V r[$!..'$" #- UB, , $), 2>, B, , $), 2>, B, , $), 2>, B, , $), 2>V r['2..)=" #- U), $$, $!, 2', ), $$, $!, 2', ), $$, $!, 2', ), $$, $!, 2'V r[):..!'" #- U!, $>, $B, 2$, !, $>, $B, 2$, !, $>, $B, 2$, !, $>, $B, 2$V 99 Menggunakan (agian fraksional (iner dari integral sinus se(agai konstanta= (or i (rom > to !' k[i" #- floor%abs%sin%i F $&& W 2X'2& 99 *nisialisasi varia(el= <ar int h> #- >M!=)B2'>$ <ar int h$ #- >M,+2501: <ar int h2 #- >M:1052+, <ar int h' #- >M$>'2B)=! 99 1emrosesan awal= append N$N bit to message append N>N bits until message length in bits Y )): %mod B$2& append bit length of message as @A-(it little-endian integer to message 99 1engolahan pesan paada kondisi gumpalan B&'-(it= (or each B&'-(it chunk o( message break chunk into siMteen '2-bit little- endian 6ords 6%i&, > Z i Z $B 99 *nisialisasi nilai hash pada gumpalan ini= <ar int a #- h> <ar int b #- h$ <ar int c #- h2 <ar int d #- h' 99 Kalang utama= (or i (rom > to !' i( > Z i Z $B then f #- %b and c& or %% not b& and d& g #- i else i( $! Z i Z '$ f #- %d and b& or %% not d& and c& g #- %BWi F $& mod $! else i( '2 Z i Z )= f #- b 0or c 0or d g #- %'Wi F B& mod $! else i( ): Z i Z !' f #- c 0or %b or % not d&& g #- %=Wi& mod $! temp #- d d #- c c #- b b #- %%a F f F k%i& F 6%g&& le(trotate r%i&& F b a #- temp 99 #am(ahkan hash dari gumpalan se(agai hasil= h> #- h> F a h$ #- h$ F b h2 #- h2 F c h' #- h' F d <ar int digest #- h> append h$ append h2 append h' 99 3diwu.udkan dalam little-endian% Catatan= Meskipun rumusan dari yang tertera pada 8C &>'&! (erikut ini sering digunakan untuk meningkatkan efisiensi= %> Z i Z $B&# f #- d 0or %b and %c 0or d&& %$! Z i Z '$&# f #- c 0or %d and %b 0or c&& 2+ Hash-hash %D1 $ash-hash 35B sepanjang $2:-bit %$!-byte&, yang dikenal juga sebagai ringkasan pesan, secara tipikal ditampilkan dalam bilangan heksadesimal '2-digit. 1erikut ini merupakan contoh pesan 0S2II sepanjang )'-byte sebagai masukan dan hash 35B terkait# MD(()*%e +ui$k bro,n fo# -u"ps over t%e a.y dog)) - /e&01d/d213bb4534bd5&d2(63a6&/d4 1ahkan perubahan yang kecil pada pesan akan %dengan probabilitas lebih& menghasilkan hash yang benar-benar berbeda, misalnya pada kata NdogN, huruf d diganti menjadi $# MD(()*%e +ui$k bro,n fo# -u"ps over t%e a.y $og)) - &0((d2e4/5d35/f3af544213(&31bd6b $ash dari panjang-nol ialah# MD(())) - d6&d5$d/5f00b306e/500//5e$f5631e 3+ Lihat pula 352 S+H 2yclic redundancy check 4+ Pranala luar 4+ *+ Informasi %D1 *en+;+2 $'2$ S 0lgoritma ingkasan-1esan MDB *en+Menggunakan MDB untuk memastikan integritas isi dari file *en+2atatan Kriptoanalisis 35B *en+*anya-(a6ab tentang Kerusakan $ash *en+@nline 35B crack - ;ainbo6 *ables F big hash database %mdB, mdB%mdB&, sha$, mysPl& *(r+@nline 35B ;e/erser [ 7ash cracker *en+Pembobolan hash pass6ord 35B @nline *en+Pembobolan 35B @nline 4+ ,+ Implementasi *en+situs tentang 35B S berisi tentang berbagai macam implementasi pada berbagai bahasa pemrogaman *en+PajRs 7ome# 2ryptography %(a/ascript 35) dan 35B, plus S70-$& *en+35B kalkulator dengan (a/ascript memberikan nilai secara langsung dari kalkulasi *en+(acksum %Sebuah program dengan berbagai macam fungsi /erifikasi pesan& 4+ /+ "erusakan *en+Kerusakan cepat yang ditemukan oleh H. Klima Kategori; Kriptografi 'ahasa lain; ,nglish, 1ahasa 3elayu, ,spa\ol, 5eutsch, +ran]ais, Italiano, , ^_``abc, Portuguds, , Polski, Cainnya... 5ari ?ikipedia Indonesia. Seluruh teks tersedia sesuai dengan Cisensi 5okumentasi 1ebas <4.. N35BN on the ?ikipedia 6ebsite Hersi terdahulu Pembicaraan Sunting 7alaman ini terakhir diubah pada 2>>->)-$> 2'#'!#'! Halaman Utama ?apedia# +or ?ikipedia on mobile phones Algoritma Kriptogra(i (an.$>, 2>> in Kriptografi 0lgoritma kriptografi adalah algoritma yang berfungsi untuk melakukan tujuan dari ilmu kriptografi itu sendiri. 0lgoritma kriptografi terdiri dari 2 bagian fungsi, yaitu # $. ,4K;IPSI %encryption&, dan 2. 5,K;IPSI %decryption&. Shannon mengatakan bah6an 0lgoritma kriptografi harus memiliki kekuatan untuk melakukan konfusi dan difusi. K)=.>S- %confusion&. 3engaburkan hubungan antara plainteMt dan cipherteMt. 2ara palingmudah untuk melakukan konfusi adalah menggunakan substitusi. Konfusi menimbulkan kesulitan dalam usaha musuh untuk mencari keteraturan dan pola statistik antara plainteMt dan cipherteMt. D-.>S- %difusion&, 3enyebarkan redudansi plainteMt dengan menyebarkan masukan ke seluruh cipherteMt. 2aa yang paling mudah untuk dapat melakukan difusi adalah dengan menggunakan metode transposisi. (ika menggunakan difusi, akan dibutuka 6aktu ang lebih lama untk emecakan sandi rahasia ini. Sehingga dapat digunakan untuk mengamankan informasi. Pada implementasinya sebuah algoritma sandi harus memperhatikan kualitas layanan dari keseluruhan sistem dimana dia diimplementasikan. 0lgoritma sandi yang handal adalah algoritma sandi yang kekuatannya terletak pada kunci, bukan pada kerahasiaan algoritma itu sendiri. *eknik dan metode untuk menguji kehandalan algoritma sandi adalah kriptanalisa. Secara umum berdasarkan kesamaan kuncinya, algoritma sandi dibedakan menjadi # 0C<@;I*30 K.42I SI3,*;IS. 0C<@;I*30 K.42I 0SI3,*;IS. 1erdasarkan arah implementasi dan pembabakan Lamannya dibedakan menjadi # 0C<@;I*30 S045I KC0SIK. 0C<@;I*30 S045I 3@5,;4 1erdasarkan kerahasiaan kuncinya dibedakan menjadi # 0C<@;I*30 S045I K.42I ;070SI0 0C<@;I*30 S045I K.42I P.1CIK 3engapa algoritma kriptografi banyak dipublikasikan ke masyarakat luasA (ika keseluruhan keamanan algoritma tersebut tergantung kunci dan tidak satupun didasarkan oleh detail algoritma, maka algoritma tersebut dapat dipublikasikan oleh semua orang agar dapat dianalisis dan di modifikasi oleh semua orang. Protokol Kriptogra(i Protokol# aturan yang berisi rangkaian langkah-langkah, yang melibatkan dua atau lebih orang, yang dibuat untuk menyelesaikan suatu kegiatan. Protokol kriptografi# protokol yang menggunakan kriptografi. @rang yang berpartisipasi dalam protokol kriptografi memerlukan protokol tersebut misalnya untuk# - berbagi komponen rahasia untuk menghitung sebuah nilai, - membangkitkan rangkaian bilangan acak, - meyakinkan identitas orang lainnya %otentikasi&, - dll Protokol kriptografi dibangun dengan melibatkan beberapa algoritma kriptografi. Sebagian besar protokol kriptografi dirancang untuk dipakai oleh kelompok yang terdiri dari 2 orang pemakai, tetapi ada juga beberapa protokol yang dirancang untuk dipakai oleh kelompok yang terdiri dari lebih dari dua orang pemanaki %misalnya pada aplikasi teleconferencing& .ntuk mendemonstrasikan protokol kriptografi, kita menggunakan nama-nama pemain sebagai berikut# 0lice # orang pertama %dalam semua protokol& 1ob # orang kedua %dalam semua protokol& 2arol # orang ketiga dalam protokol tiga- atau empat- orang 5a/e # orang keempat dalam protokol empat-orang ,/e # penyadap %eavesdropper& *rent # juru penengah %ar(itrator& yang dipercaya 1. Protokol Komunikasi dengan Sistem Kriptogra(i Simetri. Protokol 1; %$& 0lice dan 1ob menyepakati algoritma kriptografi simetri yang akan digunakan. %2& 0lice dan 1ob menyepakati kunci yang akan digunakan. %'& 0lice menulis pesan plainteks dan mengenkripsinya dengan kunci menjadi cipherteks. %)& 0lice mengirim pesan cipherteks kepada 1ob. %B& 1ob mendekripsi pesan cipherteks dengan kunci yang sama dan membaca plainteksnya. ,/e mendengar semua percakapan antara 0lice dan 1ob pada protokol ini. - jika ,/e menyadap transmisi pesan pada langkah %)&, ia harus mencoba mengkriptanalisis cipherteks untuk memperoleh plainteks tanpa mengetahui kunci. - jika ia mendengar pembicaraan pada langkah %$&dan %2&, maka ia mengetahui algoritma dan kunci yang digunakan, sehingga ia dapat mendekripsi cipherteks dengan kunci tsb. Protokol kriptografi di atas tidak bagus karena kunci harus tetap rahasia sebelum, sepanjang, dan setelah protokol. Cangkah %$& dapat dilakukan dalam mode publik, namun langkah %2& harus dilakukan dalam mode rahasia. Sistem kriptografi kunci-publik dapat memecahkan masalah distribusi kunci ini. . Protokol Komunikasi dengan Sistem Kriptogra(i Kunci-Pu!lik. Protokol ; %$& 0lice dan 1ob menyepakati algoritma kriptografi kunci- publik yang akan digunakan. %2& 1ob mengirimi 0lice kunci publiknya %kunci publik 1ob&. %'& 0lice mengenkripsi pesannya dengan kunci publik 1ob kemudian mengirimkannya ke 1ob %)& 1ob mendekripsi pesan dari 0lice dengan kunci rahasia miliknya %kunci rahasia 1ob&. Pada umumnya, pengguna di jaringan menyepakati algoritma kriptografi kunci-publik yang digunakan. Setiap pengguna jaringan mempunyai kunci publik dan kunci rahasia, yang dalam hal ini kunci publik dipublikasikan melalui basisdata yang dapat diakses bersama. 5engan demikian, protokol kriptografi kunci-publik menjadi lebih sederhana sebagai berikut# Protokol 4; %$& 0lice mengambil kunci publik 1ob dari basisdata kunci-publik. %2& 0lice mengenkripsi pesannya dengan kunci publik 1ob kemudian mengirimkannya kepada 1ob. %'& 1ob mendekripsi pesan dari 0lice dengan kunci rahasia miliknya %kunci rahasia 1ob&. ,/e yang mendengar pembicaraan selama protokol ini akan mendapatkan kunci publik 1ob, tetapi ,/e tidak dapat mendekripsi cipherteks karena ia tidak mengetahui kunci rahasia 1ob. 5alam dunia nyata, sistem kriptografi kunci-publik bukanlah pengganti sistem kriptografi sismetri. Sistem kriptografi kunci-publik tidak digunakan untuk mengenkripsi pesan, melainkan untuk mengenkripsi kunci pada sistem kriptografi simetri. 5engan sistem kriptogfai kunci-publik, maka pertukaran kunci pada sistem kriptografi simetri dapat dilakukan dengan protokol kriptografi kunci-publik sebagai berikut# Protokol &; %$& 1ob mengirimi 0lice kunci publiknya. %2& 0lice membangkitkan kunci simetri K, mengenkripsikannya dengan kunci publik %1K& 1ob, dan mengirimkannya ke 1ob, E 1K %K& %'& 1ob mendekripsi pesan dari 0lice dengan menggunakan kunci rahasianya %SK& untuk mendapatkan kembali kunci simetri K, D SK %E 1K %K&& - K %)& 1aik 0lice dan 1ob dapat saling berkirim pesan dengan sistem kriptografi simetri dengan menggunakan kunci K. 5ua gabungan sistem kriptografi yang digunakan pada protokol ) di atas disebut hy(rid cryptosystem dan kunci sismetri yang dipertukarkan disebut session key. 5engan protokol ) di atas, kita katakan bah6a sistem kriptografi kunci-publik berhasil memecahkan masalah manajemen kunci yang sangat penting, yaitu pertukaran kunci. 4. Protokol untuk Sidik Dijital *Digital Signature+ a" Menandatangani Dokumen dengan Sistem Kriptografi Simetri dan Seorang Curu 1enengah" 0lice ingin menandatangani dokumen digital %pesan atau arsip& dan mengirimkannya ke 1ob. Ia meminta *rent sebagai juru penengah %misalnya pengacara& antara 0lice dan 1ob %diperlukan jika se6aktu-6aktu ada pertengkaran antara 0lice dan 1ob&. *rent akan memberikan sidik berupa sertifikasi terhadap dokumen yang dikirim oleh 0lice. Sistem kriptografi yang digunakan adalah simetri. *rent memberikan kunci rahasia K 0 kepada 0lice dan kunci rahasia K 7 kepada 1ob %K 0 dan K 7 berbeda&. Protokol 6; %$& 0lice mengenkripsi dokumen dengan K 0 dan mengirimkannya kepada *rent. %2& *rent mendekripsi dokumen dari 0lice dengan K 0 . %'& *rent menambahkan pada dokumen yang sudah didekripsi sebuah pernyataan sertifikasi bah6a dia telah menerima dokumen itu dari 0lice, kemudian mengenkripsi keseluruhannya dengan K 7 . %)& *rent mengirim cipherteks yang dihasilkan kepada 1ob. %B& 1ob mendekripsi cipherteks dengan K 7 . Ia membaca dokumen dan sertifikasi dari *rent bah6a 0lice yang mengirimkan dokumen tersebut. Karakteristik pemberian tanda tangan dengan prtotokol B adalah sbb# $. Sidik %signature& pasti otentik, karena *rent adalah juru penegah yang dipercaya, *rent mengetahui bah6a dokumen dari 0lice. Sertifikasi dari *rent berlaku sebagai bukti bagi 1ob. 2. Sidik tidak dapat digunakan lagi untuk dokumen yang lain. (ika 1ob menggunakan sertifikasi dari *rent untuk dokumen yang lain, maka kecurangan 1on ini dapat diketahui oleh *rent sbb# - *rent meminta dokumen tersebut dari 1ob. - *rent mengenkripsi dokumen tersebut dengan K 0 dan membandingkannya dengan cipherteks dari 0lice. - (ika hasil enkripsi dokumen dari 1ob tidak sama dengan cipherteks dari 0lice, maka 1ob telah mekakukan kecurangan. '. 5okumen yang sudah ditandatangani tidak dapat diubah. *rent dapat membuktikan bah6a dokumen sudah berubah dengan cara yang sama seperti 2 di atas. ). Sidik tidak dapat disangkal. (ika 0lice menyangkal bah6a dia yang mengirim dokumen, sertifikasi dari *rent dapat menyanggah sangkalan 0lice. Protokol B di atas tidak praktis karena membutuhkan pihak ketiga %*rent& untuk memberikan sertifikasi keabsahan dokumen dan prosesnya memakan 6aktu. (" Menandatangani Dokumen dengan Sistem Kriptografi Kunci-1u(lik" Protokol ?; %$& 0lice mengenkripsi dokumen dengan kunci rahasianya. Ini sekaligus juga berarti 0lice telah memberikan sidik %signature& pada dokumennya. %2& 0lice mengirim dokumen yang terenkripsi kepada 1ob. %'& 1ob mendekripsi dokumen dengan kunci publik 0lice. Ini sekaligus juga berarti 1ob telah mem/erifikasi sidik pada dokumen. Protokol ! tidak membutuhkan pihak ketiga %*rent& untuk memberikan tandatangan %*rent hanya diperlukan untuk mensertifikasi bah6a kunci publik 0lice memang benar milik 0lice&. Protokol ! memiliki karakteristik yang sama seperti pada protokol B. c" Menandatangani Dokumen dengan Sistem Kriptografi Kunci-1u(lik dan 8ungsi $ash Satu-0rah Protokol @; %$& 0lice meringkas dokumennya menjadi message digest dengan fungsi hash satu-arah. %2& 0lice mengenkripsi message digest dengan kunci rahasianya. 7asil enkripsinya disertakan %em(edded& pada dokumen. Ini berarti 0lice telah memberi sidik dijital pada dokumennya. %'& 0lice mengirim dokumen yang sudah diberi sidik dijital kepada 1ob. %)& 1ob meringkas dokumen dari 0lice menjadi mesaage digest dengan fungsi hash yang sama. 1ob mendekripsi sidik dijital yang disertakan pada dokumen 0lice. (ika hasil dekripsinya sama dengan message digest yang dihasilkan, maka sidik dijital tersebut sah. (ika dokumen yang sama ingin ditandatangani oleh dua orang %0lice dan 1ob&, maka orang ketiga, 2arol, dibutuhkan pada proses /erifikasi. Protokolnya adalah sebagai berikut# Protokol A; %$& 0lice memberi sidik dijital pada message digest dari dokumen. %2& 1ob memberi sidik dijital pada message digest dari dokumen. %'& 1ob mengirimkan sidik dijitalnya kepada 0lice. %)& 0lice mengirim dokumen yang sudah diberi sidik dijitalnya dan sidik dijital dari 1ob kepada 2arol. %B& 2arol mem/erifikasi sidik dijital 0lice dan sidik dijital 1ob %2arol mengetahui kunci publik 0lice dan kunci publik 1ob&. &. Protokol untuk Sidik Dijital dengan #nkripsi Protokol ini dapat dianalogikan seperti pengiriman surat yang menggunakan amplop tertutup. *anda tangan pada surat memberikan bukti kempemilikan, hal ini sama dengan fungsi sidik dijital pada pada dokumen elektrinis. Sedangkan amplop memberikan perlindungan keamanan %privacy&, hal ini sama dengan fungsi enkripsi pada dokumen. Sidik dijital diberikan dengan menggunakan kunci rahasia pengirim %lihat protokol !& dan dokumen dienkripsi dengan kunci publik penerima. Protokolnya adalah sbb# Protokol B; %$& 0lice menandatangi dokumen atau pesan %M& dengan menggunakan kunci rahasianya %SK-0&. S SK-0 %M& %2& 0lice mengenkripsi dokumen yang sudah ditandatangi dengan kunci publik 1ob %1K-7& dan mengirimkannya kepada 1ob E 1K-7 %S SK-0 %M&& %'& 1ob mendekripsi cipherteks yang diterima dengan kunci rahasianya %SK-7&. D SK-7 %E 1K-7 %S SK-0 %M&&& - S SK-0 %M&& %)& 1ob melakukan /erifikasi dengan mendekripsi hasil pada langkah ' dengan menggunakan kunci publik 0lice dan sekaligus mendapatkan kembali dokumen yang belum dienkripsi. D 1K-0 % S SK-0 %M&& - M 3enandatangani dokumen sebelum mengenkripsikannya adalah cara yang alamiah. 5alam kehidupan sehari-hari, kita menulis surat, menandatanganinya, dan memasukkannya ke dalam amplop. 1ila 0lice memasukkan surat ke dalam amplop, kemudian menandatangani amplop, maka keabsahannya diragukan. (ika 1ob memperlihatkan surat 0lice tersebut kepada 2arol, maka 2arol mungkin menuduh 1ob berbohong tentang isi surat tersebut. 0lice tidak harus menggunakan menggunakan kunci publik9kunci rahasia yang sama untuk enkripsi dan tanda tangan. 0lice dapat menggunakan dua pasang kunci# sepasang untuk enkripsi dan sepasang untuk pemberian tanda tangan. 3isalkan 1ob ingin mengkonfirmasi bah6a dia telah menerima dokumen dari 0lice. 3aka, 1ob mengirimkan konfirmasi etanda terimaf kepada 0lice. Protokol pengiriman pesan tanda terima adalah sebagai berikut# Protokol 1C; %$& 0lice menandatangi dokumen atau pesan %M& dengan menggunakan kunci rahasianya %SK-0&, mengenkripsikannya dengan kunci publik 1ob %1K-7& dan mengirimkannya kepada 1ob E 1K-7 %S SK-0 %M&& %2& 1ob mendekripsi cipherteks yang diterima dengan kunci rahasianya %SK-7&, mem/erifikasi sidik dijital dengan kunci publik 0lice dan sekaligus mendapatkan kembali dokumen yang belum dienkripsi. D 1K-0 %D SK-7 %E 1K-7 %S SK-0 %M&&&& - M %'& 1ob menandatangani dokumen %M& dengan kunci rahasianya %SK-7&, mengenkripsikannya dengan kunci publik 0lice %1K-0&, dan mengirimkannya ke 0lice. E 1K-0 %S SK-7 %M&& %)& 0lice mendekripsi dokumen dengan kunci rahasianya %SK-0& dan mem/erifikasi sidik dijital dengan kunci publik 1ob %1K-7&. D 1K-7 %D SK-0 %E 1K-0 %S SK-7 %M&&&& - M E (ika M E yang dihasilkan sama dengan dokumen yang dikirim oleh 0lice %M&, maka 0lice tahu bah6a 1ob menerima dokumennya dengan benar. Algoritma Asimetris DPu!lic KeyE (an.$>, 2>> in Kriptografi 0lgoritma 0simetris atau sering disebut algoritma public key, penggunaan kunci dalam algoritma ini adalah, kunci yang dipakai dalam proses enkripsi berbeda dengan kunci yang dipakai pada proses dekripsi, jadi jumlah kunci enkripsi g kunci dekripsi. 0da 2 jenis kunci di algoritma ini, yaitu $. K>=C- P>'/-K adalah kunci yang digunakan untuk melakukan proses enkripsi data. Kunci ini disebut publik karena siapapun dapat mengetahuinya. 2. K>=C- PR-7A, adalah kunci yang digunakan untuk melakukan proses dekripsi data. Kunci ini disebut pri/at karena $ kunci pri/at hanya dimiliki oleh $ orang saja. Kunci pri/at sering juga disebut kunci rahasia. *stilah kunci rahasia dalam algoritma simetris digunakan untk menyatakan kunci enkripsi dan dekripsi! sementara pada algoritma asimetris digunakan untuk menyatakan kunci privat! karena kunci pu(lik tidak dirahasiakan"