Anda di halaman 1dari 19

IMPLEMENTASI STEGANOGRAFI

PADA BERKAS AUDIO WAV


UNTUK PENYISIPAN PESAN GAMBAR
MENGGUNAKAN METODE LOW BIT CODING
1

Hendrikus Zebua
2
Setia Wirawan
1
Jurusan Teknik Informatika Universitas Gunadarma
zb_hendrik@student.gunadarma.ac.id
2
Jurusan Sistem Informasi Universitas Gunadarma
setia@staff.gunadarma.ac.id

ABSTRAK
Dengan semakin berkembangnya teknologi informasi dan telekomunikasi, maka
perhatian pada tingkat keamanan akan menjadi semakin penting. Salah satunya adalah
tingkat kemanan pengiriman data atau informasi. Peningkatan keamanan pengiriman
data dapat dilakukan dengan menggunakan steganografi. Steganografi adalah teknik
menyembunyikan pesan ke dalam sebuah media pembawa (carrier). Salah satu media
yang dapat digunakan adalah berkas audio. Penelitian ini membahas tentang penerapan
steganografi pada berkas audio WAV dan metode steganografi yang digunakan adalah
metode Low Bit Coding. Dari hasil uji coba, diketahui bahwa dengan metode Low Bit
Coding penyisipan dan ekstraksi pesan dapat dilakukan dengan baik. Jenis pesan yang
dapat disisipkan adalah pesan gambar dengan format JPEG/ JPG. Penyisipan pesan
tidak berpengaruh terhadap ukuran berkas audio, akan tetapi berkas audio yang telah
disisipi pesan (stego) tidak tahan terhadap kompresi, manipulasi amplitudo dan
pemotongan audio.
Kata kunci: Steganografi, Audio, WAV

ABSTRACT
Because the evolution of information technology and telecommunications, the attention
for security level will be important. One is security level in data transmission or
information. Security enhancement for data transmission can be done by using
steganography. Steganography is a technique to hiding a message into a carrier files.
One of media that can be used is audio file. This research discusses about
steganography on WAV audio files and method of steganography that used is Low Bit
Coding method. From the test results, is known with Low Bit Coding method message
insertion and extraction can be done well. Types of messages that can be inserted is a
image message with JPEG/ JPG format. Insertion of a message does not affect the size
of audio files, but the audio files that have been inserted message (stego) is not resistant
to compression, amplitude manipulation and audio cutting.
Keyword : Steganography, Audio, WAV

PENDAHULUAN
Perkembangan teknologi informasi dan telekomunikasi saat ini sangat pesat
dan sangat berpengaruh bagi kehidupan manusia. Hal paling jelas yang dialami saat ini
adalah perkembangan jaringan internet yang membuat manusia dapat bertukar data dan
informasi dengan orang lain, misalnya mengirim email, download dan upload berkas
tertentu di internet. Namun seiring dengan perkembangan tersebut, kejahatan dalam
bidang teknologi informasi dan telekomunikasi semakin marak terjadi.
Oleh karena itu, keamanan data dan informasi menjadi sebuah kebutuhan vital
bagi para pengguna internet saat ini agar privasi mereka bisa tetap terjaga. Salah satu
teknik pengamanan data yang sering digunakan adalah steganografi. Steganografi
adalah teknik menyamarkan atau menyembunyikan pesan ke dalam sebuah media
pembawa (carrier). Kelebihan steganografi terletak pada sifatnya yang tidak menarik
perhatian atau kecurigaan orang lain.
Salah satu media yang dapat digunakan sebagai carrier adalah berkas audio.
Teknik steganografi pada berkas audio memanfaatkan kelemahan pendengaran manusia,
karena kualitas suara antara berkas audio asli dengan berkas audio yang telah disisipkan
pesan rahasia tidak jauh berbeda. Salah satu metode steganografi audio yang sering

digunakan adalah Low Bit Coding. Metode ini diterapkan dengan mengganti bit-bit yang
tidak terlalu berpengaruh dari berkas audio dengan bit-bit pesan.
Adapun tujuan dari penelitian ini adalah menerapkan steganografi pada berkas
audio WAV dengan menggunakan metode Low Bit Coding. Metode Low Bit Coding ini
diujicoba untuk melakukan proses penyisipan dan ekstraksi pesan. Dimana jenis pesan
yang dapat disisipkan adalah pesan gambar dengan format JPEG/ JPG.

TINJAUAN PUSTAKA
Steganografi
Steganografi adalah teknik menyembunyikan atau menyamarkan keberadaan
pesan rahasia dalam suatu media penampung sehingga orang lain tidak menyadari
adanya pesan di dalam media tersebut. Kata steganografi pada awalnya berasal dari kata
steganos, steganos sendiri sebenarnya merupakan kata dari bahasa Yunani. Lebih
lengkapnya : steganos memiliki arti penyamaran atau penyembunyian dan graphein
atau graptos memiliki arti tulisan. Pengertian steganografi yang cukup sering digunakan
dalam pembelajaran dengan metodologi sejarah adalah menulis tulisan yang
tersembunyi atau terselubung (Sellars, 1996).
Steganografi sudah digunakan sejak dahulu kala sekitar 2500 tahun yang lalu
untuk kepentingan politik, militer, diplomatik, serta untuk kepentingan pribadi. Dan
sesungguhnya prinsip dasar dalam steganografi lebih dikonsentrasikan pada kerahasian
komunikasinya bukan pada datanya (Johnson, 1995).
Seiring

