Algoritma RSA Ditemukan oleh tiga orang yaitu Ron Rivest, Adi Shamir, dan Leonard Adleman yang kemudian disingkat menjadi RSA. RSA Termasuk algoritma asimetri karena memiliki kunci privat dan kunci publik.
Langkah pembangkitan pasangan kunci :
1. Pilih dua buah bilangan prima a dan b (rahasia)
Misal : a = 13; b = 19;
2. Hitung n dimana n = a x b (tidak dirahasiakan)
n = 13 x 19
n = 247
3. Hitung theta(n) = (a – 1)(b – 1)
theta(n) = (13 – 1)(19 – 1)
theta(n) = 216
4. Pilih sebuah bilangan bulat ganjil yang relatif prima terhadap theta(n) sebagai public key, dimana e mendekati 1.
e = gcd(216,5) = 1 ; Dimana 1 < e < theta(n)
e = 5
5. Hitung private key (kunci dekripsi) d melalui d = ( 1 + (k . theta(n) ) ) / e , dimana k didapatkan dari hasil mencoba bilangan bulat 1, 2, 3, 4, 5, . . . .dst hingga dihasilkan d yang bernilai bulat.
diperoleh nilai k = 4; sehingga d = 173
6. Misalkan plainteks IJIN bernilai 09 10 09 14 dimana nilai tersebut didapatkan dari A = 01; B = 02; C = 03; . . . Y=25; Z = 26.
pecah M menjadi suatu blok yang lebih kecil (misal 3 digit); harus diperhatikan bahwa Mi masih terletak antara 0 sampai dengan n – 1.
M1 = 091
M2 = 009
M3 = 14
7. Lakukan Enripsi setiap blok dengan rumus Mie (mod n)
C1 = 091 5 (mod 247) = 78
C2 = 009 5 (mod 247) =16
C3 = 14 5 (mod 247) = 105
Sehingga didapatkan ciphertext 078016105
8. Untuk proses dekripsi digunakan kunci privat (d = 173)
M1 = 078 173 (mod 247) =91 adalah sama dengan 091
M2 = 016 173 (mod 247) =9 adalah sama dengan 009
M3 = 105 173 (mod 247) = 14
Didapatkan hasil dekripsi adalah 091 009 14.
Penemu algoritma RSA menyarankan agar nilai a dan b penjangnya lebih dari 100 digit. Karena dengan demikian hasil kali n = a.b akan lebih dari 200 digit. Ini dimaksudkan agar dapat dilakukan variasi enkripsi dan mencegah keterbatasan nilai Mi harus antara 0 sampai dengan n – 1. Selain itu juga akan mempersulit faktorisasi bilangan non-prima ke faktor primanya.
Popularity: 7% [?]
Related posts:

