Proses Enkripsi dan Dekripsi RSA Kecepatan Algoritma RSA

30 = 270 2 mod 277 = 49 47 8 mod 277 = 47 4 . 47 4 mod 277 = [ 47 4 mod 277 47 4 mod 277 mod 277 ] = 49 2 mod 277 = 185 47 16 mod 277 = 47 8 . 47 8 mod 277 = [ 47 8 mod 277 47 8 mod 277 mod 277 ] = 185 2 mod 277 = 154 47 32 mod 277 = 47 16 . 47 16 mod 277 = [ 47 16 mod 277 47 16 mod 277 mod 277 ] = 154 2 mod 277 = 171 47 52 mod 277 = [ 47 32 mod 277 47 16 mod 277 47 4 mod 277 mod 277 ] = 171 . 154 . 49 mod 277 = 1290366 mod 277 = 100 Jadi nilai dari 47 52 mod 277 = 100

2.9. Proses Enkripsi dan Dekripsi RSA

Skema algoritma kunci publik sandi RSA terdiri dari tiga proses yaitu, proses pembangkitan kunci, proses enkripsi, dan proses dekripsi Mollin, 2002. 2.9.1. Proses pembentukan kunci Dalam proses pembangkitan kunci baik kunci publik ataupun kunci privat, dapat dilakukan dengan langkah-langkah seperti di bawah ini: 1. Memilih dua bilangan prima yang diberi simbol sebagai p dan q. 2. Hitung nilai n = p.q n ≠ p , karena jika n = p , maka nilai n = p 2 dan akan mudah mendapatkan nilai n. 3. Hitung φn = p-1 q-1. 4. Memilih kunci publik e yang relatif prima terhadap n 5. Bangkitkan kunci privat dengan persamaan dimana 1 ≡ 1 ↔ = . 2.2 Hasil dari algoritma di atas adalah : a. Kunci publik adalah pasangan e,n Universitas Sumatera Utara 31 b. Kunci privat adalah pasangan d, n 2.9.2. Proses enkripsi 1. Ambil kunci publik penerima pesan e ,dan modulus n. 2. Plainteks dinyatakan dengan blok-blok m 1 , m 2 , .., sedemikian sehingga setiap blok merepresentasikan nilai [0, n-1]. 3. Setiap blok m i dienkripsikan menjadi blok c i dengan rumus c i = m i e mod n 2.3 2.9.3. Proses dekripsi Setiap blok chiperteks c i didekripsikan kembali menjadi blok m i dengan rumus : m i = c i d mod n

2.10. Kecepatan Algoritma RSA

Sebuah proses RSA, baik enkripsi, dekripsi, penandatanganan dan verifikasi intinya adalah sebuah eksponensial terhadap modul. Proses perhitungan ini ditunjukkan oleh sebuah rangkaian dari multiplikasi terhadap modul. Dalam aplikasi praktikal, adalah umum untuk menentukan sebuah eksponen kecil yang umum sebagai kunci publik. Faktanya, keseluruhan kelompok dari user pemakai bisa memakai eksponen yang sama, dengan modulus berbeda. Terdapat beberapa pembatasan pada faktor-faktor prima dari eksponen publik. Hal ini menyebabkan proses enkripsi lebih cepat daripada proses dekripsi dan verifikasi lebih cepat daripada penandatanganan. Sebagai perbandingan, algoritma DES dan beberapa chiper blok yang lain jauh lebih cepat daripada algoritma RSA. DES secara umum 100 kali lebih cepat pada perangkat lunak dan antara 1.000 dan 10.000 kali lebih cepat pada perangkat keras, tergantung dari implementasinya. Implementasi dari algoritma RSA mungkin akan mempersempit celah beberapa bit dalam tahun-tahun mendatang, namun chiper blok akan bertambah lebih cepat. Universitas Sumatera Utara Universitas Sumatera Utara 33 2.11.2. Digital Signature Dalam tahapan ini string yang telah dirubah ke dalam message digest hash, kemudian akan ditandatangani menggunakan private key. Dalam proses penandatanganan ini digunakan algoritma RSA. Message digest tersebut akan ditandatanganin dengan menggunakan persamaan matematis: = 2.4 nilai d merupakan private key. 2.11.3. Verifikasi Digital Signature Membandingkan niai message digest string yang ditandatangani dengan nilai hasil deskripsi menggunakan persamaan = , nilai n dan e merupakan public key. Gambar 2.20 Skema proses untuk verifikasi dengan algoritma RSA Universitas Sumatera Utara 34

2.12. Unified Modeling Language