perkembangan

teknologi

terutama

teknologi

komputasi

juga

bertambahnya kebutuhan dan keinginan dengan kontinuitas yang tinggi, steganografi


merambah juga ke media digital. Ada dua proses utama dalam steganografi digital yaitu
penyisipan (embedding/encoding) dan penguraian (extraction/decoding) pesan. Pesan
dapat berupa plaintext, chipertext, citra, atau apapun yang dapat ditempelkan ke dalam
bit-stream. Embedding merupakan proses menyisipkan pesan ke dalam berkas yang
belum dimodifikasi, yang disebut media cover (cover object). Kemudian media cover
dan pesan yang ditempelkan membuat media stego (stego object). Extraction adalah
proses menguraikan pesan yang tersembunyi dalam media stego. Suatu password
khusus (stego key) juga dapat digunakan secara tersembunyi, pada saat penguraian

selanjutnya dari pesan. Ringkasnya, steganografi adalah teknik menanamkan embedded


message pada suatu cover object, dimana hasilnya berupa stego object.
Pihak yang terkait dengan steganografi antara lain embeddor, extractor, dan
stegoanalyst (Mohanty, 1999). 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 yag tersembunyi dalam steganografi.

Kriteria Steganografi
Kriteria yang harus diperhatikan dalam melakukan penyembunyian data dengan
menggunakan teknik steganografi adalah sebagai berikut :
1. Imperceptibility : Keberadaan pesan dalam media penampung tidak dapat

dideteksi.
2. Fidelity : 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 diungkap kembali.
4. Robustness : Pesan yang disembunyikan harus tahan terhadap berbagai operasi
manipulasi yang dilakukan pada media penampung.
Karakteristik steganografi yang baik adalah imperceptibility tinggi, fidelity
tinggi, recovery maksimum dan robustness tinggi (E.T Sobirina, 2009).

Metode Low Bit Coding


Dalam steganografi audio terdapat beberapa teknik dalam penyisipan pesan,
salah satunya adalah metode Low Bit Coding. Metode Low Bit Coding adalah cara yang
paling

sederhana

untuk

menyimpan

data

kedalam

file

audio. Teknik

ini

diimplementasikan dengan mengganti bit yang paling tidak penting atau low significant
bit (LSB) pada setiap titik sampling dengan string berkode biner (coded binary string),
kita dapat menyisipkan sejumlah besar data ke dalam suara digital. Kelemahan metode
ini adalah lemahnya kekebalan terhadap manipulasi. Pada prakteknya, metode ini hanya
berguna pada lingkungan digital-to-digital yang tertutup.

Waveform Data (WAV)


Format suara WAV merupakan format standar dari RIFF (Resource Interchage
File Format) yang berjalan pada Microsoft Windows. Format suara WAV diindikasikan
dengan ekstensi Waveform data (.WAV).
Format resmi suara digital WAV (format RIFF) terdiri atas 3 chunk, yaitu
chunk header, chunk fmt, dan chunk data. Isi dari ketiga chunk dapat dilihat pada
Tabel 1, Tabel 2, dan Tabel 3.

Tabel 1 Isi chunk header


Offset
0
4
8

Panjang
4 byte
4 byte
4 byte

Isi
'RIFF'
<file length - 8>
'WAVE'

Tabel 2 Isi chunk fmt


Isi
Keterangan
Offset Panjang
12
4 byte
'fmt '
16
4 byte
0x00000010
Panjang chunk fmt (16 bytes)
20
2 byte
0x0001
Format tag: 1 = PCM
22
2 byte
<channels>
Channels: 1 = mono, 2 = stereo
24
4 byte
<sample rate> Banyak sample per detik: contoh: 44100
28
4 byte <bytes/second> sample rate * block align
32
2 byte
<block align> channels * bits/sample / 8
34
2 byte
<bits/sample> 8 or 16

Tabel 3 Isi chunk data


Offset
36
40
44

Panjang
4 byte
4 byte
4 byte

Isi

data
<length of the data block>
<sample data>

Jumlah sampel suara adalah genap. Untuk suara dengan jumlah bit tiap sampel
suara 8 disimpan sebagai bilangan desimal tidak bertanda, dengan rentang nilai dari 0
sampai 255.

JPEG (Joint Photographic Experts Group)


