4.1.5 Halaman Help Halaman Help berfungsi untuk membantu user mengetahui bagaimana cara
menggunakan sistem. Tampilan halaman Help dapat dilihat pada Gambar 4.5.
Gambar 4.5. Halaman Help
4.2 Pengujian
Pada tahap pengujian akan dilakukan pengujian keberhasilan sistem dalam melakukan enkripsi dan dekripsi file dengan menggunakan algoritma ADFGVX cipher dan
knapsack . File yang akan dienkripsi merupakan file dengan ekstensi .txt dan .doc.
4.2.1 Proses Pengujian Enkripsi pesan Proses enkripsi pesan dilakukan dengan menggunakan algoritma ADFGVX cipher.
algoritma ADFGVX cipher menggunakan tabel 6x6 yang berisi 26 alphabet dan angka 0-9. Untuk melakukan proses enkripsi user terlebih dahulu menekan tombol
Buka File mencari file yang akan di enkripsi atau user bisa menginputkan langsung ke dalam textbox. Proses buka file dapat dilihat pada Gambar 4.6.
Universitas Sumatera Utara
Gambar 4.6. Buka File
Setelah file diinputkan pengguna terlebih dahulu menginputkan kata kunci sebelum melakukan enkripsi. Proses input plainteks dan kunci dapat dilihat pada
Gambar 4.7.
Gambar 4.7. Proses Input Plainteks dan Kunci
Gambar 4.7 menunjukkan Plainteks yang akan di enkripsi “ Ilmi Harahap, mahasiswa S1 ilmu komputer stambuk 2012” dan kunci yang digunakan “ilkom”.
Universitas Sumatera Utara
Untuk melakukan enkripsi digunakan algoritma ADFGXV cipher, berikut adalah langkah-langkah proses enkripsi plainteks.
1. Contoh plainteks yang akan dienkripsi adalah “HARAHAP28” dengan kata kunci
ilkom. Lakukan substitusi plainteks terhadap tabel ADFGVX cipher. setiap huruf di dalam plainteks di substitusi menjadi dua huruf berdasarkan baris dan kolom.
Tabel ADFGVX cipher dapat dilihat pada Tabel 4.1.
Tabel 4.1. Tabel ADFGVX Cipher
A D
F G
V X
A F
E D
C B
A D
G H
I J
K L
F R
Q P
O N
M G
S T
U V
W X
V 3
2 1
Z Y
X 4
5 6
7 8
9
Dari Tabel 4.1 didapatkan substitusi dari plainteks “HARAHAP28” adalah DD
AX FA AX DD AX FF VD XV. 2. Tentukan kata kunci yang terdiri dari huruf saja. Kunci ini akan digunakan pada
proses tranposisi. Misal kunci yang digunakan adalah ILKOM. Maka buatlah sebuah tabel baru dan tuliskan kata kunci di baris pertama. Kemudian tulis hasil
substitusi plainteks dibawahnya berurutan dari kanan kemudian kebawah jika ada sisa maka diisi dengan huruf x , seperti pada Tabel 4.2.
Tabel 4.2. Tabel Kunci Enkripsi ADFGVX Cipher
I L
K O
M 1
2 3
4 5
D D
A X
F D
D X
A A
A X
F F
V x
X V
X D
Universitas Sumatera Utara
3. Selanjutnya urutkan kolom pada kata kunci berdasarkan alphabet. Maka ILKOM menjadi IKLMO sehingga menjadi seperti pada Tabel 4.3.
Tabel 4.3. Perubahan Posisi Kunci ADFGVX Cipher
I K
L M
O 1
3 2
5 4
D A
D F
X D
X D
A A
A F
X V
F x
V X
D X
4. Untuk mendapatkan cipherteks lakukan pembacaan dari huruf-huruf yag berada dibaris pertama dan seterusnya pada Tabel 4.3. Maka untuk
plainteks “HARAHAP28” dengan kata kunci “ilkom” didapatkan “DDAxAXFVDDXx FAVDXAFX”.
Dengan langkah yang sama proses enkripsi dapat dilakukan untuk mengenkripsi plainteks “ Ilmi harahap, mahasiswa S1 ilmu komputer stambuk 2012”
Proses enkripsi untuk mendapatkan cipherteks dapat dilihat pada Gambar 4.8.
Gambar 4.8. Proses Enkripsi
Universitas Sumatera Utara
Gambar 4.8 menunjukkan hasil enkripsi dan juga waktu eksekusi dalam satuan second
, dimana untuk mengenkripsi plainteks “Ilmi harahap, mahasiswa S1 ilmu komputer sta
mbuk 2012” didapatkan plainteks “DDDAXDDGVFDFGADX F20DFXDFAXGXFDXGADAV2FADFXAAADXVFDFAX1FXAA
FADGAGF FGGAGFxXDFX,XGF 1X FF GVDx
” dengan lama proses selama 0.1150513 s. Pada implementasinya algoritma ADFGVX cipher hanya mampu melakukan
enkripsi terhadap alphabet numeric saja, Untuk mengurangi kelemahan tersebut penulis melakukan penambahan kondisi pada source code di dalam sistem.
Kondisinya adalah ketika sistem menemukan symbol pada plainteks maka letakkan symbol
tersebut pada posisi +1 dibelakang plainteks sesudahnya. Kondisi tersebut berjalan dengan baik didalam sitem tetapi menyebabkan hasil ciphertekes yang
dikerjakan secara manual berbeda sedikit dengan hasil cipherteks yang didapatkan dari sistem.
4.2.2 Proses Pengacakan Kunci User
menekan tombol Acak untuk mendapatkan kunci publik dan kunci privat, selain kunci publik dan kunci privat, di dalam halaman enkripsi kunci terdapat nilai m dan
nilai n. Nilai m dan nilai m digunakan untuk mencari kunci publik. Barisan superincreasing merupakan kunci privat yang didapatkan dengan cara
melakukan pengacakan terhadap bilangan bulat, dalam pengacakan barisan superincreasing
terdapat kondisi dimana setiap nilai di dalam barisan harus lebih besar daripada jumlah semua nilai sebelumnya. Nilai m dan n merupakan bilangan
yang relatif prima. Dua bilangan dikatakan relatif prima jika FPB dari kedua bilangan
tersebut adalah sama dengan 1. Dimana nilai m harus lebih besar dari jumlah semua elemen dalam barisan superincreasing.
Barisan superincrasing : 2 4 8 15 31 61 123 Nilam m : 6493
Nilai n : 103 Untuk mendapatkan kunci publik maka digunakan persamaan:
Kunci publik = barisan superincrasing x n mod m……………..pers
1 Kunci publik = 2x103 mod 6493 = 206
Kunci publik = 4x103 mod 6493 = 412
Universitas Sumatera Utara
Kunci publik = 8x103 mod 6493 = 824 Kunci publik = 15x103 mod 6493 = 1545
Kunci publik = 31x103 mod 6493 = 3193 Kunci publik = 61x103 mod 6493 = 6283
Kunci publik = 123x103 mod 6493 = 6176
Maka didapatkan kunci publik 206 412 824 1545 3193 6283 6176. Proses
pengacakan kunci dengan menggunakan sistem dapat dilihat pada Gambar 4.9.
Gambar 4.9. Proses Pengacakan Kunci
4.2.3 Enkripsi Kunci plainkey Proses enkripsi plainkey dapat dilakukan setelah proses pengacakan kunci selesai.
Untuk melakukan enkripsi plainkey digunakan algoritma knapsack, berikut adalah langkah-langkah proses enkripsi plainkey dengan menggunakan algoritma knapsack.
1. Kunci yang digunakan adalah “ilkom”, pertama ubah kata ilkom ke dalam biner,
untuk proses pengubahan kata kunci ke dalam biner dapat dilihat pada Tabel 4.4.
Tabel 4.4. Biner kunci
Char ASCII
Biner I
105 1101001
L 108
1101100
Universitas Sumatera Utara
K 107
1101011 O
111 1101111
M 109
1101101
Didapatkan plainkey
yang akan
di enkripsi
yaitu :
11010011101 100110101111011111101101.
2. Bagi plainkey menjadi blok dengan panjang 7 merupakan panjang maksimal biner untuk alphabet numeric. Kemudian setiap bit di dalam blok dikalikan dengan
elemen yang berkoresponden dengan kunci publik. Sebagai berikut:
Kunci publik : 206 412 824 1545 3193 6283 6176
Blok plainteks 1 : 1101001 Kriptogram : 1x206+1x412+1x1545+1x6176 = 8339
Blok plainteks 2 : 1101100 Kriptogram : 1x206+1x412+1x1545+1x3193 = 5356
Blok plainteks 3: 1101011 Kriptogram : 1x206+1x412+1x1545+1x6283+1x6176 = 14622
Blok plainteks 4: 1101111 Kriptogram: 1x206+1x412+1x1545+1x3193+1x6283+1x6176 = 17815
Blok plainteks 5 : 1101101 Kriptogram: 1x206+1x412+1x1545+1x3193+1x6176 = 11120 = 11532
Maka didapatkanlah cipherkey dari ilkom yaitu : 8339 5356 14622 17815 11532
. Hasil enkripsi kunci menggunakan sistem dapat dilihat pada Gambar 4.10.
Universitas Sumatera Utara
Gambar 4.10. Proses Enkripsi Kunci
Gambar 4.10 menunjukkan hasil enkripsi dari plainkey sesuai dengan perhitungan yang dilakukan secara manual. Waktu yang dibutuhkan untuk
mengenkripsi plainkey “ilkom” adalah 0.0024411 s.
4.2.4 Dekripsi Kunci Untuk melakukan dekripsi cipherkey menjadi plainkey digunakan kunci privat atau
barisan superincreasing, nilai m dan nilai n yang didapatkan dari proses enkripsi plainkey
, serta mencari nilai n
-1
yaitu n modulo m , sedemikian hingga n.n
-1
≡ 1 mod m.
Dik: Cipherkey
: 8339 5356 14622 17815 11532 Kunci privat : 2 4 8 15 31 61 123
Nilai m : 6493 Nilai n: 103
Pencarian nilai n
-1
dapat dilakukan seperti pada Tabel 4.5.
Universitas Sumatera Utara
Tabel 4.5. Pencarian Nilai n