Perkembangan Algoritma Pohlig-Hellman Proses Algoritma Pohlig-Hellman Contoh Kasus Algoritma Pohlig-Hellman

2.4. Algoritma Pohlig-Hellman

2.4.1. Perkembangan Algoritma Pohlig-Hellman

Pada awalnya algoritma Pohlig-Hellman ditemukan oleh Roland Silver, namun untuk pertama kalinya diterbitkan oleh Stephen Pohlig dan Martin Hellman. Algoritma Pohlig-Hellman dipatenkan di Amerika Serikat dan Kanada. Konsep enkripsi pada Algoritma Pohlig-Hellman hampir sama dengan algoritma RSA. Pada dasarnya algoritma ini adalah salah satu algoritma asimetris karena menggunakan kunci yang berbeda untuk enkripsi dan dekripsi Mollin, 2007. Dalam algoritma Pohlig-Hellman tidak mengguna konsep kunci publik karena kuncinya dapat digunakan pada saat enkripsi dan dekripsi sehingga harus terjaga kerahasiaannya Shcneider, 1996. Sama seperti dalam algoritma RSA untuk dapat melakukan enkripsi dan dekripsi dalam dihitung dengan rumus: C = P e P = C mod n untuk melakukan enkripsi d dengan ketentuan bahwa nilai � ∗ � ≡ 1 mod n untuk melakukan dekripsi

2.4.2. Proses Algoritma Pohlig-Hellman

Proses kerja algoritma Pohlig-Hellman dituliskan sebagai berikut: 1. Menentukan sebuah bilangan prima p yang besar bersifat rahasia hanya diketahui pengirim pesan dan penerima pesan; 2. Menentukan nilai ϕp = p - 1 3. Menghitung nilai e dengan syarat bahwa nilai 1e ϕp dan juga nilai e relatif prima dengan ϕp 4. Menghitung nilai d sebagai invers dari e modulo ϕp atau dapat dituliskandengan notasi: de mod ϕ p=1 5. Melakukan enkripsi dari suatu plainteks. Untuk enkripsi dapat dilakukan dengan rumus: C = m e 6. Dekripsi dapat dilakukan dengan rumus: mod p M=C d mod p Universitas Sumatera Utara

2.4.3. Contoh Kasus Algoritma Pohlig-Hellman

Penggunaan algoritma Pohlig-Hellman dalam sebuah simulasi pengiriman pesan yang dilakukan antara Alice dan Bob. Misalkan Alice mengizinkan Bob untuk mengirimkan sebuah pesan pribadi private message kepadanya melalui media transmisi yang tidak aman insecure. Dalam algoritma Pohlig-Hellman, Alice dan Bob akan melakukan langkah-langkah pada sebagai berikut : 1. Alice penerima dan Bob pengirim menyepakati sebuah bilangan prima sebagai kunci privat dari pesan yang akan dikirimkan. Misalkan kunci tersebut adalah p bernilai 487. 2. Setelah disepakati bilangan prima tersebut kemudian digunakan untuk menghitung nilai totient dengan rumus ϕp =p–1, sehingga didapat nilai: ϕp = 487 – 1 = 486. 3. Dengan nilai totient, maka Bob dapat menghitung nilai kunci enkripsi e yang digunakan dalam program dengan syarat bahwa nilai 1e ϕp dan juga nilai e relatif prima dengan ϕp. Hal ini dapat dihitung dengan menghitung GCD ϕp,e=1. Dalam perhitungan didapati: GCD 486, e = 1 , 1e486 e = 145 Didapat nilai e yang memungkinkan dan disepakati oleh keduanya adalah e = 145. Dengan nilai kunci enkripsi ini makan selanjutnya dapat dilakukan proses enkripsi. 4. Kunci dekripsi juga langsung ditetapkan oleh kedua belah pihak dengan syarat rumusan d = e -1 d = e mod ϕ p. Dari nilai e yang didapat sebelumnya maka dapat dihitung nilai d dengan langkah sebagai berikut : -1 d = 145 mod ϕ p -1 d = 181 mod 486 Kunci dekripsi digunakan untuk mengembalikan nilai ciphertext ke dalam bentuk plaintext. 5. Proses enkripsi merupakan proses dimana pesan yang sebelumnya berupa plaintext dikodekan menjadi berupa ciphertext. Terlebih dahulu Bob akan Universitas Sumatera Utara membuat pesan rahasia berupa text. Dalam contoh pesan yang akan digunakan adalan ECIL. Dari rumus perhitungan enkripsi C = m e Pesan yang akan dikirim M = ECIL mod p, maka dapat dihitung kode ciphertext dari setiap pesan tersebut sebagai berikut: Nilai dari setiap Plaintext : P 1 P = E, nilai dalam kode ASCII adalah 5 huruf kelima 2 P = C, nilai dalam kode ASCII adalah 3 huruf ketiga 3 P = I, nilai dalam kode ASCII adalah 9 huruf kesembilan 4 Maka nilai ciphertext dari setiap pesan adalah : = L, nilai dalam kode ASCII adalah 12 huruf keduabelas C 1 = M e mod p = P 1 e = 5 mod p 145 C mod 487 1 C = 269 2 = M e mod p = P 2 e = 3 mod p 145 C mod 487 2 C = 354 3 = M e mod p = P 3 e = 9 mod p 145 C mod 487 3 C = 314 4 = M e mod p = P 3 e = 12 mod p 145 C mod 487 4 6. Setelah mendapatkan semua kode ciphertext maka dapat dirangkai seluruh kode dan menghasilkan ciphertext 269, 354, 314 dan 107. Pesan inilah yang akan dikirimkan kepada Alice, sehingga pihak lain tidak akan mengetahui makna pesan sebenarnya. = 107 7. Alice dapat mendapatkan pesan sebenarnya dengan melakukan proses dekripsi. Dari rumus perhitungan dekripsi P = C d C = 269 354 314 107 mod p, maka dapat dihitung kode plaintext dari setiap chipertext tersebut sebagai berikut: Universitas Sumatera Utara Nilai dari setiap Plaintext : P 1 = C d mod p = C 1 d = 269 mod p 181 P mod 487 1 P = 5 plaintext = E 2 = C d mod p = C 2 d = 354 mod p 181 P mod 487 2 P = 3 plaintext = C 3 = C d mod p = C 3 d = 314 mod p 181 P mod 487 3 P = 9 plaintext = I 4 = C d mod p = C 4 d = 107 mod p 181 P mod 487 1 Setelah mendapatkan semua plaintext terhitung maka dapat dirangkai seluruh kode dan menghasilkan plaintext : ECIL = 12 plaintext = L 8. Dari contoh didapat bahwa Alice dapat membuka kembali pesan yang sudah dienkripsi dengan melakukan proses dekripsi.

2.5. Algoritma RSA