Dalam ilmu komputer, JPEG adalah metode kompresi yang umum digunakan
untuk gambar-gambar fotografi. JPEG merupakan singkatan dari Joint Photographic
Experts Group, nama dari komite yang menetapkan standar JPEG. Pada tahun 1994,
standar JPEG disahkan sebagai ISO 10918-1.
Standar JPEG memberikan spesifikasi codec kompresi data ke dalam stream
data byte dan pendekompresian kembali ke bentuk gambar serta format data
penyimpananannya. Metode kompresi data yang digunakan umumnya berupa lossy
compression, yang membuang detail visual tertentu, dimana hilangnya data tersebut
tidak bisa dikembalikan. File JPEG memiliki ekstensi .jpg, .jpeg, .jpe, .jfif, dan .jif.

Gambar 1 Contoh Gambar JPEG (Color dan Grayscale)

PERANCANGAN
Perancangan Spesifikasi Aplikasi
Spesifikasi aplikasi meliputi input (masukan) dan output (keluaran). Masukan
bergantung pada proses yang akan dilakukan (proses penyisipan atau ekstraksi). Pada
proses penyisipan dibutuhkan dua buah masukan yaitu media cover dan pesan rahasia.
Media cover yang digunakan adalah berkas audio WAV dan pesan rahasianya berupa
gambar dengan format JPEG/ JPG. Sedangkan pada proses ekstraksi hanya dibutuhkan
satu buah masukan. Masukan tersebut adalah berkas audio WAV yang telah disisipi
pesan rahasia (stego).
Keluaran yang dihasilkan juga bergantung pada proses yang akan dilakukan.
Pada proses penyisipan, keluaran yang dihasilkan adalah berkas audio WAV yang telah
disisipi pesan rahasia (stego). Sedangkan pada proses ekstraksi, keluarannya adalah
pesan rahasia berupa gambar dengan format JPEG/ JPG.

Perancangan Algoritma
Metode yang digunakan dalam pembuatan aplikasi steganografi ini adalah
metode Low Bit Coding. Ditinjau dari segi fungsional, maka aplikasi yang akan
dibangun memiliki 2 proses, yaitu proses encoding (penyisipan) dan proses decoding
(ekstraksi). Algoritma proses penyisipan dan ekstraksi dengan metode Low Bit Coding
akan dijelaskan pada bagian ini.

a.

Algoritma Proses Penyisipan


Langkah-langkah proses penyisipan bit-bit pesan (gambar) ke dalam berkas

audio WAV adalah sebagai berikut :


1. Berkas audio WAV dibaca dan byte-byte hasil pembacaan disimpan ke dalam
variable fid1.
2. Informasi mengenai berkas audio disiapkan dengan cara mengambil 44 byte
pertama dari fid1 dan pindahkan ke dalam variable info. Byte-byte ini berisi
informasi mengenai chunk header, chunk fmt, chunk data dan tidak dapat
disisipi bit pesan.
3. Byte sampel data (byte ke 45 sampai byte terakhir) dipindahkan ke dalam
variable dta.
4. Pesan berupa gambar diinput.
5. 16 bit unik disiapkan dan disimpan ke dalam variable identitas. Bit-bit ini
dibutuhkan sebagai penanda apakah di dalam berkas audio terdapat pesan
gambar atau tidak. Identitas ini didefinisikan oleh programmer dengan seunik
mungkin dan identitas yang digunakan adalah [1100110011001100].
6. Pesan gambar dan ukurannya dibaca.
7. Sebelum dilakukan penyisipan, terlebih dahulu dicek apakah penyisipan dapat
dilakukan atau tidak. Pengecekan dilakukan berdasarkan jumlah byte sampel
data dan jumlah bit identitas + bit ukuran pesan + bit pesan. Jika jumlah bit
identitas + bit ukuran pesan + bit pesan lebih kecil dari jumlah byte sampel data,
maka proses penyisipan dapat dilakukan.
8. Apabila pengecekan bernilai ya, maka langkah selanjutnya adalah pesan dan
ukurannya diubah ke dalam bentuk bit. Kemudian bit identitas, bit ukuran pesan,
dan bit pesan disisipkan ke dalam dta. Penyisipan dilakukan dengan

mengganti bit pertama (bit yang tidak terlalu berpengaruh) dari setiap byte
sampel data. Identitas disisipkan pada byte pertama sampai byte keenambelas.
Sedangkan bit ukuran pesan dan bit pesan disisipkan pada byte ketujuhbelas dan
seterusnya.
9. Data audio yang telah disisipi pesan disimpan dengan mengikutsertakan
informasi berkas audio dari variable info. Informasi ini ditulis pada awal
berkas. Jika informasi ini tidak diikutsertakan, maka berkas audio tidak dapat
dikenali.

Identitas
disiapkan

Berkas Pesan

Bit-bit pesan
disiapkan

Berkas Audio
Audio

Data audio
disiapkan

Identitas dan bit


pesan disisipkan ke
dalam data audio

Data audio yang telah


disisipi identitas dan bit
pesan disimpan

Berkas Audio
Stego

Gambar 2 Proses Penyisipan

Berikut ini adalah penggalan program untuk proses encoding yang dibuat
dengan menggunakan Matlab :
1.

[handles.fnameinput, handles.pnameinput] = uigetfile('*.wav','Pilih file audio');


fid1=fopen([handles.pnameinput handles.fnameinput],'r');

