Anda di halaman 1dari 8

Steganografi Low-Bit Encoding Menggunakan Carrier File

Audio Dan Metode Enkripsi Camellia Untuk Menjamin


Keamanan Data

Gregorius S. Budhi1; Resmana Liem2; Hardi Wijaya3


1,2,3)
Universitas Kristen Petra Jurusan Teknik Informatika
E-Mail: greg@petra.ac.id ; resmana@petra.ac.id

ABSTRAK
Perkembangan dunia teknologi saat ini sangat penting dalam pertukaran informasi yang cepat dan
akurat. Akibatnya banyak orang yang memakai fasilitas internet untuk melakukan proses pertukaran
informasi. Hal ini memunculkan perlu adanya cara untuk mengamankan informasi atau data yang
dipertukarkan melalui internet maupun jaringan komputer jenis lain.
Peneliti mencoba menggunakan teknik penyembunyian data (steganography) Low-Bit Encoding
dikombinasi dengan metode enkripsi data Camellia untuk mengacak data guna menjamin keamanan data
pada saat pertukaran informasi maupun saat penyimpanan data. File audio bertipe WAVE dipakai sebagai
carrier dalam menyembunyikan data.
Aplikasi ini diuji dengan cara mengacak lalu menyembunyikan berbagai macam tipe data ke dalam
file audio, dan mengembalikan data yang disembunyikan dan diacak tersebut ke bentuk semula. Hasil
pengujian berhasil melakukan menunjukkan bahwa proses dapat dilakukan tanpa terjadi kesalahan. Dari
hasil analisa terhadap file audio yang telah ditumpangi data yang disembunyikan, noise terjadi pada jenis
audio WAVE 8 bit sedangkan pada jenis audio WAVE 16 bit tidak menimbulkan noise. Waktu yang
dibutuhkan untuk proses cukup cepat sehingga dapat disimpulkan bahwa aplikasi hasil penelitian ini dapat
dipakai pada dunia nyata.

1. PENDAHULUAN
Saat ini perkembangan jaringan internet sudah maju dan dikenal oleh masyarakat umum.
Pengiriman data banyak dilakukan melalui media elektronik seperti misalnya pada internet melalui e-mail,
dan sebagainya karena data yang dikirmkan melalui internet lebih cepat sampai pada tujuan sehingga lebih
menghemat waktu. Hal penting disini adalah keamanan data yang akan dikirimkan, mengingat internet
adalah media umum yang dipakai banyak orang. Banyak cara yang dapat dilakukan untuk menjaga keamanan
data yang dikirimkan melalui media elektronik. Salah satu cara yang baik dalam menjaga keamanan data
yang dikirimkan dengan cara melakukan enkripsi pada data, dan kemudian menyembunyikan hasilnya pada
suatu media sebagai pembawa (carrier).
Media file audio merupakan salah satu bentuk media yang digunakan untuk menyembunyikan data.
Dengan metode Steganography, maka penyembunyian data di dalam media audio dapat dilakukan, sehingga
keamanan data lebih terjamin kerahasiaan dan keasliannya.
Metode steganografi yang digunakan adalah Low Bit Encoding. Untuk proses enkripsi dan dekripsi
data yang akan disembunyikan, digunakan Camellia Block Chiper 128 bit. Sementara itu untuk lebih
memperkuat pengamanan data, header yang berisi berbagai macam informasi tentang data yang
disembunyikan dienkripsi pula menggunakan XOR Stream Chiper.

2. TEORI PENUNJANG

2.2. Format file WAVE (*.wav)

File WAVE yang digunakan sebagai carrier dari data yang disembunyikan memiliki format seperti
terlihat pada Gambar 1 dan Gambar 2.
Gambar 1. Header file WAVE [14]
Gambar 2. Contoh file WAVE dalam bentuk hexa[14]
2.1. Steganography dan Cryptography

