1
1. Pendahuluan
Penggunaan teknologi informasi dan komputerisasi sebagai media kerja dan pusat informasi sudah menjadi suatu kebutuhan, karena dengan teknologi hampir semua pekerjaan dapat diselesaikan dengan mudah, cepat dan efisien. Kemudahan ini membawa pengaruh terhadap keamanan informasi yang menggunakan media komunikasi sebagai media penyampaian yang dapat mengakibatkan suatu informasi menjadi sangat rentan untuk diketahui, diambil atau bahkan dimanipulasi dan disalah gunakan oleh pihak lain yang tidak berhak. Jika ingin bertukar pesan, tentunya pihak pengirim berharap pesan yang dikirim sampai ke pihak penerima dengan aman, dengan maksud, pihak yang tidak berhak tidak dapat membaca pesan tersebut. Sedangkan di sisi penerima, diharapkan pesan yang diterima masih asli, tidak ditambah-tambah atau dikurangi, tidak diubah atau dimanipulasi selama pengiriman pesan. Untuk menjamin keamanan pertukaran informasi yang bersifat rahasia atau pribadi, diperlukan suatu sistem pengamanan data yang dapat melindungi informasi yang bersifat pribadi dan rahasia.
Steganografi (Steganography) adalah ilmu dan seni menyembunyikan pesan atau data rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui [1]. Setiap orang dapat menampilkan atau membuka media tersebut, namun tidak menyadari bahwa media tersebut telah dibubuhkan pesan rahasia oleh pengirim. Pada steganografi pesan disembunyikan dalam media yang umum dikenal yaitu image, audio, dan video, sehingga tidak menimbulkan kecurigaan. Teknik steganografi menggunakan dua media yang berbeda. Salah satu media berfungsi sebagai media yang berisikan informasi (pesan rahasia) dan media yang lain berfungsi sebagai pembawa informasi tersebut (cover) yang dapat berupa sebuah teks, gambar, suara, atau video. Steganografi memungkinkan penyembunyian data pada berbagai jenis media digital seperti berkas citra, suara,
video, dan teks.
Berdasarkan latar belakang yang ada, maka dirancang suatu aplikasi steganografi dengan menggunakan Metode Echo Hiding. Metode Echo Hiding
dapat meminimalkan perubahan suara pada berkas audio dari pendengaran manusia [2]. Penelitian yang dilakukan lebih difokuskan untuk mengembangkan aplikasi steganografi yang dapat menyembunyikan informasi rahasia di dalam media audio, yang berformat .wav (wave). Penelitian yang dilakukan akan melihat apakah terjadi perubahan kualitas dan besar ukuran data pada file audio setelah melalui proses
embedding dan ekstrasi pesan. Aplikasi yang dibangun bertujuan dapat membantu para pengguna untuk menjaga kerahasian data yang disisipkan dalam file audio.
2. Tinjauan Pustaka
Penelitian sebelumnya pernah dilakukan dengan judul Watermarking pada
2
Penelitian berjudul Iimplementasi Watermarking pada Suara Digital dengan Metode Data Echo Hiding yaitu penelitian yang mengunakan teknik watermarking
dimana informasi hak cipta seperti waktu atau tanggal, dan pemilik hak cipta disembunyikan ke dalam suatu media digital [4].
Berdasarkan penelitian yang pernah dilakukan dengan metode EchoHiding
melalui media audio, maka dalam penelitian ini, akan dilakukan penelitian Steganografi yang mengunakan metode EchoHiding yaitu penelitian mengenai proses penyisipan sebuah informasi yang disisipkan ke dalam sebuah berkas file audio sehingga pihak ketiga tidak menyadarinya. Setiap orang dapat menampilkan atau membuka fileaudio tersebut, namun tidak menyadari bahwa file audio tersebut telah disisipi pesan rahasia. Proses penyisipan informasi ke dalam file audio
dilakukan dengan tidak merubah atau merusak kualitas file audio yang disisipi informasi. Media yang digunakan pada penelitian ini yaitu audio dengan format .Wav (Wave).
Penelitian yang dilakukan membahas tentang steganografi. Steganografi adalah ilmu dan seni menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui. Steganografi berasal dari
Bahasa Yunani, yaitu “steganos” yang artinya “tulisan tersembunyi (covered writing)” [1]. Teknik steganografi yang digunakan dalam penelitian ini, yaitu mengunakan algoritma echo hiding yaitu penyisipan sebuah informasi rahasia yang disisipkan ke dalam sebuah berkas file audio Wave sehingga pihak ketiga tidak menyadarinya.
Echo hiding merupakan metode untuk menyembunyikan informasi di dalam file audio. Metode ini menggunakan echo yang ada di dalam file audio
untuk mencoba menyembunyikan informasi. Data yang akan disembunyikan dalam bentuk echo dinyatakan dengan variasi dari tiga parameter, yaitu initial amplitude, decay rate, dan offset. Initial Amplitude menyatakan amplitudo asal dari data suara tersebut, decay rate menyatakan besar echo yang akan diciptakan, dan
offset menyatakan jarak antara sinyal suara dengan echo dalam bentuk fasa sudut dalam persamaan analog. Apabila offset yang didapat dari sinyal asli dan echo
selisihnya berkurang, maka kedua sinyal yang terbentuk ini akan bercampur atau menjadi satu. Hal ini menyebabkan echo yang terbentuk akan terdengar sebagai resonansi atau gema. Metode Echo Hiding menggunakan dua jenis decay waktu yang berbeda. Decay waktu yang pertama digunakan untuk mewakili bit 0, decay
ini berasal dari offset. Sedangkan decay yang kedua digunakan untuk mewakili bit
1, decay ini berasal dari offset ditambah dengan delta. Untuk menentukan nilai dari
3
Gambar 1 Tiga Parameter Dalam Metode Echo Hiding [5]
Proses penyisipan pesan pada metode echo hiding menggunakan fungsi domain waktu yang merupakan fungsi Discrete Time Exponential. Yang membatasi dan membedakan masing-masing impulse ialah decay rate.
Gambar 2Discrete Time Exponential [5]
Metode echo hiding menggunakan dua buah sinyal, sinyal pertama merepresentasikan sinyal asli dari berkas audio dan sinyal kedua merepresentasikan echo yang dibentuk. Gambar 3(a) menunjukkan kernel yang menyatakan fungsi untuk menyisipkan pesan yang mempunyai bit 1. Sedangkan Gambar 3(b) merupakan fungsi untuk menyisipkan pesan yang mempunyai bit 0. Sinyal yang menggunakan kernel satu dan kernel nol akan diproses dan menghasilkan sinyal seperti yang dapat dilihat pada Gambar 4.
4
Gambar 4. Proses Penghasilan Echo [5]
Pada Gambar 4 jarak (δb) merupakan jarak di antara sinyal asli dengan echo
yang akan dibentuk. Jarak ini didapatkan dari kernel satu atau kernel nol yang terdapat pada Gambar 2. Kedua kernel ini menggunakan jarak yang berbeda, yaitu
kernel satu menggunakan jarak (δ1), sedangkan kernel nol menggunakan jarak
(δ0).
Sinyal asli akan dipecah atau dibagi-bagi menjadi bagian kecil untuk melakukan peyisipan pesan yang terdiri lebih dari 1 bit. Setiap bagian yang ada dapat disisipkan dengan bit pesan dan dapat dianggap sebagai sebuah sinyal yang independen. Setelah dilakukan proses penyisipan pesan, maka bagian-bagian kecil sinyal asli tersebut akan digabungkan kembali untuk membentuk sinyal awal.
Dalam proses penyisipan pesan dengan algoritma echo hiding, pesan disisipkan ke dalam sinyal asli dengan menambahkan echo. Echo dibuat dengan menggunakan satu dari dua echo kernel, yaitu kernel satu atau kernel nol. Bit 1 disisipkan dan dinyatakan dengan kernel satu dengan echo pada jarak (δ1),
sedangkan bit 0 disisipkan dan dinyatakan dengan kernel nol pada jarak sebesar (δ0).
Langkah-langkah penggunaan algoritma echo hiding dalam sistem adalah sebagai berikut:
1. Hitung jumlah bit audio penampung, kemudian hitung ukuran data pesan dan total binary data.
2. Sinyal asli dari audio penampung dipecah atau dibagi ke dalam segmen-segmen yang lebih kecil yang panjangnya sama dengan pesan yang akan disembunyikan (Gambar 5).
5
3. Sinyal yang baru dibentuk diaplikasikan menjadi dua bagian yaitu kernel 0 dan kernel 1 (Gambar 6).
(a) Sinyal audio (b) “one” kernel (c) “zero” kernel Gambar 6. Echo Kernel [5]
4. Untuk mencapai hasil yang tidak dapat didengar oleh pendengaran manusia, maka dibuat sinyal echo 1 dengan melakukan pembuatan echo pada sinyal asli menggunakan kernel 1 dan membuat sinyal echo 0 dengan menggunakan
kernel 0
5. Sinyal echo 0 dan echo 1 dibentuk menjadi dua buah mixer. Mixer merupakan sinyal yang dipadatkan dari bit pesan yang akan disisipkan, terdiri dari 0 dan 1. Signal mixer 0 merupakan komplemen dari sinyal mixer 1, jumlah antara dua sinyal mixer tersebut selalu 1.
6. Sinyal echo 0 dikalikan dengan sinyal mixer 0 sedangkan sinyal echo 1 akan dikalikan dengan sinyal mixer 1. Hasil perkalian dari masing-masing sinyal
echo dan sinyal mixer ini kemudian dijumlahkan. Transisi antara masing-masing sinyal melandai dan akan memberikan transisi yang tidak kasar antara masing-masing bagian sinyal yang disisipkan dengan bit yang berbeda. Hal ini juga akan mencegah terlihatnya perubahan yang mencolok pada hasil gabungan sinyal (Gambar 7).
6
3. Metode dan Perancangan Sistem
Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang terbagi dalam empat tahapan, yaitu: (1) Analisis kebutuhan dan pengumpulan data, (2) Perancangan sistem, (3) Implementasi sistem, dan (4) Pengujian sistem dan analisis hasil pengujian.
Gambar 8 Tahapan Penelitian
Tahapan penelitian pada Gambar 8, dapat dijelaskan sebagai berikut.
Tahap pertama: identifikasi masalah, yaitu mengidentifikasi masalah-masalah yang akan dibahas, serta mendapatkan data dan literatur yang terkait dengan metode echo hiding untuk proses embedding dan proses extracting. Tahap kedua: perancangan sistem yang meliputi perancangan proses pembagian data dari sebuah
file wave untuk kemudian disisipi dengan teks dalam sistem yang akan dibangun.
Tahap ketiga: implementasi sistem, yaitu membuat aplikasi sesuai perancangan identifikasi masalah, dan pengumpulan data perancangan sistem meliputi perancangan proses embedding dan proses extracting penyisipan pesan text dalam
file audio, dan Tahap keempat: pengujian sistem dan analisis hasil pengujian, yaitu dilakukan pengujian terhadap pengaruh kualitas file audio wave setelah penyisipan file txt, pengujian integritas pesan, pengujian visualisasi frequensi dan pengujian pengaruh perbedaan file audio wave terhadap waktu proses.
Data yang dimasukkan dalam file ini adalah sebuah fileaudio dengan format WAVE (waveform audio file format). Ukuran fileaudio yang akan digunakan tidak dibatasi. Data yang akan disteganografikan kemudian disisipkan ke dalam fileaudio
berupa data berformat textfile (.txt).
Mekanisme kerja dari Echo Hiding secara garis besar terdiri dari dua bagian besar yaitu modul penyisipan dan modul pengekstrakan. Input dari proses penyisipan berupa sinyal audio, data dan yang terakhir adalah key. Key yang dimaksud dalam hal ini adalah parameter-parameter berupa nilai decay yang mewakili bit “0” dan “1” serta nilai skala dari sinyal echo yang akan dibuat. Saat
Analisis Kebutuhan dan Pengumpulan Data
Perancangan Sistem
Implementasi Sistem
7
proses penyisipan berlangsung, maka key yang digunakan berfungsi sebagai acuan dalam melakukan proses pembuatan decay echo yang mewakili bit biner“0” dan “1”. Hasil dari operasi penyisipan ini adalah sebuah sinyal yang telah berisi data
dan key (apabila ikut disisipkan) [5].
Sedangkan untuk proses pengekstrakan yang dibutuhkan hanya sinyal asli saja (apabila key sudah disisipkan dalam sinyal) atau sinyal asli beserta key yang harus di-input-kan. Pada proses pengekstrakan ini, proses yang dilakukan adalah kebalikan dari proses penyisipan, akan tetapi proses yang dilakukan tetap berdasarkan key yang di-input-kan. Apabila key yang di-input-kan salah, maka data yang berhasil diekstrak tidak sama dengan data aslinya [5].
Proses utama dalam sistem yang dibangun, dibedakan menjadi dua yaitu proses embedding dan proses extracting. Pada proses embedding, dilakukan proses penyembunyian file rahasia ke dalam audio. Sedangkan pada proses extracting, akan dilakukan proses extracting terlebih dahulu yaitu mengambil file rahasia yang tersembunyi dalam file audio selanjutnya file rahasia tersebut akan dilakukan proses
extracting.
Gambar 8 menunjukkan proses embedding pada sistem, dapat dijelaskan sebagai berikut. Proses dimulai dengan melakukan input data, data yang akan di-input berupa file audio. Setelah itu, dilakukan pengecekan jumlah bit pada
file audio yang telah di-input pada proses sebelumnya. Langkah berikutnya adalah melakukan input pesan. Kemudian lakukan pengecekan ukuran file pesan dan jumlah binary datanya, selanjutnya dilakukan pengecekan untuk mengetahui besarnya echo yang terdapat pada file tersebut. Kemudian melakukan pengecekan total maksimum echo yang dapat disisipkan atau ditambahkan ke dalam file audio tersebut. Jika jumlah binary data lebih dari jumlah binary data
file pembawa (audio) pesan tersebut, maka user akan diminta untuk memasukkan file audio yang baru. Jika ternyata jumlah binary data yang dimasukkan kurang atau sama dengan jumlah binary data file pembawa (audio), maka proses selanjutnya adalah melakukan proses penyisipan pesan pada audio,
copy kembali bit pada echo untuk dijadikan audio. Buat sebuah audio baru yang berisi pesan dan fileaudio, proses selesai.
8
Input file audio Start
Hitung jumlah bit pada audio
Input data/pesan
Hitung ukuran data/pesan
Hitung total binary data
Hitung total echo
Hitung maksimum echo yang dapat ditambahkan
Ukuran file pesan <= file audio
Proses embedding data/pesan dengan file audio
Output audio
selesai
Menampilkan kelebihan binary data
Tidak
ya
Input file audio Start
Tidak
ya
Apakah ada data yang di sisipkan?
Baca Informasi L = Panjang data
Hitung binary data
selesai
Menampulkan pesan kesalahan
proses ekstraksi data/pesan Dari file audio
Simpan pesan sebagai file baru
Gambar 8 Proses Embedding Sistem Gambar 9 Proses Ekstraksi Sistem
Proses embedding data dalam sistem yang dibangun, dijelaskan sebagai berikut:
Contoh 1:
Audio : Music.wav (16 bit)
Plaintext: abcdefg (7 byte)
Diurutkan berdasarkan binary data:
Character ‘a’ ‘b’ ‘c’ ‘d’ ‘e’ ‘f’ ‘g’
Binary 110
0001
110 0010
110 0011
110 0100
110 0101
110 0110
110 0111
Maka hasil binary yang diperoleh character a,b,c,d,e,f,g adalah : 1100001 1100010 1100011 1100100 1100101 1100110 1100111
Selanjutnya, binary data diurutkan berdasarkan frekuensinya:
Character ‘a’ ‘b’ ‘c’ ‘d’ ‘e’ ‘f’ ‘g’
9
Gambar 10 Blok Sinyal Awal Berdasarkan Binary Data
Pada Gambar 10 sinyal asli dibagi menjadi tujuh bagian yang diberi label a, b, c, d, e, f dan g. Pada bagian a, c, d, dan g akan disisipkan bit 1. Untuk itu akan digunakan kernel 1 sebagai fungsi sistem pada setiap bagian tersebut. Demikian sebaliknya bit 0 akan disisipkan pada bagian b, e, dan f maka akan digunakan
kernel 0 sebagai fungsi sistem pada bagian tersebut. Untuk mencapai hasil yang tidak dapat didengar oleh pendengaran manusia, maka dibuat sinyal echo 1 dengan melakukan pembuatan echo pada sinyal asli menggunakan kernel 1 dan membuat sinyal echo 0 dengan menggunakan kernel 0 sebagai fungsi sistem terhadap sinyal asli. Hasil dari sinyal-sinyal tersebut dapat dilihat pada Gambar 11.
Gambar 11 Pembuatan Sinyal Echo 1 Dan Sinyal Echo 0
Untuk menggabungkan dua sinyal tersebut, maka dibuat dua sinyal mixer. Sinyal mixer terdiri dari nol dan satu tergantung dari bit yang ingin disembunyikan pada bagian dari sinyal asli.
Gambar 12 Sinyal Mixer
10
Sinyal mixer 0 kemudian dikalikan dengan sinyal echo 0 sedangkan sinyal
mixer 1 dikalikan dengan sinyal echo 1, kemudian kedua hasil tersebut dijumlahkan. Sebagai catatan bahwa sinyal mixer 0 merupakan komplemen dari sinyal mixer 1 dan transisi antara masing-masing sinyal adalah bertahap atau melandai. Jumlah antara dua sinyal mixer tersebut selalu 1. Ini akan memberikan transisi yang halus antara masing-masing bagian yang dikodekan dengan bit yang berbeda, dan mencegah perubahan yang mencolok pada hasil gabungan sinyal.
Proses Extracting dalam sistem yang dibangun, dijelaskan sebagai berikut: proses extracting dilakukan dengan membaca byte-byte pada file audio. Dari Contoh 1, diperoleh bit-bit pesan:
Frequency 1 0 1 1 0 0 1
Proses tersebut dilakukan sampai semua bit pesan terbaca. Untuk mengetahui panjangnya pesan, dilakukan dengan membaca informasi L (Gambar 9). Setelah semua bit terkumpul maka dilakukan proses extracting.
Binary :
1100001 1100010 1100011 1100100 1100101 1100110 1100111
Maka diperoleh data asli:
Character ‘a’ ‘b’ ‘c’ ‘d’ ‘e’ ‘f’ ‘g’
Binary 110
0001
110
0010
110
0011
110
0100
110
0101
110
0110
110
0111
Untuk menandai bahwa suatu file memiliki pesan yang tersembunyi, maka pada file cover disisipi suatu bit marker. Bit marker ini digunakan pada saat proses ekstraksi. Pada awal proses ekstraksi, program akan memeriksa apakah file cover
memiliki bit marker, jika benar, maka proses ekstraksi akan dilakukan. Dengan adanya bit marker, program tidak perlu membaca semua bit yang ada di dalam file cover, namun hanya beberapa bit awal. Pada program yang dikembangkan, bit marker yang digunakan adalah:
1 1 0 0 1 0 1 0
4. Hasil dan Pembahasan
11
Gambar 14 Antarmuka Proses Embedding
Gambar 14 menunjukkan tampilan antarmuka aplikasi untuk proses
embedding. Ada empat langkah yang harus dilakukan user dalam proses
embedding: 1) memilih file audio, dengan memilih button browse pada textbox wave file, user dapat memilih file audio format wave; 2) memilih file/pesan yang ingin dirahasiakan berupa file txt, dengan memilih button browse pada textbox document file; 3) proses selanjutnya yaitu, user memilih tombol Embed untuk melakukan proses embedding; 4) setelah melakukan proses embedding, maka akan ditampilkan save embedded audio, user memilih direktori tempat penyimpanan
audio yang telah disisipkan file/pesan, hingga ditampilkan message box audio saved, kemudian pilih button ok untuk menutup message box, dan proses
embedding selesai.
Kode Program 1 Library Echo Hiding
1. 2. 3. 4. 5. 6. 7. 8.
namespace EchoHiding.Library {
public class EchoHiding {
public static void Embed(string waveCoverFile, string waveStegoResultFile, string messageFile)
{ }
Kode Program 1 menjelaskan Library Echo Hiding yang digunakan untuk proses embedding. Pada Library Echo Hiding ada 3 parameter utama yang digunakan dalam proses embedding yaitu string waveCoverFile, string
waveStegoResultFil dan string messageFile. String waveCoverFile
mendeklarasikan objek string baru dengan pointer variabel WaveCoverFile yang menunjukkan file audio wave yang digunakan sebagai media penampung, String waveStegoResultFile mendeklarasikan objek string baru dengan pointer variabel waveStegoResultFile yang menunjukkan file audio wave yang sudah berisi
12
Kode Program 2 Perintah Untuk Proses Embbeding
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
public static string OffSet = "11001010";
FileStream waveFileStream = new FileStream(mediaFile, FileMode.Open); FileStream destinationStream = new FileStream(resultFile, FileMode.Create); WaveStream baru = new WaveStream(waveFileStream, destinationStream); byte[ ] mediaBytes = new byte[baru.Length];
baru.Read(mediaBytes, 0, mediaBytes.Length);
String binaryMessage = BuildBinaryMessage(key, documentFile); WriteEmbed(mediaBytes, binaryMessage);
destinationStream.Write(mediaBytes, 0, mediaBytes.Length);
public int HitungDokumenBit(string filename) {
string DUMMYSTRING = "tester";
string binaryMessage = BuildBinaryMessage(DUMMYSTRING, filename); return binaryMessage.Length;
} }
Kode Program 2 menjelaskan tahap proses embedding, digunakan untuk proses penyisipan pesan. Perintah baris 1 menjelaskan perintah untuk proses penandaan bit, dimana “BitsMarker” berfungsi sebagai penanda. Perintah FileStream waveFileStream = new FileStream digunakan untuk membaca file wave
(perintah pada baris 2).Perintah WaveStream baru = new WaveStream digunakan
untuk membaca stream dalam file wave (perintah pada baris 4). Kemudian untuk
tiap byte pesan (tiap karakter), diubah ke dalam bentuk binary (perintah pada baris 7). Proses penyisipan ke dalam stream wave terjadi dengan menggunakan perintah pada baris 8. Penyimpanan hasil penyisipan ke file wave menggunakan perintah baris 9. Perintah baris 10-15 menjelaskan perintah untuk menghitung jumlah binary
data.
Gambar 15 Antarmuka Proses Extracting
13
proses ekstraksi selesai dijalankan, maka akan ditampilkan total time yang menunjukkan lama waktu yang digunakan untuk proses extracting.
Kode Progam 3 Perintah untuk Proses Extracting
1. 2. 3. 4. 5. 6. 7. 8. 9.
FileStream waveFileStream = new FileStream(mediaFile, FileMode.Open); WaveStream baru = new WaveStream(waveFileStream);
byte[ ] mediaBytes = new byte[baru.Length]; baru.Read(mediaBytes, 0, mediaBytes.Length); byte[ ] isi = ReadEmbed(mediaBytes);
private string StringToBinaryString(byte[] data)
int messageBytesLength = ReadInteger(containers.GetRange(40 + nameBytesLength, 32).ToArray());
OnProgress(this, new ELSBEventArgs() { Current = 0 + nameBytesLength + 32 });
Kode Program 3 menjelaskan perintah untuk proses extracting. Pada proses ini akan dilakukan pengecekan terhadap file yang akan di-extracting terlebih dahulu. Perintah pada baris ke 1, dilakukan pembacaan file stego wave (file Wave
yang telah disisipi file txt). Perintah pada baris ke 2-4 dilakukan pembacaan stream
di dalam file wave. Perintah pada baris ke 5 dilakukan proses pembacaan embedded message. Perintah baris ke 6 menjelaskan perintah untuk merubah byte ke binary. Perintah baris ke 7-9 menjelaskan perintah untuk membaca panjang binary.
Pengujian terhadap sistem steganografi yang dibangun, dilakukan dengan tujuan untuk melihat apakah sistem telah memenuhi konsep steganografi dengan metode echo hiding, terkait pengaruh ukuran file audio dan kualitas file audio. Pengujian sistem dilakukan dengan karakteristik spesifikasi komputer, yang terlihat pada Tabel 1.
Tabel 1 Spesifikasi Komputer CPU Intel Core i5 620M 2.67 GHz
RAM 8 Gb
Hard-disk 626 GB
VGA ATI Mobility Radeon HD 5650 with 1GB VRAM Sistem Operasi Windows 7 Home Premium 64-bit
C# 2012 .net 4 Microsoft Visual Studio 2012 Express
Pengujian pengaruh kualitas file audio wav (Pengujian 1),dilakukan untuk mengetahui kualitas suara dari File wave setelah dilakukan proses penyisipan file txt. Pengujian 1 dilakukan dengan cara melakukan penyisipan file txt dengan ukuran yang berbeda ke dalam file audio wave yang sama. Pengujian 1 akan menunjukkan apakah terjadi perubahan kualitas suara file audio wave setelah penyisipan file txt. Hasil pengujian 1 kepada 30 responden ditunjukkan pada Tabel 2.
Tabel 2 Hasil Pengujian Kualitas File Audio Wave dengan Ukuran File Berbeda
No File audio Ade
Ukuran File Embeded
Respon Ya Tidak
1. Musik.wav 10 Kb 0 30
2. Musik.wav 30 Kb 0 30
3. Musik.wav 50 Kb 0 30
4. Musik.wav 89,3 Kb 0 30
14
Berdasarkan hasil pengujian pada Tabel 2 dapat disimpulkan bahwa besar ukuran pesan (byte) yang disisipkanmenyebabkan perubahan kualitas audio wave.
Semakin besar ukuran pesan (byte), semakin berpengaruh terhadap kualitas file audio yang di-embedding.
Pengujian Integritas Pesan (Pengujian 2), dilakukan dengan cara menghitung nilai hash/checksum dari pesan sebelum disisipkan dengan pesan setelah proses ekstraksi. Pesan dinyatakan utuh jika memiliki nilai yang sama. Perhitungan hash dilakukan dengan menggunakan algoritma MD5 [6]. Hasil
pengujian 2 dapat dilihat pada Tabel 3.
Tabel 3 Hasil Pengujian Integritas Pesan
File Audio Wave
File pesan
Hash awal Hash akhir Kesimpulan
Music.wav Pesan 3da4d498657c9a8b edd866b52bcab12e
3da4d498657c9a8b edd866b52bcab12e
Utuh
Music.wav Pesan1 d6b7a8301168104e 22b51c969ce9ea64
d6b7a8301168104e 22b51c969ce9ea64
Utuh
Music.wav Pesan2 77a557eeb347c23e 714c5b237cfce353
77a557eeb347c23e 714c5b237cfce353
Utuh
Music.wav Pesan3 316831a125fd70f3 6ede1904fa7f84e6
3ac62c7897eda8f1 17bfc45efbb7e777
Utuh
Music.wav Pesan4 64d93413e8e96a98 f0f327bbb52c5308
64d93413e8e96a98 f0f327bbb52c5308
Utuh
Berdasarkan hasil pengujian 2 pada Tabel 3, dapat disimpulkan bahwa aplikasi steganografi yang dibangun berhasil menyisipkan pesan dan mengekstraksi pesan tanpa menyebabkan perubahan/kerusakan pada pesan.
Pengujian Perbandingam Visualisasi Frequensi (Pengujian 3), dilakukan dengan cara membandingkan spectrum frequensi audio yang mempunyai noise
dengan spectrum frequensi audio yang tidak mempunyai noise. Spectrum frequensi audio wave dicapture menggunakan adobe audition. Spectrum frequensi audio wave yang diujikan dapat dilihat pada Gambar 16 dan Gambar 17.
15
Gambar 17Spectrum Frequensi Audio Yang Mempunyai Noise
Berdasarkan hasil pengujian 3 pada Gambar 16 dan Gambar 17, Pengujian Perbandingan Visualisasi Frequensi, dapat disimpulkan bahwa dari spectrum frequensi audio wave terlihat jelas bahwa terjadi noise yang sangat banyak pada Gambar 15. Hal ini dikarenakan file txt yang disembunyikan sangat besar. Berbeda dengan Gambar 14 hampir tidak ada noise yang terlihat, hal ini dikarenakan file txt yang disisipkan ukurannya sangat kecil.
Pengujian Pengaruh Perbedaan File Audio Wave Terhadap Waktu Proses (Pengujian 4), dilakukan dengan tujuan untuk mengetahui pengaruh perbedaan file audio wave terhadap waktu proses. Pengujian 4 dilakukan dengan menggunakan
file audiowave yang mempunyai ukuran berbeda , dengan file pesan txt yang sama. Hasil pengujian 4 dapat dilihat pada Tabel 4, dan dalam bentuk Grafik pada Gambar 18.
Tabel 4 Hasil Rata-Rata Pengujian Pengaruh Perbedaan Ukuran FileAudio WaveTerhadap Waktu Proses
File Audio Wave
Ukuran File Audio Wave
Ukuran File
Pesan (.txt)
Embedding
(detik)
Extracting
(detik)
Jangan menyerah.wav
36,6 Mb 239 Bytes 1,6140923 0,2260129
Sentuh hatiku.wav
48,2 Mb 239 Bytes 1,8421054 0,2930168
16
Gambar 18 Grafik Pengujian Pengaruh Perbedaan File Audio Wave Terhadap Waktu Proses
Gambar 18 menunjukkan grafik pengujian 4, yaitu pengaruh perbedaan file audiowave terhadap waktu proses ukuran file audiowave sebagai sumbu X, lama proses sebagai sumbu Y. Kesimpulan dari hasil pengujian 4 adalah Ukuran file yang disisipkan serta ukuran media penampung, mempengaruhi waktu dalam proses
embedding. Semakin kecil ukuran file audio wave, semakin cepat waktu yang diperlukan untuk melakukan proses penyisipan. Waktu untuk menyisipkan pesan lebih lama dari pada waktu yang dibutuhkan untuk mengekstrak kembali pesan dari
audio. Hal ini disebabkan karena pada proses penyisipan, aplikasi perlu untuk menginisialisasi audio dan file yang akan disisipkan serta kemampuan memori komputer. Waktu yang diperlukan dalam proses ekstraksi jauh lebih pendek dari waktu yang dibutuhkan pada proses embedding.
Pengujian Threshold Berdasarkan Ukuran File (Pengujian 5), dilakukan untuk mengetahui ambang batas (absolute threshold) ukuran file txt yang dapat
di-embedding. Pengujian Threshold Berdasarkan Ukuran File dilakukan dengan cara melakukan penyisipan file txt dengan ukuran yang berbeda ke dalam file audio wave. Pengujian 5 akan menunjukkan batas ambang ukuran file txt yang dapat
di-embedding. Hasil pengujian 5 dapat dilihat pada Tabel 5.
Tabel 5 Hasil Pengujian Threshold Berdasarkan Ukuran File File Audio Wave Ukuran File Audio Wave Ukuran File Pesan (.txt) Embedding (detik) Extracting (detik) Hasil Pengujian
Subjektif Kesimpulan
Suviour King.wav
75,7 Mb 10 KB 43,7095 0,2870164 Baik Diterima
Jangan menyerah.wav (36,6 MB) Sentuh hatiku.wav (48,2 MB) One way.wav (34,6 MB)
Extracting (detik) 0,2260129 0,2930168 0,210012
Embedding (detik) 1,6140923 1,8421054 1,6120922
Ukuran File
Pesan (.txt) 239 239 239
0,2260129 0,2930168 0,210012
1,6140923 1,8421054 1,6120922
239 bytes 239 bytes 239 bytes
0 50 100 150 200 250 300 0 0,2 0,4 0,6 0,8 1 1,2 1,4 1,6 1,8 2
UKURAN FILE PESAN
E X R A C T ING E M B E D D IN G
17 Suviour
King.wav
75,7 Mb 30 KB 128,49834 96
0,7190411 Baik Diterima
Suviour King.wav
75,7 Mb 50 KB 209,15196 28
1,1480657 Baik Diterima
Suviour King.wav
75,7 Mb 70 KB 296,77697 47
1,5920911 Baik Diterima
Suviour King.wav
75,7 Mb 90 KB 382,93390 26
2,0291161 Buruk Diterima
Suviour King.wav
75,7 Mb 110 KB 477,52131 26
2,4731414 Buruk Diterima
Suviour King.wav
75,7 Mb 130 KB 570,29761 91
2,9001659 Buruk Diterima
Suviour King.wav
75,7 Mb 150 KB - - - Pesan terlau
Panjang. Kapasitas 1115082 bit, pesan 1219424
bit
Tabel 5 menunjukkan hasil pengujian threshold berdasarkan ukuran file , ukuran file audio wave yang diuji adalah 75,7 Mb dengan ukuran file pesan (.txt) 10 KB, 30 KB, 50 KB, 70 KB, 90 KB, 110 KB, 130 KB, 150 KB, dapat disimpulkan bahwa pengujian pada audio wave dengan ukuran file pesan 150 kb tidak dapat dilakukan karena jumlah bit pesan melebihi kapasitas bit yang tersedia. Jika ukuran pesan txt yang disisipkan melebihi kapasitas 1115082 bit maka proses
embedding tidak dilakukan dan akan ditampilkan pesan kelebihan kapasitas. Hal ini dikarenakan file txt yang disembunyikan sangat besar. Grafik pencocokan kurva dari data pada Tabel 5 dapat dilihat pada Gambar 17 dan Gambar 18.
Gambar 19 Grafik Proses Embedding
y = 0,0032x2+ 3,9339x + 5,2891
R² = 0,9999
0 100 200 300 400 500 600
0 2 0 4 0 6 0 8 0 1 0 0 1 2 0
Em b ed d in g (d eti k )
Ukuran file pesan E m b e d d i n g
18
Gambar 20 Grafik Proses Extracting
Berdasarkan grafik pada Gambar 19 dan Gambar 20, koefisien determinasi yang paling baik (R2) yaitu mendekati atau sama dengan 1. Pencocokan kurva yang dilakukan dengan data pada Tabel 5 maka diperoleh:
Proses embedding :
y = 0,0032x2 + 3,9339x + 5,2891 (1)
R² = 0,9999
Model pada Persamaan 1 menunjukkan waktu yang diperlukan dalam proses embedding (detik), gradien dari Persamaan 1 adalah 0,9999. Hal ini memberikan informasi bahwa ukuran file pesan yang akan disisipkan mempengaruhi waktu proses embedding. Hal ini terjadi karena kecepatan proses
embedding tergantung pada besarnya pesan yang disembunyikan. Ketergantungan ini dikarenakan proses penyembunyian membutuhkan pembacaan media secara menyeluruh terlebih dahulu untuk menganalisis struktur berkas audio tersebut. Proses extracting :
y = 4E-06x2 + 0,0214x + 0,0729 (2)
R² = 1
Model pada Persamaan 2 menunjukkan waktu yang diperlukan dalam proses extracting (detik), gradien dari Persamaan 2 adalah 1. Hal ini memberikan informasi bahwa besar ukuran file stegano tidak terlalu mempengaruhi waktu proses extracting.
5. Simpulan
Berdasarkan hasil penelitian, pembahasan, pengujian, dan analisis yang dilakukan, dapat disimpulkan sebagai berikut: 1) Hasil pengujian Kualitas File Audio Wave dengan Ukuran File Berbeda menunjukkan bahwa besar ukuran pesan (115 KB) yang disisipkan menyebabkan perubahan kualitas audio wave. Semakin besar ukuran pesan (byte), semakin berpengaruh terhadap kualitas file audio yang di-embedding; 2) Hasil pengujian Integritas Pesan, menunjukkan bahwa aplikasi steganografi yang dibangun berhasil menyisipkan pesan dan mengekstraksi pesan
y = 4E-06x2+ 0,0214x + 0,0729
R² = 1
0 0,5 1 1,5 2 2,5 3
0 2 0 4 0 6 0 8 0 1 0 0 1 2 0
E
e
xtr
ac
ti
n
g
(
d
e
ti
k)
Ukuran file pesan
E x t r a c t i n g
19
tanpa menyebabkan perubahan/kerusakan pada pesan.; 3) File audio hasil
embedding berupa spectrum frequensi audio yang tidak mempunyai noise
menunjukkan hampir tidak ada noise yang terlihat, hal ini dikarenakan filetxt yang disisipkan ukurannya sangat kecil, dibandingkan dengan spectrum frequensi audio
yang mempunyai noise menunjukkan noise yang sangat banyak hal ini dikarenakan filetxt yang disembunyikan sangat besar;4) Proses embedding dengan ukuran file pesan 115 KB, 130 KB, dan135 KB, menunjukkan audio wave hasil
embedding buruk atau noise pada file audio wave mulai kedengaran, hal ini disebabkan karena ukuran pesan txt yang disisipkan semakin besar; 5) Proses
embedding dengan ukuran file pesan 150 KB tidak dapat dilakukan hal ini dikarenakan filetxt yang disembunyikan sangat besar melebihi kapasitas 1115082
bit; 6) Pencocokan kurva proses embedding dengan persamaan y = 0,0032x2 + 3,9339x + 5,2891 memberikan informasi bahwa ukuran file pesan yang akan disisipkan mempengaruhi waktu proses embedding. Hal ini terjadi karena kecepatan proses Embedding tergantung pada besarnya pesan yang disembunyikan. Ketergantungan ini dikarenakan proses penyembunyian membutuhkan pembacaan media secara menyeluruh terlebih dahulu untuk menganalisis struktur berkas audio
tersebut; 7) Pencocokan kurva proses extracting dengan persamaan y = 4E-06x2 + 0,0214x + 0,0729 memberikan informasi bahwa besar ukuran file stegano tidak terlalu mempengaruhi waktu proses extracting;Saran untuk pengembangan sistem ke depan adalah: 1) untuk pengembangan lebih lanjut diharapkan mendukung format lainnya seperti : midi, aac, mp3; 2) pada penelitian selanjutnya tidak hanya mengunakan satu metode saja, tetapi menggunakan lebih dari satu metode yang digabung menjadi satu, seperti metode Phase Coding dan Echo Hiding; 3) dalam proses penyisipan, file yang akan disisipkan tidak hanya terbatas pada format
text, tetapi semua format file dapat disisipkan ke dalam file audio.
6. Daftar Pustaka
[1] Munir, Rinaldi, 2004, IF5054 Kriptografi Steganografi dan Watermarking, Jurnal, Bandung: Program Studi Teknik Informatika Bandung : Institut Teknologi Bandung.
[2] Hapsari, D. D. (2009). “Aplikasi Video Steganography “. 121.
[3] Sugiono, Judi Prajetno. 2008. “Watermarking Pada File Audio PCM Wave Dengan Metode Echo Hiding”.Jurnal, Bali:Konferensi Nasional Sistem dan Informatika. Bali
[4] Piarsa, I Nyoman. 2010. ” Implementasi Watermarkingpada Suara Digital Dengan Metode Echo Hiding”, Jurnal, Bali: Program Studi Teknologi Informasi Fakultas Teknik, Universitas Udayana Kampus Bukit Jimbaran, Bali.
[5] Bender, Walter, Daniel Gruhl, & N. Morimoto. 1996. Techniques for echo hiding. Ibm Systems Journal, Vol 35, Nos 3&4, 1996.