Fungsi uigetfile digunakan untuk menampilkan jendela pencarian file audio yang

berekstensi *.wav. Nama file terpilih akan disimpan ke dalam variable fnameinput
dan pathnya akan disimpan ke dalam variable pnameinput. File audio kemudian
dibuka dengan menggunakan fungsi fopen dan hasil pembacaannya disimpan ke
dalam variable fid1.
2.

info=fread(fid1,44,'uint16');

Fungsi fread digunakan untuk mengambil 44 byte pertama dari fid1 dan
dipindahkan ke dalam variable info. Byte-byte ini berisi informasi mengenai
berkas audio.

3.

[dta,count]=fread(fid1,inf,'uint16');
fclose(fid1);
posisi=1;

Fungsi fread berikutnya digunakan untuk membaca dan memindahkan byte-byte


sampel data ke dalam variable dta. Sedangkan variable count digunakan untuk
membaca dan menyimpan jumlah byte sampel data.
4.

[handles.fnamegambar, handles.pnamegambar] = uigetfile({'*.jpg';'*.jpeg'},'Pilih file


gambar');

Kemudian pesan (file gambar) diinput dengan menggunakan fungsi uigetfile. Nama file

terpilih akan disimpan ke dalam variable fnamegambar dan pathnya akan disimpan
ke dalam variable pnamegambar.
5.

identitas=[1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0]';

Byte penanda disiapkan dan disimpan ke dalam variable identitas.

6.

baca_gambar=fopen([handles.pnamegambar handles.fnamegambar],'r');
pesan=fread(baca_gambar);
[m,n]=size(pesan);

Selanjutnya pesan dibaca dan hasilnya yang berupa bilangan desimal disimpan ke
dalam variable pesan. Fungsi size digunakan untuk membaca ukuran matriks pesan
dan hasilnya disimpan ke dalam variable m dan n.
7.

if ( (m*n*8+48) > count )


msg=['Ukuran pesan terlalu besar ! Jumlah bit pesan ini adalah ' int2str(m*n*8+48) ' ,
sementara maksimal bit pesan yang dapat disisipkan adalah ' int2str(count) '.']
msgbox(msg,'Pesan','warn');

Dilakukan pengecekan apakah pesan dapat disisipkan atau tidak. Jika tidak, maka
akan keluar pesan yang menginformasikan bahwa pesan tidak dapat disisipkan.

8.

m_bin=de2bi(m,16)';
n_bin=de2bi(n,16)';
pesan_double=double(pesan);
pesan_bin=de2bi(pesan_double,8);
pesan_bin_re=reshape(pesan_bin,m*n*8,1);
len=length(pesan_bin_re);
dta(1:16)=bitset(dta(1:16),posisi,identitas(1:16));
dta(17:32)=bitset(dta(17:32),posisi,m_bin(1:16));
dta(33:48)=bitset(dta(33:48),posisi,n_bin(1:16));
dta(49:48+len)=bitset(dta(49:48+len),posisi,pesan_bin_re);

Sebaliknya jika pesan dapat disisipkan, maka terlebih dahulu ukuran pesan dan
pesan diubah ke bentuk biner/ bit dengan menggunakan fungsi de2bi. Baru
kemudian bit identitas dan bit-bit tersebut disisipkan ke dalam sampel data audio
dengan menggunakan fungsi bitset.
9.

[handles.fnameoutput, handles.pnameoutput] = uiputfile('*.wav','Simpan file');


fid2=fopen([handles.pnameoutput handles.fnameoutput],'w');
fwrite(fid2,info,'uint16');
fwrite(fid2,dta,'uint16');
fclose(fid2);

Fungsi uiputfile digunakan untuk menampilkan jendela penyimpanan file audio


stego. Byte informasi dan byte sampel data yang telah disisipi pesan ditulis ke
dalam file tersebut dengan menggunakan fungsi fwrite.

b. Algoritma Proses Ekstraksi


Langkah-langkah proses ekstraksi bit-bit pesan dari berkas suara stego adalah
sebagai berikut ini :
1. Berkas audio stego dibaca dan byte-byte hasil pembacaan disimpan ke dalam
variable fid1.
2. 44 byte pertama dari fid1 yang berisi informasi mengenai berkas audio
dipindahkan ke dalam variable info.
3. Byte sampel data (byte ke 45 sampai byte terakhir) dipindahkan ke dalam
variable dta.
4. Bit pertama dari byte pertama sampai byte keenambelas diekstrak dari dta. Jika
hasilnya sama dengan salah satu identitas pada saat penyisipan, maka di dalam
berkas tersebut terdapat pesan rahasia dan proses ekstraksi dapat dilakukan.

5. Apabila pengecekan bernilai ya, maka langkah selanjutnya adalah bit ukuran
pesan dan bit pesan diekstrak. Bit-bit pesan yang telah diekstrak dikembalikan
ke bentuk semula berdasarkan ukuran pesan.
6. Pesan gambar hasil ekstraksi terlebih dahulu harus disimpan dengan ekstensi
JPEG/ JPG, baru kemudian gambarnya ditampilkan.

Berkas Audio
Stego

Data audio stego


disiapkan

Data pesan di disimpan


dan ditampilkan

Identitas

Bit pesan diekstrak


dari data audio

Berkas Pesan

diekstrak dan dicek

Gambar 3 Proses Ekstraksi

Berikut ini adalah penggalan program untuk proses decoding :


1.

[handles.fnameinput, handles.pnameinput] = uigetfile('*.wav','Pilih file audio');


fid1=fopen([handles.pnameinput handles.fnameinput],'r');

Fungsi uigetfile digunakan untuk menampilkan jendela pencarian file audio stego.

File audio kemudian dibuka dengan menggunakan fungsi fopen dan hasil
pembacaannya disimpan ke dalam variable fid1.
2.

info=fread(fid1,44,'uint16');

Fungsi fread digunakan untuk mengambil 44 byte pertama dari fid1 dan
dipindahkan ke dalam variable info.
3.

[dta,count]=fread(fid1,inf,'uint16');
fclose(fid1);
posisi=1;

Byte-byte sampel data dipindahkan ke dalam variable dta dengan menggunakan


fungsi fread.

4.

identitas=bitget(dta(1:16),posisi)';

Bit pertama dari byte pertama sampai byte keenambelas diekstrak dari dta dengan
menggunakan fungsi bitget.
5.

if identitas==[1 1 0 0 1 1 0 0 1 1 0 0 1 1 0 0]
[handles.fnamegambar, handles.pnamegambar] = uiputfile({'*.jpg';'*.jpeg'},'Simpan pesan
gambar');
output_file=cat(2,handles.pnamegambar,handles.fnamegambar);
m_bin=zeros(16,1);
n_bin=zeros(16,1);
m_bin(1:16)=bitget(dta(17:32),posisi);
n_bin(1:16)=bitget(dta(33:48),posisi);
m=bi2de(m_bin');
n=bi2de(n_bin');
len=m*n*8;
secgambar_bin=zeros(len,1);
secgambar_bin(1:len)=bitget(dta(49:48+len),posisi);
secgambar_bin_re=reshape(secgambar_bin, 8, len/8);
secgambar_double=bi2de(secgambar_bin_re);
output=fopen([handles.pnamegambar handles.fnamegambar],'w');
fwrite(output,secgambar_double);
fclose(output);
gdata=guidata(gcbo);
gambar=imread(output_file);
set(gdata.figure1,'CurrentAxes',gdata.axes2);
set(imshow(gambar));

Kemudian dilakukan pengecekan dengan menggunakan percabangan if, apakah bit


yang berhasil diekstrak sama dengan bit identitas pada proses penyisipan. Jika
sama, maka bit ukuran pesan dan pesan gambar kemudian diekstrak juga dengan
menggunakan fungsi bitget. Pesan yang berhasil diekstrak kemudian disimpan
dengan ekstensi .jpg/.jpeg.

UJI COBA DAN ANALISA


Perancangan Pengujian
Pengujian dilakukan berdasarkan spesifikasi aplikasi dan juga terhadap
ketahanan data. Pengujian berdasarkan spesifikasi aplikasi meliputi pengujian
kesesuaian proses, kesesuaian data, dan kualitas suara. Sedangkan pengujian ketahanan
data hanya dilakukan terhadap berkas suara WAV stego.
Untuk melakukan pengujian, digunakan beberapa berkas audio WAV dengan
spesifikasi seperti yang terdapat pada Tabel 4.

Tabel 4 Spesifikasi Audio WAV yang diuji


No.

1
2
3

Nama Berkas
Audio WAV
atabaque.wav
windows.wav
wondergirls.wav

Ukuran Data
(Byte)
0:00:07.500
1323000
0:00:03.204
282564
0:00:20.991
3702812
Durasi

Sampling
Rate (Hz)
44100
22050
44100

Jenis Kanal
Suara
Stereo
Stereo
Stereo

Selain berkas audio, dalam pengujian digunakan juga beberapa sampel gambar.
Berikut ini adalah uraian dari pesan gambar :

Tabel 5 Spesifikasi File Gambar


No.

Nama File
Gambar

Jenis Gambar

Ukuran
File

1
2

gunadarma.jpg
bw_gunadarma.jpg

Color/ Warna
Grayscale/ Hitam

47 KB
42 KB

Pelaksanaan uji coba menggunakan dua buah sampel file gambar, yaitu
gunadarma.jpg dan bw_gunadarma.jpg. Kedua gambar ini berisi logo Universitas
Gunadarma yang disajikan dalam bentuk berwarna (gunadarma.jpg) dan hitam putih
(bw_gunadarma).

Pelaksanaan Pengujian
Pada pelaksanaan pengujian dibutuhkan beberapa perangkat lunak pendukung,
yaitu Free WAV to MP3 Converter 7.3.2 dan Wave Editor 3.1.0.0. Perangkat lunak Free
WAV to MP3 Converter digunakan untuk mengkompres audio WAV stego, yaitu
dengan mengubah format audio WAV stego menjadi MP3 (dengan ekstensi .mp3) dan
sebaliknya. Sedangkan Wave Editor digunakan untuk melakukan manipulasi amplitudo,
pemotongan dan dapat juga menampilkan grafik sinyal dari audio WAV stego.
a.

Pengujian Berdasarkan Spesifikasi Aplikasi


Hasil pengujian terhadap kesesuaian proses, kesesuaian data, dan kualitas suara

dapat dilihat pada Tabel 6.

Tabel 6 Hasil Pengujian Berdasarkan Spesifikasi Aplikasi


No.

Nama Berkas
Audio WAV

atabaque.wav

windows.wav

3 wondergirls.wav

Pesan Gambar

Penyisipan

gunadarma.jpg
bw_gunadarma.jpg
gunadarma.jpg
bw_gunadarma.jpg
gunadarma.jpg
bw_gunadarma.jpg

Berhasil
Berhasil
Gagal
Gagal
Berhasil
Berhasil

Nama Berkas
Audio WAV Stego

Ekstraksi

Kesesuaian
Data

Kualitas
Suara

4_ atabaque.wav
5_ atabaque.wav

Berhasil
Berhasil

Sesuai
Sesuai

Sama
Sama

4_ wondergirls.wav
5_ wondergirls.wav

Berhasil
Berhasil

Sesuai
Sesuai

Sama
Sama

Hasil pengujian pada Tabel 6 menunjukkan bahwa perangkat lunak berhasil


untuk ketiga faktor pengujian. Pada pengujian terhadap kesesuaian proses, perangkat
lunak dapat melakukan proses penyisipan dan ekstraksi dengan baik. Walaupun pada
proses penyisipan dapat terjadi kegagalan karena ukuran pesan yang terlalu besar.
Pengujian terhadap kesesuaian data, menunjukkan bahwa data yang berhasil
diekstrak dari audio WAV stego bersesuaian dengan data yang disisipkan. Dan pada
pengujian terhadap kualitas suara, baik berdasarkan pendengaran maupun secara visual
melalui grafik sinyal, dapat dikatakan bahwa kualitas suara antara berkas audio asli
dengan berkas audio stego adalah sama. Gambar 4 berikut ini adalah salah satu gambar
yang menunjukkan grafik sinyal audio sebelum dan sesudah dilakukan penyisipan.

Gambar 4 Grafik Sinyal atabaque.wav Sebelum dan Sesudah Penyisipan


Setelah proses penyisipan, hal lain yang dapat diperbandingkan adalah ukuran
berkas audio sebelum dan setelah penyisipan.

Tabel 7 Ukuran Berkas Audio Sebelum dan Setelah Penyisipan


No.

Nama Berkas
Audio WAV

Ukuran Berkas
Audio Sebelum
Penyisipan

atabaque.wav

1293 KB

2 wondergirls.wav

3617 KB

Pesan Gambar
Yang Berhasil
Disisipkan
gunadarma.jpg
bw_gunadarma.jpg
gunadarma.jpg
bw_gunadarma.jpg

Nama Berkas
Audio WAV Stego

4_ atabaque.wav
5_ atabaque.wav
4_ wondergirls.wav
5_ wondergirls.wav

Ukuran Berkas
Audio Setelah
Penyisipan
1293 KB
1293 KB
3617 KB
3617 KB

Tabel 7 menunjukkan bahwa seluruh uji coba penyisipan tidak menyebabkan


perubahan pada ukuran berkas audio WAV atau dengan kata lain, ukuran berkas audio
WAV sebelum dan setelah penyisipan adalah sama.
b. Pengujian Ketahanan Data
Pengujian ketahanan data dilakukan terhadap tiga faktor, yaitu kompresi,
manipulasi amplitudo dan pemotongan.

Kompresi
Kompresi audio stego dari WAV ke MP3 dan sebaliknya dilakukan dengan

menggunakan Free WAV to MP3 Converter. Hasil pengujian proses ekstraksi setelah
kompresi terhadap berkas audio stego dapat dilihat pada Tabel 8.
Tabel 8 Hasil Pengujian Ekstraksi Setelah Kompresi
No.

Nama Berkas
Audio WAV Stego

Pesan Gambar di
Dalamnya

1
2
3
4

4_ atabaque.wav
5_ atabaque.wav
4_ wondergirls.wav
5_ wondergirls.wav

gunadarma.jpg
bw_gunadarma.jpg
gunadarma.jpg
bw_gunadarma.jpg

Nama Berkas
Nama Berkas Audio
Ekstraksi
MP3 Setelah
WAV Setelah
Kompresi
Kompresi Ulang
Gagal
4_ atabaque.mp3
4_ atabaque.wav
Gagal
5_ atabaque.mp3
5_ atabaque.wav
Gagal
4_ wondergirls.mp3 4_ wondergirls.wav
Gagal
5_ wondergirls.mp3 5_ wondergirls.wav

Manipulasi Amplitudo
Manipulasi Amplitudo dilakukan dengan menggunakan Wave Editor. Hasil

pengujian ekstraksi setelah manipulasi amplitudo terhadap beberapa berkas audio stego
dapat dilihat pada Tabel 9.

Tabel 9 Hasil Pengujian Ekstraksi Setelah Manipulasi Amplitudo


No.

Nama Berkas
Audio WAV Stego

Pesan Gambar di
Dalamnya

4_ atabaque.wav

gunadarma.jpg

5_ atabaque.wav

bw_gunadarma.jpg

4_ wondergirls.wav

gunadarma.jpg

5_ wondergirls.wav

bw_gunadarma.jpg

Amplitudo

ditambah (110%)
dikurangi (90%)
ditambah (150%)
dikurangi (50%)
ditambah (110%)
dikurangi (90%)
ditambah (150%)
dikurangi (50%)

Nama Berkas Audio


Setelah Manipulasi
Amplitudo
4_ atabaque _t.wav
4_ atabaque _k.wav
5_ atabaque _t.wav
5_ atabaque _k.wav
4_ wondergirls_t.wav
4_ wondergirls_k.wav
5_ wondergirls_t.wav
5_ wondergirls_k.wav

Ekstraksi

Gagal
Gagal
Gagal
Gagal
Gagal
Gagal
Gagal
Gagal

Setelah melakukan pengujian, semua proses ekstraksi gambar dari beberapa


berkas audio stego yang telah dimanipulasi amplitudonya dinyatakan gagal.

Pemotongan
Pemotongan audio stego juga dilakukan dengan menggunakan Wave Editor.

Tabel 10 berikut ini memperlihatkan hasil pengujian ekstraksi setelah pemotongan


terhadap beberapa berkas audio stego.

Tabel 10 Hasil Pengujian Ekstraksi Setelah Pemotongan


No.

Nama Berkas
Audio WAV Stego

Pesan Gambar di
Dalamnya

Durasi
(detik)

4_ atabaque.wav

gunadarma.jpg

7.500

5_ atabaque.wav

bw_gunadarma.jpg

7.500

Letak Pemotongan
Begin
End
00:00.000 00:00.144
00:01.895 00:05.390
00:05.390 00:07.500
00:00.000 00:00.612
00:03.096 00:05.268
00:05.268 00:07.500

Nama Berkas
Setelah
5_Pemotongan
atabaque1.wav
5_ atabaque2.wav
5_ atabaque3.wav
5_ atabaque1.wav
5_ atabaque2.wav
5_ atabaque3.wav

Ekstraksi

Gagal
Gagal
Berhasil
Gagal
Gagal
Berhasil

Hasil pengujian ketahanan data terhadap pemotongan terdiri dari dua


kemungkinan, yaitu berhasil dan gagal. Semua pemotongan diawal audio menyebabkan
pesan tidak dapat diekstrak.

Analisis Hasil Pengujian


Dari pengujian yang telah dilakukan, dapat dilakukan beberapa analisis
terhadap hasil pengujian tersebut. Berikut ini merupakan analisis terhadap hasil
pengujian berdasarkan spesifikasi aplikasi dan ketahanan data.

a.

Analisis Hasil Pengujian Berdasarkan Spesifikasi Aplikasi


Hasil pengujian berdasarkan spesifikasi aplikasi menunjukkan bahwa

perangkat lunak steganografi ini berhasil untuk setiap faktor pengujian yang dilakukan.
Faktor yang diuji meliputi faktor kesesuain proses, kesesuain data, dan kualitas suara.
Pada pengujian kesesuaian proses, perangkat lunak dapat melakukan proses
penyisipan dan ekstraksi pesan gambar dengan baik. Proses penyisipan berhasil jika
ukuran data (jumlah bit identitas + bit ukuran pesan gambar + bit pesan gambar) tidak
lebih besar dari jumlah byte sampel data audio yang akan disisipi pesan gambar.
Pada pengujian kesesuaian data, gambar yang berhasil diekstrak bersesuaian
dengan gambar yang disisipkan. Kesesuian ditinjau dari bentuk dan ukuran pesan
gambar.
Pengujian kualitas suara menunjukkan bahwa penyisipan bit-bit pesan gambar
ke dalam sampel data audio WAV tidak mempengaruhi kualitas suara. Hal ini
disebabkan karena perubahan pada bit pertama atau low significant bit sangat sulit
dideteksi oleh pendengaran manusia. Dan hal ini juga ditunjukkan oleh grafik sinyal
audio sebelum dan sesudah penyisipan yang hampir tidak kelihatan perbedaannya.
Selain ketiga faktor di atas, hasil uji coba juga menunjukkan bahwa ukuran
berkas audio WAV sebelum dan setelah penyisipan adalah sama. Hal ini terjadi karena
penyisipan pesan dilakukan dengan mengganti bit yang tidak terlalu berpengaruh (low
significant bit) dengan bit-bit pesan gambar, bukan dengan menambah bit baru ke dalam
byte sampel data audio.
b. Analisis Hasil Pengujian Ketahanan Data
Pada pengujian ketahanan data terhadap kompresi dan manipulasi amplitudo,
seluruh hasil menunjukkan bahwa pesan gambar tidak dapat diekstrak. Proses kompresi
dan manipulasi amplitudo tidak mengubah ukuran berkas audio, akan tetapi
menyebabkan perubahan pada bit pertama atau low significant bit dari sampel data
audio. Dimana bit pertama merupakan tempat untuk menyisipkan bit identitas, bit
ukuran pesan, dan bit pesan. Jika terjadi kerusakan pada bit identitas, maka otomatis bit
ukuran pesan dan bit pesan dalam keadaan apapun (rusak/ tidak) tidak dapat dibaca dan
diekstrak. Dan berdasarkan hasil pengujian, maka dapat disimpulkan bahwa penyisipan
pesan gambar dengan metode Low Bit Coding tidak tahan terhadap kompresi dan
manipulasi amplitudo.

Pada pengujian dengan pemotongan, secara keseluruhan hasil menunjukkan


dua kemungkinan, yaitu pesan gambar dapat diekstrak atau tidak sama sekali. Semua
pemotongan audio diawal menyebabkan pesan tidak dapat diekstrak. Hal ini
dikarenakan perubahan atau kerusakan pada bit identidas. Kerusakan pada bit identitas
ini menyebabkan bit ukuran pesan dan bit pesan dalam keadaan apapun (rusak/tidak)
tidak dapat diekstrak. Sedangkan ekstraksi setelah pemotongan ditengah dan akhir audio
bisa berhasil dan gagal. Ekstraksi berhasil jika bagian audio yang dibuang tidak
termasuk byte sampel data audio yang telah disisipi bit identitas, bit ukuran pesan, atau
bit pesan.

PENUTUP
Steganografi adalah teknik menyembunyikan pesan ke dalam sebuah media
pembawa (carrier). Penelitian ini membahas tentang penerapan steganografi pada
berkas audio WAV, yang diimplementasikan dengan pengembangan aplikasi
menggunakan Matlab 7.0. Metode steganografi yang digunakan adalah metode Low Bit
Coding. Penyisipan pesan dengan metode ini dilakukan dengan mengganti bit pertama
atau bit yang tidak terlalu berpengaruh dengan bit-bit pesan.
Dari hasil uji coba berdasarkan spesifikasi aplikasi, dengan metode Low Bit
Coding proses penyisipan dan ekstraksi pesan dapat dilakukan dengan baik. Penyisipan
dapat dilakukan jika jumlah bit pesan dan bit informasi pendukung tidak lebih besar dari
jumlah byte sampel data audio. Untuk kesesuaian data, pesan hasil ekstraksi dan pesan
awal adalah sama. Penyisipan pesan dengan metode Low Bit Coding juga tidak
berpengaruh terhadap kualitas suara karena sulit dideteksi oleh pendengaran manusia.
Proses penyisipan juga tidak mengubah ukuran berkas audio atau dengan kata lain,
ukuran berkas audio sebelum dan setelah penyisipan adalah sama.
Dan dari hasil pengujian ketahanan data, dapat disimpulkan bahwa berkas
audio yang telah disisipi pesan (stego) tidak tahan terhadap tiga faktor, yaitu kompresi,
manipulasi amplitudo dan pemotongan audio. Pesan sama sekali tidak dapat diekstrak
setelah audio stego dikompres atau dimanipulasi amplitudonya. Sedangkan setelah
pemotongan, masih ada kemungkinan pesan dapat diekstrak. Hal ini disebabkan karena
bagian audio yang dipotong tidak termasuk byte sampel data audio yang telah disisipi
bit pesan dan bit informasi pendukung.

DAFTAR PUSTAKA
[1]

Alam, Ibnu. ____, Aplikasi Kode Huffman dalam Kompresi Gambar Berformat
JPEG, Makalah, Institut Teknologi Bandung.

[2]

Alatas, Putri. 2009, Implementasi Teknik Steganografi Denganmetode LSB Pada


Citra Digital, Tugas Akhir, Universitas Gunadarma.

[3]

Cahyadi. 2009, Sejarah Steganografi , (Online), (http://visualbasiccahyadi.blogspot.com/2009/10/blog-post.html, diakses pada tanggal 07 Mei
2011).

[4]

Gunawan, Ibnu & Gunadi, Kartika, 2005. Pembuatan Perangkat Lunak Wave
Manipulator Untuk Memanipulasi File Wav, Jurnal Informatika, Vol. 6, No. 1:
41-50.

[5]

Kessler, Gary C. 2004, An Overview of Steganography for the Computer


Forensics Examiner, Jurnal Penelitian dan Teknologi, Vol.6, No. 3.

[6]

Mike. 2009, Pengertian Steganografi, (Online), (http://diegudangilmu.blogspot.com/2009/03/pengertian-steganografi.html, diakses pada


tanggal 07 Mei 2011).

[7]

Ulinnuha. 2010, Teknik Penyembunyian Informasi Pada Steganografi, (Online),


(http://mulinnuha.wordpress.com/2010/01/10/teknik-penyembunyian-informasipada-steganografi/, diakses pada tanggal 08 Mei 2011).

Anda mungkin juga menyukai