Sistem Kriptografi Rabin Public Key

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