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
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
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
Diluluskan di
Medan, 18 Desember 2010
Komisi Pembimbing :
Pembimbing II
M. Andri B., ST., MCompSc., MEM NIP 197510082008011011
Pembimbing I
Prof. Dr. Muhammad Zarlis NIP 195707011986011003
Diketahui/Disetujui oleh
Departemen Ilmu Komputer FMIPA USU Ketua,
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
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 Universitas Sumatera Utara, semua dosen dan pegawai pada Program Studi S1 Ilmu Komputer FMIPA USU.
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
ANALYSIS AND EXTRACTION OF STEGO-OBJECT USING STEGANALYSIS METHOD OF ENHANCED LSB
ABSTRACT
3.2 Perancangan Sistem 30
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
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
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.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
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
ANALYSIS AND EXTRACTION OF STEGO-OBJECT USING STEGANALYSIS METHOD OF ENHANCED LSB
ABSTRACT
BAB 1
PENDAHULUAN
1.1Latar Belakang
Kemajuan teknologi yang begitu pesat saat ini memudahkan setiap orang menyampaikan informasi kepada orang lain. Namun, kemudahan yang diperoleh dalam menyampaikan informasi (pesan) tidak berarti menjamin keamanan pesan tersebut sampai ke tujuan. Kemungkinan pihak-pihak tertentu ingin mengetahui isi pesan yang dikirimkan. Oleh karena itu, salah satu cara agar pesan yang disampaikan tidak diketahui atau menarik perhatian orang lain adalah dengan menggunakan teknik penyembunyian pesan (steganografi).
Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan tersebut tidak dapat diketahui. Dengan steganografi, pesan yang dikirim tidak menarik perhatian dan media penampung tidak menimbulkan kecurigaan. Steganografi membutuhkan dua properti, yaitu media penampung dan pesan rahasia. Media penampung yang umum digunakan adalah
gambar, suara, video, atau teks. Pesan yang disembunyikan dapat berupa sebuah artikel, gambar, daftar barang, kode program, atau pesan lain (Munir, 2006).
Metode steganografi yang paling sederhana dan paling mudah
Teknik untuk mengetahui apakah ada suatu pesan tersembunyi dalam suatu media disebut steganalisis. Dengan melakukan steganalisis, kemudian dapat dilakukan tindak lanjut terhadap media penampungnya, apakah akan dihancurkan agar pesan
tidak dapat diketahui oleh siapapun, ataukah akan dilakukan ekstraksi sehingga isi pesan yang dikirimkan dapat diketahui.
Jika seseorang mengirimkan pesan kepada kerabatnya, maka tidak dapat
dipastikan apakah terdapat pesan tersembunyi di dalamnya. Ada kalanya, mengetahui apakah terdapat pesan tersembunyi di dalam pesan yang dikirimkan oleh seseorang menjadi begitu penting. Dengan mengetahui isi pesan yang disembunyikan, diharapkan dapat mencegah hal-hal yang tidak diinginkan.
Hal ini yang memotivasi untuk dapat mengetahui cara mendeteksi pesan yang disisispkan dengan metode steganografi LSB dalam suatu citra digital, karena media penampung yang umum digunakan untuk menyembunyikan pesan rahasia dan tidak menimbulkan kecurigaan adalah citra digital. Sementara, metode steganografi LSB adalah metode steganografi yang sederhana dan mudah diimplementasikan oleh banyak orang. Pada citra digital hasil penyisipan pesan dengan metode LSB, metode pendeteksian pesan secara visual yang umum digunakan adalah Enhanced LSB. Sebagai tindak lanjut, akan dilakukan ekstraksi pesan terhadap citra digital yang dideteksi memiliki pesan tersembunyi, sehingga isi pesan dapat diketahui.
1.2Rumusan Masalah
Permasalahan yang akan dibahas pada penelitian ini adalah sebagai berikut:
1. Bagaimana mendeteksi pesan tersembunyi pada citra digital hasil teknik
penyisipan LSB.
2. Metode steganalisis apakah yang umumnya digunakan untuk melakukan steganalisis pada citra digital dengan teknik penyisipan LSB.
3. Bagaimana keberhasilan metode steganalisis tersebut dalam mendeteksi apakah terdapat pesan tersembunyi pada citra digital.
1.3Batasan Masalah
Batasan masalah dari penelitian ini adalah sebagai berikut:
1. Steganalisis dilakukan pada citra digital dengan format bitmap (.bmp) 24 bit dan tidak terkompresi.
2. Steganalisis dilakukan pada citra digital dengan teknik penyisipan LSB.
3. Pesan yang disembunyikan diasumsikan tidak dienkripsi dan tidak dikompresi
terlebih dahulu.
4. Pesan yang disembunyikan diasumsikan dalam bentuk plainteks.
5. Untuk memperoleh citra digital yang disisipi pesan, maka dibuatlah aplikasi penyisipan pesan (steganografi).
6. Aplikasi yang dibangun tidak mencakup proses pengembalian gambar dari gambar hasil steganografi dan/ steganalisis ke gambar awal.
1.4Tujuan Penelitian
Tujuan penelitian ini adalah untuk menganalisis metode steganalisis Enhanced LSB, bagaimana keberhasilan teknik steganalisis yang digunakan dalam mendeteksi adanya pesan rahasia dalam suatu citra digital, dan kemudian mengekstraksi pesan rahasia tersebut sehingga isi pesan rahasia dapat diketahui.
1.5Manfaat Penelitian
Manfaat penelitian ini adalah untuk memahami algoritma steganalisis yang digunakan dalam mendeteksi adanya pesan rahasia dan kemudian melakukan ekstraksi terhadap
1.6Metodologi Penelitian
Tahapan-tahapan yang akan dilalui dalam pengerjaan laporan penelitian ini adalah
sebagai berikut:
1. Studi Literatur
Pengerjaan penelitian ini dimulai dengan mengumpulkan bahan-bahan sebagai
referensi baik dari buku, paper, jurnal, makalah, forum, milis, dan sumber-sumber lain yang berkaitan dan beberapa referensi lainnya untuk menunjang pencapaian tujuan penelitian.
2. Observasi
Metode ini dilakukan dengan melakukan pengamatan dan perbandingan terhadap beberapa metode steganalisis untuk mendeteksi adanya pesan rahasia pada citra digital hasil teknik penyisispan LSB dengan melakukan penelusuran di internet. Dengan pengamatan secara langsung tersebut akan diperoleh pengetahuan mengenai metode steganalisis yang ada dan telah diimplementasikan.
3. Analisis
Pada tahap ini, dilakukan analisis permasalahan yang ada, batasan yang dimiliki dan kebutuhan yang diperlukan.
4. Perancangan dan Implementasi Algoritma
Pada tahap ini akan dilakukan perancangan aplikasi dan implementasi metode steganalisis yang digunakan.
5. Pengujian
6. Penyusunan Laporan dan Kesimpulan Akhir
Metode ini akan dilaksanakan dengan melakukan pendokumentasian hasil analisa dan pengujian secara tertulis dalam bentuk laporan penelitian (skripsi).
1.7Sistematika Penulisan
Sistematika penulisan laporan penelitian ini dibagi menjadi 5 bab, yaitu sebagai berikut:
BAB 1 PENDAHULUAN
Berisikan penjelasan tentang Latar Belakang, Rumusan Masalah, Batasan Masalah, Tujuan Penulisan, Manfaat Penulisan, dan Metodologi Penelitian.
BAB 2 TINAJAUAN TEORETIS
Bab ini akan membahas teori-teori yang berkaitan dengan citra digital, steganografi, LSB, dan metode steganalisis yang akan digunakan.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Bab ini akan membahas analisis dan perancangan sistem dengan menggunakan metode steganalisis Enhanced LSB untuk
mendeteksi ada tidaknya pesan rahasia pada suatu citra digital beserta tindak lanjut terhadap pesan rahasia yang ditemukan.
BAB 4 IMPLEMENTASI DAN PENGUJIAN
Bab ini akan menjelaskan implementasi metode steganalisis yang digunakan, serta pengujian terhadap sistem yang telah dibangun.
BAB 5 KESIMPULAN DAN SARAN
BAB 2
TINJAUAN TEORETIS
2.1Citra Digital
Menurut kamus Webster, citra adalah suatu representasi, kemiripan, atau imitasi dari suatu objek atau benda. Citra digital adalah representasi dari citra dua dimensi menggunakan ‘0’ dan ‘1’ (biner). Citra digital dapat dibedakan menjadi dua, yaitu raster dan vektor. Pada umumnya, yang disebut dengan citra digital adalah citra digital dalam bentuk raster atau yang biasa disebut dengan citra bitmap.
2.1.1 Konsep dasar citra digital
Citra digital tersusun dalam bentuk raster (grid atau kisi). Setiap kotak yang terbentuk disebut pixel (picture element) dan memiliki koordinat (x,y). Koordinat ini biasanya dinyatakan dalam bilangan bulat positif. Dan setiap pixel memiliki nilai berupa angka
digital yang merepresentasikan informasi yang diwakili oleh pixel tersebut.
mengenai palet (korespondensi antara warna dengan angka) disimpan di dalam
komputer melalui aplikasi untuk membuka citra seperti, Photoshop, dan Paint.
2.1.1.1 Format citra digital
Format data citra digital berhubungan erat dengan warna. Nilai data digital merepresentasikan warna dari citra. Format citra digital yang banyak digunakan adalah citra biner (monochrome), citra skala keabuan (gray scale), citra warna (true
color), dan citra warna berindeks. Berikut ini penjelasan untuk masing-masing format
citra digital.
1. Citra biner (monochrome)
Citra biner (monochrome) atau disebut juga binary image, merupakan citra digital yang setiap pixel-nya hanya memiliki 2 kemungkinan derajat keabuan, yaitu 0 dan 1. Nilai 0 mewakili warna hitam, dan nilai 1 mewakili warna putih, di mana setiap
pixel-nya membutuhkan media penyimpanan sebesar 1 bit.
1
Gambar 2.2 Contoh Citra Biner
2. Citra skala keabuan (gray scale)
Citra skala keabuan atau disebut juga dengan citra aras keabuan memberikan
kemungkinan warna yang lebih banyak. Format citra ini disebut dengan aras keabuan karena ada warna abu-abu diantara warna minimum (hitam) dan warna maksimum (putih).
Jumlah maksimum warna sesuai dengan bit penyimpanan yang digunakan, apakah 4 bit atau 8 bit. Citra dengan skala keabuan 4-bit memiliki 24 = 16 kemungkinan warna, yaitu 0 (minimal) hingga 15 (maksimal). Sementara citra digital dengan skala keabuan 8-bit memliki 28 = 256 kemungkinan warna, yaitu 0 (minimal) hingga 255 (maksimal).
Gambar 2.4 Contoh Citra Skala Keabuan 8-Bit
3. Citra warna (true color)
Pada citra warna (true color) setiap pixel-nya merupakan kombinasi dari tiga warna dasar merah, hijau, dan biru, sehingga citra warna ini disebut juga citra RGB (Red Green Blue). Setiap komponen warna memiliki intensitas sendiri dengan nilai minimum 0 dan nilai maksimum 255 (8-bit). Hal ini menyebabkan setiap pixel pada citra RGB membutuhkan media penyimpanan 3 byte. Jumlah kemungkinan kombinasi warna citra RGB adalah 224 = lebih dari 16 juta warna.
1 byte 1 byte 1 byte
Blue Green Red
Gambar 2.5 Format Penyimpanan Warna RGB
Gambar 2.7 Contoh Citra Warna dan Representasinya dalam Data Digital
Gambar 2.8 Contoh Citra RGB
4. Citra warna berindeks
Setiap pixel pada citra warna berindeks memiliki indeks dari suatu tabel warna yang tersedia (biasanya disebut palet warna). Keuntungan yang diperoleh dengan menggunakan palet warna ini adalah kita dapat dengan cepat memenipulasi warna tanpa harus mengubah informasi dari setiap pixel pada citra.
Indeks R G B
0 255 255 255
1 0 255 0
2 255 255 0
3 100 0 255
4 255 0 255
15 0 255 255
Berikut ini adalah gambar derajat keabuan yang mempresentasikan aras
abu-abu dan aras warna pada citra digital dengan media penyimpanan 1-bit, 4-bit, 8-bit,dan 24-bit.
Gambar 2.10 Aras Warna Citra Digital 1-Bit
Gambar 2.11 Aras Abu-Abu dan Aras Warna pada Citra Digital 4-Bit
Gambar 2.13 Aras Abu-Abu dan Aras Warna pada Citra Digital 24-Bit (RGB)
2.1.1.2 Elemen dasar citra digital
Terdapat 6 elemen dasar citra digital sebagai berikut.
1. Kecerahan (Brightness), yaitu intensitas cahaya rata-rata dari suatu area yang melingkupinya.
2. Kontras (Contrast), yaitu sebaran terang dan gelap pada sebuah citra. Sebuah
citra disebut kontras rendah jika komposisi citra tersebut sebagian besar terang atau sebagian besar gelap. Citra dengan kontras yang baik jika sebaran bagian terang dan gelap merata.
3. Kontur (Contour), yaitu keadaan yang ditimbulkan oleh perubahan intensitas
pixel-pixel yang berdekatan, sehingga kita dapat mendeteksi tepi objek pada suatu
citra.
4. Warna (Color), yaitu persepsi yang dirasakan oleh sistem visual manusia terhadap panjang gelombang cahaya yang dipantulkan oleh objek.
5. Bentuk (Shape), yaitu informasi yang ditangkap oleh sistem visual manusia mengenai citra suatu objek.
6. Tekstur (Texture), yaitu distribusi spasial dari derajat keabuan di dalam
2.1.1.3 Struktur data citra digital
Suatu citra digital berbentuk matriks, di mana elemen-elemen matriks dapat diakses melalui indeksnya, yaitu baris dan kolom. Sebuah citra digital berukuran N x M, dengan keterangan sebagai berikut.
1. N = jumlah baris (panjang/tinggi matriks)
2. M = jumlah kolom (lebar matriks)
3. L = intensitas warna maksimal (derajat keabuan)
Gambar 2.14 Contoh Struktur Data Citra Digital
2.1.2 Citra bitmap
Bitmap atau .bmp adalah format citra digital yang paling umum dan merupakan format citra digital standar Windows. Ukuran file bitmap ini bisa sangat besar hingga Megabytes. File bitmap merupakan format citra digital yang belum terkompresi dan menggunakan warna RGB (Red, Green, Blue), sehingga setiap elemen pixel-nya merupakan hasil komposisi 3 komponen warna (merah, hijau, dan biru). Format data
Gambar 2.15 Format Data File Bitmap
(Sumber
Gambar 2.16 Berkas Header Bitmap
Gambar 2.17 Berkas Image Bitmap berupa Information Header (Sumber: http://lecturer.ukdw.ac.id/anton/download/multimedia2.pdf)
Gambar 2.19 Berkas Palet Warna Bitmap
(Sumber: http://lecturer.ukdw.ac.id/anton/download/multimedia2.pdf)
2.2Steganografi
Steganografi berasal dari Bahasa Yunani, yaitu steganos (rahasia atau tersembunyi) dan graphy (tulisan atau gambar), sehingga steganografi memiliki arti tulisan tersembunyi. Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui. Steganografi dapat dipandang sebagai kelanjutan kriptografi dan dalam prakteknya pesan rahasia dienkripsi terlebih dahulu kemudian cipherteks disembunyikan di dalam media lain sehingga pihak ketiga tidak menyadari keberadaannya (Munir, 2006).
2.2.1 Konsep dan terminologi
Terdapat beberapa istilah yang berkaitan dengan steganografi:
1. Hiddentext atau embedded message, yaitu pesan yang disembunyikan.
2. Covertext atau cover-object, yaitu pesan yang digunakan untuk menyembunyikan embedded message.
3. Stegotext atau stego-object, yaitu pesan yang sudah berisi embedded message.
Gambar 2.21 Contoh Covertext, Hiddentext, dan Stegotext (Sumber: Sinaga, 2008)
Sebenarnya citra stegotext dan covertext tidak sama, citra tersebut mengalami sedikit perubahan akibat steganografi, namun mata manusia mempunyai sifat kurang peka terhadap perubahan kecil ini, sehingga manusia sukar membedakan mana gambar yang asli dan mana gambar yang sudah disisipkan (Munir, 2006).
Gambar 2.22 Diagram Penyisipan dan Ekstraksi Pesan Encoding
(embeddin)
covertext
hiddentext
key
Decoding (extraction)
stegotext
key
Gambar 2.23 Diagram Penyisipan dan Ekstraksi Pesan
2.2.2 Teknik penyembunyian data
Teknik penyembunyian data ke dalam covertext dapat dilakukan dalam dua macam ranah:
1. Ranah spasial (waktu) (spatial time domain)
Teknik ini memodifikasi langsung nilai byte dari covertext (nilai byte dapat merepresentasikan intensitas/warna pixel atau amplitudo). Contoh metode yang termasuk ke dalam ranah spasial adalah metode LSB.
2. Ranah transform (transform domain)
Teknik ini memodifikasi langsung hasil transformasi frekuensi sinyal. Contoh metode yang tergolong ke dalam ranah frekuensi adalah spread spectrum (Munir, 2006).
2.2.3 Least significant bit
digunakan citra digital sebagai covertext. Setiap pixel di dalam citra berukuran 1
sampai 3 byte. Pada susunan bit di dalam sebuah byte (1 byte = 8 bit), ada bit paling berarti (most significant bit atau MSB) dan bit yang paling kurang berarti (least
significant bit atau LSB). Misalnya pada byte 11010010, bit 1 yang pertama
(digarisbawahi) adalah bit MSB dan bit 0 yang terakhir (digarisbawahi) adalah bit LSB. Bit yang cocok diganti dengan bit pesan adalah bit LSB, sebab modifikasi hanya mengubah nilai byte tersebut satu lebih tinggi atau satu lebih rendah dari nilai sebelumnya. Misalkan byte tersebut di dalam gambar memberikan persepsi warna merah, maka perubahan satu bit LSB hanya mengubah persepsi warna merah tidak terlalu berarti. Mata manusia tidak dapat membedakan perubahan yang kecil ini.
Untuk membuat hidden text tidak dapat dilacak, bit-bit pesan tidak mengganti
byte-byte yang berurutan, namun dipilih susunan byte secara acak. Misalnya jika
terdapat 50 byte dan 6 bit data yang akan disembunyikan, maka byte yang akan diganti LSB-nya dipilih secara acak, misalnya byte nomor 36, 5, 21, 10, 18, 49.
Pada citra 8-bit yang berukuran 256 x 256 pixel terdapat 65536 pixel, setiap
pixel berukuran 1 byte sehingga kita hanya dapat menyisipkan 1 bit pada setiap pixel.
Pada citra 24-bit berukuran 256 x 256 pixel, satu pixel berukuran 3 byte (atau 1 byte untuk setiap komponen R, G, dan B), sehingga kita bisa menyisipkan sebanyak 65536 x 3 bit = 196608 bit atau 24576 byte (Munir, 2006).
Gambar 2.24 Kata “secret” Direpresentasikan dalam Bentuk Biner
Kemudian, setiap bit dari karakter penyusun kata “secret” akan disisipkan pada bit terakhir dari setiap byte media penampungnya. Berikut ini gambar contoh data media penampung sebelum disisipi pesan, contoh data (pesan) yang akan disisipkan, dan contoh data media penampung setelah disisipi pesan.
Gambar 2.26 Contoh Data yang Akan Disisipkan
Gambar 2.27 Contoh Data Media Penampung yang Telah Disisipi Pesan
2.3Steganalisis
Steganalisis adalah teknik untuk mengetahui apakah ada pesan tersembunyi dalam suatu media. Teknik steganalisis yang akan digunakan adalah metode Enhanced LSB.
2.3.1 Enhanced LSB
Algoritma Enhanced LSB dikemukakan oleh Andreas Westfeld dan Andreas
Pfitzmann. Ide dasar dari algoritma ini adalah bahwa nilai pencahayaan (luminance
values) LSB pada suatu gambar tidaklah benar-benar acak, namun tetap
menggambarkan bentuk gambar tersebut.
Untuk membedakan keacakan gambar dan isi dari suatu gambar, ataupun membedakan bit LSB dan bit acak pada gambar, merupakan hal yang sulit. Namun, pada gambar tersebut akan dilakukan substitusi, dengan maksud agar orang yang melihat dapat menyadari isi gambar tersebut. Walaupun gambar menjadi sedikit kabur, kemampuan manusia berimajinasi akan dapat mengenali gambar tersebut. Kemampuan manusia untuk membedakan apakah terdapat sebuah pesan ataukah hanya isi gambar inilah yang dimanfaatkan untuk melakukan steganalisis dengan pendekatan secara visual (visual attack).
Gambar 2.28 Struktur Proses Penyaringan
00000000 11111111 11111111 11111111 00000000 00000000 11111111 11111111 00000000 11111111 11111111 00000000 00000000 11111111 00000000 11111111 00000000 11111111 11111111 00000000 00000000 00000000 11111111 11111111 00000000 11111111 11111111 11111111 00000000 00000000 11111111 00000000 00000000 11111111 11111111 00000000 00000000 00000000 11111111 11111111 00000000 11111111 11111111 11111111 00000000 11111111 00000000 00000000
Gambar 2.29 Contoh Hasil Enhanced LSB
Gambar 2.30 Contoh Media Penampung dan Hasil Enhanced LSB Gambar
Tersebut
Gambar hasil penyaringan atau telah di proses dengan metode Enhanced LSB dapat dibandingkan dengan gambar sebelumnya (gambar asal atau gambar
stego-image). Jika pada gambar hasil enhanced LSB objek gambar terlihat menyerupai
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1 Analisis Sistem
Analisis sistem dilakukan untuk mengetahui dan menentukan berbagai kriteria yang dibutuhkan untuk membangun sistem. Berikut ini dilakukan analisis terhadap hal-hal yang berhubungan dengan sistem.
3.1.1 Citra digital bitmap
Citra digital bitmap merupakan format citra digital yang umum digunakan. Citra bitmap tidak terkompresi dan umumnya memiliki ukuran yang besar. Hal inilah yang menyebabkan citra bitmap banyak digunakan sebagai media penyimpanan pesan. Dengan jenis file yang tidak terkompresi, maka pesan rahasia tidak akan rusak akibat proses kompresi dan dekompresi. Begitu juga ukuran file yang besar, tidak
menyebabkan kecurigaan akan adanya pesan rahasia.
Format data file bitmap terdiri dari file header, image header, color table, dan
pixel data, dapat dilihat pada Gambar 2.15. Berikut ini penjelasan format data file
bitmap.
1. File header
File header bitmap mengidentifikasikan file bitmap tersebut, berisi informasi
2. Image header
Image header (information header) bitmap menentukan ukuran, tipe kompresi,
dan format warna untuk bitmap tersebut.
3. Color table
Color table (color pallete) bitmap merupakan array terstruktur yang menentukan
setiap warna dalam gambar. Setiap pixel data bitmap menyimpan sebuah nilai tunggal yang digunakan sebagai indeks pada palet warna. Informasi warna yang disimpan di dalam elemen pada suatu indeks mendefinisikan warna pixel tersebut.
Palet warna digunakan pada gambar bitmap 1-bit, 4-bit, dan 8-bit. Pada gambar bitmap 16-bit, 24-bit, dan 32-bit, tidak terdapat palet warna karena setiap
pixel direpresentasikan oleh nilai data warna yang sebenarnya di area bitmap data.
4. Pixel data
Pixel data merupakan bagian dari file bitmap yang menyimpan informasi
representasi kumpulan bit-bit warna yang membentuk gambar. Pixel data bitmap dimulai dari data offset hingga akhir file bitmap.
Pesan rahasia disisipkan pada bagian pixel data bitmap. Di mana bit terakhir dari suatu byte pixel data akan diganti dengan bit pesan. Pesan rahasia tidak disisipkan pada bagian lain selain pixel data bitmap, karena pengubahan bit terkahir pada byte
lain selain byte data bitmap dapat merusak file gambar tersebut. Dengan demikian, proses mendeteksi kemungkinan adanya pesan akan dilakukan pada bagian pixel data bitmap yang dimulai dari data offset hingga akhir file bitmap.
3.1.2 Metode steganalisis
Metode ini akan mengubah nilai seluruh bit pada suatu byte pixel sesuai
dengan nilai bit terkahir byte pixel tersebut. Berikut ini algoritma metode steganalisis
Enhanced LSB.
1. Periksa bit terakhir dari setiap byte data.
2. Jika bit terakhir bernilai 0, ubah semua bit pada byte tersebut menjadi 0. Dan jika bit terakhir bernilai 1, ubah semua bit pada byte tersebut menjadi 1.
3. Perhatikan gambar setelah terjadi proses perubahan bit untuk menentukan apakah pada gambar tersebut terdapat pesan rahasia atau tidak.
3.1.3 Tindak lanjut terhadap pesan rahasia
Proses steganalisis akan memperlihatkan kemungkinan ada tidaknya pesan rahasia pada gambar. Jika pada gambar terdapat pesan rahasia, maka tindak lanjut yang akan dilakukan adalah melakukan ekstraksi terhadap pesan rahasia tersebut, sehingga isi pesan rahasia dapat diketahui.
3.1.4 Analisis cara kerja sistem
Sistem dibangun dengan tujuan dapat menganalisis suatu gambar bitmap sehingga dapat diketahui apakah pada gambar tersebut terdapat pesan rahasia atau tidak. Jika
terdapat pesan rahasia, maka akan dilakukan ekstraksi pesan untuk mengetahui isi pesan rahasia tersebut.
3.1.5 Pemodelan Sistem
Alur kerja sistem akan digambarkan dengan menggunakan Unified Modeling
Language (UML). UML merupakan salah satu standar pemodelan sistem untuk
memvisualisasikan, merancang, dan mendokumentasikan perangkat lunak. Diagram-diagram UML yang akan digunakan untuk membangun sistem steganalisis ini adalah
use case diagram, activity diagram, class diagram, dan sequence diagram.
Use case diagram menggambarkan fungsionalitas yang diharapkan dari sebuah
sistem dengan menekankan kepada apa yang diperbuat sistem. Sebuah use case merepresentasikan interaksi antara actor dengan sistem. Use case merupakan sebuah pekerjaan tertentu, sementara actor merupakan entitas manusia atau mesin yang berinteraksi dengan sistem untuk melakukan pekerjaan-pekerjann tertentu.
Activity diagram menggambarkan alur aktivitas dalam sistem. Activity
diagram juga dapat menggambarkan aktivitas paralel yang mungkin terjadi pada
beberapa eksekusi pada sistem. Activity diagram merupakan state diagram secara khusus, di mana sebagian besar state berupa action.
Class diagram mendeskripsikan struktur dari kelas-kelas yang terdapat pada
sebuah sistem. Class diagram dirancang untuk menentukan objek-objek yang dibutuhkan untuk perancangan sistem. Class diagram menggambarkan keadaan suatu
sistem melalui atribut yang dimilikinya dan juga memiliki layanan untuk memanipulasi keadaan tersebut melalui metode/fungsi.
Sequence diagram menggambarkan interaksi antarobjek di dalam dan di
sekitar objek berupa message yang digambarkan terhadap waktu. Pada sequence
diagram, waktu merupakan dimensi vertikal, sementara objek merupakan dimensi
horizontal. Pada umumnya, sequence diagram digunakan untuk menggambarkan skenario atau rangkaian langkah-langkah yang dilakukan sebagai respon dari sebuah
Actor pada use case dan use case itu sendiri dapat diidentifikasi dengan
menjawab beberapa pertanyaan sebagai berikut. 1. Siapa yang menggunakan sistem?
Jawaban: Pengguna.
2. Siapa yang diperlukan untuk melaksanakan fungsi pada sistem? Jawaban:
Pengguna.
3. Bagaimana aktor menggunakan sistem? Jawaban:
Pengguna mengakses halaman steganalisis untuk melakukan steganalisis untuk mendeteksi ada tidaknya pesan rahasia pada suatu gambar. Kemudian pengguna akan memilih gambar yang diinginkan dan melakukan proses steganalisis. Pengguna juga dapat mengekstraksi pesan pada gambar dengan mengakses halaman ekstraksi dan memilih gambar yang diinginkan untuk kemudian melakukan proses ekstraksi sehingga pesan tersembunyi dapat diketahui.
Dari pertanyaan-pertanyaan tersebut, maka dapat ditentukan bahwa actor adalah pengguna. Use case dapat ditentukan dari hal-hal yang dilakukan oleh pengguna. Hal-hal yang dilkukan oleh pengguna adalah sebagai berikut:
1. Mengakses halaman steganalisis untuk kemudian mendeteksi ada tidaknya pesan rahasia pada suatu gambar.
2. Menentukan gambar yang akan dianalisis. 3. Melakukan proses analisis.
4. Mengakses halaman ekstraksi untuk kemudian mengekstraksi pesan tersembunyi pada gambar.
3.1.6 Bahasa pemrograman
Sistem ini akan dibangun dengan menggunakan bahasa pemrograman Java, melalui
platform NetBeans IDE 6.8. NetBeans adalah sebuah Integrated Development
Environment (IDE) yang open source.
3.2 Perancangan Sistem
Berikut ini dijelaskan perancangan sistem dengan menggunakan flowchart dan UML, serta perancangan antarmuka sistem.
3.2.1 Gambaran umum sistem
Mulai
Gambar 3.1 Flowchart Gambaran Umum Sistem
3.2.2 Use case diagram
Fungsionalitas sistem digambarkan dalam bentuk use case diagram. Sementara
activity diagram menggambarkan alur aktivitas sistem. Berikut ini use case diagram
Gambar 3.2 Use Case Aplikasi Steganalisis
3.2.2.1 Use case Steganografi
Spesifikasi use case Steganografi dapat dilihat pada tabel berikut.
Tabel 3.1 Spesifikasi Use Case Steganografi
Name Steganografi
Actors Pengguna
Trigger Pengguna memilih menu Steganografi.
Preconditions Pengguna menggunakan aplikasi steganalisis.
Post Conditions Pengguna dapat melihat hasil steganografi.
Success Scenario 1. Pengguna memilih menu Steganografi. 2. Sistem menampilkan halaman Steganografi.
3. Pengguna memilih gambar yang diinginkan, menuliskan pesan yang akan disisipkan, dan mengeksekusi tombol Sisip.
4. Sistem melakukan proses steganografi terhadap gambar dan menampilkan hasil steganografi.
5. Pengguna dapat melihat hasil steganografi.
Alternative Flows -
3.2.2.2 Use case Pilih Gambar (menu Steganografi)
Spesifikasi use case Pilih Gambar (menu Steganografi) dapat dilihat pada tabel
berikut.
Tabel 3.2 Spesifikasi Use Case Pilih Gambar (menu Steganografi)
Name Pilih Gambar
Actors Pengguna
Trigger Pengguna memilih menu Steganografi.
Preconditions Pengguna mengakses menu Steganografi.
pengguna.
Success Scenario 1. Pengguna memilih menu Steganografi. 2. Sistem menampilkan halaman Steganografi. 3. Pengguna mengeksekusi tombol Pilih Gambar.
4. Sistem menampilkan pop-up window untuk dapat mengakses lokasi penyimpanan gambar. 5. Pengguna memilih gambar yang diinginkan. 6. Sistem menampilkan gambar yang dipilih oleh
pengguna.
7. Pengguna dapat melihat gambar yang telah dipilih.
Alternative Flows -
3.2.2.3 Use case Tulis Pesan
Spesifikasi use case Tulis Pesan dapat dilihat pada tabel berikut.
Tabel 3.3 Spesifikasi Use Case Tulis Pesan
Name Tulis Pesan
Actors Pengguna
Trigger Pengguna telah menentukan gambar yang akan
dianalisis.
Preconditions Pengguna mengakses menu Steganografi.
Post Conditions Pengguna dapat melihat pesan yang akan disisipkan.
Success Scenario Pengguna telah menentukan gambar yang akan
disisipi pesan dan kemudian menuliskan pesan yang akan disisipkan ke dalam gambar.
3.2.2.4 Use case Sisip
Spesifikasi use case Sisip dapat dilihat pada tabel berikut.
Tabel 3.4 Spesifikasi Use Case Sisip
Name Sisip
Actors Pengguna
Trigger Pengguna telah menuliskan pesan yang akan
disisipkan.
Preconditions Pengguna mengakses menu Steganografi.
Post Conditions Sistem menampilkan gambar hasil steganografi.
Success Scenario 1. Pengguna telah menuliskan pesan yang akan
disisipkan dan kemudian menekan tombol Sisip. 2. Sistem melakukan proses penyisipan pesan ke
dalam gambar dan menampilkan hasil steganografi.
3. Pengguna dapat melihat hasil steganografi.
Alternative Flows -
3.2.2.5 Use case Steganalisis
Spesifikasi use case Steganalisis dapat dilihat pada tabel berikut.
Tabel 3.5 Spesifikasi Use Case Steganalisis
Name Steganalisis
Actors Pengguna
Trigger Pengguna memilih menu Steganalisis.
Preconditions Pengguna menggunakan aplikasi steganalisis.
Post Conditions Pengguna dapat melihat hasil steganalisis.
3. Pengguna memilih gambar yang diinginkan dan mengeksekusi tombol Analisis.
4. Sistem melakukan proses steganalisis terhadap gambar dan menampilkan hasil steganalisis.
5. Pengguna dapat melihat hasil steganalisis.
Alternative Flows -
3.2.2.6 Use case Pilih Gambar (menu Steganalisis)
Spesifikasi use case Pilih Gambar (menu Steganalisis) dapat dilihat pada tabel berikut.
Tabel 3.6 Spesifikasi Use Case Pilih Gambar (menu Steganalisis)
Name Pilih Gambar
Actors Pengguna
Trigger Pengguna memilih menu Steganalisis.
Preconditions Pengguna mengakses menu Steganalisis.
Post Conditions Sistem menampilkan gambar yang dipilih oleh
pengguna.
Success Scenario 1. Pengguna memilih menu Steganalisis. 2. Sistem menampilkan halaman Steganalisis. 3. Pengguna mengeksekusi tombol Pilih Gambar. 4. Sistem menampilkan pop-up window untuk
dapat mengakses lokasi penyimpanan gambar. 5. Pengguna memilih gambar yang diinginkan. 6. Sistem menampilkan gambar yang dipilih oleh
pengguna.
7. Pengguna dapat melihat gambar yang telah dipilih.
3.2.2.7 Use case Analisis
Spesifikasi use case Analisis dapat dilihat pada tabel berikut.
Tabel 3.7 Spesifikasi Use Case Analisis
Name Analisis
Actors Pengguna
Trigger Pengguna telah menentukan gambar yang akan
dianalisis.
Preconditions Pengguna mengakses menu Steganalisis.
Post Conditions Sistem menampilkan gambar hasil steganalisis.
Success Scenario 1. Pengguna telah menentukan gambar yang akan dianalisis dan kemudian menekan tombol Analisis.
2. Sistem melakukan proses steganalisis dan menampilkan hasil steganalisis.
3. Pengguna dapat melihat hasil steganalisis.
Alternative Flows -
3.2.2.8 Use case Ekstraksi Pesan
Spesifikasi use case Ekstraksi Pesan dapat dilihat pada tabel berikut.
Tabel 3.8 Spesifikasi Use Case Ekstraksi Pesan
Name Ekstraksi Pesan
Actors Pengguna
Trigger Pengguna memilih menu Ekstraksi Pesan.
Preconditions Pengguna menggunakan aplikasi steganalisis.
Post Conditions Pengguna dapat melihat hasil ekstraksi.
3. Pengguna memilih gambar yang diinginkan dan mengeksekusi tombol Ekstraksi.
4. Sistem melakukan proses ekstraksi terhadap gambar dan menampilkan hasil ekstraksi.
5. Pengguna dapat melihat pesan tersembunyi hasil ekstraksi.
Alternative Flows -
3.2.2.9 Use case Pilih Gambar (menu Ekstraksi Pesan)
Spesifikasi use Pilih Gambar (menu Ekstraksi Pesan) dapat dilihat pada tabel berikut.
Tabel 3.9 Spesifikasi Use Case Pilih Gambar (menu Ekstraksi Pesan)
Name Pilih Gambar
Actors Pengguna
Trigger Pengguna memilih menu Ekstraksi Pesan.
Preconditions Pengguna mengakses menu Ekstraksi Pesan.
Post Conditions Sistem menampilkan gambar yang dipilih oleh
pengguna.
Success Scenario 1. Pengguna memilih menu Ekstraksi Pesan. 2. Sistem menampilkan halaman Ekstraksi Pesan. 3. Pengguna mengeksekusi tombol Pilih Gambar. 4. Sistem menampilkan pop-up window untuk
dapat mengakses lokasi penyimpanan gambar. 5. Pengguna memilih gambar yang diinginkan. 6. Sistem menampilkan gambar yang dipilih oleh
pengguna.
7. Pengguna dapat melihat gambar yang telah dipilih.
3.2.2.10 Use case Ekstraksi
Spesifikasi use case Ekstraksi dapat dilihat pada tabel berikut.
Tabel 3.10 Spesifikasi Use Case Ekstraksi
Name Ekstraksi
Actors Pengguna
Trigger Pengguna telah menentukan gambar yang akan
diekstraksi.
Preconditions Pengguna mengakses menu Ekstraksi Pesan.
Post Conditions Sistem menampilkan pesan tersembunyi.
Success Scenario 1. Pengguna telah menentukan gambar yang akan diekstraksi dan kemudian menekan tombol Ekstraksi.
2. Sistem melakukan proses ekstraksi pesan dan menampilkan hasil ekstraksi.
3. Pengguna dapat melihat pesan tersembunyi.
Alternative Flows -
3.2.3 Activity diagram
Alur kerja pada use case digambarkan dalam bentuk activity diagram. Berikut ini
activity diagram untuk masing-masing use case yang terdapat pada aplikasi
steganalisis.
3.2.3.1 Activity diagram untuk use case Steganografi
Gambar 3.3 Activity Diagram untuk Use Case Steganografi
3.2.3.2 Activity diagram untuk use case Pilih Gambar (menu Steganografi)
Activity diagram untuk use case Pilih Gambar (menu Steganografi) dapat dilihat pada
Gambar 3.4 Activity Diagram untuk Use Case Pilih Gambar (Menu Steganografi)
3.2.3.3 Activity diagram untuk use case Tulis Pesan
Activity diagram untuk use case Tulis Pesan dapat dilihat pada gambar berikut.
3.2.3.4 Activity diagram untuk use case Sisip
Activity diagram untuk use case Sisip dapat dilihat pada gambar berikut.
Gambar 3.6 Activity Diagram untuk Use Case Sisip
3.2.3.5 Activity diagram untuk use case Steganalisis
Gambar 3.7 Activity Diagram untuk Use Case Steganalisis
3.2.3.6 Activity diagram untuk use case Pilih Gambar (menu Steganalisis)
Activity diagram untuk use case Pilih Gambar (menu Steganalisis) dapat dilihat pada
Gambar 3.8 Activity Diagram untuk Use Case Pilih Gambar (Menu Steganalisis)
3.2.3.7 Activity diagram untuk use case Analisis
Activity diagram untuk use case Analisis dapat dilihat pada gambar berikut.
3.2.3.8 Activity diagram untuk use case Ekstraksi Pesan
Activity diagram untuk use case Ekstraksi Pesan dapat dilihat pada gambar berikut.
Gambar 3.10 Activity Diagram untuk Use Case Ekstraksi Pesan
3.2.3.9 Activity diagram untuk use case Pilih Gambar (menu Ekstraksi Pesan)
Activity diagram untuk use case Pilih Gambar (menu Ekstraksi Pesan) dapat dilihat
Gambar 3.11 Activity Diagram untuk Use Case Pilih Gambar (Menu Ekstraksi Pesan)
3.2.3.10 Activity diagram untuk use case Ekstraksi
Activity diagram untuk use case Ekstraksi dapat dilihat pada gambar berikut.
3.2.4 Class diagram
Class diagram menggambarkan hubungan antarkelas dalam sistem yang sedang
dibangun. Setiap kelas memiliki attributes dan methods sesuai dengan yang dibutuhkan. Berikut ini class diagram dari Aplikasi Steganalisis.
Gambar 3.13 Class Diagram Aplikasi Steganalisis
Berikut ini akan dijelaskan kegunaan dari masing-masing class pada class
Tabel 3.11 Kegunaan Class-Class pada Class Diagram Aplikasi Steganalisis
Class Kegunaan
javax.swing Merepresentasikan tampilan visual (GUI)
pada aplikasi java.
java.awt.AWTEvent Menjembatani interaksi pengguna secara langsung dengan komponen yang terdapat pada sistem.
AppFrame Halaman utama aplikasi.
Steganografi Proses penyisipan pesan dilakukan melaui halaman ini.
Steganalisis Proses steganalisis dilakukan melalui halaman ini.
EkstraksiPesan Proses ekstraksi pesan dilakukan melalui halaman ini.
FileFilter Melakukan penyaringan terhadap file gambar yang akan dipilih.
Metode Memproses penyisipan pesan, steganalisis dan ekstraksi pesan.
Bitmap Mengidentifikasi gambar bitmap.
3.2.5 Sequence diagram
Sequence diagram menjelaskan urutan proses yang dilakukan dalam sistem untuk
3.2.5.1 Sequence diagram untuk proses penyisipan pesan dengan metode LSB
3.2.5.2 Sequence diagram untuk metode Enhanced LSB
Metode steganalisis Enhanced LSB akan memeriksa LSB dari setiap byte pixel data dan kemudian mengubah nilai byte tersebut sesuai dengan nilai LSB byte tersebut seperti yang telah dijelaskan sebelumnya. Sequence diagram untuk metode Enhanced LSB dapat dilihat pada gambar berikut ini.
3.2.5.3 Sequence diagram untuk proses ekstraksi pesan
Proses ekstraksi pesan dilakukan dengan cara mengambil nilai LSB dari setiap byte
pixel data kemudian merangkainya menjadi susunan karakater membentuk kata atau
kalimat sesuai dengan pesan yang disisipkan. Sequence diagram untuk proses ekstraksi pesan dapat dilihat pada gambar berikut ini.
Gambar 3.16 Sequence Diagram Proses Ekstraksi Pesan
3.2.6 Perancangan antarmuka sistem
3.2.6.1 Halaman utama aplikasi
Halaman utama aplikasi menampilkan tampilan awal aplikasi. Terdapat 3 buah menu, yaitu menu Steganografi, Steganalisis, dan Ekstraksi Pesan. Perancangan antarmuka halaman utama aplikasi dapat dilihat pada gambar berikut.
Steganalisis Ekstraksi Pesan Aplikasi Steganalisis
APLIKASI STEGANALISIS
Anggarani Novitasari
061401051 Oleh:
Aplikasi sederhana untuk mendeteksi ada tidaknya pesan rahasia pada gambar bitmap 24 bit.
Steganografi
Gambar 3.17 Perancangan Antarmuka Halaman Utama Aplikasi
3.2.6.2 Halaman steganografi
Aplikasi Steganalisis
Gambar Awal Pesan yang akan disisipkan
Steganografi
Gambar dengan Pesan Tersembunyi Informasi penyisipan pesan
Lokasi Gambar Hasil Steganalisis
Gambar 3.18 Perancangan Antarmuka Halaman Steganografi
Pada halaman Steganografi terdapat tombol Pilih Gambar, textarea untuk menuliskan pesan rahasia, dan tombol Sisip. Pengguna akan memilih gambar terlebih dahulu melalui tombol Pilih Gambar. Gambar yang telah dipilih oleh pengguna akan ditampilkan pada scrollpane di bawah tombol Pilih Gambar. Di bawah gambar, terdapat informasi mengenai lokasi penyimpanan gambar. Kemudian, pengguna menuliskan pesan rahasia yang ingin disisipkan pada textarea yang tersedia dan melalui tombol Sisip, gambar yang telah dipilih akan disisipkan pesan rahasia yang telah ditentukan. Gambar yang telah disisipi pesan sebagai hasil steganografi akan ditampilkan pada scrollpane di bawah scrollpane Gambar Awal. Di bawah gambar ini juga terdapat informasi mengenai lokasi penyimpanan gambar.
3.2.6.3 Halaman steganalisis
Aplikasi Steganalisis
Gambar 3.19 Perancangan Antarmuka Halaman Steganalisis
Pada halaman Steganalisis terdapat tombol Pilih Gambar dan Analisis. Pengguna akan memilih gambar terlebih dahulu melalui tombol Pilih Gambar. Gambar yang telah dipilih oleh pengguna akan ditampilkan pada scrollpane di bawah tombol Pilih Gambar. Di bawah gambar, terdapat informasi mengenai lokasi gambar pada komputer, nama gambar, dan ukuran gambar. Kemudian, melalui tombol Analisis, gambar yang telah dipilih akan mengalami proses steganalisis, dan hasil steganalisis akan ditampilkan pada scrollpane di bawah tombol Analisis. Hasil steganalisis secara otomatis akan tersimpan pada lokasi yang sama dengan gambar yang dipilih.
3.2.6.4 Halaman ekstraksi pesan
Halaman Steganalisis dapat diakses oleh pengguna dengan memilih menu Ekstraksi
Aplikasi Steganalisis
Gambar Awal Pesan Hasil Ekstraksi
Ekstraksi Pesan
Gambar 3.20 Perancangan Antarmuka Halaman Ekstraksi Pesan
BAB 4
IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1 Implementasi
Penentuan berbagai kriteria yang dibutukan untuk membangun sistem telah dilakukan pada tahap analisis dan perancangan sistem. Selanjutnya, berdasarkan hasil analisis dan perancangan sistem tersebut, dilakukan implementasi pembangunan sistem. Implementasi sistem dibangun dengan menggunakan Integrated Development
Environment (IDE) NetBeans 6.8.
Berikut ini adalah konfigurasi dalam mengimplementasikan hasil analisis dan perancangan sistem serta tampilan aplikasi hasil implementasi.
4.1.1 Konfigurasi perangkat keras
Dalam proses pengimplementasian sistem, spesifikasi perangkat keras komputer yang digunakan adalah sebagai berikut:
1. Prosesor Intel Core 2 Duo T6400. 2. Memori RAM 3 GB.
3. Hard disk 240 GB.
4.1.2 Konfigurasi perangkat lunak
Pada saat melakukan proses implementasi sistem, sistem operasi yang digunakan adalah Windows Vista Ultimate. Perangkat lunak yang digunakan dalam pengimplementasian sistem adalah sebagai berikut:
1. Java Standard Edition Development Kit (JDK) 6.0 Update 17. 2. NetBeans IDE 6.8.
4.1.3 Tampilan penggunaan aplikasi
Hasil analisis dan perancangan sistem yang telah diimplementasikan dapat dilihat dalam gambar-gambar tampilan penggunaan aplikasi berikut.
4.1.3.1 Halaman utama aplikasi
Halaman utama aplikasi merupakan halaman awal yang ditampilkan saat aplikasi steganalisis dijalankan. Pada halaman ini terdapat informasi mengenai aplikasi dan pembuat aplikasi. Berikut ini adalah tampilan halaman utama aplikasi steganalisis.
4.1.3.2 Halaman steganografi
Untuk dapat mengakses halaman steganografi, pengguna hanya perlu memilih menu Steganografi pada menubar aplikasi. Pada halaman steganografi, terdapat dua buah tombol, yaitu tombol Pilih Gambar untuk memilih gambar yang diinginkan, dan tombol Analisis untuk mengeksekusi proses penyisipan pesan ke dalam gambar. Juga terdapat dua buah textarea yang digunakan untuk menuliskan pesan yang ingin disisipkan dan yang berisikan informasi penyisipan pesan. Gambar yang dipilih oleh pengguna melalui tombol Pilih Gambar akan ditampilkan pada scrollpane Gambar Awal. Sementara gambar hasil steganografi akan ditampilkan pada scrollpane Gambar dengan Pesan Tersembunyi. Berikut ini adalah gambar tampilan halaman steganografi.
4.1.3.3 Halaman steganalisis
Untuk dapat mengakses halaman steganalisis, pengguna hanya perlu memilih menu Steganalisis pada menubar aplikasi. Pada halaman steganalisis, terdapat dua buah tombol, yaitu tombol Pilih Gambar untuk memilih gambar yang diinginkan, dan tombol Analisis untuk mengeksekusi proses steganalisis terhadap gambar. Gambar yang dipilih oleh pengguna melalui tombol Pilih Gambar akan ditampilkan pada
scrollpane Gambar Awal. Begitu juga dengan gambar hasil steganalisis akan
ditampilkan pada scrollpane Gambar Hasil Steganalisis. Terdapat beberapa informasi mengenai gambar awal yang ditampilkan, seperti lokasi gambar pada komputer, nama gambar, dan ukuran gambar. Berikut ini adalah gambar tampilan halaman steganalisis.
Gambar 4.3 Tampilan Halaman Steganalisis
4.1.3.4 Halaman ekstraksi pesan
dua buah tombol, yaitu tombol Pilih Gambar untuk memilih gambar yang diinginkan,
dan tombol Ekstraksi untuk mengeksekusi proses ekstraksi pesan terhadap gambar. Gambar yang dipilih oleh pengguna melalui tombol Pilih Gambar akan ditampilkan pada scrollpane Gambar Awal. Begitu juga dengan pesan hasil ekstraksi akan ditampilkan pada scrollpane Pesan Hasil Ekstraksi. Terdapat beberapa informasi mengenai gambar awal yang ditampilkan, seperti lokasi gambar pada komput er, nama gambar, dan ukuran gambar. Berikut ini adalah gambar tampilan halaman pesan hasil ekstraksi.
Gambar 4.4 Tampilan Halaman Ekstraksi Pesan
4.2 Metode Enhanced LSB
Metode steganalisis Enhanced LSB yang digunakan dalam aplikasi ini akan diperlihatkan dalam potongan program berikut.
public void EnhancedLSB() throws IOException { Bitmap bmpimg = new Bitmap();
private int cekLSB(int aData) { if (aData % 2 == 0)
Pada potongan program di atas, terdapat 2 buah fungsi utama yang digunakan pada metode steganalisis Enhanced LSB, yaitu metode EnhancedLSB() dan cekLSB(int). Metode EnhancedLSB() membuat sebuah objek dari kelas Bitmap untuk
mendapatkan informasi bit-bit pixel data bitmap dari gambar yang telah dipilih oleh pengguna. Kemudian, setiap byte pixel data bitmap akan dicek apakah LSB-nya bernilai 1 atau 0 dengan menggunakan metode cekLSB(int). Metode cekLSB(int) menerima masukan berupa int dan mengembalikan nilai int 0 atau 255 sebagai nilai
byte baru untuk mengubah byte pixel masukan.
4.3 Pengujian Sistem
4.3.1 Proses steganografi
Pengujian sistem pada proses steganografi mengacu pada metode penyisipan pesan LSB. Pengujian sistem untuk proses steganografi akan dimulai dari dipilihnya halaman Steganografi pada menubar aplikasi hingga pesan rahasia berhasil disisipkan dan gambar yang mengandung pesan rahasia ditampilkan.
4.3.1.1. Halaman steganografi
Pengguna harus mengakses halaman Steganografi terlebih dahulu untuk dapat melakukan penyisipan pesan ke dalam gambar. Tampilan halaman steganografi dapat dilihat pada Gambar 4.2.
4.3.1.2 Pilih gambar
Gambar 4.5 Pop-up Window Pilih Gambar pada Halaman Steganografi
Gambar 4.6 Gambar yang Telah Dipilih Ditampilkan
terlihat informasi mengenai lokasi penyimpanan gambar Color.bmp. Gambar
Color.bmp belum disisipi pesan rahasia. Berikut ini adalah gambar Color.bmp yang berukuran 128 KB.
Gambar 4.7 Color.bmp
4.3.1.3 Tulis pesan
Pesan yang akan disisipkan ke dalam gambar dituliskan pada bagian textarea Pesan yang Akan Disisipkan.
Gambar 4.8 Pesan yang Akan Disisipkan
4.3.1.4 Sisip
Pesan akan disisipkan saat pengguna mengeksekusi tombol Sisip. Kemudian hasil gambar hasil penyisipan pesan akan ditampilkan pada scrollpane Gambar dengan Pesan Tersembunyi.
Gambar 4.9 Gambar yang Telah Disisipi Pesan
Gambar yang berada pada scrollpane bagian bawah pada Gambar 4.9 di atas merupakan gambar hasil steganografi yang telah berisi pesan tersembunyi. Pada Gambar 4.9 di atas juga terlihat informasi mengenai penyisipan pesan yang ditampilkan pada textarea Informasi Penyisipan Pesan. Berikut ini gambar Color-embed.bmp hasil steganografi.
Jika pengguna mengeksekusi tombol Sisip dan belum memilih gambar yang
akan disisipi pesan, maka akan tampil dialogue box seperti pada gambar berikut.
Gambar 4.11 Dialogue Box Peringatan untuk Memilih Gambar Bitmap
Jika pengguna mengeksekusi tombol Sisip dan belum memilih gambar yang akan disisipi pesan, maka akan tampil dialogue box seperti pada gambar berikut.
Gambar 4.12 Dialogue Box Peringatan untuk Menuliskan Pesan Rahasia
4.3.1.5 Hasil steganografi
Hasil steganografi berupa gambar bitmap yang telah disisipi pesan dengan metode LSB. Setiap bit pesan telah disisipkan ke LSB byte pixel data pada gambar tersebut. Berikut ini hasil steganografi jika dibandingkan dengan gambar awal.
4.3.1.5.1 Gambar hasil steganografi
Gambar hasil steganografi tidak memperlihatkan perubahan yang signifikan walaupun
Gambar 4.13 Color.bmp (Atas) dan Color-embed.bmp (Bawah)
4.3.1.5.2 Bit-bit hasil steganografi
Perubahan yang terjadi pada gambar hasil steganografi tidak dapat dilihat begitu saja oleh mata. Oleh karena itu, pembuktian perubahan byte gambar hasil steganografi dilakukan dengan menggunakan suatu aplikasi tambahan. Aplikasi Fhred akan membaca file gambar dan menampilkan byte-byte gambar dalam bentuk heksadesimal. Untuk memudahkan pembuktian, maka gambar bitmap yang digunakan berukuran 3x3
pixel. Berikut ini gambar abc.bmp dan gambar abc-embed.bmp.
Gambar 4.14 Abc.bmp (Kiri) dan abc-embed.bmp (Kanan)
Informasi file header bitmap terletak pada 14 byte pertama (0x0 hingga 0xE),
kemudian informasi info header bitmap terletak pada 40 byte selanjutnya (0xF hingga 0x53). Pixel data bitmap dimulai dari byte ke-55 (0x54) hingga akhir file bitmap.
Byte-byte pixel data gambar bitmap abc.bmp dan abc-embed.bmp tersebut dapat
Gambar 4.15 Byte-Byte File Gambar abc.bmp dalam Heksadesimal
Gambar 4.16 Byte-Byte File Gambar abc-embed.bmp dalam Heksadesimal
Pada Gambar 4.15 dan Gambar 4.16, byte-byte yang diwarnai kuning merupakan byte-byte pixel data sebelum dan sesudah disisipi pesan. Terlihat perubahan nilai byte-byte pixel data tersebut sesuai dengan bit-bit pesan yang disisipkan. Berikut ini perubahan byte-byte pixel data akibat penyisipan bit-bit pesan
ke dalam LSB byte-byte pixel data.
Gambar 4.17 Perubahan Byte-Byte Pixel Data Akibat Penyisipan Pesan
4.3.2 Proses steganalisis
Pengujian sistem pada proses steganalisis mengacu pada metode steganalisis
dimulai dari dipilihnya halaman Steganalisis pada menubar aplikasi hingga gambar
hasil steganalisis ditampilkan.
4.3.2.1. Halaman steganalisis
Pengguna harus mengakses halaman Steganalisis terlebih dahulu untuk dapat melakukan steganalisis terhadap gambar. Tampilan halaman steganalisis dapat dilihat pada Gambar 4.3.
4.3.2.2 Pilih gambar
Gambar yang akan dianalisis dapat dipilih melalui tombol Pilih Gambar. Saat tombol Pilih Gambar dieksekusi, maka akan muncul pop-up window untuk mengakses lokasi gambar disimpan. Kemudian gambar yang telah ditentukan akan ditampilkan pada
scrollpane Gambar Awal. Lokasi, nama, dan ukuran gambar tersebut juga akan
ditampilkan.
Gambar 4.19 Gambar yang Telah Dipilih Ditampilkan
Pada Gambar 4.19 di atas, gambar yang ditampilkan pada scrollpane Gambar Awal merupakan gambar bitmap Color-embed.bmp. Selain itu, pada Gambar 4.19 diatas, juga terlihat informasi mengenai lokasi, nama, dan ukuran gambar gambar Color-embed.bmp. Gambar Color-embed.bmp telah berisi pesan rahasia. Gambar Color-embed.bmp dapat dilihat pada Gambar 4.10.
4.3.2.3 Analisis
Gambar 4.20 Gambar Hasil Steganalisis Ditampilkan
Gambar yang terdapat pada scrollpane Gambar Hasil Steganalisis pada Gambar 4.20 di atas merupakan hasil steganalisis dari gambar Color-embed.bmp
(Color-embed.bmp-analysis.bmp). Berikut ini gambar Color-embed.bmp-analysis.bmp.
Gambar 4.21 Color-embed.bmp-analysis.bmp
Jika pengguna mengeksekusi tombol Analisis dan belum memilih gambar yang akan dianalisis, maka akan tampil dialogue box seperti pada gambar berikut.
4.3.2.4 Hasil steganalisis
Hasil steganalisis berupa gambar bitmap yang bit-bit pixel datanya telah mengalami perubahan sesuai dengan metode Enhanced LSB yang digunakan. Setiap byte pixel data gambar bitmap hasil steganalisis berubah nilainya menjadi 0 atau 255. Berikut ini hasil steganalisis jika dibandingkan dengan gambar awal.
4.3.2.4.1 Gambar hasil steganalisis
Gambar hasil steganalisis akan memperlihatkan perubahan terhadap gambar. Jika gambar yang dianalisis tidak mengandung pesan tersembunyi, maka gambar hasil steganalisis akan terlihat seperti gambar awal (tetap menggambarkan gambar tersebut). Namun, jika gambar yang dianalisis mengandung pesan tersembunyi, maka akan terdapat noise (keacakan) pada gambar hasil steganalisis. Berikut ini contoh steganalisis pada gambar Color.bmp yang tidak mengandung pesan rahasia dan gambar Color-embed.bmp yang mengandung pesan rahasia.
Gambar 4.23 Color.bmp (Atas) dan Color.bmp-analysis.bmp (Bawah)
Gambar 4.24 Color-embed.bmp (Atas) dan Color-embed.bmp-analysis.bmp (Bawah)