You are on page 1of 3

F A D L YA L F I A N 1 2 1 2 4 0 8 8

Algoritma RSA dibuat oleh 3 orang peneliti dari MIT (Massachussets Institute of Technology) pada tahun 1976, yaitu: (R)ivest, Adi (S)hamir dan Leonard (A)dleman. Pada algoritma RSA terdapat 3 langkah utama yaitu key generation (pembangkitan kunci), enkripsi dan dekripsi. Besaran-besaran yang digunakan dalam algoritma RSA : 1. p dan q bilangan prima (rahasia) 2. r = p * q (tidak rahasia) 3. m = (p - 1)(q - 1) (rahasia) 4. PK (kunci enkripsi) (tidak rahasia) 5. SK (kunci dekripsi) (rahasia) 6. X (plainteks) (rahasia) 7. Y (cipherteks) (tidak rahasia) Dalam membuat suatu sandi, RSA mempunyai cara kerja dalam membuat kunci yaitu public key dan private key. Public key untuk enkripsi dan dapat diketahui oleh orang lain sedangkan private key untuk dekripsi dan dirahasiakan. Tahapan Key generation dari RSA adalah sebagai berikut : 1. Pilihlah dua bilangan prima p dan q secara acak (Jaga kerahasiaan p dan q. Bilangan ini harus cukup besar, semakin besar, semakin bagus, minimal 100digit) 2. Hitung n = p * q. (besaran n tidak perlu dirahasiakan) n -> parameter sekuriti 3. Hitung m = ( p 1 ) * ( q 1). Bila m telah dihitung, p dan q dapat dihapus untuk mencegah diketahui pihak lain. 4. Pilih bilangan bulat (integer) sebagai public key (sebut namanya e), antara satu dan yang tidak mempunyai dan tidak mempunyai factor pembagi atau relative prima terhadap m. dengan syarat e (p 1), e (q-1) dan e < n 5. Hitung kunci dekripsi , d , dengan kekogruenan e * d = 1 (mod m) atau d = ( 1 + km/e) Contoh : 1. Bil prima p = 7 dan q = 11 2. n = p * q n = 7 * 11 n = 77 3. m = (p 1) * ( q 1) m = (7 1) * (11 1) m = 6 * 10 m = 60 4. Pilih e, 1 < e < m, e (p 1), e (q-1) Ex : e = 17

5. d = ( 1 + k * 60 / 17) misalnya k = 1 maka d = 3.5 k = 2 maka d = 7.1 k = 3 maka d = 10.6 dst e * d = 1 (mod m) 17 * 53 mod 60 901 mod 60 = 1

, jadi digunakan d = 53

6. Public key (n , e) , Private key (n , d) Public key (77,17), Private key (77,53) Proses enkripsi RSA : 1. Ambil public key ( n , e ) 2. Pilih plainteks m , dengan 0 m n 1 3. Hitung c = me mod n 4. Diperoleh cipherteks c, dan kirimkan M = PESAN , m = 16 5 19 1 14 Ekripsi c = me mod n - c1 = 1617 mod 77 = 25 - c2 = 517 mod 77 = 3 - c3 = 1917 mod 77 = 24 - c4 = 117 mod 77 = 1 - c5 = 1417 mod 77 = 42 c = 25 03 24 01 42, C = YCXAp Proses dekripsi RSA : 1. Ambil public key (n , e) dan private key (n , d) 2. Hitung m = cd mod n 3. Diperoleh plainteks m C = YCXAp, c = 25 03 24 01 42 Dekripsi m = cd mod n - m1 = 2553 mod 77 = 16 - m2 = 353 mod 77 = 5 - m3 = 2453 mod 77 = 19 - m4 = 153 mod 77 = 1 - m5 = 4253 mod 77 = 14 m = 16 5 19 1 14, M = PESAN