pihak yang tidak berkepentingan tidak akan dapat mendekripsi pesan tersebut, karena tidak memiliki kunci privat.
a. Kelebihan kriptografi asimetri:
1. Hanya kunci privat yang perlu dijaga kerahasiaanya oleh setiap entitas yang
berkomunikasi. Tidak ada kebutuhan mengirim kunci privat sebagaimana pada kunci simetri.
2. Pasangan kunci privat dan kunci publik tidak perlu diubah dalam jangka
waktu yang sangat lama. 3.
Dapat digunakan dalam pengaman pengiriman kunci simetri. 4.
Beberapa algoritma kunci publik dapat digunakan untuk memberi tanda tangan digital pada pesan.
b. Kelemahan kriptografi asimetri :
1. Proses enkripsi dan dekripsi umumnya lebih lambat dari algoritma simetri,
karena menggunakan bilangan yang besar dan operasi bilangan yang besar. 2.
Ukuran cipherteks lebih besar daripada plainteks. 3.
Ukuran kunci relatif lebih besar daripada ukuran kunci simetri.
2.2 Algoritma ElGamal
Algoritma ini merupakan salah satu algoritma kriptografi asimetri. Pada subbab ini penulis akan membahas dasar-dasar dan prinsip kerja dari algoritma ElGamal itu sendiri.
2.2.1 Sejarah Algoritma ElGamal
Algoritma ElGamal merupakan algoritma enkripsi kunci asimetris yang berdasarkan pada pertukaran kunci Diffe-Hellman. Algoritma ini diusulkan Taher Elgamal pada tahun
1984. Keamanan algoritma ini didasarkan pada kesulitan memecahkan masalah logaritma diskrit dalam grup. Sampai akhir tahun 1970, hanya ada sistem kriptografi simetri.
Karena sistem kriptografi simetri menggunakan kunci yang sama untuk enkripsi dan dekripsi, maka hal ini mengimplikasikan dua pihak yang berkomunikasi saling
mempercayai. Konsep sistem kriptografi kunci-publik ditemukan oleh Diffie dan Hellman yang mempresentasikan konsep ini pada Tahun 1976. Ide dasar dari sistem
kriptografi kunci-publik adalah bahwa kunci kriptografi dibuat sepasang, satu kunci untuk enkripsi dan satu kunci untuk dekripsi. Kunci untuk enkripsi bersifat publik tidak
rahasia, sehingga dinamakan kunci publik
public-key
. Sedangkan kunci dekripsi bersifat rahasia sehingga dinamakan kunci rahasia
private key
atau
secret key
. Logaritma ini disebut logaritma diskrit karena nilainya berhingga dan bergantung
pada bilangan prima yang digunakan. Karena bilangan prima yang digunakan adalah bilangan prima yang besar, maka sangat sulit bahkan tidak mungkin menurunkan kunci
privat dari kunci publik yang diketahui walaupun serangan dilakukan dengan menggunakan sumberdaya komputer yang sangat besar.
Algoritma ElGamal mempunyai kunci publik berupa tiga pasang bilangan dan kunci rahasia berupa satu bilangan. Algoritma ini mempunyai kerugian pada
cipherteksnya yang mempunyai panjang dua kali lipat dari plainteksnya. Akan tetapi, algoritma ini mempunyai kelebihan pada enkripsi. Untuk plainteks yang sama, algoritma
ini memberikan cipherteks yang berbeda setiap kali plainteks dienkripsi. Algoritma ElGamal terdiri dari tiga proses, yaitu proses pembentukan kunci, proses enkripsi dan
proses dekripsi. Algoritma ini merupakan
cipher blok
, yaitu melakukan proses enkripsi pada blok-blok plainteks dan menghasilkan blok-blok cipherteks yang kemudian
dilakukan proses dekripsi dan hasilnya digabungkan. Besaran-besaran yang digunakan dalam pembangkitan kunci publik algoritma
ElGamal Taufiq, M. 2010 : 1. Bilangan prima, p tidak rahasia
β. Bilangan acak α sebagai akar primitf α p tidak rahasia 3. Bilangan acak
a a p
rahasia 4. Blok plainteks M plainteks rahasia
5. y dan c cipherteks tidak rahasia
2.3 Landasan Matematika Algoritma ElGamal