Analisis Dampak Pemilihan Nilai Bilangan Prima pada Properti
Algoritma Elgamal
p
terhadap Kekuatan Pengamanan Data
Elys Candra Yani(G1A012043)
Program Studi Teknik InformatikaFakultas Teknik
Universitas Bengkulu, JL. W.R. Supratman Kandang Limun Bengkulu elyscandrayani@gmail.com
Abstract
Pada kriptografi, selain kunci simetri terdapat juga kunci public (Asimetri) yang berarti memiliki kunci yang berbeda dalam mengekripsi dan mendekripsi data. Salah satunya adalah ElGamal. Algoritma ElGamal terdiri dari tiga proses, yaitu proses pembentukan kunci, proses enkripsi, dan proses dekripsi. Proses pembentukan kunci kriptografi Elgamal terdiri dari pembentukan kunci privat dan pembentukan kunci public. Pada proses ini dibutuhkan sebuah bilangan prima aman yang digunakan sebagai dasar pembentuk kunci public sedangkan sembarang bilangan acak digunakan sebagai pembentuk kunci privat. Dalam paparan di bawah ini akan dijelaskan tentang pengaruh pemilihan nilai bilangan prima terhadap kekuatan pengamanan data. Analisa dilakukan dengan mengenkripsi dan mendekripsi sebuah plainteks dengan memvariasikan nilai bilangan prima besar dan bilangan prima kecil.
Kata kunci: Bilangan Prima, ElGamal, Enkripsi, Dekripsi, bilangan acak.
1. Pendahuluan
Perkembangan teknologi yang semakin pesat saat ini telah membantu banyak pihak untuk tetap merasakan keamanan dalam bertukar pesan atau pun data dengan pihak yang terkait tanpa diketahui pihak lain. Kerahasiaan pesan tersebut bisa dijaga dengan teknik Ilmu Kriptografi salah satunya adalah algoritma ElGamal. Algoritma ElGamal
merupkan algoritma dalam kkriptografi yang termasuk dalam kategori algoritma asimetris.
Pada kriptografi asimetris satu ini, algoritmanya terdiri dari tiga proses, yaitu proses pembentukan kunci, proses enkripsi, dan proses dekripsi. Proses pembentukan kunci kriptografi Elgamal terdiri dari pembentukan kunci privat dan pembentukan kunci public. Pada proses ini dibutuhkan sebuah bilangan prima aman yang digunakan sebagai dasar pembentuk kunci public sedangkan sembarang bilangan acak digunakan sebagai pembentuk kunci privat. Pada presentasi kelompok yang dilakukan saat jam kuliah tidak dijelaskan mengapa harus menggunakan bilangan prima aman dan apa pengaruhnya terhadap kekuatan pengamanan data. Karena itu, penulis akan menganalisa apa dampak dari pemilihan nilai bilangan prima pada properti algoritma ElGamal p terhadap kekuatan pengamanan data.
2. Penelitian Terkait
2.1 Penelitian 1
Dalam penelitian M. Syaiful Rizal, Implementasi algoritma kriptografi kunci-publik ElGamal untuk keamanan pengiriman email, semua karakter dapat dienkripsi dengan sempurna berdasarkan public–key, kecuali
pengiriman email (berupa chipertext) dilakukan dengan mengirimkan bilangan ASCII dari karakter chipertext-nya. Proses enkripsi memperlambat pengiriman email. Namun tidak mengganggu, karena email tidak membutuhkan waktu yang real time seperti chatting. Dan daftar karakter unicode yang digunakan sebanyak 223 karakter saja.
2.2 Penelitian 2
Dalam jurnal Perancangan Aplikasi Pembelajaran Kriptografi Kunci Publik ElGamal untuk Mahasiswa oleh Anandia Zelvina, Syahril Efendi dan Dedi Arisandi, dijelaskan bahwa aplikasi pembelajaran tersebut dapat membantu mahasiswa untuk mengetahui proses enkripsi dan dekripsi pada algoritma ElGamal. Algoritma ElGamal juga bisa dimanfaatkan untuk mengirimkan pesan rahasia yang sangat rahasia, yaitu kunci dari sebuah kriptografi simetri. Pada algoritma ElGamal suatu plainteks yang sama dienkripsi menjadi cipherteks yang berbeda-beda. Hal ini dikarenakan pemilihan bilangan k yang acak. Akan tetapi, walaupun cipherteks yang diperoleh berbeda-beda, tetapi pada proses dekripsi akan diperoleh plainteks yang sama.
2.3 Penelitian 3
Menurut Yudhi Andrian dalam penelitiannya tentang perbandingan bilangan prima aman dan tidak aman pada proses pembentukan algoritma ElGamal, kunci yang dibentuk dari bilangan prima tidak aman tidak mempengaruhi proses enkripsi dan dekripsinya. Hasil enkripsinya tetap dapat didekripsikan dengan baik. Dan semakin besar nilai bilangan prima yang digunakan maka kapasitas cipherteks juga cenderung besar. Yang
dimaksud Bilangan prima aman di sini adalah jika q juga merupakan bilangan prima dari persamaan
P = 2.q + 1
Namun, jika q bukanlah bilangan prima maka p bukan merupakan bilangan prima aman atau p adalah bilangan prima tidak aman.
NO. Nama dan Tahun
Judul
1. M. Syaiful Rizal
Implementasi algoritma kriptografi kunci-publik ElGamal untuk keamanan pengiriman email
Perancangan Aplikasi Pembelajaran Kriptografi Kunci Publik ElGamal untuk Mahasiswa
3. Yudhi
Andrian
perbandingan bilangan prima aman dan tidak aman pada proses pembentukan algoritma ElGamal
Algoritma Kesimpulan/ Hasil
ElGamal 1. System yang dibuat sudah
mampu memenuhi
kebutuhan sebagai aplikasi
mail client yang
menerapkan kriptografi ElGamal
2. Semua karakter dapat di enkripsi dengan sempurna berdasar public key ,
kecuali karakter”\n” atau
“Enter” yang dikenali
sebagai spasi.
3. Proses pengiriman
email(berupa ciphertext)
dilakukan dengan
mengirimkan bilangan ASCII dari karakter ciphertext-nya.
4. Proses dekripsi berjalan dengan sempurna
5. Proses enkripsi
memperlambat pengiriman email. Namun tidak mengganggu, karena email tidak membutuhkan waktu yang real time seperti chatting.
6. Daftar karakter Unicode yang digunakan sebanyak 223 karakter saja.
tiga proses yaknitu proses pembentukan kunci, proses enkripsi dan proses dekripsi. Plainteks yang akan dienkripsi dipecah menjadi blok – blok plainteks, selanjutnya proses enkripsi pada blok-blok plainteks menghasilkan blok- blok cipherteks yang kemudian dilakukan proses dekripsi dan hasilnya digabungkan kembali menjadi pesan yang utuh dan dapat dimengerti. Kriptografi kunci public ElGamal dapat
digunakan untuk
mengamankan data karena algoritma ElGamla dalam pembentukan salah satu
kuncinya menggunakan
bilangan prima dan menitik beratkan kekuatan kuncinya pada pemecahan masalahn logaritma diskrit sehingga keamanan kuncinya lebih terjamin.
ElGamal 1. Pada algoritma elgama, kunci yang dibentuk dari bilangan prima tdak aman, tidak mempengaruhi proses enkripsi dan dekripsinya. Hasil enkripsinya tetap dapat didekripsi dengan baik.
2. Pada algoritma elgamal
dengan menggunakan
bilangan prima aman maupun bilangan prima tidak aman, proses
pembentukan kunci,
enkripsi dan dekripsi tetap dapat berjalan dengan baik. 3. Semakin besar nilai bilangan prima yang digunakan, maka kapasitas cipherteks juga cenderung semakin besar.
3. Dasar Teori
ElGamal adalah suatu public-key cryptosystem yang dibuat pada tahun 1985. Algoritma elgamal digunakan untuk melakukan enkripsi dan tanda tangan digital. Keamanan dari algoritma ElGamla terletak pada susahnya dari perhitungan logaritma yang terpisah pada GF(p) ketika p merupkan bilangan prima yang besar. (Ariyus, 2006)
Algoritma ElGamal terdiri atas tiga proses, yaitu proses pembentukan kunci, enkripsi, dan dekripsi. Algoritma ElGamal mendasarkan kekuatannya pada fakta matematis kesulitasn menghitung logaritma diskret.
1. Pembentukan Kunci
Skema ElGamal memerlukan sepasang kunci yang dibangkitkan dengan memilih sebuah bilangan proma p dan dua buah bilangan random g dan
2. Proses Enkripsi
Proses enkripsi merupakan proses mengubah pesan asli(plaintext) menjadi pesan rahasia(ciphertext). Pada proses ini digunakan kunci public (p,g, y). langkah-langkah dalam mengenkripsi pesan adalah sebagai berikut.
1. Potong plaintext menjadi
blok-blok m1, m2, …, nilai setiap blok-blok
di dalam selang[0,p-1]
2. Ubah nilai blok pesan ke dalam nilai ASCII
3. Pilih bilangan acak k, dengan
syarat 1 ≤ k≤p-2
4. Setiap blok m dienkripsi dengan rumus sebagai berikut.
Gamma(γ) = gk mod p
Delta (δ) yk
m mod p
5. Susun ciphertext dengan urutan
γ1, δ1,γ2,δ2, …, γn,δn
Pasangan γ dan δ adalah
ciphertext untuk blok pesan m . hasil yang didapat dari proses enkripsi berupa pesan rahasia (ciphertext)
3. Proses Dekripsi
kunci pribadi(x, p). langkah – langkah dalam mendekripsi pesan adalah sebagai berikut :
1. Penentuan nilai gamma dan delta.
Nilai gamma(γ) diperoleh dari ciphertext dengan urutan ganjil
sedangkan delta(δ) dengan urutan
genap.
2. Hitung plaintext m dengan persamaan rumus berikut
m = δ . γ(p-1-x) mod p
3. ubah nilai m yang didapat ke dalam nilai ASCII
4. susun plaintext dengan urutan m1, m2,…, mn.
(Blogger Mencoba Sukses, 2013)
4. Analisis
Untuk mengetahui apa pengaruh yang terjadi pada keamanan data dari pemilihan bilangan prima maka akan dilakukan 2 pengujian dengan bilangan prima yang berbeda, satu dengan nilai yang kecil dari bilangan prima aman yakni < 255 dan satu lagi bilangan prima yang bernilai besar dari 255.
Bilangan prima aman > 255 berdasarkan sumber dari jurnal Algoritma ElGamal dalam Pengamanan Pesan Rahasia oleh Danang Tri Massandy.
Plainteks yang digunakan adalah kampus.
Karakter Plainteks mi ASCII
k m1 107 prima yang dipilih adalah 11, g = 2,dan x = 7.
Penyelesaiannya secara manual untuk enkripsi adalah:
y = gx mod p
maka diperoleh cipherteksnya dari susunan hasil perhitungan gamma(γ) dan
delta(δ) :
8 5 9 3 9 7 8 4 3 8 7 8
Gambar 3.1
Contoh lain untuk bilangan prima tidak aman seperti pada gambar 3.2 dan 3.3, plainteks dapat dienkripsi tapi, hasil dekripsi tidak sesuai dengan plainteksnya.
Gambar 3.2
Gambar 3.3
Untuk pengujian kedua masih menggunakan plainteks yang sama dengan bilangan prima = 2549, g = 2 dan x = 765.
Penyelesaiannya secara manual untuk enkripsi adalah:
y = gx mod p y = 2765 mod 2549 y = 979
Nilai acak k: k1= 1018 k2= 385 k3= 355 k4= 2339 k5= 1347 k6= 2376
kemudian mencari nilai gamma(γ) = gk mod p
γ1 = 21018 mod 2549 = 150
γ2 = 2385 mod 2549 = 2213
γ3 = 2355 mod 2549 = 268
γ4 = 22339 mod 2549 = 1216
γ5 = 21347 mod 2549 = 777
γ6 = 22376 mod 2549 = 942
δ1 = 9791018.107 mod 2549 = 1275
δ2 = 979385.97 mod 2549 = 1487
δ3 = 979355.109 mod 2549 = 1642
δ4 = 9792339.112 mod 2549 = 1898
δ5 = 9791347.117 mod 2549 = 118
δ6 = 9792376.115 mod 2549 = 2329 maka diperoleh cipherteksnya dari susunan hasil perhitungan gamma(γ) dan
delta(δ) :
150 1275 2213 1487 268 1642 1216 1898 777 118 942 2329
untuk dekripsinya dengan menggunakan rumus : m = δ. γ (p-1-x) mod p
m1 = 1275.150(2549-1-765) mod 2549 = 107 m2 = 1487.2213(2549-1-765) mod 2549 = 97 m3 = 1642.268(2549-1-765) mod 2549 = 109 m4 = 1898.1216(2549-1-765) mod 2549 = 112
m5 = 118.777(2549-1-765) mod 2549 = 117 m6 = 2329.942(2549-1-765) mod 2549 = 115
hasil perhitungan di atas dikonversikan dengan table ASCII dan didapat
plainteks “kampus”.
107 = k 97 = a 109 = m 112 = p 117 = u 115 = s
Hasil enkripsi dan dekripsi serupa dapat dilihat pada output program ElGamal pada gambar 3.4
Contoh lain untuk bilangan prima aman ada pada gambar 3.5 dan 3.6. proses enkripsi dan dekripsi dapat dilakukan dan menghasilkan chipeteks dan plainteks yang sama dengan plainteks semula.
Gambar 3.4
Gambar 3.6
Dilihat dari 3 contoh di atas, proses enkripsi dan dekripsi bisa dilakukan dengan bilangan prima aman lebih besar dari 255.
5. Pembahasan
Dari analisa yang telah dilakukan di atas terlihat bahwa pemilihan bilangan prima sangat berpengaruh terhadap proses dekripsi pada algoritma ElGamal. Pada pemilihan bilangan prima kurang dari 255, semakin kecil bilangan prima yang dipilih maka kemungkinan besar proses dekripsi tidak dapat dilakukan, kalaupun dapat didekripsikan plainteks yang dihasilkan tidak sama dengan plainteks semula. Sebaliknya pada pemilihan bilangan prima lebih besar dari 255 algoritma ElGamal dapat dijalankan dengan baik, saat enkripsi maupun dekripsi.
6. Kesimpulan dan saran
Dari hasil analisa dan pembahasan dapat disimpulkan bahwa pemilihan bilangan prima pada properti algoritma
elgamal p memiliki pengaruh terhadap keamanan data. Semakin kecil bilangan prima yang dipilih maka akan sangat sulit untuk mendekripsikan cipherteks menjadi plainteks semula sehingga tujuan untuk pengiriman pesan secara rahasia tidak dapat terealisasi karena penerima tidak dapat mengetahui pesan yang sebenarnya. Dan sebaliknya semakin besar bilangan prima yang dipilih proses enkripsi dan dekripsi dapat dilakukan.
Mengingat masih banyak kekurangan pada analisa jurnal ini, maka penulis berharap pembaca dapat mengkaji lebih mendalam tentang kriptografi elgamal sehingga dapat mengembangkan penelitian yang lebih baik.
Referensi
Ariyus, D. (2006). Kriptografi: Keamanan Data dan
Komunikasi. Yogyakarta: Graha Ilmu.
Blogger Mencoba Sukses. (2013, Mey 27). Retrieved January 5, 2015, from Blogger Mencoba Sukses: http://blogermencobasukses.w ordpress.com
M. arifur, 2008, diakses dari
PERNYATAAN
Dengan ini saya menyatakan bahwa makalah yang saya tulis ini adalah tulisan saya sendiri, bukan terjemahan dari makalah orang lain, dan bukan plagiasi.
Bengkulu, 8 Januari 2015