Anda di halaman 1dari 8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

RSA
DariWikipediabahasaIndonesia,ensiklopediabebas

RSAdibidangkriptografiadalahsebuahalgoritmapadaenkripsipublickey.RSAmerupakanalgoritma
pertamayangcocokuntukdigitalsignaturesepertihalnyaekripsi,dansalahsatuyangpalingmajudalam
bidangkriptografipublickey.RSAmasihdigunakansecaraluasdalamprotokolelectroniccommerce,dan
dipercayadalammengamnkandenganmenggunakankunciyangcukuppanjang.

Daftarisi
1 SejarahRSA
2 Operasional
2.1 PembuatanKunci
2.2 Prosesenkripsipesan
2.3 Prosesdekripsipesan
2.4 Contohproses
2.5 Paddingschemes
3 Pengesahanpesan
4 Keamanan
5 Pertimbanganpraktis
5.1 Pembuatankunci
5.2 Kecepatan
5.3 Distribusikunci
5.4 Penyeranganwaktu
5.5 Penyeranganciphertextadaptive
6 Lihatpula
7 Pranalaluar

SejarahRSA
AlgortimaRSAdijabarkanpadatahun1977olehtigaorang:RonRivest,AdiShamirdanLenAdleman
dariMassachusettsInstituteofTechnology.HurufRSAitusendiriberasaldariinisialnamamereka(Rivest
ShamirAdleman).
CliffordCocks,seorangmatematikawanInggrisyangbekerjauntukGCHQ,menjabarkantentangsistem
equivalenpadadokumeninternalpadatahun1973.PenemuanCliffordCockstidakterungkaphinggatahun
1997karenaalasantopsecretclassification.
AlgoritmatersebutdipatenkanolehMassachusettsInstituteofTechnologypadatahun1983diAmerika
SerikatsebagaiU.S.Patent4.405.829(http://www.google.com/patents?vid=4405829).Patentersebut
berlakuhingga21September2000.SemenjakAlgoritmaRSAdipublikasikansebagaiaplikasipaten,
regulasidisebagianbesarnegaranegaralaintidakmemungkinkanpenggunaanpaten.Halinimenyebabkan
hasiltemuanCliffordCocksdikenalsecaraumum,patendiAmerikaSerikattidakdapatmematenkannya.

https://id.wikipedia.org/wiki/RSA

1/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

Operasional
PembuatanKunci
SemisalAliceberkeinginanuntukmengizinkanBobuntukmengirimkankepadanyasebuahpesanpribadi
(privatemessage)melaluimediatransmisiyangtidakaman(insecure).Alicemelakukanlangkahlangkah
berikutuntukmembuatpasangankuncipublickeydanprivatekey:
1.Pilihduabilanganprimapqsecaraacakdanterpisahuntuktiaptiappdanq.HitungN=pq.N
hasilperkaliandaripdikalikandenganq.
2.Hitung=(p1)(q1).
3.Pilihbilanganbulat(integer)antarasatudan(1<e<)yangjugamerupakankoprimadari.
4.Hitungdhinggade1(mod).
bilanganprimadapatdiujiprobabilitasnyamenggunakanFermat'slittletheorema^(n1)modn=1
jikanadalahbilanganprima,diujidenganbeberapanilaiamenghasilkankemungkinanyangtinggi
bahwanialahbilanganprima.Carmichaelnumbers(angkaangkaCarmichael)dapatmelalui
pengujiandariseluruha,tetapihalinisangatlahlangka.
langkah3dan4dapatdihasilkandenganalgoritmaextendedEuclideanlihatjugaaritmetika
modular.
langkah4dapatdihasilkandenganmenemukanintegerxsehinggad=(x(p1)(q1)+1)/e
menghasilkanbilanganbulat,kemudianmenggunakannilaidarid(mod(p1)(q1))
langkah2PKCS#1v2.1menggunakan&lamda=lcm(p1,q1)selaindaripada=(p1)(q1)).
Padapublickeyterdiriatas:
N,modulusyangdigunakan.
e,eksponenpublik(seringjugadisebuteksponenenkripsi).
Padaprivatekeyterdiriatas:
N,modulusyangdigunakan,digunakanpulapadapublickey.
d,eksponenpribadi(seringjugadisebuteksponendekripsi),yangharusdijagakerahasiaannya.
Biasanya,berbedadaribentukprivatekey(termasukparameterCRT):
pdanq,bilanganprimadaripembangkitankunci.
dmod(p1)dandmod(q1)(dikenalsebagaidmp1dandmq1).
(1/q)modp(dikenalsebagaiiqmp).
BentukinimembuatprosesdekripsilebihcepatdansigningmenggunakanChineseRemainderTheorem
(CRT).Dalambentukini,seluruhbagiandariprivatekeyharusdijagakerahasiaannya.
AlicemengirimkanpublickeykepadaBob,dantetapmerahasiakanprivatekeyyangdigunakan.pdanq
sangatsensitifdikarenakanmerupakanfaktorialdariN,danmembuatperhitungandaridmenghasilkane.
JikapdanqtidakdisimpandalambentukCRTdariprivatekey,makapdanqtelahterhapusbersamanilai
nilailaindariprosespembangkitankunci.

Prosesenkripsipesan
https://id.wikipedia.org/wiki/RSA

2/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

MisalkanBobinginmengirimpesanmkeAlice.Bobmengubahmmenjadiangkan<N,menggunakan
protokolyangsebelumnyatelahdisepakatidandikenalsebagaipaddingscheme.
MakaBobmemilikindanmengetahuiNdane,yangtelahdiumumkanolehAlice.Bobkemudian
menghitungciphertextcyangterkaitpadan:

Perhitungantersebutdapatdiselesaikandengancepatmenggunakanmetodeexponentiationbysquaring.
BobkemudianmengirimkanckepadaAlice.

Prosesdekripsipesan
AlicemenerimacdariBob,danmengetahuiprivatekeyyangdigunakanolehAlicesendiri.Alicekemudian
memulihkanndaricdenganlangkahlangkahberikut:

Perhitungandiatasakanmenghasilkann,denganbegituAlicedapatmengembalikanpesansemulam.
Prosedurdekripsibekerjakarena
.
Kemudian,dikarenakaned1(modp1)daned1(modq1),hasildariFermat'slittletheorem.

dan

Dikarenakanpdanqmerupakanbilanganprimayangberbeda,mengaplikasikanChineseremainder
theoremakanmenghasilkanduamacamkongruen
.
serta
.

Contohproses
BerikutinimerupakancontohdarienkripsiRSAdandekripsinya.Parameteryangdigunakandisiniberupa
bilangankecil.
Kitamembuat
p=61
q=53
https://id.wikipedia.org/wiki/RSA

bilanganprimapertama(harusdijagakerahasiannyaataudihapussecarahatihati)
bilanganprimakedua(harusdijagakerahasiannyaataudihapussecarahatihati)
3/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

N=pq=3233 modulus(diberikankepadapublik)
e=17
eksponenpublik(diberikankepadapublik)
d=2753
eksponenpribadi(dijagakerahasiannya)
Publickeyyangdigunakanadalah(e,N).Privatekeyyangdigunakanadalahd.Fungsipadaenkripsiialah:
encrypt(n)=nemodN=n17mod3233
dimananadalahplaintextFungsidekripsiialah:
decrypt(c)=cdmodN=c2753mod3233
dimanacadalahciphertext
Untukmelakukanenkripsiplaintextbernilai"123",perhitunganyangdilakukan
encrypt(123)=12317mod3233=855
Untukmelakukandekripsiciphertextbernilai"855"perhitunganyangdilakukan
decrypt(855)=8552753mod3233=123
Keduaperhitungandiatasdiselesaikansecaraeffisienmenggunakansquareandmultiplyalgorithmpada
modularexponentiation.

Paddingschemes
PaddingSchemeharusdibangunsecarahatihatisehinggatidakadanilaidarimyangmenyebabkan
masalahkeamanan.Sebagaicontoh,jikakitaambilcontohsederhanadaripenampilanASCIIdarimdan
menggabungkanbitbitsecarabersamasamaakanmenghasilkann,kemudianpessanyangberisiASCII
tunggalkarakterNUL(nilainumeris0)akanmenghasilkann=0,yangakanmenghasilkanciphertext0
apapunitunilaidariedanNyangdigunakan.SamahalnyadengankarakterASCIItunggalSOH(nilai
numeris1)akanselalumenghasilkanchiphertext1.Padakenyataannya,untuksistemyangmenggunakan
nilaieyangkecil,seperti3,seluruhkaraktertunggalASCIIpadapesanakandisandikanmenggunakan
skemayangtidakaman,dikarenakannilaiterbesarnadalahnilai255,dan2553menghasilkannilaiyang
lebihkecildarimodulusyangsewajarnya,makaprosesdekripsiakanmenjadimasalahsederhanauntuk
mengambilpoladasardariciphertexttanpaperlumenggunakanmodulusN.Sebagaikonsekuensinya,
standarsepertiPKCSdidesaindengansangathatihatisehinggamembuatpesanasalasalandapat
terenkripsisecaraaman.DanjugaberdasarpadabagianKecepatan,akandijelaskankenapamhampir
bukanlahpesanitusendiritetapilebihpadamessagekeyyangdipilhsecaraacak.

Pengesahanpesan
RSAdapatjugadigunakanuntukmengesahkansebuahpesan.MisalkanAliceinginmengirimpesankepada
Bob.Alicemembuatsebuahhashvaluedaripesantersebut,dipangkatkandenganbilanganddibagiN
(sepertihalnyapadadeskripsipesan),danmelampirkannyasebagai"tandatangan"padapesantersebut.
SaatBobmenerimapesanyangtelah"ditandatangani",Bobmemangkatkan"tandatangan"tersebutdengan
https://id.wikipedia.org/wiki/RSA

4/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

bilanganedibagiN(sepertihalnyapadaenkripsipesan),danmembandingkannyadengannilaihasildari
hashvaluedenganhashvaluepadapesantersebut.Jikakeduacocok,makaBobdapatmengetahuibahwa
pemilikdaripesantersebutadalahAlice,danpesanpuntidakpernahdiubahsepanjangpengiriman.
Harapdicatatbahwapaddingschememerupakanhalyangesensialuntukmengamankanpengesahanpesan
sepertihalnyapadaenkripsipesan,olehkarenaitukunciyangsamatidakdigunakanpadaprosesenkripsi
danpengesahan.

Keamanan
PenyeranganyangpalingumumpadaRSAialahpadapenangananmasalahfaktorisasipadabilanganyang
sangatbesar.Apabilaterdapatfaktorisasimetodeyangbarudancepattelahdikembangkan,makaada
kemungkinanuntukmembongkarRSA.
Padatahun2005,bilanganfaktorisasiterbesaryangdigunakansecaraumumialahsepanjang663bit,
menggunakanmetodedistribusimutakhir.KunciRSApadaumumnyasepanjang10242048bit.Beberapa
pakarmeyakinibahwakunci1024bitadakemungkinandipecahkanpadawaktudekat(halinimasihdalam
perdebatan),tetapitidakadaseorangpunyangberpendapatkunci2048bitakanpecahpadamasadepan
yangterprediksi.
SemisalEve,seorangeavesdropper(pencuridengarpenguping),mendapatkanpublickeyNdane,dan
ciphertextc.Bagimanapunjuga,Evetidakmampuuntuksecaralangsungmemperolehdyangdijaga
kerahasiannyaolehAlice.Masalahuntukmenemukannsepertipadane=cmodNdikenalsebagai
permasalahanRSA.
CarapalingefektifyangditempuholehEveuntukmemperolehndaricialahdenganmelakukanfaktorisasi
Nkedalampdanq,dengantujuanuntukmenghitung(p1)(q1)yangdapatmenghasilkanddarie.Tidak
adametodewaktupolinomialuntukmelakukanfaktorisasipadabilanganbulatberukuranbesardikomputer
saatini,tapihaltersebutpunmasihbelumterbukti.
MasihbelumadabuktipulabahwamelakukanfaktorisasiNadalahsatusatunyacarauntukmemperolehn
daric,tetapitidakditemukanadanyametodeyanglebihmudah(setidaknyadarisepengatahuanpublik).
Bagaimanapunjuga,secaraumumdianggapbahwaEvetelahkalahjikaNberukuransangatbesar.
JikaNsepanjang256bitataulebihpendek,NakandapatdifaktorisasidalambeberapajampadaPersonal
Computer,denganmenggunakanperangkatlunakyangtersediasecarabebas.JikaNsepanjang512bitatau
lebihpendek,Nakandapatdifaktorisasidalamhitunganratusanjamsepertipadatahun1999.Secarateori,
perangkatkerasbernamaTWIRLdanpenjelasandariShamirdanTromerpadatahun2003mengundang
berbagaipertanyaanakankeamanandarikunci1024bit.SantadisarankanbahwaNsetidaknyasepanjang
2048bit.
Padathaun1993,PeterShormenerbitkanAlgoritmaShor,menunjukkanbahwasebuahkomputerquantum
secaraprinsipdapatmelakukanfaktorisasidalamwaktupolinomial,menguraiRSAdanalgoritmalainnya.
Bagaimanapunjuga,masihterdapatpedebatandalampembangunankomputerquantumsecaraprinsip.

Pertimbanganpraktis
https://id.wikipedia.org/wiki/RSA

5/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

Pembuatankunci
Menemukanbilanganprimabesarpdanqpadabiasanyadidapatdenganmencobaserangkaianbilangan
acakdenganukuranyangtepatmenggunakanprobabilitasbilanganprimayangdapatdengancepat
menghapushampirsemuabilanganbukanprima.
pdanqseharusnyatidak"salingberdekatan",agarfaktorisasifermatpadaNberhasil.Selainitupula,jika
p1atauq1memeilikifaktorisasibilanganprimayangkecil,Ndapatdifaktorkansecaramudahdannilai
nilaidaripatauqdapatdiacuhkan.
Seseorangseharusnyatidakmelakukanmetodapencarianbilanganprimayanghanyaakanmemberikan
informasipentingtentangbilanganprimatersebutkepadapenyerang.Biasanya,pembangkitbilanganacak
yangbaikakanmemulainilaibilanganyangdigunakan.Harapdiingat,bahwakebutuhandisiniialah"acak"
dan"tidakterduga".Berikutinimungkintidakmemenuhikriteria,sebuahbilanganmungkindapatdipilah
dariprosesacak(misal,tidakdaripolaapapun),tetapijikabilanganitumudahuntukditebakataudiduga
(ataumiripdenganbilanganyangmudahditebak),makametodetersebutakankehilangankemampuan
keamanannya.Misalnya,tabelbilanganacakyangditerbitkanolehRandCorppadatahun1950anmungkin
memangbenarbenarteracak,tetapidikarenakanditerbitkansecaraumum,haliniakanmempermudahpara
penyerangdalammendapatkanbilangantersebut.Jikapenyerangdapatmenebakseparuhdaridigitpatauq,
parapenyerangdapatdengancepatmenghitungseparuhyanglainnya(ditunjukkanolehDonald
Coppersmithpadatahun1997).
Sangatlahpentingbahwakuncirahasiadbernilaicukupbesar,Wienermenunjukkanpadatahun1990
bahwajikapdiantaraqdan2q(yangsangatmirip)dandlebihkecildaripadaN1/4/3,makadakandapat
dihitungsecaraeffisiendariNdane.Kuncienkripsie=2sebaiknyatidakdigunakan.

Kecepatan
RSAmemilikikecepatanyanglebihlambatdibandingkandenganDESdanalgoritmasimetriklainnya.
Padapraktiknya,Bobmenyandikanpesanrahasiamenggunakanalgoritmasimetrik,menyandikankunci
simetrikmenggunakanRSA,danmengirimkankuncisimetrikyangdienkripsimenggunakanRSAdanjuga
mengirimkanpesanyangdienkripasisecarasimetrikkepadaAlice.
Prosedurinimenambahpermasalahanakankeamanan.Singkatnya,Sangatlahpentinguntukmenggunakan
pembangkitbilanganacakyangkuatuntukkuncisimetrikyangdigunakan,karenaEvedapatmelakukan
bypassterhadapRSAdenganmenebakkuncisimterikyangdigunakan.

Distribusikunci
Sebagaimanahalnyacipher,bagaimanapublickeyRSAdidistribusimenjadihalpentingdalamkeamanan.
Distribusikunciharusamandarimaninthemiddleattack(penghadangditengahjalan).AnggapEve
dengansuatucaramampumemberikankunciarbitarikepadaBobdanmembuatBobpercayabahwakunci
tersebutmilikAlice.AnggapEvedapan"menghadang"sepenuhnyatransmisiantaraAlicedanBob.Eve
mengirimBobpublickeymilikEve,dimanaBobpercayabahwapublickeytersebutmilikAlice.Evedapat
menghadapseluruhciphertextyangdikirimolehBob,melakukandekripsidengankuncirahasiamilikEve
sendiri,menyimpansalinandaripesantersebut,melakukanenkripsimenggunakanpublickeymilikAlice,

https://id.wikipedia.org/wiki/RSA

6/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

danmengirimkanciphertextyangbarukepadaAlice.Secaraprinsip,baikAliceatauBobtidakmenyadari
kehadiranEvediantaratransmisimereka.Pengamananterhadapserangansemacaminiyaitumenggunakan
sertifikatdigitalataukomponenlaindariinfrastukturpublickey.

Penyeranganwaktu
KochermenjelaskansebuahseranganbaruyangcerdaspadaRSApadatahun1995:jikapenyerang,Eve,
mengetahuiperangkatkerasyangdimilikiolehAlicesecaraterperincidanmampuuntukmengukurwaktu
yangdibutuhkanuntukmelakukandekripsiuntukbeberapaciphertext,Evedapatmenyimpulkankunci
dekripsidsecaracepat.Penyeranganinidapatjugadiaplikasikanpadaskema"tandatangan"RSA.SAlah
satucarauntukmencegahpenyeranganiniyaitudenganmemastikanbahwaoperasidekripsimenggunakan
waktuyangkonstanuntuksetiapciphertextyangdiproses.Carayanglainnya,yaitudenganmenggunakan
propertimultipikatifdariRSA.SebagaigantidarimenghitungcdmodN,Alicepertamatamamemilihnilai
bilanganacakrdanmenghitung(rec)dmodN.HasildaripenghitungantersebutialahrmmodNkemudian
efekdarirdapatdihilangkandenganperkaliandenganinversenya.Nilaibarudarirdipilihpadatiap
ciphertext.Denganteknikini,dikenalsebagaimessageblinding(pembutaanpesan),waktuyangdiperlukan
untukprosesdekripsitidaklagiberhubungandengannilaidariciphertextsehinggapenyeranganwaktuakan
gagal.

Penyeranganciphertextadaptive
Padatahun1998,DanielBleichenbachermenjelaskanpenggunaanpenyeranganciphertextadaptive,
terhadappesanyangterenkripsimenggunakanRSAdanmenggunakanPKCS#1v1paddingscheme.
DikarenakankecacatanpadaskemaPKCS#1,Bleichenbachermampuuntukmelakukanserangkaian
seranganterhadapimplementasiRSApadaprotokolSecureSocketLayer,dansecarapotensial
mengungkapkuncikunciyangdigunakan.Sebagaihasilnya,parapenggunakriptografimenganjurkan
untukmenggunakanpaddingschemeyangrelatifterbuktiamansepertiOptimalAsymmetricEncryption
Padding,danLaboratoriumRSAtelahmerilisversiterbarudariPKCS#1yangtidaklemahterdapat
seranganini.

Lihatpula
KriptografiQuantum
MD5

Pranalaluar
(Inggris)PKCS#1:StandarKriptografiRSA(http://www.rsasecurity.com/rsalabs/node.asp?id=2125)

(websiteLaboratoriumRSA)
(Inggris)MetodeuntukmendapatkanDigitalSignaturedanPublicKeyCryptosystems(http://theory.l
cs.mit.edu/~rivest/rsapaper.pdf),R.Rivest,A.Shamir,L.Adleman,KomunikasiACM,Seri.21(2),
1978,halaman120126.DirilissebagaiMIT"TechnicalMemo"padaApril1977.
(Inggris)PengenalantentangRSACryptosystem(http://www.devhood.com/tutorials/tutorial_details.a
spx?tutorial_id=544&printer=t),M.Griep,Okt.2002,
Diperolehdari"https://id.wikipedia.org/w/index.php?title=RSA&oldid=11338560"
https://id.wikipedia.org/wiki/RSA

7/8

5/6/2016

RSAWikipediabahasaIndonesia,ensiklopediabebas

Kategori: ArtikelyangperluditerjemahkandaribahasaInggrisMaret2016 Kriptografi


Halamaniniterakhirdiubahpada1Maret2016,pukul16.08.
TekstersediadibawahLisensiAtribusiBerbagiSerupaCreativeCommonsketentuantambahan
mungkinberlaku.LihatKetentuanPenggunaanuntuklebihjelasnya.

https://id.wikipedia.org/wiki/RSA

8/8

Anda mungkin juga menyukai