BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
Tahap implementasi merupakan lanjutan dari tahap analisis dan perancangan sistem. Tools yang digunakan adalah Matlab R2007b, dan sistem berjalan pada
sistem operasi windows.
4.1 Tampilan Antarmuka Sistem
Pada tahap perancangan, sistem diberi judul “Message Security Application”. Ketika program dijalankan, maka tampilan yang akan muncul pertama sekali
adalah sebagai berikut:
Gambar 4.1 Tampilan Awal Program
Universitas Sumatera Utara
Apabila tombol run program di klik, maka muncul sebuah kotak dialog yang berisi pilihan embed dan extract.
Gambar 4.2 Kotak Dialog Pilihan Embed dan Extract
Form kedua adalah form yang berisi proses enkripsi dan penyisipan pesan. Form ketiga, yaitu form ekstrak dan dekripsi pesan, digunakan apabila user ingin
mendapatkan pesan asli dari sebuah stegano image. Form keempat adalah form untuk membangkitkan kunci privat serta kunci publik. Form kelima berisi
keterangan tentang sistem dan form keenam berisi tentang cara penggunaan sistem.
Gambar 4.3 Tampilan Form enkripsi dan penyisipan pesan
Universitas Sumatera Utara
Gambar 4.4 Tampilan Form ekstrak dan dekripsi pesan
Gambar 4.5 Tampilan Form Pembangkitan Kunci Privat dan Kunci Publik
Universitas Sumatera Utara
Gambar 4.6 Tampilan Form About
Gambar 4.7 Tampilan Form Help
Universitas Sumatera Utara
4.2 Pengujian
Pengujian yang dilakukan terhadap algoritma kriptografi Knapsack Merkle- Hellman adalah berupa pengujian batas maksimum karakter yang dapat dienkripsi
berdasarkan banyaknya jumlah piksel dan banyaknya elemen kunci publik. Selain itu, dilakukan pula pengujian terhadap citra yang menjadi cover object dari segi
kualitas ataupun ukuran yang tidak dapat dibedakan sebelum dan sesudah disisipi pesan rahasia.
Pengujian ini menggunakan kriteria sebagai berikut:
1. Berkas citra yang berformat Bitmap 24bit dengan ukuran 200x228 piksel, 134Kb.
2. Pesan rahasia yang diinputkan adalah sebagai berikut.
Isi BBM AR. 20E342D9: Rosa aku maaf banget..mendadak aku dipanggil Anas.. dan pasti sampe malem kalo rapat... bsk aja ya..pagi jam 11 juga ok di
senci. 256FF48D: Ok bu.Tp skdr info aman ya yg kemarin?Biar sy ksh kbr ke masing2 yg akan dpt kbr baik ini. Mereka menanyakan terus. 20E342D9: So far
yg punya lalu aman, yg baru sdg fight, makanya perlu pelumas. 256FF48D: Cuma kita perlu ketemu berkaitan temuan bpk.
3. Kunci publik yang dipakai untuk mengenkripsi adalah 141, 230 225, 210, 120.
4. Spesifikasi perangkat keras yang digunakan untuk pengujian adalah laptop yang
memiliki prosesor Intel Atom N550, 1.5 GHz, 1 GB DDR3 Memory.
4.2.1 Pembangkitan Pasangan Kunci Privat dan Publik
Sebelum proses penyisipan maupun pengekstrakan dilakukan, terlebih dahulu dibangkitkan pasangan kunci privat dan kunci publik yang kemudian disimpan di
direktori yang ditentukan user.
Universitas Sumatera Utara
Gambar 4.8 Form Pembangkitan Kunci Privat dan Kunci Publik untuk Proses Pengujian
Apabila proses berhasil ataupun gagal dapat dilihat dari pesan yang terdapat pada yang ditampilkan message box. Syarat agar proses berhasil adalah
sebagai berikut.
1. Suku kedua kunci privat harus lebih besar dari suku pertama.
2. Total elemen kunci privat minimal 3.
3. Nilai kunci M harus lebih besar dari total jumlah kunci privat.
4. Nilai kunci N lebih kecil dari kunci M dan keduanya harus relatif prima.
Berikut ini adalah tampilan message box untuk proses berhasil ataupun gagal dalam membangkitkan pasangan kunci privat dan public.
Gambar 4.9 Tampilan Berhasil Menyimpan Kunci Privat
Universitas Sumatera Utara
Gambar 4.10 Tampilan Berhasil Membangkitkan Kunci Publik
Gambar 4.11 Tampilan Gagal Validasi Kunci M dan N
Gambar 4.12 Tampilan Gagal Jumlah Kunci Privat
Pada pengujian ini kunci privat dan kunci publik berhasil dibangkitkan dan disimpan dalam file teks yang berbeda, dengan inputan berupa 3 dan 10 sebagai
suku pertama dan kedua kunci privat, nilai pertambahan 2, total elemen kunci privat 6, kunci M adalah 240 dan kunci N adalah 47.
Universitas Sumatera Utara
4.2.2 Proses Embedding
Pilihan embed akan menampilkan form yang memiliki fungsi untuk proses penyisipan pesan. Berikut adalah tampilan form setelah semua inputan telah
dimasukkan.
Gambar 4.13 Form Enkripsi dan Penyisipan Pesan
Hasil ciphertext yang diperoleh dari plaintext dan kunci publik yang telah disebutkan sebelumnya adalah:
351 806 926 405 180 330 180 531 366 225 555 345 665 141 575 435 225 666 555 366 551 321 615 740 410 180
471 876 716 596 440 390 510 740 701 230 755 665 615 510 435 141 491 455 785 761 965 525 581 740 525 696
756 740 785 351 371 716 435 615 696 120 261 701 926 440 390 530 530 371 371 896 576 986 965 530 576 230
230 785 761 510 531 756 740 225 435 531 510 665 141 596 455 845 965 530 410 141 716 596 785 876 300 405
141 761 596 785 531 740 635 141 701 596 785 531 926 120 551 371 806 435 735 350 665 756 740 225 435 740
735 620 141 371 776 576 405 300 671 261 740 525 756
Universitas Sumatera Utara
390 510 735 486 230 635 576 615 701 0 491 455 366 555 740 740 735 261 230 755 926 635 300 345 486 230
665 806 756 896 510 486 740 225 390 530 560 696 390 441 555 510 210 350 581 141 651 776 581 390 525 546
756 546 665 210 510 735 740 351 716 225 555 615 896 555 876 230 455 785 756 510 665 141 806 596 440 510
651 615 141 701 716 785 756 510 471 486 881 735 596 620 651 300 551 230 665 1106 405 300 740 671 581 225
555 845 525 351 141 701 716 440 390 881 300 671 581 896 576 896 345 120 716 671 366 435 615 876 300 756
230 575 615 510 350 120 666 491 665 351 390 525 300 486 701 366 555 615 896 410 756 230 530 665 876 525
525 666 371 366 555 756 740 785 261 881 845 665 615 876 300 756 230 785 435 876 525 666 671 740 225 390
530 180 405 671 635 435 366 441 471 581 141 486 896 581 390 755 300 551 230 845 665 776 300 261 701 881
845 665 405 300 575 261 761 785 440 390 510 755 261 881 525 210 510 651 615 141 491 455 845 740 560 120
671 551 575 581 390 755 530 651 581 785 330 321 300 755 261 701 596 785 881 651 180 141 596 575 845 620
671 546 141 596 575 785 651 740 755 261 716 666 351 300 345 546 761 441 350 531 441 321 225 776 230 230
986 756 881 180 141 701 776 845 531 330 120 371 551 806 696 651 560 120 666 551 926 435 756 881 546 141
491 575 845 620 876 300 486 776 455 785 551 300 486 471 761 926 665 615 716 120 321 596 635 701 371
Jumlah ciphertext yang dihasilkan adalah 479 elemen yang setara dengan 3353 bit. Dalam hal ini dibutuhkan sebanyak 3353 piksel sedangkan piksel yang
tersedia adalah 200 x 228 x 3 = 136800 div 2 = 68400 piksel. Maka sisa piksel yang tidak terpakai adalah 68400 – 3353 = 65047 piksel.
Universitas Sumatera Utara
Sebelum melakukan proses penyisipan, user harus memilih citra yang akan dijadikan cover object. Berikut adalah tampilan untuk memilih citra.
Gambar 4.14 Tampilan Pilih Citra Sebagai Cover Object
Gambar 4.15 Cover Object
Universitas Sumatera Utara
Didalam form enkripsi dan penyisipandiatas, terdapat tombol untuk mengecek validitas pesan yang akan dienkripsi. Hal ini berkaitan dengan jumlah
karakter pesan yang tidak boleh lebih dari jumlah maksimum karakter yang telah tertera. Berikut adalah Message Box berisi pesan berhasil dan gagal.
Gambar 4.16 Message Box Berhasil
Gambar 4.17 Message Box Gagal
Proses pengecekan jumlah karakter pesan menampilkan message box berhasil karena jumlah karakter pesan yang telah diinputkan lebih kecil dari
jumlah maksimum karakter. Setelah proses penyisipan selesai, stegano image disimpan. User dapat langsung melihat kedua citra yaitu citra asli dan citra setelah
disisipkan pesan.
Universitas Sumatera Utara
Gambar 4.18 Tampilan Citra Asli dan Stegano Image
Berikut ini adalah table hasil uji proses penyisipan yang membandingkan kedua citra, yaitu Mona Lisa.bmp sebagai citra asli dan SteganoImage.bmp
sebagai citra yang telah disisipkan pesan.
Tabel 4.1 Hasil Uji Proses Penyisipan
Citra Asli Stegano image
Dimensi 200 x 228
200 x 228 Lebar
200 piksel 200 piksel
Tinggi 228 piksel
228 piksel Bit depth
24 bit 24 bit
Size 136,854 bytes
136,854 bytes Size on disk
139,264 bytes 139,264 bytes
Universitas Sumatera Utara
4.2.3 Proses Extracting
Apabila user ingin mengekstrak pesan yang terdapat pada stegano image maka user harus menginputkan stegano image dan kunci rahasia yaitu kunci privat dan
nilai m dan n. Berikut ini adalah tampilan hasil ekstrak dan dekripsi dari citra yang berupa stegano image dan kunci rahasia yang dimasukkan merupakan pasangan
dari kunci publik yang dipakai untuk mengenkripsi pesan.
Gambar 4.19 Hasil Ekstrak dan Dekripsi Pesan
Untuk menguji apakah program akan memunculkan pesan gagal saat mendekripsi pesan rahasia yang terdapat dalam citra, maka diinputkan kunci
rahasia yang bukan pasangan dari kunci publik yang digunakan untuk mengenkripsi pesan.
Universitas Sumatera Utara
Gambar 4.20 Tampilan Gagal untuk Mendekripsi Pesan
Pengujian proses ektraksi juga dilakukan untuk citra yang lebih besar, yaitu berukuran 500x500 piksel dengan bit depth 24-bit. Proses penyisipan
berhasil dilakukan. Namun pada proses pengekstrakan, program gagal untuk dieksekusi. Berikut adalah tampilannya.
Gambar 4.21 Tampilan Gagal Eksekusi untuk Citra 500x500 piksel
Universitas Sumatera Utara
Untuk itu, pengujian ekstraksi dilakukan lagi untuk citra yang berukuran lebih kecil, yaitu 400x400 piksel dengan bit depth 24 bit, dengan pesan yang
berbeda. Proses berhasil dilakukan namun membutuhkan waktu sekitar 5 menit.
Gambar 4.22 Tampilan Berhasil untuk citra 400x400 piksel
4.2.4 Pengujian Jumlah Karakter Maksimum
Dalam menentukan jumlah karakter maksimum yang dapat ditampung oleh sebuah citra, berkaitan dengan jumlah ciphertext yang dihasilkan, terdapat
perhitungan yang dilakukan sebagai berikut. Misalkan citra yang menjadi cover object berukuran 5x5 piksel 24 bit.
Jumlah piksel = 5x5x3 = 75 piksel, maka jumlah piksel yang dapat menampung pesan adalah 37 piksel. Karena memakai karakter ASCII 7 bit, maka
jumlah karakter maksimum adalah 37 div 7 = 5 karakter. Jumlah bit untuk 5 karakter adalah 35 bit. Misalkan kunci publik yang dimiliki adalah 6 elemen.
Dengan algoritma enkripsi Knapsack Merkle-Hellman, jumlah karakter ciphertext yang dihasilkan adalah 6 karakter 42 bit karena jumlah blok yang dihasilkan =
Universitas Sumatera Utara
round35 div 6 = 6 blok. Jumlah karakter ciphertext tidak dapat ditampung seluruhnya oleh citra karena jumlah piksel yang dapat menampung pesan adalah
37 piksel, tetapi ciphertext membutuhkan 6x7 = 42 piksel.
Untuk mengatasi hal tersebut, maka muncul suatu kondisi bahwa apabila jumlah kunci publik lebih kecil dari 7, maka dilakukan perhitungan:
1.
Hitung jumlah karakter maksimum awal: jumlah piksel yang tersedia div 7.
2. Hitung jumlah karakter ciphertext.
3.
Kurangkan jumlah karakter ciphertext dengan jumlah karakter maksimum awal, misalkan disebut sisa.
4.
Jumlah karakter maksimum = jumlah karakter maksimum awal – sisa.
Dengan demikian, didapat jumlah karakter maksimum adalah 6 – 5, yaitu 4 karakter membutuhkan 28 piksel dan valid karena nilainya lebih kecil dari
jumlah piksel yang tersedia. Tetapi apabila jumlah kunci publik lebih besar dari 7, maka jumlah karakter maksimum cukup dihitung dengan jumlah piksel yang
tersedia div 7.
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1 Kesimpulan