UNIVERSITAS BINA NUSANTARA Program Ganda Teknik Informatika - Matematika Skripsi Sarjana Program Ganda Semester Ganjil 2006/2007
PERANCANGAN PROGRAM APLIKASI SEKURITI SOAL UJIAN MENGGUNAKAN TWO-SIDED SIDE MATCH PADA CITRA DIGITAL STUDI KASUS : FMIPA UNIVERSITAS BINA NUSANTARA
Raymond Rulin 0600672832
ABSTRAK
Untuk meningkatkan keamanan data, steganografi yang bersifat tidak terlihat, merupakan salah satu alternatif daripada kriptografi yang sifatnya terlihat. Metode TwoSided Side Match akan mengeksploitasi korelasi antara piksel-piksel tetangganya untuk mengukur tingkat kehalusan dari piksel-piksel, sehingga dapat memberikan kapastitas yang besar untuk data embedding dan meminimalisasi distorsi pada stego-image. Dengan kapasitas penanaman data (data embedding) yang besar itu, maka metode ini dapat diterapkan untuk sekuriti soal ujian pada FMIPA UBINUS dimana soal ujian pada umumnya berukuran yang cukup besar. Selain itu juga karena tingkat distorsi yang kecil, maka stego-image yang dihasilkan sangat sulit dibedakan dengan yang aslinya. Kata Kunci : data embedding, steganografi, stego-image, Two-Sided Side Match
v
KATA PENGANTAR
Sebelumnya penulis mengucapkan syukur dan terima kasih kepada Tuhan Yang Maha Esa Sehingga dapat menyelesaikan Skripsi ini sebagai salah satu syarat untuk memperoleh gelar kesarjanaan pada jenjang pendidikan Strata 1, Jurusan Teknik Informatika dan Matematika di Universitas Bina Nusantara. Walaupun tugas membuat Skripsi ini terasa berat oleh penulis, namun berkat bimbingan dari para dosen, akhirnya skripsi ini dapat diselesaikan walaupun masih jauh dari kesempurnaan. Penulis menyadari masih banyak kekurangan-kekurangan di dalam Skripsi, sehingga penulis sangat mengharapkan bantuan berupa kritik dari para dosen serta caracara yang baik untuk menyusun karya ilmiah di masa yang akan datang. Penulis mengucapkan terima kasih kepada para pembimbing yang telah meluangkan waktu untuk memberikan petunjuk dalam mewujudkan Skripsi ini, terutama kepada : 1. Prof. Dr. Gerardus Polla, M.App.Sc., selaku Rektor Universitas Bina Nusantara. 2. Bapak Wikaria Gazali, S.Si., MT., selaku Dekan Fakultas MIPA. 3. Bapak Ngarap Imanuel Manik, Drs., M.Kom., selaku Kepala Jurusan MIPA Universitas Bina Nusantara dan dosen pembimbing yang telah memberikan bimbingan selama proses penyusunan skripsi ini. 4. Bapak Syaeful Karim, Ir., M.Sc., selaku dosen pembimbing yang telah memberikan bimbingan selama proses penyusunan skripsi ini. 5. Bapak H. Mohammad Subekti, BE., M.Sc., selaku Kepala Jurusan Teknik Informatika Universitas Bina Nusantara. 6. Orangtua tercinta dan keluarga penulis yang telah memberikan dukungan dan doa selama penulisan skripsi ini. 7. Teman-teman yang telah memberikan dorongan, saran dan membantu dalam penulisan skripsi ini. 8. Kepada semua pihak yang telah membantu sehingga penulis dapat menyelesaikan skripsi ini. Akhir kata, penulis berharap semoga skripsi ini dapat bermanfaat dan berguna bagi pembaca dan pihak-pihak yang membutuhkan.
Jakarta, Penulis
Raymond Rulin 0600672832
vi
DAFTAR ISI Halaman v vi x xi xiii
Abstrak Kata Pengantar Daftar Tabel Daftar Gambar Daftar Lampiran BAB 1
PENDAHULUAN 1.1 Latar Belakang Masalah 1.2 Perumusan Masalah 1.3 Ruang Lingkup Tujuan dan Manfaat 1.4 1.4.1 Tujuan 1.4.2 Manfaat Definisi Operasional 1.5 Metodologi Penelitian 1.6 Sistematika Penulisan 1.7
1 1 2 3 3 3 3 4 4 5
BAB 2
LANDASAN TEORI Proses Pengembangan Software 2.1 2.2 Software Testing Interaksi Manusia dan Komputer (IMK) 2.3 Citra Digital 2.4 2.4.1 JPEG 2.4.2 BMP 2.4.3 PNG Unified Modeling Language 2.5 2.5.1 Activity Diagram 2.5.2 Use Case Diagram 2.5.3 Class Diagram 2.5.4 State Transition Diagram Steganografi 2.6 2.6.1 Sejarah Steganografi 2.6.2 Keuntungan Steganografi 2.6.3 Kerugian Steganografi 2.6.4 Karakteristik Teknik Steganografi 2.6.5 Triangle of Trade-Off 2.6.6 Metode-Metode Steganografi Pada Citra 2.7 Side Match 2.7.1 Algoritma Penanaman Bit dengan Two-Sided Side Match 2.7.2 Algoritma Ekstraksi dengan Two-Sided Side Match 2.7.3 Proses Pengecekan Falling-Off-Boundary 2.8 Pseudo-Random Number Generator (PRNG) Koefisien Determinasi (Coefficient of Determination) 2.9
6 6 8 8 11 13 13 13 14 15 16 17 18 19 20 21 21 22 23 24 25 25
vii
27 27 28 29
2.10 2.11
Root Mean Squarred Error (RMSE) Peak Signal-to-Noise Ration (PSNR)
29 30
BAB 3
ANALISIS DAN PERANCANGAN APLIKASI 3.1 Analisis Sistem Yang Berjalan 3.1.1 Sejarah Universitas Bina Nusantara 3.1.2 Tujuan Universitas Bina Nusantara 3.1.3 Visi Universitas Bina Nusantara 3.1.4 Misi Universitas Bina Nusantara 3.1.5 Gambaran Umum Sistem Yang Berjalan 3.1.6 Sistem Yang Diusulkan 3.1.6.1 Proses Penanaman File 3.1.6.2 Proses Ekstraksi File 3.2 Perancangan Program Aplikasi 3.2.1 Perancangan Fungsi Penggunaan 3.2.2 Hirarki Menu 3.2.3 Perancangan Modul 3.2.3.1 Perancangan Modul Embed 3.2.3.2 Perancangan Layar Menu Extract 3.2.3.3 Perancangan Layar Menu Analyze 3.2.3.4 Perancangan Layar Pesan Error 3.2.3.5 Perancangan Layar Pesan Informasi 3.2.4 Class Diagram 3.2.5 Perancangan Spesifikasi Proses 3.2.5.1 Perancangan Spesifikasi Proses Embedding 3.2.5.2 Perancangan Spesifikasi Proses Extracting 3.2.5.3 Perancangan Spesifikasi Proses Analyzing
31 31 31 32 33 33 34 35 36 38 38 39 39 41 41 48 52 56 56 57 58 58 59 59
BAB 4
IMPLEMENTASI DAN EVALUASI 4.1 Implementasi Aplikasi 4.1.1 Kebutuhan Perangkat Keras 4.1.2 Kebutuhan Perangkat Lunak 4.1.3 Cara Pengoperasian Program Aplikasi 4.1.3.1 Cara Mengoperasikan Penanaman File 4.1.3.2 Cara Mengoperasikan Ekstraksi File 4.1.3.3 Cara Mengoperasikan Analisis 4.2 Evaluasi Aplikasi 4.2.1 Evaluasi Delapan Aturan Emas 4.2.2 Analisis Kemampuan Penanaman Data 4.2.3 Analisis Kualitas Stego-Image 4.2.4 Perbandingan Dengan Metode Lain 4.2.4.1 Perbandingan Kecepatan Dan Kapasitas 4.2.4.2 Perbandingan Kualitas Stego-Image
61 61 61 61 62 62 68 71 73 73 74 77 80 80 81
BAB 5
KESIMPULAN DAN SARAN 5.1 Kesimpulan 5.2 Saran
83 83 84
viii
86 89
DAFTAR PUSTAKA RIWAYAT HIDUP LAMPIRAN
ix
DAFTAR TABEL Halaman Tabel 4.1 Tabel 4.2 Tabel 4.3 Tabel 4.4 Tabel 4.5 Tabel 4.6 Tabel 4.7
Hasil percobaan penanaman file A.test Hasil percobaan penanaman file B.test Hasil percobaan penanaman file C.test Rata-rata hasil percobaan Hasil analisis kualitas stego-image Perbandingan kecepatan dan kapasitas antara Casper, BattleSteg, dan FilterFirst Perbandingan kualitas antara Casper, BattleSteg, dan FilterFirst
x
75 75 75 75 77 81 82
DAFTAR GAMBAR Halaman Gambar 2.1 Gambar 2.2 Gambar 2.3 Gambar 2.4 Gambar 2.5 Gambar 2.6 Gambar 2.7 Gambar 2.8 Gambar 2.9 Gambar 2.10 Gambar 3.1 Gambar 3.2 Gambar 3.3 Gambar 3.4 Gambar 3.5 Gambar 3.6 Gambar 3.7 Gambar 3.8 Gambar 3.9 Gambar 3.10 Gambar 3.11 Gambar 3.12 Gambar 3.13 Gambar 3.14 Gambar 3.15 Gambar 3.16 Gambar 3.17 Gambar 3.18 Gambar 3.19 Gambar 3.20 Gambar 3.21 Gambar 3.22 Gambar 3.23 Gambar 3.24 Gambar 4.1 Gambar 4.2 Gambar 4.3 Gambar 4.4 Gambar 4.5 Gambar 4.6 Gambar 4.7
Model Waterfall 6 Model warna RGB dipetakan ke kubus 12 Perbandingan antara JPEG dan PNG 14 Diagram hirarki UML 15 Contoh use case diagram 16 Contoh class pada class diagram 17 Contoh hubungan asosiatif pada class diagram 17 19 Contoh state transition diagram Triangle of Trade-Off antara capacity, transparency, dan 23 robustness 26 Two-sided Side Match dengan urutan raster-scan 35 Activity diagram sistem yang berjalan 36 Activity diagram sistem yang diusulkan 37 Proses penanaman file pada Casper 38 Proses ekstraksi file pada Casper 39 Use case diagram pada Casper 40 Hirarki menu 40 State transition diagram menu 41 Rancangan layar menu Embed 43 Rancangan layar menu Get Cover Image 44 Rancangan layar menu Get File 44 Rancangan layar menu Save To 45 State transition diagram pada menu Embed 48 Rancangan layar menu Extract 49 Rancangan layar menu Get Stego-Image 50 Rancangan layar menu Save To Directory 51 State transition diagram pada menu Extract 52 Rancangan layar menu Analyze 53 Rancangan layar menu Get Cover Image 54 Rancangan layar menu Get Stego-Image State transition diagram pada menu Analyze 55 Rancangan layar Analysis Results 56 Rancangan layar pesan error 56 Rancangan layar pesan informasi 56 Class diagram program aplikasi 57 Tampilan menu Embed 62 Tampilan menu Get Cover Image 64 Tampilan menu Get File 65 66 Tampilan menu Save To Tampilan menu Extract 68 Tampilan menu Get Stego-Image 69 Tampilan menu Save To Directory 70
xi
Gambar 4.8 Gambar 4.9 Gambar 4.10 Gambar 4.11 Gambar 4.12
Tampilan menu Analyze Contoh tampilan hasil analisis Sebelah kiri Lena asli, sebelah kanan Lena stego-image Sebelah kiri Baboon asli, sebelah kanan Baboon stegoimage Sebelah kiri Pepper asli, sebelah kanan Pepper stego-image
xii
71 72 79 79 80
DAFTAR LAMPIRAN Halaman Lampiran 1 Lampiran 2 Lampiran 3 Lampiran 4 Lampiran 5 Lampiran 6 Lampiran 7 Lampiran 8 Lampiran 9 Lampiran 10 Lampiran 11
GUI.java EmbedTab.java ExtractTab.java AnalyzeTab.java Embed.java Extract.java IQM.java OpenFiles.java MersenneTwisterFast.java ExampleFileFilter.java Surat Keterangan Survey
xiii
L.1 L.2 L.12 L.17 L.24 L.31 L.37 L.39 L.49 L.78 L.85