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