ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI ANGGARANI NOVITASARI 061401051 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI Diajukan untuk melengkapi tugas dan memehuhi syarat mencapai gelar Sarjana Komputer ANGGARANI NOVITASARI 061401051 PROGRAM STUDI S1 ILMU KOMPUTER DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA MEDAN 2010
PERSETUJUAN Judul : ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB Kategori : SKRIPSI Nama : ANGGARANI NOVITASARI Nomor Induk Mahasiswa : 061401051 Program Studi : SARJANA (S1) ILMU KOMPUTER Departemen : ILMU KOMPUTER Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA Komisi Pembimbing : Diluluskan di Medan, 18 Desember 2010 Pembimbing II Pembimbing I M. Andri B., ST., MCompSc., MEM NIP 197510082008011011 Prof. Dr. Muhammad Zarlis NIP 195707011986011003 Diketahui/Disetujui oleh Departemen Ilmu Komputer FMIPA USU Ketua, Prof. Dr. Muhammad Zarlis NIP 195707011986011003
PERNYATAAN ANALISIS DAN EKSTRAKSI STEGO-OBJEK DENGAN MENGGUNAKAN METODE STEGANALISIS ENHANCED LSB SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya. Medan, 28 November 2010 ANGGARANI NOVITASARI 061401051
PENGHARGAAN Alhamdulillah. Puji dan syukur saya panjatkan kepada Allah SWT. yang melimpahkan rahmat dan karunia-nya sehingga srkipsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan sebagai syarat untuk mendapatkan gelar Sarjana Komputer pada Program Studi S1 Ilmu Komputer FMIPA USU. Ucapan terima kasih saya sampaikan kepada Bapak Prof. Dr. Muhammad Zarlis, selaku Ketua Departemen Ilmu Komputer FMIPA USU dan Dosen Pembimbing I, dan Bapak Mohammad Andri Budiman, ST, MCompSc, MEM, selaku Dosen Pembimbing II, pada penyelesaian skripsi ini yang telah memberikan panduan dan penuh kepercayaan kepada saya untuk menyempurnakan skripsi ini. Panduan ringkas dan padat serta profesional telah diberikan kepada saya sehingga saya dapat menyelesaikan skripsi ini dengan baik. Ucapan terima kasih juga ditujukan kepada Bapak Drs. Marihat Situmorang, M.Kom dan Bapak Amer Sharif, S.Si, M.Kom yang telah bersedia menjadi dosen pembanding. Ucapan terima kasih juga ditujukan kepada Sekretaris Departemen Ilmu Komputer FMIPA USU, Bapak Syahriol Sitorus, S.Si, MIT, Dekan dan Pembantu Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam, semua dosen dan pegawai pada Program Studi S1 Ilmu Komputer FMIPA USU. Skripsi ini terutama saya persembahkan untuk ayahanda dan ibunda tercinta, Ides Hatarino dan Endang Sutarsih, atas semua yang telah diperjuangkan dan tak ternilai harganya. Untuk adik-adik tersayang, Aprianto Samah dan Afriavinika Hanggialevi, beserta seluruh keluarga besar yang selalu memberikan dukungan dan doa kepada saya. Terima kasih saya ucapkan kepada Fadly Fauzi, Rury Handayani, Surya Wijaya, Muhammad Alvin, Rifki R. Ashari Lubis, Alfarisi, Izhari Ishak Aksa, teman-teman RCS, teman-teman di Program Studi S1 Ilmu Komputer (terutama angkatan 2006), dan seluruh teman saya lainnya yang tidak disebutkan. Sekali lagi saya mengucapkan terima kasih kepada semua pihak yang telah membantu penyelesaian skripsi ini yang tidak dapat disebutkan satu per satu. Semoga Allah SWT. membalas semua kebaikan yang telah kalian berikan.
ABSTRAK Penyisipan pesan ke dalam suatu media, baik gambar, video, atau pun suara, menjadi salah satu cara aman untuk menyampaikan pesan ke tujuan tanpa diketahui orang lain. Metode penyisipan pesan yang cukup sederhana dan mudah dilakukan adalah Least Significant Bit (LSB). Penelitian ini bertujuan untuk mendeteksi ada tidaknya pesan tersembunyi pada gambar bitmap. Oleh karena itu, dibangun suatu aplikasi steganalisis dengan menggunakan metode steganalisis Enhanced LSB. Enhanced LSB merupakan suatu metode steganalisis untuk mendeteksi pesan rahasia pada gambar yang telah disisipi pesan secara LSB. Perancangan aplikasi ini meggunakan notasi pemodelan Unified Modeling Language. Aplikasi ini dikembangkan dengan menggunakan bahasa pemrograman Java dalam platform IDE NetBeans 6.8. Aplikasi yang dibangun memiliki fungsi untuk menyisipkan pesan, melakukan proses steganalisis, dan mengekstraksi pesan dari gambar.
ANALYSIS AND EXTRACTION OF STEGO-OBJECT USING STEGANALYSIS METHOD OF ENHANCED LSB ABSTRACT Messages insertion into a media, whether it is an image, a video, or a sound, is one way safe way to convey messages to the destination without knowing by others. A quite simple and easy messages insertion method to do is Least Significant Bit (LSB). This study is aimed to detect the existence of hidden messages in a bitmap image. Therefore, a steganalysis application is built using Enhanced LSB steganalysis method. Enhanced LSB is a steganalysis method to detect hidden messages in a LSB inserted image. The design of the application use modeling notation of Unified Modeling Language. This application was is developed using Java programming language in NetBeans IDE 6.8 platform. The application is built with functions to insert a message into an image, to do steganalysis process, and to extract the message from an image.
DAFTAR ISI Halaman Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi Daftar Tabel Daftar Gambar ii iii iv v vi vii x xi Bab 1 Pendahuluan 1 1.1 Latar Belakang 1 1.2 Rumusan Masalah 2 1.3 Batasan Masalah 3 1.4 Tujuan Penelitian 3 1.5 Manfaat Penelitian 3 1.6 Metodologi Penelitian 4 1.7 Sistematika Penulisan 5 Bab 2 Tinjauan Teoretis 6 2.1 Citra Digital 6 2.1.1 Konsep dasar citra digital 6 2.1.1.1 Format citra digital 7 2.1.1.2 Elemen dasar citra digital 12 2.1.1.3 Struktur data citra digital 13 2.1.2 Citra bitmap 13 2.2 Steganografi 17 2.2.1 Konsep dan terminologi 17 2.2.2 Teknik penyembunyian data 19 2.2.3 Least significant bit 19 2.3 Steganalisis 23 2.3.1 Enhanced LSB 23 Bab 3 Analisis dan Perancangan Sistem 25 3.1 Analisis Sistem 25 3.1.1 Citra digital bitmap 25 3.1.2 Metode steganalisis 26 3.1.3 Tindak lanjut terhadap pesan rahasia 27 3.1.4 Analisis cara kerja sistem 27 3.1.5 Pemodelan sistem 28 3.1.6 Bahasa pemrograman 30
3.2 Perancangan Sistem 30 3.2.1 Gambaran umum sistem 30 3.2.2 Use case diagram 31 3.2.2.1 Use case Steganografi 33 3.2.2.2 Use case Pilih Gambar (menu Steganografi) 33 3.2.2.3 Use case Tulis Pesan 34 3.2.2.4 Use case Sisip 35 3.2.2.5 Use case Steganalisis 35 3.2.2.6 Use case Pilih Gambar (menu Steganalisis) 36 3.2.2.7 Use case Analisis 37 3.2.2.8 Use case Ekstraksi Pesan 37 3.2.2.9 Use case Pilih Gambar (menu Ekstraksi Pesan) 38 3.2.2.10 Use case Ekstraksi 39 3.2.3 Activity diagram 39 3.2.3.1 Activity diagram untuk use case Steganografi 39 3.2.3.2 Activity diagram untuk use case Pilih Gambar (menu Steganografi) 40 3.2.3.3 Activity diagram untuk use case Tulis Pesan 41 3.2.3.4 Activity diagram untuk use case Sisip 42 3.2.3.5 Activity diagram untuk use case Steganalisis 42 3.2.3.6 Activity diagram untuk use case Pilih Gambar (menu Steganalisis) 43 3.2.3.7 Activity diagram untuk use case Analisis 44 3.2.3.8 Activity diagram untuk use case Ekstraksi Pesan 45 3.2.3.9 Activity diagram untuk use case Pilih Gambar (menu Ekstraksi Pesan) 45 3.2.3.10 Activity diagram untuk use case Ekstraksi 46 3.2.4 Class diagram 47 3.2.5 Sequence diagram 48 3.2.5.1 Sequence diagram untuk proses penyisipan pesan dengan metode LSB 49 3.2.5.2 Sequence diagram untuk metode Enhanced LSB 51 3.2.5.3 Sequence diagram untuk proses ekstraksi pesan 52 3.2.6 Perancangan antarmuka sistem 52 3.2.6.1 Halaman utama aplikasi 53 3.2.6.2 Halaman steganografi 53 3.2.6.3 Halaman steganalisis 54 3.2.6.4 Halaman ekstraksi pesan 55 Bab 4 Implementasi dan Pengujian Sistem 57 4.1 Implementasi 57 4.1.1 Konfigurasi perangkat keras 57 4.1.2 Konfigurasi perangkat lunak 58 4.1.3 Tampilan penggunaan aplikasi 58 4.1.3.1 Halaman utama aplikasi 58 4.1.3.2 Halaman steganografi 59 4.1.3.3 Halaman steganalisis 60 4.1.3.4 Halaman ekstraksi pesan 60 4.2 Metode Enhanced LSB 61
4.3 Pengujian Sistem 62 4.3.1 Proses steganografi 63 4.3.1.1 Halaman steganografi 63 4.3.1.2 Pilih gambar 63 4.3.1.3 Tulis pesan 65 4.3.1.4 Sisip 66 4.3.1.5 Hasil steganografi 67 4.3.1.5.1 Gambar hasil steganografi 67 4.3.1.5.2 Bit-bit hasil steganografi 68 4.3.2 Proses steganalisis 69 4.3.2.1 Halaman steganalisis 70 4.3.2.2 Pilih gambar 70 4.3.2.3 Analisis 71 4.3.2.4 Hasil steganalisis 73 4.3.2.4.1 Gambar hasil steganalisis 73 4.3.2.4.1 Bit-bit hasil steganalisis 74 4.3.3 Proses ekstraksi pesan 75 4.3.3.1 Halaman ekstraksi pesan 76 4.3.3.2 Pilih gambar 76 4.3.3.3 Esktraksi 77 4.3.3.4 Pesan hasil ekstraksi 78 Bab 5 Kesimpulan dan Saran 79 5.1 Kesimpulan 79 5.2 Saran 79 Daftar Pustaka 81 Lampiran A: Source Code Program Class Metode 83 Lampiran B: Source Code Program Class Bitmap 86
DAFTAR TABEL Halaman Tabel 3.1 Spesifikasi Use Case Steganografi 33 Tabel 3.2 Spesifikasi Use Case Pilih Gambar (menu Steganografi) 33 Tabel 3.3 Spesifikasi Use Case Tulis Pesan 34 Tabel 3.4 Spesifikasi Use Case Sisip 35 Tabel 3.5 Spesifikasi Use Case Steganalisis 35 Tabel 3.6 Spesifikasi Use Case Pilih Gambar (menu Steganalisis) 36 Tabel 3.7 Spesifikasi Use Case Analisis 37 Tabel 3.8 Spesifikasi Use Case Ekstraksi Pesan 37 Tabel 3.9 Spesifikasi Use Case Pilih Gambar (menu Ekstraksi Pesan) 38 Tabel 3.10 Spesifikasi Use Case Ekstraksi 39 Tabel 3.311 Kegunaan Class-Class pada Class Diagram Aplikasi Steganalisis 48
DAFTAR GAMBAR Halaman Gambar 2.1 Contoh Citra Biner Berukuran 9x7 Pixel dan Representasinya dalam Data Digital 7 Gambar 2.2 Contoh Citra Biner 8 Gambar 2.3 Contoh Citra Skala Keabuan 4-Bit dan Representasinya dalam Data Digital 8 Gambar 2.4 Contoh Citra Skala Keabuan 8-Bit 9 Gambar 2.5 Format Penyimpanan Warna RGB 9 Gambar 2.6 Contoh Kombinasi Warna RGB sehingga Menghasilkan Warna Kuning 9 Gambar 2.7 Contoh Citra Warna dan Representasinya dalam Data Digital 10 Gambar 2.8 Contoh Citra RGB 10 Gambar 2.9 Contoh Palet Warna Citra Berindeks 4-Bit 10 Gambar 2.10 Aras Warna Citra Digital 1-Bit 11 Gambar 2.11 Aras Abu-Abu dan Aras Warna pada Citra Digital 4-Bit 11 Gambar 2.12 Aras Abu-Abu dan Aras Warna pada Citra Digital 8-Bit 11 Gambar 2.13 Aras Abu-Abu dan Aras Warna pada Citra Digital 24-Bit (RGB) 12 Gambar 2.14 Contoh Struktur Data Citra Digital 13 Gambar 2.15 Format Data File Bitmap 14 Gambar 2.16 Berkas Header Bitmap 14 Gambar 2.17 Berkas Image Bitmap berupa Information Header 15 Gambar 2.18 Berkas Image Bitmap berupa Core Header 15 Gambar 2.19 Berkas Palet Warna Bitmap 16 Gambar 2.20 Contoh Berkas Data Bitmap 2x2 Pixel, 24-Bit 16 Gambar 2.21 Contoh Covertext, Hiddentext, dan Stegotext 18 Gambar 2.22 Diagram Penyisipan dan Ekstraksi Pesan 18 Gambar 2.23 Diagram Penyisipan dan Ekstraksi Pesan 19 Gambar 2.24 Kata secret Direpresentasikan dalam Bentuk Biner 21 Gambar 2.25 Contoh Data Media Penampung Sebelum Disisipi Pesan 21 Gambar 2.26 Contoh Data yang Akan Disisipkan 22 Gambar 2.27 Contoh Data Media Penampung yang Telah Disisipi Pesan 22 Gambar 2.28 Struktur Proses Penyaringan 23 Gambar 2.29 Contoh Hasil Enhanced LSB 24 Gambar 2.30 Contoh Media Penampung dan Hasil Enhanced LSB Gambar Tersebut 24 Gambar 3.1 Flowchart Gambaran Umum Sistem 31 Gambar 3.2 Use Case Aplikasi Steganalisis 32 Gambar 3.3 Activity Diagram untuk Use Case Steganografi 40 Gambar 3.4 Activity Diagram untuk Use Case Pilih Gambar (Menu Steganografi) 41 Gambar 3.5 Activity Diagram untuk Use Case Tulis Pesan 41 Gambar 3.6 Activity Diagram untuk Use Case Sisip 42
Gambar 3.7 Activity Diagram untuk Use Case Steganalisis 43 Gambar 3.8 Activity Diagram untuk Use Case Pilih Gambar (Menu Steganalisis) 44 Gambar 3.9 Activity Diagram untuk Use Case Analisis 44 Gambar 3.10 Activity Diagram untuk Use Case Ekstraksi Pesan 45 Gambar 3.11 Activity Diagram untuk Use Case Pilih Gambar (Menu Ekstraksi Pesan) 46 Gambar 3.12 Activity Diagram untuk Use Case Ekstraksi 46 Gambar 3.13 Class Diagram Aplikasi Steganalisis 47 Gambar 3.14 Sequence Diagram Proses Penyisipan Pesan 50 Gambar 3.15 Sequence Diagram Steganalisis 51 Gambar 3.16 Sequence Diagram Proses Ekstraksi Pesan 52 Gambar 3.17 Perancangan Antarmuka Halaman Utama Aplikasi 53 Gambar 3.18 Perancangan Antarmuka Halaman Steganografi 54 Gambar 3.19 Perancangan Antarmuka Halaman Steganalisis 55 Gambar 3.20 Perancangan Antarmuka Halaman Ekstraksi Pesan 56 Gambar 4.1 Tampilan Halaman Utama Aplikasi 58 Gambar 4.2 Tampilan Halaman Steganografi 59 Gambar 4.3 Tampilan Halaman Steganalisis 60 Gambar 4.4 Tampilan Halaman Ekstraksi Pesan 61 Gambar 4.5 Pop-up Window Pilih Gambar pada Halaman Steganografi 64 Gambar 4.6 Gambar yang Telah Dipilih Ditampilkan 64 Gambar 4.7 Color.bmp 65 Gambar 4.8 Pesan yang Akan Disisipkan 65 Gambar 4.9 Gambar yang Telah Disisipi Pesan 66 Gambar 4.10 Color-embed.bmp 66 Gambar 4.11 Dialogue Box Peringatan untuk Memilih Gambar Bitmap 67 Gambar 4.12 Dialogue Box Peringatan untuk Menuliskan Pesan Rahasia 67 Gambar 4.13 Color.bmp (Atas) dan Color-embed.bmp (Bawah) 68 Gambar 4.14 Abc.bmp (Kiri) dan abc-embed.bmp (Kanan) 68 Gambar 4.15 Byte-Byte File Gambar abc.bmp dalam Heksadesimal 69 Gambar 4.16 Byte-Byte File Gambar abc-embed.bmp dalam Heksadesimal 69 Gambar 4.17 Perubahan Byte-Byte Pixel Data Akibat Penyisipan Pesan 69 Gambar 4.18 Pop-up Window Pilih Gambar pada Halaman Steganalisis 70 Gambar 4.19 Gambar yang Telah Dipilih Ditampilkan 71 Gambar 4.20 Gambar Hasil Steganalisis Ditampilkan 72 Gambar 4.21 Color-embed.bmp-analysis.bmp 72 Gambar 4.22 Dialogue Box Peringatan untuk Memilih Gambar Bitmap 72 Gambar 4.23 Color.bmp (Atas) dan Color.bmp-analysis.bmp (Bawah) 73 Gambar 4.24 Color-embed.bmp (Atas) dan Color-embed.bmp-analysis.bmp (Bawah) 73 Gambar 4.25 Color-embed.bmp-analysis.bmp yang Diperbesar 74 Gambar 4.26 Abc.bmp (Kiri) dan abc.bmp-analysis.bmp (Kanan) 74 Gambar 4.27 Byte-Byte File Gambar abc.bmp-analysis.bmp dalam Heksadesimal 75 Gambar 4.28 Abc-embed.bmp (Kiri) dan abc-embed.bmp-analysis.bmp (Kanan) 75 Gambar 4.29 Byte-Byte File Gambar abc-embed.bmp-analysis.bmp dalam Heksadesimal 75
Gambar 4.30 Pop-up Window Pilih Gambar pada Halaman Ekstraksi Pesan 76 Gambar 4.31 Gambar yang Telah Dipilih Ditampilkan 77 Gambar 4.32 Pesan Hasil Ekstraksi Ditampilkan 78 Gambar 4.34 Dialogue Box Peringatan untuk Memilih Gambar Bitmap 78