M
M
1
Steganografi membahas bagaimana sebuah
pesan dapat disisipkan ke dalam sebuah berkas
media sehingga pihak ketiga tidak menyadarinya.
Steganografi memanfaatkan keterbatasan sistem
indera manusia seperti mata dan telinga. Dengan
adanya keterbatasan inilah, metoda
steganografi ini dapat diterapkan pada berbagai
media digital. Hasil keluaran dari steganografi ini
memiliki bentuk persepsi yang sama dengan
bentuk aslinya, tentunya persepsi di sini sebatas
oleh kemampuan indera manusia, tetapi tidak oleh
Gambar 1. Perbandingan Java ME dengan komputer atau perangkat pengolah digital lainnya.
teknologi Java lainnya. Ilustrasi mengenai proses steganografi dapat
dilihat pada gambar 3.
Java ME berbasis pada 3 elemen yaitu : Penyembunyian data rahasia ke dalam media
a. Konfigurasi, yang menyediakan libary paling digital mengubah kualitas media tersebut. Kriteria
dasar dan kemampuan virtual memory untuk yang harus diperhatikan dalam penyembunyian
berbagai jenis peralatan elektronik. Terdapat data diantaranya adalah [MUN04]:
dua buah konfigurasi pada Java ME, yaitu 1) Fidelity. Mutu citra penampung tidak jauh
CLDC Connected Limited Device berubah. Setelah penambahan data rahasia,
Configuration) untuk peralatan yang kecil, citra hasil steganografi masih terlihat dengan
dan CDC (Connected Device Configuration) baik. Pengamat tidak mengetahui kalau di
untuk peralatan yang lebih besar. dalam citra tersebut terdapat data rahasia.
b. Profile, yang merupakan kumpulan API 2) Recovery. Data yang disembunyikan harus
spesifik yang mendukung sebuah peralatan dapat diungkapkan kembali (recovery).
elektronik. Karena tujuan steganografi adalah data hiding,
c. Paket-paket tambahan yang berisi kumpulan maka sewaktu-waktu data rahasia di dalam
API berbasis teknologi tertentu citra penampung harus dapat diambil kembali
untuk digunakan lebih lanjut.
2.2 Definisi Steganografi
Steganografi (steganography) adalah ilmu
dan seni menyembunyikan pesan rahasia (hiding
message) sedemikian sehingga keberadaan
(eksistensi) pesan tidak terdeteksi oleh indera
manusia [MUN04]. Kata steganorafi berasal dari
Bahaya 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,
teks, dan video. Data rahasia yang
disembunyikan juga dapat berupa citra, suara, Gambar 3. Diagram Sistem Steganografi
teks, atau video.
Steganografi digital menggunakan media
Steganografi berbeda dengan kriptografi,
digital sebagai wadah penampung, misalnya citra,
dimana pihak ketiga dapat mendeteksi adanya
suara, teks, dan video. Sedangkan data rahasia
data (chipertext), karena hasil dari kriptografi
yang disembunyikan dapat berupa berkas apapun.
berupa data yang berbeda dari bentuk aslinya dan
Media yang telah disisipi data disebut
biasanya datanya seolah-olah berantakan, tetapi stegomessage. Proses penyembunyian data ke
dapat dikembalikan ke bentuk semula. Ilustrasi dalam media disebut penyisipan (embedding),
mengenai perbedaan kriptografi dan steganografi
sedangkan proses sebaliknya disebut ekstraksi.
dapat dilihat pada gambar 2.
Proses tersebut dapat dilihat pada gambar 4.
Penambahan kunci yang bersifat opsional
dimaksudkan untuk lebih meningkatkan
keamanan .
2
2.4 Kode Huffman
Kode Huffman adalah algoritma yang
menggunakan frekuensi/probabilitas kemunculan
dari simbol pada sebuah string sebagai input
dan menghasilkan output berupa prefix code yang
mengkodekan string menggunakan bit paling
Gambar 4. Proses penyisipan dan ekstraksi
sedikit dari seluruh kemungkinan binary prefix
dalam steganografi
code yang mungkin. Algoritma ini dikembangkan
2.3 Metode Modifikasi LSB oleh David A. Huffman pada paper yang
Sistem Steganografi akan menyembunyikan ditulisnya sebagai prasyarat kelulusannya di MIT.
sejumlah informasi dalam suatu berkas dan akan Kode Huffman salah satu algoritma dasar
mengembalikan informasi tersebut kepada untuk kompresi data, yang bertujuan untuk
pengguna yang berhak. Terdapat dua langkah mengurangi jumlah bit yang diperlukan untuk
dalam sistem Steganografi yaitu proses merepresentasikan informasi/pesan.
penyembunyian dan recovery data dari berkas Huffman Coding menggunakan struktur
penampung. Penyembunyian data dilakukan pohon dalam pemrosesannya. Pohon adalah graf
dengan mengganti bit-bit data di dalam segmen tak berarah yang tidak mengandung sirkuit. Di
citra dengan bit-bit data rahasia. Metode yang dalam struktur pohon dikenal terminologi parent
paling sederhana adalah metode modifikasi LSB (orang tua) dan child(anak). Parent (orang tua)
(Least Significant Bit Modification). Pada yaitu sebuah simpul yang memilki lintasan ke
susunan bit di dalam sebuah byte (1 byte = 8 bit), simpul lain dengan tingkatan(level) di bawahnya.
ada bit yang paling berarti (most significant bit Child (anak) yaitu sebuah simpul yang memiliki
atau MSB) dan bit yang paling kurang berarti lintasan ke simpul lain dengan tingkatan (level) di
(least significant bit atau LSB)..Contoh : atasnya. Berdasarkan jumlah anak, pohon dapat
dikategorikan sebagai pohon n ary. Pohon
dengan orang tua yang hanya memiliki satu anak,
disebut pohon uner. Pohon dengan orang tua yang
memiliki dua anak, disebut pohon biner, dan
Bit yang cocok untuk diganti adalah bit seterusnya. Pohon Huffman menggunakan
LSB, sebab perubahan tersebut hanya mengubah struktur pohon biner, yaitu struktur pohon dengan
nilai byte satu lebih tinggi atau satu lebih rendah setiap simpul orang tua yang hanya memiliki
dari nilai sebelumnya. Misalkan byte tersebut maksimal 2 simpul anak. Penyusunan data dalam
menyatakan warna merah, maka perubahan satu struktur pohon Huffman menggunakan kode
bit LSB tidak mengubah warna merah tersebut awalah (prefix code). Kode awalan adalah
secara berarti. Lagi pula, mata manusia tidak himpunan kode (biner) dimana anggota kumpulan
dapat membedakan perubahan yang kecil. yang satu bukan merupakan anggota kumpulan
Misalkan segmen data citra sebelum perubahan: yang lain.
0 0 1 1 0 0 1 1 1 0 1 0 0 0 1 0
1 1 1 0 0 0 1 0 0 1 1 0 1 1 1 1
Segmen data citra setelah 0 1 1 1
disembunyikan:
0 0 1 1 0 0 1 0 1 0 1 0 0 0 1 1
1 1 1 0 0 0 1 1 0 1 1 0 1 1 1 1
Ukuran data yang akan disembunyikan
bergantung pada ukuran citra penampung. Pada
citra 24-bit yang berukuran 256 256 pixel
terdapat 65536 pixel, setiap pixel berukuran 3
byte (komponen RGB), berarti seluruhnya ada
65536 3 = 196608 byte. Karena setiap byte
hanya bisa menyembunyikan satu bit di LSB-
nya, maka ukuran data yang akan disembunyikan
di dalam citra maksimum.
196608/8 = 24576 byte Gambar 5. Pohon Huffman
Ukuran data ini harus dikurangi dengan
panjang nama berkas, karena penyembunyian Encoding adalah cara menyusun string biner
data rahasia tidak hanya menyembunyikan isi dari teks yang ada. Proses encoding untuk satu
data tersebut, tetapi juga nama berkasnya. karakter dimulai dengan membuat pohon
Semakin besar data disembunyikan di dalam Huffman terlebih dahulu. Setelah itu, kode untuk
citra, semakin besar pula kemungkinan data satu karakter dibuat dengan menyusun nama
tersebut rusak akibat manipulasi pada citra string biner yang dibaca dari akar sampai ke daun
penampung. pohon Huffman.
3
2.5 Format Portable Network Graphics (.PNG) kedua bagian tersebut disatukan ke dalam sistem
PNG (Portable Network Graphics) adalah utama. Kedua bagian tidak dapat bekerja secara
salah satu format penyimpanan citra yang bersamaan, pada bagian Encrypt hanya
menggunakan metode pemadatan yang tidak melakukan proses enkripsi dan pengiriman data,
menghilangkan bagian dari citra tersebut agar bagian Decrypt dapat bekerja maka harus
(Inggris lossless compression). menonaktifkan bagian Encrypt kemudian baru
Untuk keperluan pengolahan citra, dapat mengaktifkan bagian Decrypt.
meskipun format PNG bisa dijadikan alternatif Susunan sistem pada sisi pengirim
selama proses pengolahan citra - karena format proses file teks dikompresi terlebih dahulu
ini selain tidak menghilangkan bagian dari citra menggunakan algoritma Huffman Coding.
yang sedang diolah (sehingga penyimpanan Kemudian disisipkan pada file gambar dengan
berulang ulang dari citra tidak akan menurunkan algoritma LSB insertion menjadi file gambar
kualitas citra) dalam format file PNG. Setelah file teks sudah
PNG (Format berkas grafik yang disisipkan pada file gambar, maka file gambar
didukung oleh beberapa web browser. PNG sudah siap dikirim menggunakan fitur MMS pada
mendukung transparansi gambar seperti GIF, telepon selular ke bagian penerima.
berkas PNG bebas paten dan merupakan gambar Susunan sistem pada sisi penerima
bitmap yang terkompresi. proses file PNG diproses dengan Steganografi
Tabel 1. Perbandingan JPEG, GIF dan PNG decoding kemudian dipecah menjadi file image
media dan teks yang telah terkompresi. Kemudian
dari file yang terkompresi tadi akan dilanjutkan
dengan melakukan dekoding huffman agar
memperoleh teks aslinya atau pesan rahasianya.
Berdasarkan data hasil dari pengujian dan
pengukuran sistem maka dapat direalisasikan
analisa fungsional dan perhitungan data parameter
performansi.
4. Analisa Sistem
4.1 Deskripsi Umum Perangkat Lunak
3. Perancangan Perangkat Lunak Analisa Performansi Sistem
3.1 Deskripsi Umum Perangkat Lunak Pengukuran parameter performansi sistem
Dalam perancangan sistem pembuatan aplikasi yang telah dilakukan terdiri dari delay proses
tugas akhir ini karena aplikasinya sederhana enkripsi dan dekripsi.
maka tidak dibutuhkan suatu kondisi yang Waktu Proses : Dimensi
terlalu rumit. Secara umum gambaran sistem Besar dimensi suatu image maka akan makin
adalah pengirim pesan dapat mengkompres atau besar waktu yang dibutuhkan untuk melakukan
mengenkrip pesan yang akan dikirim melalui proses enkripsi dan dekripsi. Hal ini dikarenakan
layanan sms.. Karena pesan yang diterima proses enkripsi dan dekripsi adalah proses
dalam keadaan terkompres dan terenkrip, maka pengacakan dan pengkodean nilai setiap pixel
harus ada pendekompres/pengurai dan pendekrip suatu image, dimana nilai pixel total merupakan
pesan supaya pesan aslinya bisa dibaca oleh hasil dari perkalian dimensi panjang dan lebar
penerima pesan. Sehingga pada handphone suatu image.
receiver (penerima) harus dibuat program
dekompresi dan juga pendekrip. Untuk lebih 4.2 Pengujian Sistem
jelasnya dapat dilihat pada sketsa pengiriman Untuk mendapatkan standarisasi sebuah
sms pada gambar di bawah ini : sistem dibutuhkan suatu pengujian terhadap
fungsional sistem dan pengukuran parameter-
parameter tertentu. Pada tugas akhir ini sistem
yang dirancang dan diimplementeasikan memiliki
poin-poin pengujian sebagai berikut :
4.2.1 Pengujian Tipe Karakter
Dari Percobaan sistem yang dilakukkan
membuktikan bahwa semua tipe karakter baik
Gambar 6. Ilustrasi MMS steganografi huruf besar maupun huruf kecil, angka dan semua
3.2 Implementasi Sistem jenis simbol akan diperoleh jumlah byte yang
Implementasi sistem merupakan bentuk sudah dikompresi atau jumlah bytenya berkurang.
realisasi dari perancangan yang telah dilakukan Dan terbukti akan dapat dikompresi tanpa ada
pada bab sebelumnya. Aplikasi ini terdiri dari yang terlewatkan. Apabila dilakukan dekompres
dua bagian yaitu Encrypt dan Decrypt dimana maka akan menghasilkan outputan yang sama
4
dengan inputannya tadi atau dengan kata lain dan tetap yaitu 128x128 pixel dengan ukuran file
data sudah benar-benar valid. akhir setelah disisipi pesan yaitu 65 KB. Semakin
4.2.2 Pengujian Efisiensi Byte besar ukuran file yang digunakan maka proses
uploading dan downloading akan semakin lama
dan data pengujian akan semakin tidak akurat.
5
karena bersifat lossless compression yaitu file
dapat dipecah kedalam bit dan dapat
dikompresi lagi kebentuk semula.
4. Delay waktu MMS sangat bergantung pada
koneksi jaringan yang sedang digunakan.
5. Dari sistem yang telah dibuat didapatkan
hasil keakuratan yang 100% akurat. Dalam
proses encoding dan decoding akan
menghasilkan output yang sama dengan
inputannya.
Gambar 10. Grafik Pengujian pengujian Delay 5.2 Saran
Waktu komputasi untuk enkripsi Dari Tugas akhir ini masih banyak
Steganografi didapatkan antara 13s 24s. Ketika kekurangan yang masih bisa diperbaiki yaitu dari
karakter antara 10 sampai 50 waktu metode yang digunakan. Untuk kedepannya dapat
komputasinya rata-rata 13986ms dan pada saat digunakan metode lain kemudian dapat
60s 100s waktu komputasinya rata-rata adalah dibandingkan performansinya antara metode ini
22510ms sehingga jika ditotal waktu rata-rata dengan metode lain.
komputasi untuk enkripsi steganografi-nya
adalah 18248ms. DAFTAR PUSTAKA
4.2.7 Waktu Komputasi Dekripsi Steganografi [1] Permana, Raditya. 2008. Implementasi
Huffman Coding untuk Kompresi SMS
Menggunakan J2ME. Malang : Depdiknas
Joint
[2] Shalahuddin, M, Rosa A.S. 2006.
Pemrograman J2ME Belajar Cepat
Pemrograman Perangkat Telekomunikasi
Mobile. Bandung : Penerbit Informatika
[3] Tri, Arya Prabawa. 2008. Kode Huffman.
Bandung : Teknik Informatika ITB
[4] Shalahuddin, M. A, S, Rosa. Pemrograman
Waktu komputasi untuk dekripsi pada
J2ME Belajar Cepat Pemrograman
banyak karakter antara 10-100 byte didapatkan
Perangkat Telekomunikasi Mobile.
delay antara 200ms-350ms. Jadi waktu rata-rata
Informatika. Bandung. 2006.
komputasi untuk enkripsi adalah 264ms.
[5] Munir, Rinaldi. 2006. Kriptografi.
Informatika. Bandung
5. Kesimpulan dan Saran
[6] Supardi, Ir. Yuniar. 2008. Pemrograman
5.1 Kesimpulan
Handphone dengan J2ME. Jakarta : PT.Elex
Setelah melakukan pengujian dan analisa
Media Komputindo
pada sistem berdasarkan nilai dari beberapa
[7] [MIDP 2.0] Mobile Information Device
parameter diperoleh kesimpulan sebagai berikut :
Profile 2.0, Java Community, JSR 118,
1. Karakter yang dimasukkan pada teks input
2002, Internet: http://www.jcp.org (Tanggal
semakin banyak maka berbanding lurus
akses 15 Desember 2010)
dengan waktu prosesnya. Delay dari proses
[8] Wikipedia. Pixel, Internet :
encoding dan decoding tergantung pada
http://en.wikipedia.org/wiki/Pixel (Tanggal
sebuah besar ukuran file dan pixel dari
akses 14 Maret 2011)
image container.
[9] Wikipedia. Bitmap. Internet :
2. Perbedaan bit karakter yang dihasilkan dari
http://en.wikipedia.org/wiki/Bitmap
sebuah sistem ini akan menghasilkan
(Tanggal akses 20 Maret 2011)
perbedaan dengan bit ASCII aslinya. Bila
[10] Wikipedia. Portable Network Graphics.
karakter yang dimasukkan sedikit maka
Internet : http://en.wikipedia.org/wiki/PNG
ukuran file semakin besar daripada ukuran
(Tanggal akses 22 Maret 2011)
file masukan, ini adalah salah satu
[11] Wikipedia.Steganography Internet :
kelemahan dari huffman coding. Namun bila
http://en.wikipedia.org/wiki/Steganography
karakter yang dimasukkan semakin banyak
(Tanggal akses 17 Maret 2011)
maka akan dapat mengompresi file semakin
[12] Multimedia Messaging Service. Internet :
bagus, ini adalah sebuah keuntungan dari
http://en.wikipedia.org/wiki/Multimedia_M
huffman coding.
essaging_Service (Tanggal akses 29 Maret
3. Dari teknik steganografi embedding waktu
2011)
komputasi dan prosesnya bergantung besar
[13] http://www.developer.nokia.com/Communit
ukuran file dan pixel pada image file yang
y/Discussion/ (Tanggal akses 18 Mei 2011)
digunakan. Pada J2ME digunakan file PNG