Implementasi IMPLEMENTASI DAN PENGUJIAN

BAB 4 IMPLEMENTASI DAN PENGUJIAN

4.1. Implementasi

Dalam tugas akhir ini, program dibangun menggunakan bahasa pemrograman C dengan menggunakan editor Microsoft Visual Studio 2010. Aplikasi ini berjalan pada notebook dengan sistem operasi Windows 7. Proses implementasi sistem yang terjadi di dalam aplikasi yang dirancang dibagi menjadi dua, yaitu: 1. Implementasi program enkripsi dan dekripsi file text maupun dokumen menggunakan algoritma Elgamal. 2. Implementasi program kompresi dan dekompresi file menggunakan algoritma Huffman. Hal tersebut betujuan untuk mengetahui bagaimana kinerja aplikasi secara garis besar sebelum aplikasi dijalankan. 4.1.1. Implementasi Proses Enkripsi Menggunakan Algoritma Elgamal Sebagai contoh untuk melihat hasil kerja program, dilakukan percobaan dengan menggunakan file teks dengan ekstensi .txt dengan panjang karakter 14 karakter seperti pada gambar 4.1. Gambar 4.1 File Teks Input Dengan Ekstensi .txt Universitas Sumatera Utara 1. Plaintext : RACHMAT →� 1 = R → ubah menjadi bilangan ASCII yaitu 82 � 2 = A → ubah menjadi bilangan ASCII yaitu 65 � 3 = C → ubah menjadi bilangan ASCII yaitu 67 � 4 = H → ubah menjadi bilangan ASCII yaitu 72 � 5 = M → ubah menjadi bilangan ASCII yaitu 77 � 6 = A → ubah menjadi bilangan ASCII yaitu 65 � 7 = T → ubah menjadi bilangan ASCII yaitu 84 2 . Pilih Bilangan acak k dengan syarat 0 ≤ � ≤ − 2, maka 0 ≤ � ≤ 257 − 2 → 0 ≤ � ≤ 255. Contoh: �=7. 3. Setiap blok m dienkripsikan dengan rumus: a = g k mod p b = k � � � Contoh: a = g k mod p a = 3 7 � � 257 a = 2187 � � 257 a = 2187 � � 257 a = 131 b = k � � � b 1 = k � 1 � � = 81 7 82 � � 257 = 1875896981306802 � � 257 = 87 b 2 = k � 2 � � = 81 7 65 � � 257 = 1,486,991,509,572,465 � � 257 = 210 b 3 = k � 3 � � = 81 7 67 � � 257 = 1,532,745,094,482,387 � � 257 = 256 b 4 = k � 4 � � = 81 7 72 � � 257 = 1,647,129,056,757,192 � � 257 = 114 b 5 = k � 5 � � = 81 7 77 � � 257 = 1,761,513,019,031,997 � � 257 Universitas Sumatera Utara = 229 b 6 = k � 6 � � = 81 7 65 � � 257 = 1,486,991,509,572,465 � � 257 = 210 b 7 = k � 7 � � = 81 7 84 � � 257 = 1,921,650,566,216,724 � � 257 = 133 File Enkripsi Elgamal yang dihasilkan dari file teks input setelah implementasi kode program adalah file dengan ekstensi .elgmc dengan ukuran panjang karakter 48 karakter. 4.1.2. Implementasi Proses Kompresi Menggunakan Algoritma Huffman Sebagai contoh untuk melihat hasil kerja program, dilakukan percobaan dengan menggunakan file dengan ekstensi .elgmc seperti pada gambar 4.2. File Elgamal seperti pada gambar 4.1 apabila di kompresi akan menjadi file dengan ekstensi .hmc Huffman Compressi seperti pada gambar 4.3. Gambar 4.2 Proses Kompresi Kompresi Gambar 4.3 File Teks Hasil Kompresi dengan Ekstensi .hmc Universitas Sumatera Utara dalam kode ASCII string 7 huruf “RACHMAT” membutuhkan representasi 7 × 8 bit = 56 bit 7 byte, dengan rincian sebagai berikut: R = 82 = 01010010 A = 65 = 01000001 C = 67 = 01000011 H = 72 = 01001000 M = 77 = 01001101 A = 65 = 01000001 T = 84 = 01010100 Berikut tabel yang menjelaskan jumlah bit huruf “RACHMAT” sebelum dilakukan proses kompresi: Tabel 4.1 Jumlah Frequensi dan Bit Sebelum Proses Kompresi Untuk Karakter “RACHMAT” Char Freq Bit FreqBit R 1 8 8 A 2 8 16 C 1 8 8 H 1 8 8 M 1 8 8 T 1 8 8 Jumlah 56 Universitas Sumatera Utara Gambar 4.4 Pohon Huffman untuk Karakter “RACHMAT” Berikut tabel yang menjelaskan jumlah bit huruf “RACHMAT” sebelum dilakukan proses kompresi: Tabel 4.2 Jumlah Frequensi dan Bit Setelah Proses Kompresi Untuk Karakter “RACHMAT” Char Huffman Kode Bit Freq FreqBit R 111 3 1 3 A 01 2 2 4 C 100 3 1 4 H 101 3 1 4 M 110 3 1 4 T 00 2 1 2 Jumlah 18 bit Universitas Sumatera Utara Hasil Kompresi menjadi file .hmc, file .hmc merupakan file kompresi huffman Huffman Compressi. dengan proses kompresi dimana hasil kompresi setengah lebih kecil dari file hasil enkripsi. 4.1.3. Implementasi Proses Dekompresi Menggunakan Algoritma Huffman Sebagai contoh untuk melihat hasil kerja program dalam melakukan proses dekompresi, dilakukan percobaan dengan menggunakan file dengan .hmc. File .hmc apabila di dekompresi akan kembali menjadi file dengan ekstensi .elgmc seperti pada gambar 4.6. Gambar 4.5 Proses Dekompresi Gambar 4.6 File Teks Hasil Dekompresi dengan Ekstensi .elgmc Universitas Sumatera Utara 4.1.4. Implementasi Proses Dekripsi Menggunakan Algoritma Elgamal Sebagai contoh untuk melihat hasil kerja program dalam proses dekripsi, dilakukan percobaan dengan menggunakan file dengan ekstensi .elgmc. File .elgmc, apabila di dekripsi akan kembali menjadi file dengan ekstensi .docx seperti pada gambar 4.7. Gambar 4.7 Proses Dekripsi File Dekripsi Elgamal yang dihasilkan dari file teks input setelah implementasi kode program adalah file dengan ekstensi .docx dengan ukuran panjang karakter 903. : a x – 1 = a p – 1 – x mod p = 131 257 – 1 – 4 mod p = 131 252 mod 257 = 190 b. Gunakan Kunci private dan kunci publik p untuk mendekripsi chipertext a dan b menjadi plaintext m dengan rumus: m = b 1 a x – 1 mod p � 1 = b 1 a x – 1 mod p � 1 = 87190 mod 257 � 1 = 16530 mod 257 � 1 = 82 = R Universitas Sumatera Utara � 2 = b 2 a x – 1 mod p � 2 = 210190 mod 257 � 2 = 39900 mod 257 � 2 = 65 = A � 3 = b 3 a x – 1 mod p � 3 = 256 190 mod 257 � 3 = 48640 mod 257 � 3 = 67 = C � 4 = b 4 a x – 1 mod p � 4 = 114 190 mod 257 � 4 = 21660 mod 257 � 4 = 72 = H � 5= b 5 a x – 1 mod p � 5= 229 190 mod 257 � 5= 43510 mod 257 � 5= 77 = M � 6= b 6 a x – 1 mod p � 6= 210 190 mod 257 � 6= 39900 mod 257 � 6= 65 = A � 7= b 7 a x – 1 mod p � 7= 133 190 mod 257 � 7= 25270 mod 257 � 7= 84 = T Universitas Sumatera Utara Gambar 4.8 File Teks Hasil Dekripsi dengan Ekstensi .txt Untuk file input baik teks maupun dokumen yang dikompresi dengan Elgmal, hasil dekripsi tidak akan sama persis dengan hasil file input karena komponen lain seperti spasi, gambar, tabel dan simbol-simbol khusus lainnya tidak akan ditampilkan. 4.1.5. Tampilan Form Tentang Halaman Tentang berfungsi sebagai halaman yang menampilkan keterangan tentang profil singkat pembuat aplikasi. Halaman ini dapat diakses pada tab menu Tentang. Tampilan halaman Tentang dapat dilihat pada gambar 4.9. Gambar. 4.9 Tampilan Halaman Tentang Universitas Sumatera Utara

4.2. Pengujian