PERANCANGAN PERANGKAT LUNAK STEGANOGRAFI
AUDIO MP3 PADA PENGAMANAN PESAN DENGAN
ALGORITMA LEAST SIGNIFICANT BIT (LSB)
DENGAN MODIFIKASI JARAK SISIP
SKRIPSI
INDAH WIKE DIANTY
061401010
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER & TEKNOLOGI INFORMASI
UNIVERSITAS SUMATERA UTARA
PERANCANGAN PERANGKAT LUNAK STEGANOGRAFI AUDIO MP3 PADA PENGAMANAN PESAN DENGAN ALGORITMA LEAST SIGNIFICANT BIT
(LSB) DENGAN MODIFIKASI JARAK SISIP
SKRIPSI
Diajukan untuk melengkapi tugas guna memenuhi syarat mencapai gelar Sarjana Komputer
INDAH WIKE DIANTY 061401010
PROGRAM STUDI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER & TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
PERSETUJUAN
Judul : PERANCANGAN PERANGKAT LUNAK
STEGANOGRAFI AUDIO MP3 PADA PENGAMANAN PESAN DENGAN ALGORITMA LEAST SIGNIFICANT BIT (LSB) DENGAN MODIFIKASI JARAK SISIP
Kategori : SKRIPSI
Nama : INDAH WIKE DIANTY
Nomor Induk Mahasiswa : 061401010
Program Studi : SARJANA (S1) ILMU KOMPUTER
Fakultas : ILMU KOMPUTER & TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, 21 Agustus 2013
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
M. Andri B, ST, McompSc, MEM Syahril Efendi, S.Si, MIT NIP. 197510082008011001 NIP. 196711101996021001
Disetujui oleh
Program Studi S1 Ilmu Komputer Ketua,
PERNYATAAN
PERANCANGAN PERANGKAT LUNAK STEGANOGRAFI AUDIO MP3 PADA PENGAMANAN PESAN DENGAN ALGORITMA LEAST SIGNIFICANT BIT
(LSB) DENGAN MODIFIKASI JARAK SISIP
SKRIPSI
Saya menyatakan bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 21 Agustus 2013
PENGHARGAAN
Alhamdulillahirobbil’alamin penulis ucapkan kepada Sang Khaliq Allah SWT yang telah melimpahkan rahmat dan karunia-Nya sehingga skripsi ini berhasil diselesaikan dalam waktu yang telah ditetapkan.
Skripsi ini merupakan salah satu syarat yang wajib diselesaikan guna meraih gelar Sarjana Komputer pada program studi S1 Ilmu Komputer Universitas Sumatera Utara. Adapun judul yang diangkat penulis dalam skripsi ini adalah Perancangan Perangkat Lunak Steganografi Audio MP3 Pada Pengamanan Pesan Dengan Algoritma Least Significant Bit (LSB) Dengan Modifikasi Jarak Sisip. Tidak dapat dipungkiri bahwa dalam penyelesaian skripsi ini tidak luput dari campur tangan banyak pihak yang telah memberikan bantuan dan motivasi bagi penulis. Maka, dalam kesempatan ini, penulis mengucapkan terima kasih kepada:
1. Rektor Universitas Sumatera Utara, Bapak Prof. Dr. dr. Syahril Pasaribu, D.T.M.&H, M.Sc. (C.T.M), Sp.A.(K.)
2. Dekan Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara, Bapak Prof. Dr. Muhammad Zarlis.
3. Ketua Program Studi S1 Ilmu Komputer, Bapak Dr. Poltak Sihombing, M.Kom dan juga selaku Dosen Penguji I yang telah memberikan kritikan, saran, dan masukan kepada saya untuk menyelesaikan skripsi ini.
4. Sekretaris Program Studi S1 Ilmu Komputer, Ibu Maya Silvi Lydia, B.Sc, M.Sc.
5. Bapak Syahril Efendi, S.Si, MIT dan Bapak Mohammad Andri Budiman, ST, MCompSc, MEM selaku Dosen Pembimbing I dan Dosen Pembimbing II yang telah memberikan bimbingan, saran dan penuh kepercayaan kepada penulis untuk menyelesaikan skripsi ini.
6. Ibu Dian Rachmawati, S.Si, M.Kom selaku Dosen Penguji II yang telah memberikan kritikan, saran dan masukan kepada saya untuk menyempurnakan skripsi ini.
7. Keluarga tercinta, Ayahanda Suyadi dan Ibunda Darma Wati beserta kedua adikku Imam Andrio dan Intan Nabila yang selalu memberikan doa, dukungan, perhatian, kasih sayang yang tulus, pengorbanan yang tidak ternilai harganya serta dukungan moril maupun materil.
9. Teman-teman seperjuangan, mahasiswa S1 Ilmu Komputer stambuk 2006 yang telah banyak berbagi ilmu, memberikan bantuan, saran, kritikan, semangat, inspirasi, dukungan serta mewarnai kenangan selama masa kuliah yang tak akan terlupakan bagi penulis.
10.Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu penyelesaian skripsi ini. Semoga Allah SWT memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan, perhatian serta kerja samanya kepada penulis dalam menyelesaikan tugas akhir ini.
Penulis menyadari bahwa dalam penyelesaian skripsi ini masih jauh dari sempurna. Untuk itu penulis sangat mengharapkan kritik dan saran yang membangun guna penyempurnaan di masa mendatang.
Akhirnya penulis berharap semoga skripsi ini dapat bermanfaat bagi pribadi penulis, keluarga, masyarakat, organisasi dan negara.
Medan, 21 Agustus 2013
ABSTRAK
Pengamanan data rahasia pada media digital membutuhkan dua properti yaitu wadah penampung dan data rahasia yang akan disembunyikan. Pada penelitian ini steganografi digital menggunakan wadah penampung berupa suara (audio) sedangkan data rahasia yang disembunyikan berupa teks. Algoritma yang digunakan dalam merancang perangkat lunak ini adalah algoritma Least Significant Bit (LSB) dengan modifikasi jarak sisip. Algoritma LSB dengan modifikasi jarak sisip berfungsi untuk memperkuat teknik penyembunyian data dimana bit-bit data rahasia akan mengganti byte-byte tertentu pada media digital dalam jarak yang sudah ditentukan. Data rahasia yang akan disembunyikan akan menggantikan bit terakhir dari data media digital, maka byte yang digantikan dari data audio dipilih setiap jarak tertentu. Hasil dari penelitian ini menunjukkan bahwa waktu rata-rata yang diperlukan untuk proses penyisipan adalah sebesar 1,03 detik, sedangkan waktu rata-rata yang diperlukan untuk proses ekstraksi adalah sebesar 0,01 detik.
DESIGN SOFTWARE OF STEGANOGRAPHY WITH SECURED MESSAGE ON AUDIO MP3 USING LEAST SIGNIFICANT BIT ALGORITHM (LSB)
WITH MODIFICATION OF DISTANCE INSERTION
ABSTRACT
Securing confidential data on digital media requires two properties that are container vessel and the confidential data to be hidden. In this research, digital steganography uses the container vessel in the form of sound (audio) and the confidential data in the form of text. The algorithm used in designing this software is Least Significant Bit (LSB) with modification of distance insertion. Least Significant Bit algorithm with modification of distance insertion serves to strengthen the hiding data technique where the confidential data bits will replace certain bytes of digital media within a specified distance. The confidential data which will be hidden will replace the last data bit of digital media, the byte that will be replaced from audio data is chose within certain leap. The result from this experiment shows that the average time for insertion process is about 1,03 seconds, while the average time for extraction process is about 0,01 seconds.
DAFTAR ISI
1.2 Perumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 3
1.5 Manfaat Penelitian 3
1.6 Metode Penelitian 3
1.7 Sistematika Penulisan 4
Bab 2 Tinjauan Teori 6
2.1. Steganografi 6
2.1.1 Proses Steganografi 7
2.1.2 Taksonomi Steganografi 11
2.2 Media Penampung Pesan 12
2.3 File MP3 13
2.3.1 Struktur Data pada File MP3 15
2.4 Algoritma Steganografi pada Media Audio 17 2.4.1 Metode Steganografi pada Media Audio 17 2.4.2 Algoritma Least Significant Bit (LSB) 19 2.4.3 Algoritma Least Significant Bit dengan Modifikasi Jarak Sisip 20
Bab 3 Analisis dan Perancangan 23
3.1 Analisis 23
3.1.1 Pembacaan File Audio 24
3.1.2 Penyisipan File MP3 25
3.1.3 Ekstraksi Pesan Tersisip 28
3.2 Perancangan Sistem 28
3.2.1 Flowchart Penyisipan LSB 29
3.2.2 Flowchart Ekstraksi LSB 30
3.2.3 Flowchart Daftar Hasil Pengujian 31
3.2.4 Use Case Diagram 31
3.2.4.1 Use Case Penyisipan LSB 33
3.2.4.3 Use Case Input Jumlah Lompatan dan Teks Pesan 34 3.2.4.4 Use Case Proses Penyisipan 35
3.2.4.5 Use Case Ekstraksi 36
3.2.4.6 Use Case Load Stego Audio 36
3.2.4.7 Use Case Input Jumlah Lompatan (Kata Kunci) 37
3.2.4.8 Use Case Proses Ekstraksi 38
3.2.4.9 Use Case Proses Melihat Daftar Hasil Pengujian 38 3.2.4.10 Use Case Proses Menghapus Daftar Hasil Pengujian 39
3.2.5 Activity Diagram 40
3.2.5.1 Activity Diagram Proses Penyisipan Pesan Teks
ke dalam Cover Audio 40
3.2.5.2 Activity Diagram Proses Ekstraksi Pesan Teks
dari Stego Audio 42
3.2.5.3 Activity Diagram Proses Melihat Daftar Hasil
Pengujian 43
3.2.5.4 Activity Diagram Proses Menghapus Daftar Hasil
Pengujian 43
3.2.6 Perancangan Antarmuka (Interface) 44
3.2.6.1 Rancangan Menu Utama 44
3.2.6.2 Rancangan Steganografi 45
3.2.6.3 Rancangan Laporan Hasil Pengujian 47
Bab 4 Implementasi dan Pengujian Sistem 48
4.1 Halaman Menu Utama 48
4.2 Halaman Steganografi LSB 49
4.3 Halaman Ekstraksi 53
4.4 Halaman Laporan Hasil Pengujian 55
4.4.1 Halaman Daftar Hasil Pengujian Program 56 4.4.2 Halaman Penghapusan Hasil Pengujian 57
Bab 5 Kesimpulan dan Saran 58
5.1. Kesimpulan 58
5.2. Saran 58
Daftar Pustaka 60
Lampiran A-1
DAFTAR TABEL
Tabel Keterangan Halaman
3.1 3.2 3.3 3.4 3.5 3.6 3.7 3.8 3.9 3.10
Spesifikasi Use Case Penyisipan LSB Spesifikasi Use Case Load Audio
Spesifikasi Use Case Input Jumlah Lompatan dan Teks Pesan Spesifikasi Use Case Proses Penyisipan
Spesifikasi Use Case Ekstraksi
Spesifikasi Use Case Load Stego Audio
Spesifikasi Use Case Input Jumlah Lompatan (Kata Kunci) Spesifikasi Use Case Proses Ekstraksi
Spesifikasi Use Case Proses Melihat Daftar Hasil Pengujian Spesifikasi Use Case Proses Menghapus Daftar Hasil Pengujian
DAFTAR GAMBAR
Gambar Keterangan Halaman
2.1 Struktur di dalam File MP3 Frame MP3
MP3 Header
Data File MP3 dalam Hexa Data Penyisip Bit-Bit Teks ”BU” Data Penyisip Bit-Bit Teks ”BU” Data File Audio MP3
Data Penyisip berupa Bit-Bit Teks “BU” Hasil Penyisipan LSB
Flowchart Penyisipan dengan LSB Flowchart Ekstraksi LSB
Flowchart Daftar Hasil Pengujian Flowchart Daftar Hasil Pengujian
Activity Diagram Proses Penyisipan Pesan Teks ke dalam Cover Audio
Activity Diagram Proses Ekstrasi Pesan Teks dari Stego Audio Activity Diagram Proses Melihat Daftar Hasil Pengujian Activity Diagram Proses Menghapus Daftar Hasil Pengujian Rancangan Menu Utama
Perancangan Steganografi LSB Rancangan Laporan Hasil Pengujian Halaman Menu Utama
Halaman Menu File
Halaman Steganografi LSB
Tampilan Kotak Dialog Pembukaan File MP3 Hasil Pembukaan File MP3
Tampilan Pengisian Pesan Teks Halaman Pesan Hasil Penyisipan Tampilan Hasil Penyisipan Tampilan Proses Penyisipan
Tampilan Hasil Pembukaan File Stego Audio
Tampilan Pengisian Jumlah Lompatan sebagai Kata Kunci Halaman Pesan Proses Ekstraksi
Tampilan Hasil Ekstraksi Tampilan Proses Ekstraksi
Tampilan Pesan Kesalahan pada Pengisian Jumlah Lompatan Halaman Menu Laporan Hasil Pengujian
Tampilan Hasil Pengujian Program Tampilan Hapus Hasil Pengujian
ABSTRAK
Pengamanan data rahasia pada media digital membutuhkan dua properti yaitu wadah penampung dan data rahasia yang akan disembunyikan. Pada penelitian ini steganografi digital menggunakan wadah penampung berupa suara (audio) sedangkan data rahasia yang disembunyikan berupa teks. Algoritma yang digunakan dalam merancang perangkat lunak ini adalah algoritma Least Significant Bit (LSB) dengan modifikasi jarak sisip. Algoritma LSB dengan modifikasi jarak sisip berfungsi untuk memperkuat teknik penyembunyian data dimana bit-bit data rahasia akan mengganti byte-byte tertentu pada media digital dalam jarak yang sudah ditentukan. Data rahasia yang akan disembunyikan akan menggantikan bit terakhir dari data media digital, maka byte yang digantikan dari data audio dipilih setiap jarak tertentu. Hasil dari penelitian ini menunjukkan bahwa waktu rata-rata yang diperlukan untuk proses penyisipan adalah sebesar 1,03 detik, sedangkan waktu rata-rata yang diperlukan untuk proses ekstraksi adalah sebesar 0,01 detik.
DESIGN SOFTWARE OF STEGANOGRAPHY WITH SECURED MESSAGE ON AUDIO MP3 USING LEAST SIGNIFICANT BIT ALGORITHM (LSB)
WITH MODIFICATION OF DISTANCE INSERTION
ABSTRACT
Securing confidential data on digital media requires two properties that are container vessel and the confidential data to be hidden. In this research, digital steganography uses the container vessel in the form of sound (audio) and the confidential data in the form of text. The algorithm used in designing this software is Least Significant Bit (LSB) with modification of distance insertion. Least Significant Bit algorithm with modification of distance insertion serves to strengthen the hiding data technique where the confidential data bits will replace certain bytes of digital media within a specified distance. The confidential data which will be hidden will replace the last data bit of digital media, the byte that will be replaced from audio data is chose within certain leap. The result from this experiment shows that the average time for insertion process is about 1,03 seconds, while the average time for extraction process is about 0,01 seconds.
BAB 1
PENDAHULUAN
1.1Latar Belakang
Jaringan komputer dan internet telah mengalami perkembangan pesat. Teknologi ini
mampu menghubungkan hampir semua komputer yang ada di dunia, sehingga kita
bisa saling berkomunikasi dan saling bertukar informasi kepada pihak lain. Bentuk
informasi yang dapat ditukar bermacam-macam jenis yaitu berupa teks, gambar, video
dan audio. Perkembangan tersebut turut mempengaruhi cara berkomunikasi. Dengan
berkembangnya jaringan tersebut maka semakin berkembang pula kejahatan sistem
informasi. Dengan berbagai teknik, banyak yang mencoba untuk mengakses informasi
yang bukan haknya.
Berbagai macam teknik telah digunakan untuk melindungi informasi yang
dirahasiakan dari orang yang tidak berhak, salah satunya adalah teknik steganografi.
Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia (hiding message) sedemikian sehingga keberadaan (eksistensi) pesan tidak terdeteksi oleh indera
manusia. Kata steganografi berasal dari bahasa Yunani yang berarti “tulisan
tersembunyi” (covered writing). Steganografi membutuhkan dua properti wadah
penampung dan data rahasia yang akan disembunyikan. Steganografi digital
menggunakan media digital sebagai wadah penampung, misalnya citra, suara (audio),
teks, dan video. Data rahasia yang disembunyikan juga dapat berupa citra, suara, teks,
atau video. Jika pada kriptografi, data yang telah disandikan (ciphertext) tetap
tersedia, maka dengan steganografi ciphertext dapat disembunyikan sehingga pihak
ketiga tidak mengetahui keberadaannya.
Dalam perancangan ini algoritma yang akan digunakan dalam merancang
perangkat lunak adalah algoritma Least Significant Bit (LSB) dengan modifikasi jarak
sisip. Dimana cara kerja dari algoritma ini hampir sama dengan algoritma least
pesan ke dalam audio, maka audio dan pesan penyisip harus diubah dahulu menjadi
biner. Pengubahan audio menjadi biner dimaksudkan untuk mendapatkan satu nilai
pada satu bit data, dimana satu bit akan digantikan dengan satu bit dari delapan bit
satu karakter pesan penyisip. Penyisipan pada algoritma Least Significant Bit ini
dimodifikasi dengan cara bit-bit pesan yang merupakan data rahasia akan mengganti
byte-byte tertentu dengan memasukkan jarak sisip yang sudah ditentukan.
Atas dasar uraian diatas, maka pada penulisan skripsi ini akan dilakukan
pembahasan mengenai perancangan perangkat lunak steganografi audio MP3 pada pengamanan pesan dengan algoritma Least Significant Bit (LSB) dengan modifikasi
jarak sisip.
1.2 Perumusan Masalah
Adapun perumusan masalah dalam melakukan penelitian ini diuraikan seperti berikut:
1. Bagaimana melakukan encoding file audio menjadi sample audio.
2. Bagaimana melakukan konversi sample audio dan teks penyisip kedalam bentuk
biner.
3. Bagaimana melakukan penyisipan pesan ke dalam file audio berformat MP3 dengan algoritma Least Significant Bit berdasarkan jarak sisip.
4. Bagaimana menghitung ukuran file audio sebelum dan sesudah penyisipan.
5. Bagaimana mengekstraksi kembali data penyisip.
1.3 Batasan Masalah
Agar pembahasan masalah tidak menyimpang dari tujuan penelitian tersebut, maka
penulis membuat suatu pembatasan masalah sebagai berikut:
1. File audio penampung (host) berformat MP3 dan pesan penyisip berformat teks (txt).
2. File audio hasil penyisipan berformat MP3.
4. Pada batasan jarak lompatan dibatasi hanya sampai 3 digit.
5. Database manajemen sistem yang digunakan yaitu Microsoft Office Access
Database 2007 dan bahasa pemrograman yang akan digunakan adalah Microsoft
Visual Basic 6.0.
1.4 Tujuan Penelitian
Penelitian ini bertujuan untuk mengamankan pesan ke dalam file audio dengan cara menyisipkan pesan teks ke dalam file audio yang berformat MP3.
1.5 Manfaat Penelitian
Manfaat penelitian ini antara lain:
1. Menambah pemahaman tentang pengamanan data bagi penulis dengan teknik
Steganografi Least Significant Bit dengan modifikasi jarak sisip.
2. Manfaat bagi bidang ilmu yaitu penulis melakukan modifikasi terhadap algoritma
LSB sehingga lebih sulit diserang oleh kriptanalis (hacker).
3. Manfaat bagi masyarakat adalah dapat menggunakan perangkat lunak yang
dibangun untuk melakukan pengamanan pesan ke dalam file audio MP3.
1.6Metode Penelitian
Dalam penelitian ini, tahapan-tahapan yang akan dilakukan adalah sebagai berikut:
1. Studi Kepustakaan
Pada tahap ini dengan melakukan studi kepustakaan penulis mempelajari teori dari
berbagai sumber yang relevan baik itu dari buku-buku maupun artikel-artikel serta
journal international yang didapatkan melalui internet.
2. Analisis
Pada tahap ini dilakukan untuk pengolahan data yang ada dan kemudian melakukan
analisis terhadap hasil studi kepustakaan tersebut sehingga dapat dikembangkan
3. Perancangan Perangkat Lunak
Pada tahap ini, digunakan seluruh hasil analisa terhadap studi kepustakaan untuk
merancang perangkat lunak yang akan dihasilkan. Dalam tahapan ini juga
dilakukan perancangan algoritma program serta model antarmuka sistem untuk
memudahkan dalam proses implementasi.
4. Implementasi dan Pengujian Sistem
Pada tahap ini pengujian dilakukan apakah sistem ini dapat berjalan sesuai
dengan yang diharapkan. Jika ditemukan kesalahan maka akan dilakukan
perbaikan sistem.
1.7Sistematika Penulisan
Dalam sistematika penulisan skripsi ini penulis membuat beberapa bagian utama yaitu
sebagai berikut:
BAB 1 PENDAHULUAN
Pada bab ini akan membahas mengenai Latar Belakang, Perumusan
Masalah, Batasan Masalah, Manfaat penelitian, Tujuan Penelitian, Metode
Penelitian serta Sistematika penulisan.
BAB 2 LANDASAN TEORI
Pada bab ini akan membahas tentang teori steganografi, landasan teori
audio MP3, pengolahan sample audio, algoritma Least Significant Bit (LSB), serta bahasa pemrograman yang digunakan.
BAB 3 ANALISIS DAN PERANCANGAN SISTEM
Pada bab ini akan membahas mengenai pembacaan data audio, penyisipan
pesan dengan menggunakan algoritma Least Significant Bit dengan
BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM
Pada bab ini akan membahas tentang implementasi dari hasil analisis dan
perancangan sistem, menguji sistem secara langsung dan menyimpulkan
data yang didapatkan dari hasil pengujian tersebut.
BAB 5 PENUTUP
Pada bab ini merupakan kesimpulan dari semua pembahasan yang ada
dengan saran-saran yang ditujukan bagi para pembaca agar diharapkan
BAB 2
LANDASAN TEORI
2.1Steganografi
Steganografi, berasal dari bahasa Yunani yaitu stegos yang berarti atap atau tertutup
dan graphia yang berarti tulisan, adalah ilmu dan seni menyembunyikan keberadaan
komunikasi [7]. Steganografi merupakan teknik menyembunyikan atau menyamarkan
keberadaan pesan rahasia ke dalam sebuah media yang tidak terlihat mencurigakan,
sehingga orang lain tidak mengetahui keberadaan pesan tersebut. Dua bagian yang
paling penting dibutuhkan dalam steganografi adalah media penampung dan pesan
rahasia yang akan disisipkan.
Teknik steganografi konvensional berusaha merahasiakan komunikasi dengan
cara menyembunyikan pesan ataupun mengkamuflase pesan. Maka sesungguhnya
prinsip dasar dalam steganografi lebih dikonsentrasikan pada kerahasiaan dalam hal
komunikasinya bukan pada datanya [11]. Steganografi berbeda dengan kriptografi.
Kriptografi menyimpan makna sebenarnya dari suatu pesan rahasia, tetapi keberadaan
pesan tersebut diketahui. Sedangkan, steganografi menutupi keberadaan pesan rahasia
tanpa diketahui oleh orang lain.
Steganografi sudah dikenal sejak dahulu untuk memenuhi berbagai kebutuhan.
Kebutuhan ini senantiasa berevolusi dan disempurnakan terus menerus. Pada awalnya
orang hanya berkeinginan untuk menyembunyikan suatu teks dengan dituliskan dalam
kertas dan menyimpannya dengan hati-hati. Penyembunyian pesan ini kemudian
berkembang menjadi pengiriman pesan rahasia. Hal ini terjadi karena adanya
kebutuhan bahwa harus ada pihak lain yang dapat menerima pesan rahasia tersebut
dengan tetap menjaga kerahasiaan pesan dan pesan tersebut dapat disampaikan dengan
selamat sampai ke pihak yang bersangkutan. Hal-hal tersebut kemudian mengarah
pada teknik-teknik steganografi [2].
Dalam catatan yang berkaitan dengan steganografi yang dituliskan oleh
Yunani dipenjarakan oleh Raja Darius di Susa pada abad 5 sebelum masehi. Histaeus
harus mengirim pesan rahasia kepada anak laki-lakinya, Aristagoras, di Militus.
Histaeus menulis pesan dengan cara menggunakan tato pada kulit kepala seorang
budak dan menunggu sampai rambut budak tersebut tumbuh untuk menutupi pesan
rahasia. Histaeus kemudian mengirimkan budak tersebut kepada Aristagoras.
Penggunaan steganografi menjadi daya tarik banyak orang pada peristiwa
penyerangan gedung WTC, 11 September 2001. Pada peristiwa tersebut disebutkan
oleh “pejabat pemerintah dan para ahli dari pemerintahan AS” yang tidak disebutkan
namanya bahwa “para teroris menyembunyikan peta-peta dan foto-foto target
demikian juga dengan perintah untuk aktivitas teroris di ruang chat sport, bulletin boards, dan web site lainnya” [6].
2.1.1 Proses Steganografi
Seiring dengan perkembangan teknologi terutama dalam teknologi komputasi,
steganografi juga merambah pada media digital. Terdapat dua proses utama dalam
steganografi digital yaitu penyisipan (embedding/encoding) pesan dan penguraian
(extraction/decoding) pesan. Gambaran proses steganografi menurut Mohanty (1999)
dapat dilihat pada gambar 2.1.
Pesan yang dimaksud dapat berupa plaintext, chipertext, citra, atau apapun yang dapat ditempelkan ke dalam bit-stream. Embedding merupakan proses menyisipkan pesan rahasia ke dalam suatu media penampung yang disebut dengan
media cover (cover object). Kemudian media cover dan pesan rahasia yang ditempelkan pada media cover tersebut memberikan hasil berupa media stego (stego
object). Extraction adalah proses menguraikan pesan yang tersembunyi yang terdapat dalam media stego.
Suatu kata kunci atau password (stego key) juga dapat digunakan secara
tersembunyi pada saat penyisipan maupun penguraian terhadap suatu pesan rahasia
dalam media penampung. Proses steganografi merupakan proses yang dimulai dari
penyimpanan pada cover object tersebut selanjutnya dinamakan sebagai stego object
dan untuk mendapatkan kembali embedded message dilakukan ekstraksi pada stego
object yang bersangkutan.
Gambar 2.1 Proses Steganografi [5].
Pihak-pihak yang terkait dalam steganografi adalah embeddor, extractor, dan stegoanalyst. Embeddor adalah orang yang melakukan embedding dengan menggunakan aplikasi steganografi, extractor adalah orang yang melakukan extract
stego image dengan menggunakan aplikasi steganografi. Sedangkan stegoanalyst adalah orang yang melakukan steganalisis. Steganalisis merupakan ilmu dan seni
untuk mendeteksi pesan yang tersembunyi dalam steganografi.
Steganografi merupakan suatu seni / pengetahuan / pembelajaran / cara kerja
berkomunikasi dengan menyembunyikan sebuah pesan rahasia dalam suatu informasi
utama [8]. Berikut beberapa hal yang berhubungan dengan steganografi menurut
Mohanty (1999) sesuai dengan gambar 2.1 adalah sebagai berikut:
• Embedded-<datatype>
• Stego-<datatype>
Merupakan hasil keluaran dari proses penyisipan (embedding). Hasil keluaran ini
mengandung pesan rahasia yang tersembunyi didalamnya.
• Cover-<datatype>
Merupakan sebuah inputan dari proses penyisipan yang mana dijadikan sebagai
media tempat penampungan pesan rahasia yang akan disisipkan didalamnya.
• Stegokey
Kata kunci tambahan yang dapat digunakan dalam proses penyisipan dan
ekstraksi. Penggunaan kata kunci dimaksudkan untuk dapat melakukan proses
verifikasi dalam menguji keaslian dari suatu stego-<datatype>.
• Embedding
Merupakan proses penyisipan embedded-<datatype> ke dalam cover-<datatype>
dan menghasilkan stego-<datatype>. Dalam proses embedding, dimasukkan
stegokey agar pada saat proses extracting dapat dilakukan verifikasi dalam menentukan keaslian sebuah stego-<datatype>.
• Extracting
Merupakan proses ekstraksi embedded-<datatype> dari stego-<datatype> dengan
memasukkan stegokey untuk melakukan proses verifikasi dari stego-<datatype> tersebut.
• Stegoanalyst
Merupakan pihak yang ahli dalam melakukan proses steganografi. Seorang
stegoanalyst mampu mendeteksi adanya pesan tersembunyi dengan mempelajari teknik-teknik / memahami seni dari proses steganografi.
• Embeddor/Extractor
Merupakan sebuah entitas atau seseorang yang dapat menyisipkan (embeddor)
ataupun mengekstraksi (extractor) sebuah pesan rahasia dalam suatu media
Berikut ini terdapat beberapa faktor yang harus diperhatikan dalam steganografi yaitu
[9] :
1. Imperceptibility
Penambahan pesan rahasia ke dalam media penampung tidak dapat dideteksi. Jika
media penampung yang digunakan adalah media audio, maka telinga manusia tidak
dapat mendeteksi perubahan yang terjadi pada media penampung tersebut setelah
disisipi pesan rahasia.
2. Fidelity
Penambahan pesan rahasia ke dalam media penampung tidak mengalami
perubahan yang signifikan. Artinya, mutu media penampung setelah ditambahkan
pesan rahasia tidak jauh berbeda dengan mutu media penampung sebelum
ditambahkan pesan.
3. Recovery
Pesan rahasia yang telah disisipkan dalam media penampung harus dapat diekstrak
kembali. Hal ini merupakan syarat mutlak dalam sebuah algoritma steganografi,
karena ada banyak cara penyisipan pesan yang tidak terdeteksi namun sulit dalam
pembacaan kembali pesan yant telah disisip tersebut.
4. Robustness
Pesan yang disembunyikan harus tahan terhadap berbagai operasi manipulasi yang
dilakukan pada media penampung. Bila pada media penampung dilakukan
operasi-operasi manipulasi, maka pesan yang disembunyikan seharusnya tidak mengalami
kerusakan (tetap valid jika diekstraks kembali).
Karakteristik steganografi dikatakan baik jika memiliki imperceptibility tinggi,
2.1.2 Taksonomi Steganografi
Taksonomi dari steganografi dapat dilihat pada gambar 2.2 sebagai berikut:
Gambar 2.2 Taksonomi Steganografi [8].
Penjelasan dari taksonomi steganografi yang ada pada gambar 2.2 adalah
sebagai berikut:
1. Technical Steganography
Teknik ini menggunakan metode sains untuk menyembunyikan pesan. Contohnya
adalah penyembunyian pesan dalam chip mikro.
2. Linguistic Steganography
Teknik ini menyembunyikan pesan dengan cara yang tidak lazim. Teknik ini
terbagi menjadi dua bagian yaitu Semagrams dan Open Codes.
3. Semagrams
Teknik ini menyembunyikan pesan dengan menggunakan simbol atau tanda-tanda.
Contoh penggunaannya adalah dengan mengganti ukuran teks ataupun mengganti
Teknik semagrams terbagi menjadi dua bagian yaitu Visual Semagrams dan Text Semagrams. Visual semagrams menggunakan suatu benda dalam kehidupan sehari-hari yang tidak mencolok untuk menyampaikan pesan. Sebagai contoh penempatan
posisi dari dari suatu benda. Sedangkan pada text semagrams menyembunyikan
pesan dengan memodifikasi tampilan dari suatu teks (carrier), sebagai contoh
melalui perubahan kecil pada ukuran teks, font atau penambahan spasi.
4. Open Codes
Teknik ini menyembunyikan pesan dengan cara yang tidak umum namun tetap
tidak terlihat mencurigakan. Teknik ini terbagi menjadi dua bagian yaitu Jargon
Code dan Covered Ciphers.
5. Covered Ciphers
Teknik ini menyembunyikan pesan dalam media penampung sehingga pesan
kemudian dapat diekstrak dari media penampung tersebut oleh pihak yang
mengetahui bagaimana pesan tersembunyi tersebut disembunyikan.
2.2 Media Penampung Pesan
Media penampung pesan pada steganografi merupakan suatu wadah untuk
menyembunyikan pesan rahasia. Beberapa contoh media penampung pesan rahasia
yang digunakan dalam teknik steganografi adalah sebagai berikut:
1. Teks
Dalam algoritma steganografi yang menggunakan teks sebagai media penampung,
teks yang telah disisipi pesan rahasia tidak boleh terlihat mencurigakan oleh orang
lain yang melihat teks tersebut.
2. Audio
Format ini sering digunakan dikarenakan berkas dengan format tersebut berukuran
relatif besar. Sehingga berkas tersebut dapat menampung pesan rahasia dalam
3. Citra
Format ini juga sering digunakan dikarenakan format tersebut merupakan salah
satu format berkas yang banyak dipertukarkan dalam dunia internet. Alasan lainnya
adalah banyak tersedia algoritma-algoritma steganografi untuk media penampung
yang berupa citra.
4. Video
Format ini merupakan format dengan ukuran berkas yang relatif sangat besar
namun jarang digunakan dikarenakan ukurannya yang terlalu besar sehingga
terkesan kurang praktis dan juga tidak banyak tersedia algoritma yang mendukung
format ini sebagai media penampung.
2.3 File MP3
MPEG (Moving Picture Expert Group)-1 audio layer III atau yang lebih dikenal dengan MP3, adalah salah satu dari pengkodean dalam digital audio dan juga merupakan format kompresi audio yang memiliki sifat “menghilangkan”. Istilah
menghilangkan yang dimaksud adalah kompresi audio ke dalam format MP3
menghilangkan aspek-aspek yang tidak signifikan pada pendengaran manusia untuk
mengurangi besarnya file audio.
Sebagai hasil dari kompresi audio, MP3 dibentuk dengan mengikuti model
psycho-acoustic yang mana menyadari bahwa telinga manusia tidak dapat mendengar semua frekuensi-frekuensi audio. Jarak pendengaran manusia adalah antara 20 Hz sampai 20 kHz. Ketika suara dikompresi ke dalam format MP3, sebuah usaha
dilakukan dengan membuang frekuensi-frekuensi yang tidak dapat didengar oleh
telinga manusia. Oleh karena itu, kompresi audio ke dalam format MP3 bersifat
destruktif (menghancurkan/menghilangkan).
Terdapat beberapa variasi dalam melakukan kompresi audio ke dalam format
MP3. Berikut spesifikasi dari layer 1 sampai layer 3 berdasarkan tingkat kerumitan
1. Layer 1
Layer ini mempunyai tingkat kerumitan terendah dari ke-3 layer. MP3 pada jenis layer 1 paling baik dibentuk pada kompresi 384 kbit/s.
2. Layer 2
Layer ini mempunyai tingkat kerumitan lebih kompleks dibandingkan dengan layer 1. MP3 pada jenis layer 2 paling baik dibentuk pada kompresi 256-384 kbit/s, sangat baik pada 224-256 kbit/s, dan baik pada 192-224 kbit /s.
3. Layer 3
Layer ini mempunyai tingkat kerumitan lebih kompleks dibandingkan dengan layer 2. MP3 pada jenis layer 3 paling baik dibentuk pada 224-320 kbit/s, sangat baik pada 192-224 kbit/s, dan baik pada 128-192 kbit/s.
Kompresi MP3 yang dilakukan seperti yang telah disebutkan diatas, tidak
mempertahankan bentuk asli dari sinyal input. Yang dilakukan dalam proses kompresi
tersebut adalah menghilangkan suara-suara yang keberadaannya kurang/tidak
signifikan bagi sistem pendengaran manusia. Proses yang dilakukan adalah
menggunakan model dari sistem pendengaran manusia dan menentukan bagian yang
terdengar bagi sistem pendengaran manusia. Setelah itu sinyal input yang memiliki
domain waktu dibagi menjadi blok-blok dan ditransformasi menjadi domain frekuensi.
Kemudian model dari sistem pendengaran manusia dibandingkan dengan sinyal input
dan dilakukan proses penyaringan yang menghasilkan sinyal dengan range frekuensi
yang signifikan bagi sistem pendengaran manusia. Proses diatas adalah proses
konvolusi dua sinyal yaitu sinyal input dan sinyal model sistem pendengaran manusia.
Langkah terakhir adalah kuantisasi data, dimana data yang terkumpul setelah
penyaringan akan dikumpulkan menjadi satu keluaran dan dilakukan pengkodean
dengan hasil akhir file dengan format MP3.
Proses pengkompresian audio ke dalam format MP3 dapat menghasilkan
keluaran yang hampir setara dengan audio aslinya disebabkan oleh kelemahan dari
sistem pendengaran manusia yang dapat dieksploitasi. Berikut adalah beberapa
kelemahan dari sistem pendengaran manusia yang digunakan dalam pemodelan:
1. Terdapat beberapa suara yang tidak dapat didengar oleh manusia (diluar
2. Terdapat beberapa suara yang dapat terdengar lebih baik bagi pendengaran
manusia dibandingkan suara lainnya.
3. Bila terdapat dua suara yang dikeluarkan secara simultan, maka pendengaran
manusia akan mendengar yang lebih keras sedangkan yang lebih pelan akan tidak
terdengar.
Pada perbandingan kualitas suara dari beberapa format kompresi audio hasil
yang dihasilkan bervariasi berdasarkan bitrate yang berbeda-beda dan perbandingan berdasarkan codec yang digunakan. Pada 128 kbit/s, LAME MP3 unggul sedikit dibandingkan dengan Ogg Vorbis, AAC, MPC and WMA Pro. Kemudian pada 64
kbit/s, AAC-HE dan mp3pro menjadi yang teratas diantara codec lainnya. Sedangkan,
untuk yang diatas 128 kbit/s tidak terdengar perbedaan yang signifikan. Pada
umumnya format MP3 sekarang menggunakan 128 kbit/s dan 192 kbit/s sehingga
hasil yang dihasilkan cukup baik [1].
2.3.1 Struktur Data pada File MP3
Struktur di dalam sebuah file MP3 memiliki struktur seperti pada Gambar 2.3.
Gambar 2.3 Struktur di dalam file MP3
Sebuah file MP3 merupakan kumpulan frame MP3. Masing-masing frame terdiri dari MP3 header dan MP3 data seperti yang terlihat pada gambar 2.4. Urutan
Dalam MP3 header terdapat sebuah sync word yang mana digunakan untuk
mengidentifikasi permulaan dari sebuah frame yang sah. MP3 Header berukuran 4
bytes di mana 2 byte awal selalu diawali dengan: FF FB dan 2 bytes lainnya berisi nilai sesuai dengan informasi bit rate, frequency, dan lain-lain. Dua bytes pertama (FF
dan FB) menunjukkan bahwa file tersebut merupakan file MPEG dengan Audio Layer
3 yang sering disebut dengan MP3. MP3 Header selalu diikuti dengan 32 bytes yang
biasanya disebut sebagai side info.
Gambar 2.4 Frame MP3
Detil dari MP3 Header dapat dilihat pada gambar 2.5 berikut ini.
Gambar 2.5 MP3 Header
Data file audio MP3 hasil pembacaan terdiri dari pasangan bilangan hexadecimal
FF FB A0 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 11 c0 1a 0d 00 7f 11 00 22 07 3d 3d 0 3d 0 2 9a 2a 4f 3e
3d 00 10 10 10 03 3d 10 10 2 f 10 10 12 00 12 10 25 23 13 00 04 11 23 00 00 12 11
32 2a 2a 9f 25 10 -10 02 12 10 53 13 00 a6 11 12 23 00 0f 10 10 10 12 10 5d 23 13
70 11 26 23 00 01 13 9a 2a 2f 10 10 10 12 10 53 90 56 11 23 00 01 13 0e 22 52 9a 2a
10 3d 10 02 2f 10 10 10 12 -10 11 33 13 00 07 3d 10 02 3f 10 10 12 12 53 13
Gambar 2.6 Data File MP3 Dalam Hexa.
Side information mempunyai total panjang tidak lebih dari 32 bytes dalam setiap frame. Adapun informasi yang terdapat pada side information antara lain adalah
mengenai main data end, private bits, scale factor selection, panjang main data, big values, global gain, scale factor compress, blocksplit flag, block type, switch point, table select, subblock gain, region address, preflag, dan scalefactor scale.
2.4 Algoritma Steganografi pada Media Audio
2.4.1 Metode Steganografi pada Media Audio
Terdapat beberapa metode dalam menerapkan proses steganografi pada media audio.
Metode-metode tersebut memanfaatkan kelemahan pada sistem pendengaran manusia.
Berikut metode-metode yang sering digunakan dalam steganografi pada media audio,
yaitu:
1. Low bit encoding
Metode ini menggantikan bit-bit data yang mempunyai pengaruh paling kecil
terhadap sinyal audio dengan bit-bit data yang akan disembunyikan. Ketika bit
tersebut diubah, nilai perubahannya hanya berkisar 1 bit dan tidak memberikan
perubahan yang berarti terhadap keseluruhan data.
2. Echo data hiding
Metode ini menggunakan echo (gema) pada data audio untuk menyembunyikan
echo pada sinyal audio yang didengarkan. Terdapat 3 parameter yang digunakan dalam metode ini yaitu amplitudo, decay rate, dan offset.
Pada sinyal audio, gema biasanya muncul beberapa saat setelah bunyi asli keluar.
Jika delay waktu antara bunyi asli dengan gema diperkecil, maka suara gema tersebut akan lebih sulit dipersepsikan oleh telinga manusia. Selain itu, gema juga
dapat dibuat menjadi inaudible (tak terdengar) dengan memanfaatkan variasi dari
parameter-parameter dalam metode tersebut. Pengaturan dari parameter-parameter
dalam metode ini sehingga gema menjadi tidak terdengar dapat dilakukan dengan
beberapa cara sebagai berikut:
1. Mengatur offset atau delay dengan nilai yang relatif pendek sehingga gema yang terdengar tidak dapat dipersepsi oleh telinga manusia.
2. Mengatur delay paling tinggi sebesar 1 ms.
3. Mengatur nilai inisialisasi amplitudo dan decay rate dengan nilai di bawah
threshold dari pendengaran manusia, sehingga manusia tidak dapat mendengar gema yang dihasilkan tersebut.
3. Phase coding
Metode ini mensubtitusikan fase dari tiap segmen audio awal dengan fase
referensi yang mempresentasikan pesan yang disembunyikan. Metode ini juga
memanfaatkan kelemahan sistem pendengaran manusia untuk merasakan fase
absolut. Fase dari tiap awal segmen dibuat sedemikian rupa sehingga tiap segmen
masih terdapat hubungan yang berujung pada kualitas suara yang tetap terjaga.
Teknik tersebut tergolong rumit dalam hal realisasi dan implementasi, tetapi dapat
menghasilkan keluaran yang baik.
4. Direct sequence and frequency hopped spread spectrum
Metode ini merupakan metode spread spectrum yang digunakan dalam
telekomunikasi dalam lingkungan ber-noise. Teknik ini bekerja dengan
menyembunyikan sekumpulan data dalam suatu sinyal lain yang area sebarnya
lebih besar. Sebelum suatu file pesan disembunyikan, file tersebut terlebih dahulu
dibagi ke dalam beberapa blok dengan ukuran tertentu. Setiap blok tersebut akan
kerjanya adalah membuat noise dari suatu sinyal dengan menggunakan bantuan
noise generator. Setelah itu, file pesan tersebut disembunyikan pada noise yang telah dibuat dan disebarkan ke berbagai spectrum dengan frekuensi sinyal yang
berbeda-beda.
5. Frequency masking
Metode ini menggunakan kelemahan telinga manusia yang tidak dapat
mendengarkan frekuensi-frekuensi tertentu pada kondisi tertentu.
2.4.2 Algoritma Least Significant Bit (LSB)
Dasar dari algoritma least significant bit (LSB) ini yaitu dengan cara mengganti bit
terakhir dari sample audio dengan pesan yang akan disisipkan. Algoritma LSB
menggunakan metode low bit encoding. Pada saat melakukan penyisipan pesan ke
dalam sample audio, maka sample audio dan pesan penyisip harus diubah menjadi biner terlebih dahulu. Pengubahan sample audio menjadi biner dimaksud untuk
mendapatkan satu bit pada satu sample audio, dimana bit terakhir dari sample biner tersebut akan digantikan dengan satu bit dari bit penyisip.
Sebagai contoh diberikan nilai sample audio 50, 10, 40, 60, 40, 30, 70, 32, 26, 50, 10,
40, 60, 40, 30, 70, 32, 26, 50, 10, 40, 60, 40, 30, 70, 32, 26, 50, 12, 7D, 1E, 52, 1D,
2A, 0D, 12, 00, 11, 2B, 9A, 11, 4C, 2F, 45, 07, 02, 9A, 2A. Pada sample audio diatas
dilakukan konversi ke biner menjadi larik sample audio biner seperti berikut:
00110010, 00001010, 00101000, 00111100, 00101000, 00011110, 01000111,
00100000, 00011010, 00110010, 00001010, 00101000, 00111100, 00101000,
00011110, 01000110, 00100000, 00011010, 00110010, 00001010, 00101000,
00111100, 00101000, 00011110, 01000110, 00100000, 00011010, 00110010,
00010010, 01111101, 00011110, 01010010, 00011101, 00101010, 00001101,
00010010, 00000000, 00010001, 00101011, 10011010, 00010001, 01001100,
00101111, 01000101, 00000111, 00000010, 10011010, 00101010.
Pesan penyisip berupa teks “BU” dalam biner adalah 01000010, 01010101.
dari bit teks “BU”. Dalam bentuk matriks sample audio dapat dilihat seperti pada
Gambar 2.7
B = 01000010
U = 01010101 0 1 0 0 0 0 1 0
00110010
00001011 00101000 00111100
00101000 00011110 01000111 00100000
00011010 00110011 00001010 00101001
00111100 00101001 00011110 01000111
Gambar 2.7 Data dari penyisip bit-bit teks “BU”
Pada gambar diatas nilai sample audio yang berubah dapat dilihat dimana yang
berubah adalah nilai bit yang terakhir.
2.4.3 Algoritma Least Significant Bit dengan Modifikasi Jarak Sisip
Algoritma steganografi pada audio sama saja dengan algoritma steganografi pada image (citra). Algoritma LSB dengan modifikasi jarak sisip berfungsi untuk memodifikasikan teknik penyembunyian data dimana bit-bit data rahasia akan
mengganti byte-byte tertentu pada media digital dalam jarak yang sudah ditentukan. Dimana data rahasia yang akan disembunyikan akan menggantikan bit terakhir dari
data media digital, maka byte yang digantikan dari media digital dipilih setiap
lompatan tertentu, dimana nilai lompatan sudah disepakati antara si pengirim dengan
Contohnya penyisipan pesan “BU” dalam biner ke dalam sample audio adalah sebagai
berikut dengan nilai lompatan 2 :
B = 01000010
U = 01010101 0 0 1 1 0 0 0 0
00110010 00001010 00101000 00111101
00101000 00011110 01000110 00100000
00011010 00110010 00001010 00101000
00111100 00101000 00011110 01000110
00100000 00011010 00110011 00001010
00101000 00111100 00101000 00011110
01000110 00100000 00011010 00110011
00010010 01111101 00011110 01010010
00011101 00101011 00001101 00010010
00000000 00010001 00101011 10011011
00010001 01001100 00101110 01000101
00000111 00000011 10011010 00101010
Gambar 2.8. Data penyisip berupa bit-bit teks “BU”
Setelah penyisipan, bit-bit dari teks “BU” ada terletak di byte ke 1, 4, 7, 10, 13, 16, 19,
22, 25, 28, 31, 34, 37, 40, 43, 46 dari sample audio.
Penggunaan algoritma LSB pada file audio adalah perubahan nilai bit terakhir
dari byte data dengan bit penyisip dimana byte sample yang disisipi adalah berselang
seling dengan lompatan byte tertentu tergantung user yang melakukan penyisipan. Agar proses ekstraksi dapat berhasil, maka nilai lompatan dimasukkan ke dalam kunci
yang digunakan.
Suatu file audio dapat memiliki satu channel (mono) atau dua channel (stereo).
Secara umum, kapasitas satu channel adalah sebesar 1 kbps per kilohertz. Karena
ditampung oleh satu channel adalah 44 kbps per kilohertz. Implementasi low-bit
encoding dilakukan dengan cara yang relatif sama dengan yang dilakukan pada pengerjaan kriptografi. Pertama-tama, file pesan, kunci, dan file audio yang akan
disisipkan pesan diubah ke dalam representasi bit array. Setelah itu, setiap bit di file
pesan dioperasikan dengan bit di file audio dengan memanfaatkan kunci.
Penggunaan kunci dimaksudkan untuk memudahkan penyisipan serta ekstraksi
pesan serta untuk memudahkan komunikasi antar pemberi dan penerima pesan.
Bagian header dari file audio tidak ikut dimodifikasi, sehingga file audio masih tetap
dapat dikenali dan dapat dibuka kembali. Hasil penyisipan pesan menyebabkan
perubahan pada atribut file audio. File audio yang telah disisipi pesan ternyata
memiliki ukuran yang lebih besar daripada ukuran file audio sebelum disisipi pesan.
Hal ini sebenarnya tidak sesuai harapan, karena secara teori, seharusnya ukuran file
sebelum dan sesudah disisipi pesan tetap sama karena isi pesan dapat dikatakan hanya
menggantikan posisi bit-bit yang ada pada file audio.
Namun demikian, berdasarkan fakta yang terjadi di lapangan, berubahnya
ukuran file audio mungkin disebabkan karena banyak bit bernilai 0 yang tergantikan
oleh bit bernilai 1, sehingga perubahan yang terjadi cukup mempengaruhi ukuran file,
yaitu menambah ukuran file sehingga menjadi lebih besar dari sebelumnya. File pesan
yang disisipi ke dalam file audio merupakan file teks yang berukuran 128 byte.
BAB 3
ANALISIS DAN PERANCANGAN SISTEM
3.1Analisis
Analisis sistem adalah sebuah teknik pemecahan masalah yang menguraikan sebuah
sistem menjadi bagian komponen-komponen dengan tujuan mempelajari kinerja dan
interaksi bagian komponen-komponen sistem tersebut.
Pada bab ini perancangan perangkat lunak steganografi audio MP3 menggunakan
algoritma Least Significant Bit (LSB) dengan modifikasi jarak sisip merupakan aplikasi yang dapat melakukan penyisipan dan mengekstraksi pesan teks ke dan dari
dalam file audio MP3 (cover audio). Dalam merancang perangkat lunak ini kita memerlukan beberapa proses tahapan agar perangkat lunak ini dapat bekerja dengan
baik. Berikut ini adalah beberapa tahap-tahap yang akan dilakukan untuk penyisipan
pesan ke dalam file audio adalah sebagai berikut:
1. Input file audio MP3 (cover audio).
2. Input lompatan
3. Input pesan teks
4. Pembacaan header file MP3.
5. Baca sample audio.
6. Hitung nilai biner untuk setiap sample audio.
7. Konversikan pesan teks ke nilai biner.
8. Sisipkan nilai biner pesan ke dalam bit terakhir setiap sample audio sesuai
lompatan.
9. Simpan file audio tersisip (stego audio).
Selanjutnya tahap-tahap yang akan dilakukan untuk ekstraksi pesan dari file
audio adalah sebagai berikut:
1. Input file audio MP3 tersisip (stego audio).
2. Input lompatan
4. Baca sample audio setiap lompatan.
5. Hitung nilai biner untuk setiap sample audio.
6. Baca bit LSB sample audio.
7. Konversikan setiap 8 bit menjadi ASCII sebagai pesan penyisip.
3.1.1 Pembacaan File Audio
Sebelum file audio ini disisipi pesan, terlebih dahulu akan dilakukan pembacaan file audio untuk mendapatkan data berupa header dalam ukuran 4 bytes (32 bit) dalam bentuk pasangan bilangan heksadesimal. File MP3 ini merupakan file stream yang terdiri atas objek-objek kecil yang disebut frame. Setiap frame memiliki frame header
masing-masing, di mana header tersebut merupakan bagian terkecil dari file MP3
yang dapat diinterprestasikan tanpa informasi tambahan lagi. Frame MP3 mengandung layer khusus dengan header yang disempurnakan yang disebut dengan side info, sampel kode dan faktor skala yang terkait. Faktor skala digunakan untuk merekonstruksi multiplier untuk kuantisasi terbalik (inverted quantization) dari sample yang telah terkodekan. Setiap faktor skala disimpan dalam 0-4 bit yang berurutan
File MP3 terdiri dari MP3 header berukuran 4 bytes di mana 2 byte awal selalu diawali dengan: FF FB dan 2 bytes lainnya berisi nilai sesuai dengan informasi
bit rate, frequency, dan lain-lain. Dua bytes pertama (FF dan FB) menunjukkan bahwa file tersebut merupakan file MPEG dengan Audio Layer 3 yang sering disebut dengan
MP3. MP3 Header selalu diikuti dengan 32 bytes yang biasanya disebut sebagai side
info. Dengan kata lain sebelum melakukan penyisipan, terlebih dahulu dilakukan pembacaan 36 bytes untuk menghindari bit pesan penyisipan tersisip di dalam 36 bytes
FF FB A0 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 11 c0 1a 0d 00 7f 11 00 22 07 3d 3d 0 3d 02 9a 2a 4f 3e
3d 00 10 10 10 03 3d 10 10 2 f 10 10 12 00 12 10 25 23 13 00 04 11 23 00 00 12 11
32 2a 2a 9f 25 10 -10 02 12 10 53 13 00 a6 11 12 23 00 0f 10 10 10 12 10 5d 23 13
70 11 26 23 00 01 13 9a 2a 2f 10 10 10 12 10 53 90 56 11 23 00 01 13 0e 22 52 9a 2a
10 3d 10 02 2f 10 10 10 12 -10 11 33 13 00 07 3d 10 02 3f 10 10 12 12 53 13
Gambar 3.1 Data File Audio MP3
3.1.2 Penyisipan File MP3
Penyisipan File MP3 Algoritma Least Significant Bit (LSB) dengan modifikasi jarak
sisip dilakukan dengan cara bit-bit pesan yang merupakan data rahasia akan
mengganti byte-byte tertentu sample audio dengan lompatan yang sudah ditentukan. Pergantian byte-byte tertentu dari sample audio yang dimaksud adalah dengan mengganti bit terakhir dari byte tertentu sample audio. Byte yang digantikan dari media digital adalah byte yang dihitung dari setiap lompatan.
Sebagai contoh penyisipan pesan “BU” dalam biner ke dalam sample audio
pada Gambar 3.1 adalah:
11 0C 1A 0D 00 7F 11 00 22 07 3D 3D 02 9A 2A 5C 3E 2F 9C 45 87 27 E3 8F
1E 2F 00 4B 12 7D 1E 52 1D 2A 0D 12 00 11 2B 9A 11 4C 2F 45 07 02 9A 2A
Data sample audio di atas dikonversikan ke dalam biner menjadi:
11 = 00010001
0C = 00001100
1A = 00011010
0D = 00001101
00 = 00000000
7F = 01111111
11 = 00010001
00 = 00000000
22 = 00100010
3D = 00111101
3D = 00111101
02 = 00000010
9A = 10011010
2A = 00101010
5C = 01011100
3E = 00111110
2F = 00101111
9C = 10011100
45 = 01000101
87 = 10000111
27 = 00100111
3E = 00111110
8F = 10001111
1E = 00011110
2F = 00101111
00 = 00000000
4B = 01001011
12 = 00010010
7D = 01111101
1E = 00011110
52 = 01010010
1D = 00011101
2A = 00101010
0D = 00001101
12 = 00010010
00 = 00000000
11 = 00010001
2B = 00101011
11 = 00010001
4C = 01001100
2F = 00101111
45 = 01000101
07 = 00000111
02 = 00000010
9A = 10011010
2A = 00101010
Data pesan penyisip “BU” dalam biner adalah sebagai berikut:
B = 01000010
U = 01010101
Penyisipan LSB dilakukan dengan nilai lompatan = 2 seperti pada Gambar 3.2.
B = 01000010
U = 01010101 0 0 1 1 0 0 0 0
00010000 00001100 00011010 00001101
00000000 01111111 00010000 00000000
00100010 00000110 00111101 00111101
00000010 10011010 00101010 01011100
00111110 00101111 10011101 01000101
10000111 00100110 00111110 10001111
00011110 00101111 00000000 01001011
00010010 01111101 00011110 01010010
00011101 00101011 00001101 00010010
00000000 00010001 00101011 10011011
00010001 01001100 00101110 01000101
00000111 00000011 10011010 00101010
Gambar 3.2 Data penyisip berupa bit-bit teks “BU”
Setelah penyisipan, bit-bit dari teks “BU” ada terletak di byte ke 1, 4, 7, 10, 13,16,19,
3.1.3 Ekstraksi Pesan Tersisip
Untuk ekstraksi pesan pada file audio stego dilakukan algoritma LSB dengan modifikasi jarak sisip, yaitu membaca setiap bit LSB pada data sample audio yang
terdiri dari 8 bit. Pertama yang perlu dilakukan adalah dengan memasukkan nilai
lompatan yang juga berfungsi sebagai kunci penyisipan. Baca setiap sample audio
dengan memasukkan lompatan. Konversikan sample audio menjadi biner. Ambil bit LSB setiap sample audio. Konversikan setiap 8 bit menjadi ASCII sebagai pesan
penyisip. Dari file hasil penyisipan seperti pada Gambar 3.3 dibawah ini adalah:
00010000 00001100 00011010 00001101
00000000 01111111 00010000 00000000
00100010 00000110 00111101 00111101
00000010 10011010 00101010 01011100
00111110 00101111 10011101 01000101
10000111 00100110 00111110 10001111
00011110 00101111 00000000 01001011
00010010 01111101 00011110 01010010
00011101 00101011 00001101 00010010
00000000 00010001 00101011 10011011
00010001 01001100 00101110 01000101
00000111 00000011 10011010 00101010
Gambar 3.3 Hasil Penyisipan LSB
Hasil ekstraksi adalah bit LSB pada lompatan 2 byte adalah 01000010 dengan kode
ASCII = B dan 01010101 dengan kode ASCII = U
3.2Perancangan Sistem
Pada perancangan sistem dapat dibagi menjadi beberapa bagian yaitu berupa
3.2.1 Flow Chart Penyisipan LSB
Flow chart penyisipan teks dengan algoritma LSB dengan modifikasi jarak sisip dapat dilihat seperti pada Gambar 3.4.
Gambar 3.4 Flow Chart Penyisipan dengan LSB
Pembacaan sample audio
Konversi nilai sample
Biner
Ya Konversi pesan Biner
Start
Input file audio
Input pesan dan lompatan
Baca bit terakhir sample sesuai lompatan
Ganti bit sample audio dengan bit penyisip
Pembacaan header file audio
Data sampel = jumlah bit penyisip
Stop Tidak
3.2.2 Flow Chart Ekstraksi LSB
Flow Chart Ekstraksi LSB adalah proses pengeluaran pesan penyisip dari file audio MP3 dengan menggunakan algoritma LSB dapat dilihat seperti pada Gambar 3.5.
Gambar 3.5 Flow Chart Ekstraksi LSB Tampilkan Pesan
Start
Input Stego Audio
Pembacaan header file stego audio
Baca Bit LSB Pada Sample Stego
Rekonstruksi bit byte
Ya
Data sampel = jumlah bit penyisip
Stop
Tidak
Pembacaan Sample Audio
Konversi Nilai Sample
Biner
3.2.3 Flow Chart Daftar Hasil Pengujian
Flow Chart Daftar Hasil Pengujian adalah proses yang memperlihatkan ataupun menghapus daftar hasil pengujian dari semua hasil penyisipan dan ekstraksi yang
pernah dilakukan oleh sistem dapat dilihat seperti pada Gambar 3.6.
Gambar 3.6 Flow Chart Daftar Hasil Pengujian
3.2.4 Use Case Diagram
Use Case Diagram adalah gambaran dari beberapa atau semua actor, use case dan interaksi diantara komponen-komponen tersebut yang memperkenalkan suatu sistem
yang akan dibangun dan direpresentasikan dengan urutan langkah-langkah yang
sederhana. Use case menjelaskan interaksi yang terjadi antara actor – inisiator dari interaksi sistem itu sendiri. Actor yang dirancang pada sistem ini hanya bertindak sebagai pengguna (user) yang memiliki beberapa aktivitas yang terlihat pada Gambar
3.7.
Stop Tidak
Start
Melihat daftar hasil pengujian?
Ya
Menampilkan daftar hasil pengujian Menghapus daftar
Gambar 3.7 Use Case Diagram Sistem
Pada Gambar 3.7 diatas dijelaskan bahwa use case diagram tersebutmemiliki
satu aktor yaitu user. Dimana pertama kali, user akan melakukan penyisipan file audio
dengan memasukkan pesan teks ke dalam file audio sesuai dengan jumlah lompatan
yang dimasukkan oleh user di mana jumlah lompatan tersebut bertindak juga sebagai
kata kunci untuk melakukan proses ekstraksi terhadap file audio tersebut. Kedua, user
dapat melakukan ekstraksi penyisip dari file audio yang telah disisipi pesan (stego audio) dengan terlebih dahulu memasukkan kata kunci yang sesuai dari stego audio tersebut. Selanjutnya user dapat melihat daftar hasil penyisipan dan ekstraksi dari semua pengujian yang dilakukan oleh sistem. Selain itu, user juga dapat menghapus
daftar hasil pengujian tersebut.
<< include >>
<< uses >>
<< create >>
<< include >>
<< uses >>
<< create >>
User
Penyisipan LSB
Ekstraksi
Load Audio
Input jumlah lompatan dan teks
Proses Penyisipan
Load Stego Audio
Proses Ekstraksi Input jumlah
lompatan (k k i)
Melihat daftar hasil pengujian
3.2.4.1Use Case Penyisipan LSB
Spesifikasi Use Case Penyisipan dapat dilihat pada Tabel 3.1.
Tabel 3.1 Spesifikasi Use Case Penyisipan LSB
Name Penyisipan LSB
Actors User
Description Use case ini mendeskripsikan proses penyisipan LSB Preconditions User memilih menu Steganografi LSB
Post Conditions User dapat melihat hasil Penyisipan LSB
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Steganografi LSB.
2. User memilih tombol Load Audio
3. User memilih file audio
4. User memasukkan jumlah lompatan, pesan teks dan mengeksekusi tombol Sisip.
5. User dapat melihat hasil proses berupa:
a. Ukuran file audio setelah penyisipan b. Lama proses
c. Nilai biner penyisip d. Nilai biner sampel
audio.
e. Nilai biner sampel audio yang telah disisipi bit dari biner penyisip
Sistem menampilkan
halaman Steganografi LSB.
Sistem menampilkan kotak dialog pemilihan file audio.
Sistem menampilkan nama file audio serta ukurannya.
3.2.4.2Use Case Load Audio
Spesifikasi Use Case Load Audio dapat dilihat pada Tabel 3.2.
Tabel 3.2 Spesifikasi Use Case Load Audio
3.2.4.3Use Case Input Jumlah Lompatan dan Teks Pesan
Spesifikasi Use Case Input Jumlah Lompatan dan Teks Pesan dapat dilihat pada Tabel
3.3.
Tabel 3.3 Spesifikasi Use Case Input Jumlah Lompatan dan Teks Pesan
Name Load Audio
Actors User
Description Use case ini mendeskripsikan proses pemanggilan cover Audio
Preconditions User mengakses menu Steganografi LSB
Post Conditions Sistem menampilkan cover audio yang telah dipilih
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Steganografi LSB.
2. User mengeksekusi tombol Load Audio
3. User memilih audio yang akan dijadikan cover audio pada kotak dialog
4. User dapat melihat nama file audio yang telah dipilih sebagai cover
Name Input Jumlah Lompatan dan Teks Pesan
3.2.4.4Use Case Proses Penyisipan
Spesifikasi Use Case Proses Penyisipan dapat dilihat pada Tabel 3.4.
Tabel 3.4 Spesifikasi Use Case Proses Penyisipan
Description Use case ini mendeskripsikan proses pemasukan jumlah lompatan dan teks pesan sebagai penyisip file audio Preconditions User telah mendapatkan file audio yang akan disisipkan
pesan
Post Conditions Sistem mengaktifkan tombol Sisip
Kegiatan User Respon sistem
Success Scenario
1. User memasukkan
jumlah lompatan dan pesan teks.
Sistem mengaktifkan tombol Sisip.
Name Proses Penyisipan
Actors User
Description Use case ini mendeskripsikan proses penyisipan pesan teks ke dalam file audio
Preconditions User telah memasukkan jumlah lompatan dan input teks Post Conditions Sistem menampilkan stego audio hasil penyisipan
Kegiatan User Respon sistem
Success Scenario
1. User memilih tombol
sisip.
2. User dapat melihat hasil proses berupa:
a. Ukuran file audio setelah penyisipan. b. Lama proses.
c. Nilai biner penyisip. d. Nilai biner sampel
audio.
e. Nilai biner sampel audio yang telah disisipi bit dari biner penyisip.
Sistem menyisipkan biner pesan ke dalam cover audio.
3.2.4.5Use Case Ekstraksi
Spesifikasi Use Case Ekstraksi dapat dilihat pada Tabel 3.5.
Tabel 3.5 Spesifikasi Use Case Ekstraksi
Name Ekstraksi
Actors User
Description Use case ini mendeskripsikan proses ekstraksi teks pesan dari dalam file stego audio
Preconditions User memilih menu Steganografi LSB
Post Conditions Sistem menampilkan pesan teks hasil ekstraksi
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu
Steganografi LSB.
2. User mengeksekusi tombol Load Audio.
3. User memilih file stego audio.
4. User memasukkan jumlah lompatan.
5. User dapat melihat: a. Lama proses b. Pesan penyisip.
Sistem menampilkan halaman Steganografi LSB.
Sistem menampilkan kotak dialog pemilihan file audio.
Sistem menampilkan nama file audio serta ukurannya.
Sistem melakukan proses ekstraksi.
3.2.4.6Use Case Load Stego Audio
Spesifikasi Use Case Load Stego Audio dapat dilihat pada Tabel 3.6.
Tabel 3.6 Spesifikasi Use Case Load Stego Audio
3.2.4.7Use Case Input Jumlah Lompatan (Kata Kunci)
Spesifikasi Use Case Input Jumlah Lompatan (Kata Kunci) dapat dilihat pada Tabel
3.3.
Tabel 3.7 Spesifikasi Use Case Input Jumlah Lompatan (Kata Kunci)
Name Load Stego Audio
Actors User
Description Use case ini mendeskripsikan proses pemanggilan stego audio
Preconditions User mengakses menu Steganografi LSB
Post Conditions Sistem menampilkan stego audio yang telah dipilih
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Steganografi LSB.
2. User mengeksekusi tombol Load Audio.
3. User memilih audio yang akan dijadikan stego audio pada kotak dialog
4. User dapat melihat nama file audio yang telah dipilih sebagai stego
Name Input Jumlah Lompatan (Kata Kunci)
Actors User
3.2.4.8Use Case Proses Ekstraksi
Spesifikasi Use Case Proses Ekstraksi dapat dilihat pada Tabel 3.8.
Tabel 3.8 Spesifikasi Use Case Proses Ekstraksi
3.2.4.9Use Case Proses Melihat Daftar Hasil Pengujian
Spesifikasi Use Case Proses Melihat Daftar Hasil Pengujian dapat dilihat pada Tabel
3.9.
lompatan sebagai kata kunci untuk dapat mengekstraksi pesan dari sebuah stego audio
Preconditions User telah mendapatkan file stego audio yang akan diekstraksi pesan teks
Post Conditions Sistem mengaktifkan tombol Ekstrak
Kegiatan User Respon sistem
Success Scenario
1. User memasukkan
jumlah lompatan.
Sistem mengaktifkan tombol Ekstrak.
Name Proses Ekstraksi
Actors User
Description Use case ini mendeskripsikan proses Ekstraksi pesan teks dari file stego audio
Preconditions User telah memasukkan jumlah lompatan Post Conditions Sistem menampilkan pesan teks dari stego audio
Kegiatan User Respon sistem
Success Scenario
1. User memilih tombol
Ekstraksi.
2. User dapat melihat hasil proses berupa:
a. Lama proses b. Pesan penyisip
Sistem melakukan proses ekstraksi.
Tabel 3.9 Spesifikasi Use Case Proses Melihat Daftar Hasil Pegujian
3.2.4.10 Use Case Proses Menghapus Daftar Hasil Pengujian
Spesifikasi Use Case Proses Menghapus Daftar Hasil Pengujian dapat dilihat pada Tabel 3.10.
Tabel 3.10 Spesifikasi Use Case Proses Menghapus Daftar Hasil Pegujian Name Proses Melihat Daftar Hasil Pengujian
Actors User
Description Use case ini mendeskripsikan proses Melihat Daftar Hasil Pengujian
Preconditions User memilih sub menu Daftar Hasil Pengujian dari menu Laporan Hasil Pengujian
Post Conditions Sistem menampilkan laporan yang berisi daftar hasil pengujian dari semua hasil penyisipan dan ekstrasi.
Kegiatan User Respon sistem
Success Scenario 1. User memilih menu
Laporan Hasil Pengujian
2. User memilih sub menu Daftar Hasil Pengujian
Sistem menampilkan 2 pilihan dalam bentuk sub menu yaitu Daftar Hasil Pengujian dan Hapus Hasil Pengujian
Sistem menampilkan laporan yang berisi daftar hasil pengujian dari semua hasil penyisipan dan ekstraksi.
Name Proses Menghapus Daftar Hasil Pengujian
Actors User
Description Use case ini mendeskripsikan proses Menghpaus Daftar Hasil Pengujian
3.2.5 Activity Diagram
Activity diagram merupakan teknik yang menggambarkan logika prosedural, proses bisnis, dan jalur kerja. Diagram ini memodelkan sebuah alur kerja dari satu aktivitas
ke aktivitas lainnya. Berikut ditampilkan activity diagram untuk proses penyisipan
dan ekstraksi.
3.2.5.1 Activity Diagram Proses Penyisipan Pesan Teks ke dalam Cover Audio
Activity diagram proses penyisipan pesan teks ke dalam cover audio dapat dilihat seperti pada Gambar 3.8.
Laporan Hasil Pengujian
Post Conditions Sistem mengahapus laporan yang berisi daftar hasil pengujian dari semua hasil penyisipan dan ekstrasi.
Kegiatan User Respon sistem
Success Scenario 1. User memilih menu
Laporan Hasil Pengujian
2. User memilih sub menu Hapus Hasil Pengujian
Sistem menampilkan 2 pilihan dalam bentuk sub menu yaitu Daftar Hasil Pengujian dan Hapus Hasil Pengujian