3.2.3 Tahapan Sistem
3.2.3.1 Tahapan Transposisi Segitiga untuk Enkripsi Pesan
Transposisi segitiga adalah salah satu dari bentuk transposisi yang pada umumnya enkripsinya untuk mengubah posisi. Dimisalkan, diberikan plaintext : ILMU
KOMPUTER yang akan dienkripsi mengunakan transposisi segitiga. Maka, hasil transposisi dapat dilihat pada gambar 3.14
Gambar 3.14 : Enkripsi Untuk Transposisi Segitiga
Untuk menghasilkan ciphertext, maka dilakukan pembacaan segitiga dari kolom paling kiri, sehingga ciphertext yang terbentuk adalah :
U TLKEIMORUM¿P¿ ¿
3.2.3.2 Tahapan Algoritma ElGamal untuk Enkripsi Pesan
Algoritma ElGamal adalah salah satu algoritma kriptografi asimetris. Algoritma ElGamal memiliki keunggulan pada sulitnya memecahkan logaritma yang
digunakan. Algoritma ElGamal memiliki dua tahapan secara umum, yaitu proses enkripsi dan dekripsi. Sebelum proses enkripsi terlebih dahulu kunci
dibangkitkan. Berikut ini proses untuk membangkitkan kunci publik dan kunci privat:
1. Pilih bilangan prima p dan cari akar primitif
mod p 2.
Pilih bilangan random a dimana 2 a p – 1, dan hitung nilai
a
3. Public key yang diperoleh adalah p,
, dan
a
sedangkan private key adalah a
Untuk implementasi dari pembangkit kunci ElGamal, maka dilakukan langkah berikut:
I L
M U
K O
M P
U T
E R
¿ ¿
¿
Universitas Sumatera Utara
1. Dipilih bilangan prima p = 919
2. Primitive root yang diperoleh
adalah 533 3.
Nilai random a = 706 4.
a
= 121
Proses selanjutnya adalah mengenkripsi pesan. Pesan asli plaintext akan dienkripsi dengan langkah sebagai berikut :
1. Pilih bilangan random b dengan syarat b p - 1
2. Hitung nilai
b
mod p untuk C1 dan m
ab
mod p untuk C2, dimana m adalah plaintext
3. Maka setiap satu karakter plaintext memiliki dua ciphertext.
Plaintext yang akan dienkripsi adalah : U TLKEIMORUM¿P¿ ¿
Maka terlebih dahulu huruf-huruf tersebut dikonversikan ke dalam desimal sesuai dengan tabel ASCII. Berdasarkan tabel ASCII, nilai dari plaintext adalah:
U = 85 spasi = 32
T = 84 L = 76
K = 75 E = 69
I = 73 M = 77
O = 79 R = 82
U = 85 M = 77
¿ = 168 P = 80
¿ = 168 ¿ = 168
Universitas Sumatera Utara
Maka nilai-nilai di atas akan dienkripsi sesuai langkah-langkah berikut : 1.
Pilih bilangan random b dengan syarat b p - 1 2.
Hitung nilai
b
mod p untuk C1 dan m
ab
mod p untuk C2, dimana m adalah plaintext
Untuk karakter “U” dengan nilai 85: nilai random b = 674
C1 = 533
674
mod 919 = 422
C2 = 85121
674
mod 919 = 466
Untuk karakter “spasi” dengan nilai 32: nilai random b = 557
C1 = 533
557
mod 919 = 300
C2 = 32121
557
mod 919 = 782
Untuk karakter “T” dengan nilai 84: nilai random b = 893
C1 = 533
893
mod 919 = 508
C2 = 84121
893
mod 919 = 293
Untuk karakter “L” dengan nilai 76: nilai random b = 614
C1 = 533
614
mod 919 = 179
C2 = 76121
614
mod 919 = 120
Untuk karakter “K” dengan nilai 75: nilai random b = 852
C1 = 533
852
mod 919
Universitas Sumatera Utara
= 518 C2 = 75121
852
mod 919 = 523
Untuk karakter “E” dengan nilai 69: nilai random b = 766
C1 = 533
766
mod 919 = 773
C2 = 69121
766
mod 919 = 380
Untuk karakter I” dengan nilai 73: nilai random b = 886
C1 = 533
866
mod 919 = 444
C2 = 73121
866
mod 919 = 523
Untuk karakter “M” dengan nilai 77: nilai random b = 572
C1 = 533
572
mod 919 = 100
C2 = 77121
572
mod 919 = 461
Untuk karakter “O” dengan nilai 79: nilai random b = 52
C1 = 533
52
mod 919 = 640
C2 = 79121
52
mod 919 = 296
Untuk karakter “R” dengan nilai 82: nilai random b = 756
C1 = 533
756
mod 919 = 703
C2 = 82121
756
mod 919
Universitas Sumatera Utara
= 313 Untuk karakter “U” dengan nilai 85:
nilai random b = 76 C1 = 533
76
mod 919 = 335
C2 = 85121
76
mod 919 = 736
Untuk karakter “M” dengan nilai 77: nilai random b = 647
C1 = 533
647
mod 919 = 337
C2 = 77121
647
mod 919 = 424
Untuk karakter “¿” dengan nilai 168: nilai random b = 853
C1 = 533
853
mod 919 = 394
C2 = 168121
853
mod 919 = 522
Untuk karakter “P” dengan nilai 80: nilai random b = 406
C1 = 533
406
mod 919 = 876
C2 = 80121
406
mod 919 = 850
Untuk karakter “¿” dengan nilai 168: nilai random b = 34
C1 = 533
34
mod 919 = 526
C2 = 168121
34
mod 919 = 865
Universitas Sumatera Utara
Untuk karakter “¿” dengan nilai 168: nilai random b = 776
C1 = 533
776
mod 919 = 531
C2 = 168121
776
mod 919 = 409
Maka didapat ciphertext : 422 300 508 179 518 773 444 100 640 703 335 337 394 876 526 531 466 782
293 120 523 380 523 461 296 313 736 424 522 850 865 409
3.2.3.3 Tahapan Algoritma ElGamal untuk Dekripsi Pesan