Istilah steganography menjadi sangat populer setelah kasus pemboman gedung WTC di Amerika
Serikat, teroris menyembunyikan pesan-pesan kegiatan terornya dalam berbagai media seperti pada image,
audio, dan video. Novel Da Vinci Code juga sempat mempopulerkan steganography dan cryptography [10].
Steganography berasal dari bahasa Yunani yaitu steganos yang artinya penyamaran atau
persembunyian dan graphein yang artinya adalah tulisan. Penyembunyian pesan ini dilakukan dengan tujuan
agar hanya pihak penerima yang sah saja yang mengetahui bahwa terdapat pesan yang disembunyikan dalam
media penampung [6].
Cryptography secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita [11]. Selain
pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang
berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data,
serta autentikasi data [7].
Bila cryptography digunakan untuk mengubah dan mengacak pesan menjadi bentuk lain yang tidak
bermakna, pada steganography, pesan yang disembunyikan tetap dipertahankan hanya dalam
penyampaiannya disembunyikan dengan berbagai cara pada suatu media penampung. Pesan yang
disampaikan secara cryptography menjadi mencurigakan karena berupa kata-kata yang tidak bermakna,
sedangkan pesan dalam steganography terlihat seperti pesan biasa sehingga tidak mencurigakan[3, 4].
Pada penelitian ini dicoba untuk menggabungkan kekuatan dua macam metode pengamanan data
elektronik ini menjadi sebuah aplikasi pengamanan data elektronik. Harapannya keduanya dapat saling
menutupi kekurangan masing-masing metode dan dapat meningkat derajat keamanan data elektronik.

2.2. Low Bit Encoding Steganography

Low Bit Encoding merupakan salah satu Steganography yang paling banyak dipakai dalam
menyembunyikan pesan. Cara kerjanya adalah dengan memasukkan tiap bit dari pesan yang ingin
disembunyikan ke dalam akhir dari 1 byte pada data audio [13]. Contoh: pada file audio setelah di ubah
menjadi file biner maka menjadi seperti berikut:

(10001100 00011011 10100100 01010101 00110011 11110000 00011000 11000111)

bila ingin disembunyikan huruf A (10000011) maka biner pada audio akan menjadi seperti berikut:

(10001101 00011010 10100100 01010100 00110010 11110000 00011001 11000111).

Cara penyembunyian pesan dengan menggunakan low bit encoding pada file audio WAVE
tergantung dari format file WAVE tersebut apakah file WAVE mempunyai format bit / sample sama dengan 8-
bit atau 16-bit. Jadi penyembunyian pesan diterapkan pada bit terakhir yaitu bit ke-8 atau pada bit ke-16.
2.3. Camellia Block Chiper 128 bit

Camellia adalah sebuah block cipher 128-bit yang dikembangkan oleh NTT dan Mitsubishi Electric
Corporation. Camellia mengenkripsi blok sebesar 128 bit dan dapat memiliki kunci sepanjang 128-, 192-
dan 256-bit. Hal ini seperti yang disyaratkan pada spesifikasi dari kandidat AES [1]. Secara umum proses
enkripsi dan dekripsi dari Camellia Block Cipher dapat dilihat pada Gambar 3 dan Gambar 4.

Gambar 3. Proses enkripsi dari Camellia Block Gambar 4. Proses dekripsi dari Camellia Block
Cipher 128 bit [1] Cipher 128 bit [1]

Desain dari Camellia Block Cipher 128-bit secara detail dapat dilihat pada paper tentang Camellia
Block Cipher ini yang dibuat oleh Kazumaro Aoki dan kawan-kawan [1].

2.1. Pseudorandom Number Generator dari RC4 Stream Cipher

Pseudorandom Number Generator merupakan suatu algoritma yang digunakan untuk menghasilkan
nilai random. Algoritma ini menghasilkan nilai random dengan perhitungan khusus, jadi tidak benar-benar
nilai random yang muncul karena mempunyai distribusi uniform, yang artinya hasil random yang muncul
sama apabila menerima inputan yang sama [12]. Pseudorandom Number Generator yang digunakan pada
penelitian ini adalah yang biasanya digunakan pada metode Stream Cipher RC4, seperti berikut ini:

for i = 0 to 255 do
S[i] = i
T[i] = Key[i mod keylen]

j=0
for i = 0 to 255 do
j = (j + S[i] + T[i]) mod 256
SWAP(S[i], S[j])

Dimana, State Vector S (S-Box) digunakan untuk menampung hasil pseudorandom number generator; Key
diinputkan oleh user dengan panjang sebesar keylen; State Vector T adalah penampung sub-key yang
digenerate dari Key. Hasil dari pseudorandom generator ini digunakan untuk mengenkripsi header yang
menyimpan informasi file yang disembunyikan. Proses enkripsi menggunakan metode XOR Stream
Cipher[12].

3. DESAIN APLIKASI

