Algoritma ElGamal Prosedur Membuat Pasangan Kunci

Dekripsi dilakukan dengan menggunakan kunci rahasia d = 1019 Apabila blok-blok cipherteks didekripsikan akan bernilai sebagai berikut: 215 1019 mod 3337 = 726 = x 1 776 1019 mod 3337 = 582 = x 2 1743 1019 mod 3337 = 733 = x 3 … Blok plainteks yang lain dikembalikan dengan cara yang serupa. Akhirnya kita memperoleh kembali plainteks semula x = 7265827332737873 Kemudian diubah dalam karakter ASCII adalah x = HARI INI.

2.3 Algoritma ElGamal

Algoritma ElGamal dibuat oleh Taher ElGamal pada tahun 1984. Algoritma Elgamal juga adalah algoritma kriptografi kunci-publik. Algoritma ini pada mulanya digunakan untuk digital signature, namun kemudian dimodifikasi sehingga juga bisa digunakan untuk enkripsi dan dekripsi. Kekuatan algoritma ini terletak pada sulitnya menghitung logaritma diskrit. Munir, R. 2006 Besaran-besaran yang digunakan dalam algoritma ElGamal yaitu: 1. p bilangan prima tidak rahasia 2. Bilangan acak, g g p tidak rahasia 3. Bilangan acak, x x p kunci privat rahasia 4. y = g x mod p kunci publik tidak rahasia 5. m plainteks rahasia 6. a dan b cipherteks tidak rahasia

a. Prosedur Membuat Pasangan Kunci

1. Pemilihan sembarang bilangan prima p. 2. Pemilihan dua buah bilangan acak g dan x, dengan syarat g p dan x p. 3. Penghitungan y = g x mod p ………………………………… 4 4. Dengan kunci publik y, kunci rahasia x. Nilai g dan p tidak dirahasiakan. Universitas Sumatera Utara b . Proses Enkripsi Plainteks disusun menjadi blok-blok m 1 , m 2 , …, sedemikian sehingga setiap blok merepresentasikan nilai di dalam rentang 0 sampai p – 1. Dilanjutkan dengan pemilihan bilangan acak k, yang dalam hal ini 0  k  p – 1, sedemikian sehingga k relatif prima dengan p – 1. Setiap blok m dienkripsi dengan rumus: a = g k mod p ………….. 5 dan b = y k m mod p …………..6 Keterangan: a : cipherteks pertama b : cipherteks kedua p : bilangan prima yang telah ditentukan g : bilangan acak lebih kecil dari p k : bilangan acak yang memenuhi 0  k  p – 1 y : kunci publik hasil dari g x mod p m : blok-blok plainteks Pasangan a dan b adalah cipherteks untuk blok pesan m. Dengan begitu ukuran cipherteks dua kali ukuran plainteksnya. c . Proses Dekripsi Untuk mendekripsi a dan b digunakan kunci rahasia, x, dan plainteks m diperoleh kembali dengan persamaan a x -1 = a p-1-x mod p ………….. 7 dan m = ba x mod p ………….. 8 Keterangan: a : cipherteks pertama , x : kunci privat x p b : cipherteks kedua , m : blok-blok plainteks p : bilangan prima yang telah ditentukan Plainteks dapat ditemukan kembali dari pasangan cipherteks a dan b. Universitas Sumatera Utara

2.4 Pengertian Citra