Anda di halaman 1dari 61

Pengenalan Kriptografi

oleh : Tedi Heriyanto


$ 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

6u"u-u"u
+$heneier% 6ru$e% ,##lied 3ry#to!ra#hy% edisi 2% :e7 Jersey:John Giley I +ons% 8n$.% 199J.

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"

Anda mungkin juga menyukai