Blok Diagram desain aplikasi dapat dilihat pada Gambar 5 dan Gambar 6.
Gambar 5. Blok Diagram proses enkripsi dan penyembunyian file data sembarang ke dalam file *.WAV
sebagai carrier-nya.

Gambar 6. Blok Diagram proses pengambilan file data terenkripsi dari file carrier *.WAV dan dilajutkan
dengan proses dekrispsi.
3.1. Header

Header sebesar 736 bit (92 byte) berisi informasi tentang file yang disembunyikan, yaitu:

Nama File, untuk menyimpan Nama dan Type (Extension) dari file. Bila nama file dan
extension lebih dari 30 character maka nama file akan dipotong sehingga nama file + extension
sama dengan 30.
Ukuran File, Untuk menyimpan ukuran file yang disembunyikan pada carrier dalam satuan
byte. Bila besar nilai digit penyimpan nilai untuk ukuran file lebih besar dari 15 digit integer,
maka nilainya akan diisi dengan nol (0), dan besar file yang disimpan dianggap sama dengan
daya tampung maksimal carrier-nya.
Setting cara penyembunyian file, diisi dengan 0 bila setiap bit file data disembunyikan pada 1
bit terakhir dari tiap chunk file WAVE carrier-nya. Diisi dengan 1 bila setiap 2 bit file data
disembunyikan pada 2 bit terakhir dari tiap chunk file WAVE carrier-nya.
Penunjuk PrevMark dan NextMark, masing-masing sebesar 30 character. Bila terisi berarti
data yang disembunyikan adalah bagian dari sebuah file besar yang disimpan secara berurutan
pada beberapa file carrier. Metode sekuensial dari file carrier yang diterapkan disini
mengadopsi metode double link-list. PrevMark berisi nama file carrier penyimpan bagian
sebelumnya, sementara NextMark menyimpan bagian selanjutnya.

Sebagian dari Header ini dienkripsi menggunakan XOR Stream Cipher, yaitu bagian nama dan
ukuran file. Sementara bagian yang menyimpan setting cara penyembunyian file, PrevMark dan NextMark
tidak ikut dienkripsi karena bagian ini baru ditambahkan terakhir dan bukan bagian dari file yang
disembunyikan.

3.2. Cara menyembunyikan file pada carrier-nya

Header disembunyikan pada bit terakhir dari 736 chunk data awal dari file carrier-nya.
Urutannya adalah: Nama File yang dienkripsi dengan XOR Stream Cipher, Ukuran File yang dienkripsi XOR
Stream Cipher, Setting cara penyembunyian file, penunjuk PrevMark dan penunjuk NextMark.
Berikutnya file yang akan disembunyikan, yang telah dienkripsi dengan Camellia Block Cipher
128-bit, disembunyikan per 1 atau 2 bit pada tiap chunk data selanjutnya dari file carrier-nya, sesuai
dengan setting yang telah ditentukan oleh user. Bila file yang akan disembunyikan lebih besar dari kapasitas
carrier-nya maka user harus menambahkan file file carrier baru sampai kapasitas-nya mencukupi, dimana
format bit/sample dari semua carrier harus sama. Interface untuk penyembunyian file dapat dilihat pada
Gambar 7.
Gambar 7. Interface untuk proses penyembunyian file pada carrier-nya.
3.3. Cara memisahkan file yang disembunyikan dari carrier-nya

Langkah awal, user harus memilih file carrier mana yang akan diekstrak. Bila file carrier lebih dari
sebuah, user dapat memilih sembarang dari salah satu file itu. Setelah mengetahui bit/sample dari file carrier,
bagian Header (bukan Header File dari Carrier) dibaca untuk melihat apakah PrevMark dan NextMark terisi
atau tidak. Bila terisi, itu berarti ada lebih dari satu file carrier yang digunakan untuk menyembunyikan file
yang disembunyikan, sehingga perlu dibentuk list of carrier files. List ini dibentuk dengan cara melacak file
carrier pertama (PrevMark = NULL; NextMark terisi), kemudian dengan mengikuti urutan NextMark, nama
nama file carrier akan ditulis pada list of carrier files, sampai akhirnya ditemukan sebuah file carrier yang
bagian NextMark sama dengan NULL. Semua file carrier sekuensial ini harus berada pada folder yang sama.
Setelah list of carrier files terbentuk atau diketahui bahwa file carrier cuma 1 buah, file yang masih
terenkripsi, yang tersembunyi didalamnya, diekstrak. Kemudian hasil ekstrak file tersebut didekripsi
menggunakan Camellia Block Cipher 128-bit. Interface untuk proses ini dapat dilihat pada Gambar 8.

