23
Tabel 2.8 Proses dekripsi Hill Cipher
PHY �
−
∗ �� Plaintext
∗ mod 2515+107+2524
Mod 26
mod =FIT
115+77+224 Mod 26
115+87+024 Mod 26
EUX �
−
∗ �� Plaintext
∗ mod 254+1020+2523
Mod 26
mod =RII
14+720+223 Mod 26
14+820+023 Mod 26
PHR �
−
∗ �� Plaintext
∗ mod 2515+107+2517
Mod 26
mod =MUT
115+77+217 Mod 26
115+87+017 Mod 26
Jadi teks asli dari “PHYEUXPHR” adalah “FITRIIMUT”.
2.6. Sistem Kriptografi Rabin Public Key
Sistem kriptografi Rabin Rabin Cryptosystem adalah suatu teknik kriptografi asimetris atau kriptografi kunci publik yang memiliki tingkat keamanan terkait dengan masalah
sulitnya faktorisasi. Sistem kriptografi Rabin termasuk dalam sistem kriptografi asimetris yang menerapkan konsep untuk mendapatkan keseluruhan plaintext dari suatu
ciphertext yang diketahui berdasarkan pada kesulitan dalam melakukan faktorisasi. Seperti teknik kriptografi kunci publik atau asimetris lainnya, sistem kriptografi Rabin
menggunakan suatu pasangan kunci, yaitu kunci publik dan kunci privat.
Universitas Sumatera Utara
24
2.6.1. Pembangkit Kunci Rabin
Untuk membangkitkan bilangan prima dapat menggunakan metode Fermat. Jika p adalah bilangan prima dan a adalah bilangan bulat yang tidak habis dibagi dengan p,
yaitu GCDa,p = 1, maka : a
p-1
≡ 1 mod p Mollin, 2007. Teorema Fermat ini memiliki kelemahan yaitu terdapat bilangan bulat bukan prima
p sedemikian sehingga a
p –1
≡ 1 mod p. Bilangan bulat p seperti itu disebut bilangan prima semu pseudoprimes. Bilangan bulat a yang menyebabkan a
p –1
≡ 1 mod p, dimana p adalah bilangan prima semu disebut dengan bilangan carmichael atau
fermat’s liar. Akan tetapi, bilangan prima semu relatif jarang ditemukan.
2.6.2. Enkripsi Rabin Public Key
Proses enkripsi pada algoritma Rabin Public Key menggunakan kunci publik n. Pada proses dekripsi menggunakan Algoritma Rabin Public Key akan menghasilkan 4
empat buah kemungkinan plaintext. Oleh karena itu, diperlukan modifikasi dalam proses enkripsi dan dekripsi untuk menentukan plaintext yang sebenarnya. Berikut
langkah –langkah proses enkripsi pesan rahasia menggunakan algoritma Rabin Public
Key yang telah dimodifikasi adalah : Wandani, 2012 a.
Ubah nilai plaintext m menjadi nilai biner, kemudian tambahkan dengan nilai biner m itu sendiri redundant information atau dengan kata lain plaintext
digandakan. b.
Ubah hasil penggandaan nilai biner plaintext menjadi nilai desimalnya. c.
Hitung nilai k yang merupakan kongruen nilai desimal dari hasil penggandaan plaintext m terhadap kunci publik n dengan menggunakan rumus :
� ∗ = − ………….……………….……………..…… 2.12
d. Hitung nilai ciphertext c dengan menggunakan rumus :
c = m
2
mod n ………….……………….…………….………….……… 2.13
Dengan c adalah ciphertext, n adalah kunci publik, dan m adalah nilai desimal dari hasil penggandaan nilai biner plaintext.
Universitas Sumatera Utara
25
2.6.3. Dekripsi Kunci Public Rabin
Proses enkripsi pada algoritma Rabin Public Key menggunakan kunci privat p dan q. Berikut langkah
–langkah proses dekripsi dengan menggunakan algoritma Rabin Public Key yang telah dimodifikasi : Wandani, 2012
a. Tentukan nilai Y
p
dan Y
q
yang merupakan pembagi GCD Greatest Common Divisor dari p dan q dengan menggunakan Algoritma Extended Euclidean.
Karena GCD bilangan prima adalah 1, maka dapat ditulis sebagai berikut : Yp p + Yq q = 1
………….……………….…………….………….… 2.14 b.
Hitunglah nilai akar kuadrat dari ciphertext terhadap p dan q dengan rumus: m
p
=
+1
………….……………….…………….………….…. 2.15 m
q
=
+1
………….……………….…………….…….............. 2.16 Dengan m
p
adalah akar kuadrat dari ciphertext terhadap p dan m
q
adalah akar kuadrat dari ciphertext terhadap q.
c. Hitung nilai r, s, t dan u dengan menggunakan Chinese Remainder Theorem,
dengan persamaan berikut : r = Y
p
p m
q
+ Y
q
q m
p
mod n ………….……………….…………2.17
s = Y
p
p m
q
- Y
q
q m
p
mod n ………….……………….………….2.18
t = -Y
p
p m
q
+ Y
q
q m
p
mod n ………….……………….………..2.19
u = -Y
p
p m
q
- Y
q
q m
p
mod n ………….……………….………..2.20
d. Tambahkan r,s,t,u dengan kongruen nilai desimal hasil penggandaan plaintext k
yang dikalikan dengan kunci publik n. R = kn+r
………….……………….………….………….……...…...2.21 S = kn+s
………….……………….………...…….…… …….…… .2.22 T = kn+t
………….……………….……….…….………….…….....2.23 U = kn+u
………….……………….………...…….…… …….…… .2.24 e.
Ubahlah nilai desimal R, S, T, U ke dalam bentuk biner. Kemudian nilai biner R, S, T, U dibagi menjadi 2 dua bagian. Bandingkan kedua bagian tersebut.
Jika kedua bagian tersebut menghasilkan bentuk biner yang sama, maka didapatlah hasil dekripsi ciphertext c dengan mengubah bentuk biner salah satu
bagian yang telah dibagi menjadi 2 dua bagian yang sama.
Universitas Sumatera Utara
26
2.7. Android