Gambar 8. Interface untuk proses memisahkan file yang disembunyikan dari carrier-nya

4. PENGUJIAN SISTEM

Pengujian dilakukan dengan menggunakan komputer dengan spesifikasi berikut:


Processor: Intel Core 2 Duo T5200 @ 1,60 GHz
Memory: 1024 MB DDR2
VGA Card: ATI Radeon X1400 256 MB
Sound Card: Creative Sound Blaster Live! 24-bit
Sistem Operasi: Microsoft Windows XP Home Edition
Compiler: Borland Delphi 7

Pada pengujian, hal pertama yang dilakukan adalah menguji proses kriptografi dengan Camellia
Block Cipher 128-bit. Pengujian dilakukan dengan cara mengenkripsi file mp3 yang bernama
Ari_LAsso_Aku_Dan_Dirimu.mp3. Hasil dekripsi dari file Ari_LAsso_Aku_Dan_Dirimu.mp3
terenkripsi menunjukkan bahwa file tersebut tidak rusak dan dapat dijalankan dengan baik pada modul Media
Player Sederhana yang sengaja dibuat untuk pengujian pengujian dari penelitian ini. Interface dari media
player sederhana tersebut dapat dilihap pada Gambar 9.
Gambar 9. Interface dari Media Player Sederhana (Dirotasi)
Pengujian selanjutnya adalah menguji proses Steganografi Low Bit Encoding dengan file carrier
WAVE (*.wav). Pengujian tentang efek perubahan file carrier WAVE akibat penyembunyian file lain
didalamnya dapat dilihat pada Table 1.

Tabel 1. Hasil pengujian efek perubahan file carrier WAVE setelah ditumpangi file lain.
N Status Bentuk Spectrum WAVE Uji Manual
Deskripsi
o File (software: Gold Wave) (didengarkan)

Asli
WAVE 16-bit /
Perbedaan tidak
1 Sample dengan
terdengar
metode 1-bit terakhir.
Carrier

Asli
WAVE 16-bit /
Perbedaan tidak
2 Sample dengan
terdengar
metode 2-bit terakhir.
Carrier

Asli
Terdengar
WAVE 8-bit / Sample
sedikit sekali
3 dengan Metode 1-bit
Noise pada file
terakhir.
WAVE Carrier
Carrier

Asli Terdengar
WAVE 8-bit / Sample Noise cukup
4 dengan metode 2-bit kentara pada
terakhir. file WAVE
Carrier Carrier

Pengujian terakhir yang dilakukan adalah untuk menguji kecepatan proses aplikasi, mulai dari proses
enkripsi, penyembunyian data, pengeluaran data dan dekripsi. Pada pengujian ini sekaligus diuji kemampuan
aplikasi untuk menyembunyikan sebuah file pada lebih dari satu buah file carrier. Hasil pengujian dapat
dilihat pada Tabel 2.

Tabel 2. Hasil pengujian kecepatan proses dan kemapuan penggunaan lebih dari 1 file carrier.
Ukuran Data
Proses 1 mb 3mb 5mb 10mb
(1 file carrier) (1 file carrier) (2 file carrier) (3 file carrier)
Aplikasi dengan setting penyembunyian data pada 1 bit terakhir
Enkripsi 00:00:46 00:02:16 00:04:16 00:08:45
Menyembunyikan 00:01:26 00:04:07 00:07:44 00:16:16
Mengeluarkan 00:00:19 00:00:56 00:01:45 00:03:33
Dekripsi 00:01:04 00:04:47 00:06:05 00:12:10
Aplikasi dengan setting penyembunyian data pada 2 bit terakhir
Enkripsi 00:00:46 00:02:16 00:04:17 00:09:19
Menyembunyikan 00:00:45 00:02:03 00:04:06 00:08:13
Mengeluarkan 00:00:17 00:00:49 00:01:30 00:03:08
Deskripsi 00:01:04 00:03:09 00:05:56 00:12:16

5. KESIMPULAN DAN SARAN PENGEMBANGAN

5.1. Kesimpulan

a. Hasil pengujian efek yang terjadi pada file carrier akibat penyembunyian file ke dalamnya untuk file
carrier dengan format 16-bit / Sample, menunjukkan bahwa efek penyembunyian data tidak
menimbulkan perbedaan berarti pada bentuk spektrum-nya dan bila didengarkan secara langsung sama
sekali tidak ada bedanya. Dari sini dapat disimpulkan bahwa file WAVE dengan format 16-bit / Sample
sangat cocok bila digunakan sebagai file carrier.
b. Sementara itu untuk file carrier dengan format 8-bit / Sample muncul sedikit noise terutama bila
penyembunyian data dilakukan pada 2 bit terakhir dari setiap chunk data pada file carrier. Noise yang
muncul pada file carrier ini tidak berbeda dengan noise noise yang muncul pada rekaman tape
recorder yang dirubah ke dalam bentuk file WAVE. Dari sini dapat disimpulkan bahwa file WAVE dengan
format 8-bit / Sample masih dapat digunakan sebagai file carrier.
c. Dari hasil pengujian kecepatan proses yang tidak terlalu lambat, dapat disimpulkan bahwa aplikasi masih
layak untuk diaplikasikan pada dunia nyata.
d. Secara keseluruhan aplikasi pengamanan file data yang dibuat dengan mengkombinasi metode
Steganografi dan Kriptografi dapat menjamin Security Service berikut ini: Data Confidentiality, Data
Integrity, Authentication, Access Control dan Existence Hide.

5.2. Saran Pengembangan

a. Penelitian terhadap format media lain yang dapat digunakan untuk menyembunyikan data. Misal: pada
media audio yang lain, media movie, media gambar, atau media lain yang memungkinkan untuk
penyembunyian data.
b. Penelitian menggunakan metode selain Low Bit Encoding untuk menyembunyikan data kedalam audio,
seperti metode Parity Encoding, Spread Spectrum dan lain sebagainya.
c. Penelitian menggabungkan metode kompresi, kriptografi, dan steganografi untuk meningkatkan efisiensi
dari file carrier dan keamanan data.

6. DAFTAR PUSTAKA

[1] Aoki K., T. Ichikawa, M. Kanda, M. Matsui, S. Moriai, J. Nakajima, and T. Tokita, Specification of Camellia a 128-
bit Block Cipher, 2000. http://info.isl.ntt.co.jp/camellia/. (12 Maret 2007)
[2] Cacciaguerra, S., and S. Feretti, Data Hiding: Steganography and copyright marking, 2005.
http://www.cs.unibo.it/~scacciag/home_files/teach/datahiding.pdf ( 3 Maret 2007 )
[3] Clair, B., Steganography: How to send a secret message, 2001.
http://www.strangehorizons.com/2001/20011008/Steganography.shtml ( 3 Maret 2007 )
[4] Cole, E., Hiding in Plain Sight, New York: John Willey & Sons, Inc Publishers, 2003
[5] Felix, F., Dasar Kriptografi, 2006. http://ilmukomputer.com/2006/08/20/dasar-kripografi/ (7 Maret 2007)
[6] Johnson, Neil F., D. Zoran and J. Sushil, Information Hiding: Steganography and watermarking attacks and
countermeasures. USA: Kluwer Academic Publishers, 2002.
[7] Menezes, A., P. Oorshcot and S. Vanstone, Handbook of Applied Cryptography, Boca Raton,FL:CRC Press,1997.
[8] Munir, R., Kriptografi, Bandung: Informatika Bandung, 2006
[9] Piper, F., Cryptography, Oxford: Oxford University Press Publishers, 2002
[10] Radcliff, D., Steganography: Hidden data, 2002
http://www.computerworld.com/securitytopics/story/0,10801,71726,00.html (12 Maret 2007)
[11] Schneier, B., Applied Cryptography, New York: Wiley, 1996
[12] Stalling, W., Cryptography and Network Security, 3rd, Upper Saddle River, NJ: Prentice Hall, Inc., 2003
[13] Sterling, N., S. Wahl and S. Summers, Spread Spectrum Steganography, 2005
http://cs.uccs.edu/~cs591/studentproj/projF2005/sasummer/doc/SpreadSpectrum1.ppt (20 Maret 2007)
[14] WAVE PCM soundfile format (n.d.), 2006
http://ccrma.stanford.edu/CCRMA/Courses/422/projects/WaveFormat (20 Maret 2007)

Anda mungkin juga menyukai