Aplikasi Steganografi
Untuk Penyisipan Data Teks
Ke dalam Citra Digital
Temmy Maradilla
Universitas Gunadarma
ABSTRAKSI
Steganografi dalam jaman modern berarti teknik dan seni menyembunyikan
informasi dan data digital dibalik informasi digital lain. Dalam steganografi modern
ada berbagai macam teknik yang dapat digunakan untuk menyembunyikan suatu
informasi antara lain adalah Modifikasi Least Significant Bit (LSB), Metode Discrete
Cosine Transform (DCT) dan Metode RedGreenBlue Level (RGB). Untuk itu,
penulisan ini akan membahas tentang pembuatan suatu aplikasi Steganografi untuk
penyisipan informasi dengan menggunakan metode RGB, LSB dan DCT tersebut.
Pengembangan aplikasi ini dilakukan melalui beberapa tahap, tahap pertama
perancangan aplikasi, pembuatan program serta tahap implementasi program.
Perancangan aplikasi dilakukan dengan struktur navigasi. Adapun perangkat yang
digunakan pada tahapan pembuatan program adalah J2SE sebagai bahasa
pemrograman untuk aplikasi dan NetBeans sebagai tools bantu. Kemudian
menggunakan Modifikasi Least Significant Bit (LSB), Metode Discrete Cosine
Transform (DCT) dan Metode RedGreenBlue Level (RGB) sebagai dasar konsep dari
Steganografi-nya. Tahap akhir dilakukan pengujian terhadap aplikasi dengan
beberapa data uji yang telah disediakan.
Aplikasi Steganografi ini dapat menyembunyikan suatu informasi atau pesan
rahasia berupa teks ke dalam media gambar digital dengan menggunakan metode
LSB, metode DCT dan metode RGB. Aplikasi steganografi ini dapat digunakan
untuk menghemat media penyimpanan, dan untuk menjaga keamanan informasi dari
pencurian atau dari orang yang tidak berhak untuk mengetahuinya.
Kata kunci : Steganografi, Metode RGB, Modifikasi LSB, Java
PENDAHULUAN
Latar Belakang Masalah
Kemajuan cara berpikir manusia membuat masyarakat menyadari bahwa
teknologi informasi merupakan salah satu tool penting dalam peradaban manusia
untuk mengatasi (sebagian) masalah derasnya arus informasi. Teknologi informasi
(dan komunikasi) saat ini adalah bagian penting dalam manajemen informasi. Selain
memiliki potensi dalam memfilter data dan mengolah menjadi informasi, teknologi
informasi mampu menyimpannya dengan jumlah kapasitas jauh lebih banyak dari
cara-cara manual. Salah satu pekerjaan manusia yang akan sangat terbantu dengan
hadirnya teknologi informasi, dengan keuntungan yang ditawarkan, yaitu pekerjaan
manusia dalam menyembunyikan pesan.
Manusia telah menyembunyikan pesan rahasia dengan berbagai metode dan
variasi. Salah satunya adalah Steganografi. Steganografi merupakan ilmu yang
mempelajari, meneliti, dan mengembangkan seni menyembunyikan sesuatu
informasi. Steganografi berasal dari bahasa Yunani yang berarti “tulisan
tersembunyi”. Zaman dahulu kegiatan ini sudah sering dilakukan untuk
menyampaikan pesan-pesan rahasia. Misalnya dengan cara mentatoo pesan rahasia di
kulit kepala para pembawa pesan. Sebelumnya kepala si pembawa pesan digunduli
dahulu, kemudian di tatoo. Setelah rambutnya tumbuh maka pesan tadi tertutup oleh
rambut, kemudian si pembawa pesan dilengkapi dengan pesan palsu di tangannya
sebagai umpan.
Selain itu, banyak teknik lainnya seperti penulisan dengan tinta yang tidak
tampak (invisible ink), titik-titik mikro (microdot), penyusunan karakter, dan banyak
lagi kejadian-kejadian besar masa lalu seperti peperangan juga terukir salah satunya
dengan peran serta steganografi di dalamnya. Seiring dengan perkembangan jaman,
metode steganografi semakin lama semakin berkembang.
Teknologi komputer memberikan kontribusi baru dalam revolusi
menyembunyikan pesan. Steganografi pada era informasi digital merupakan teknik
dan seni menyembunyikan informasi dan data digital dibalik informasi digital lain.
File media merupakan komponen penting pada proses penyembunyian informasi ini.
Dengan file yang terlihat sama sekali tidak mencurigakan, data anda yang sebenarnya
akan tetap tidak terdeteksi dengan mata telanjang. Secara teori, semua file umum
yang ada di dalam komputer dapat digunakan sebagai media, seperti file gambar
berformat PNG (Portable Network Graphics), JPEG (Joint Photographic Experts
Group), GIF (Graphics Interchange Format), BMP (Bitmap), atau di dalam musik
MP3 (Media Player), atau bahkan di dalam sebuah film dengan format WAV
(Waveform Audio Format) atau AVI (Audio Video Interleave) semua bisa dijadikan
tempat bersembunyi, selama file media tersebut jika dimodifikasi, maka kualitas dan
tampilan file yang sesungguhnya tidak akan terganggu banyak. Kemudian pada data
digital, teknik-teknik yang sering digunakan dalam steganografi modern antara lain :
Modifikasi Least Significant Bit (LSB), Mask and Filtering, Algoritma kompresi dan
transformasi, dan Teknik Pixel Mapping yang dikenal dengan Metode Modifikasi
RedGreenBlue (RGB) Level.
Didorong oleh hal-hal tersebut, maka penulis tertarik untuk membahas tentang
pembuatan sebuah aplikasi program Steganografi. Program aplikasi ini akan
menyediakan kemudahan penyisipan pesan, yaitu berupa teks, ke dalam sebuah file
digital, dan menganalisa penghematan kapasitas ukuran file.
Tujuan Penelitian
Adapun tujuan dari penulisan ini adalah untuk melakukan penelitian dan
mengimplementasikan sebuah aplikasi steganografi serta melihat apakah data hiding
dengan teknik steganografi ini dapat digunakan untuk penghematan media
penyimpanan. Program aplikasi ini juga bertujuan untuk menjaga keamanan data
yang dibuat oleh seseorang.
Batasan Masalah
Dalam skripsi ini, penulisan dibatasi pada pembuatan sebuah program aplikasi
untuk menyembunyikan informasi yang berupa teks kedalam media gambar digital
berbantuan bahasa pemrograman Java dan tools pembangun NetBeans 6.0. Pesan
rahasia tersebut dapat dibuka dengan menggunakan program yang sama dengan
program pada saat penyisipan. Adapun teknik yang digunakan untuk
menyembunyikan pesan pada gambar digital adalah teknik modifikasi LSB, metode
DCT dan metode RGB Level. Tipe file gambar yang digunakan untuk program
Steganografi ini bertipe PNG dan JPEG.
LANDASAN TEORI
Steganografi
Steganografi adalah teknik penyembunyian data rahasia ke dalam sebuah
media sehingga data yang disembunyikan sulit dikenali oleh indera penglihatan
manusia. Steganografi membutuhkan dua properti yaitu media penampung dan data
rahasia yang akan disembunyikan. Steganografi digital menggunakan media digital
sebagai media penampung, misal gambar, suara, teks dan video.
Data rahasia yang disembunyikan juga dapat berupa gambar, suara, teks atau
video. Penggunaan steganografi antara lain bertujuan untuk menyamarkan eksistensi
atau keberadaan data rahasia, sehingga sulit dideteksi dan dilindungi hak cipta suatu
produk. Steganografi dapat dipandang sebagai kelanjutan kriptografi. Jika pada
kriptografi data yang telah disandikan (ciphertext) tetap tersedia, maka dengan
steganografi ciphertext tersebut dapat disembunyikan sehingga pihak ketiga tidak
mengetahui keberadaannya.
Secara garis besar, teknik penyembunyian data dengan steganografi adalah
dengan cara menyisipkan sepotong demi sepotong informasi asli pada sebuah media,
sehingga informasi tersebut tampak kalah dominan dengan media pelindungnya.
Dalam data digital, teknik-teknik yang sering digunakan dalam steganografi
modern ada empat jenis metode, yaitu :
1. Least Significant Bit Insertion (LSB)
2. Teknik Pixel Mapping (Metode RGB Level)
3. Mask and Filtering
4. Algorithms Compression and Transformation
Pada penulisan ini, penulis membatasi teknik yang digunakan adalah Teknik
Modifikasi LSB, Metode DCT yang termasuk dalam metode LSB, Teknik Pixel
Mapping atau Metode RGB Level yang merupakan pengembangan dari teknik Grey
Level Modification (GLM).
Metode Penelitian
Metode yang digunakan penulis dalam melakukan penulisan ini secara umum
didasarkan pada konsep pengembangan aplikasi. Penulis memulai penelititan dengan
pendekatan perancangan (desain), yang terdiri dari perancangan koding (dengan
flowchart) dan perancangan antarmuka (dengan story board dan struktur navigasi).
Selanjutnya, penulis melanjutkan penelitian pada proses penulisan listing program,
untuk penulisan program penulis menggunakan bahasa pemrograman Java. Tahap
selanjutnya, penulis melakukan testing dan implementasi aplikasi, dengan beberapa
eksperimen. Pada eksperimen yang dilakukan, penulis menggunakan satu sampel uji
berupa gambar dan beberapa file teks dengan ukuran yang berbeda. Eksperimen-
eksperimen yang dilakukan pada program steganografi ini bertujuan untuk
mengetahui ukuran file gambar sebelum dan sesudah disisipkan teks dengan
menggunakan metode LSB, metode DCT, dan metode RGB.
PEMBAHASAN DAN EKSPERIMEN
Konsep Aplikasi
Ide dari teknik modifikasi LSB, metode DCT, dan metode RGB ini adalah
urutan dari warna-warna di peta warna (colourmap) pada sebuah berkas bitmap yang
tidak mempengaruhi gambar ketika ditampilkan. Dua gambar dengan urutan warna
yang berbeda pada peta warna akan terlihat sama. Dengan demikian sebuah gambar
yang belum disisipi pesan dengan gambar yang sudah disisipi pesan akan terlihat
sama.
Struktur sistem steganografi yang digunakan dalam aplikasi ini terdiri dari :
Gambar 1 Struktur Sistem Steganografi
Struktur tersebut akan diubah ke dalam algoritma yang akan
diimplementasikan dalam bentuk sebuah aplikasi sederhana, seperti pada gambar
dibawah ini.
Gambar 2 Tampilan Aplikasi
a. Menu File, berisi :
- File Gambar, yang terdiri dari menu Gambar asli yang digunakan untuk mengambil
gambar yang akan digunakan sebagai media penampung, gambar tersebut akan
tampil dalam frame gambar. Menu RGB untuk membuka objek stego yang
menggunakan metode RGB level, gambar RGB tersebut akan tampil dalam frame
RGB. Menu LSB untuk membuka objek stego yang menggunakan metode LSB,
gambar LSB tersebut akan tampil dalam frame LSB. Menu DCT untuk membuka
objek stego yang menggunakan metode DCT, gambar DCT tersebut akan tampil
dalam frame DCT.
- File Teks, digunakan untuk mengambil teks yang akan disisipkan, teks tersebut akan
ditampilkan dalam frame file teks.
- Simpan File, digunakan untuk menyimpan file dengan menggunakan metode RGB,
LSB, dan DCT secara masing-masing.
- Simpan PNG, digunakan untuk menyimpan file RGB dan LSB secara bersama. Info
tentang penyimpanan File dan PNG tersebut akan tampil dalam frame Info.
- Exit, untuk keluar dari program steganografi.
b. Menu Extract, berisi :
- Extract RGB, digunakan untuk membaca pesan rahasia dari objek stego yang
menggunakan metode RGB.
- Extract LSB, digunakan untuk membaca pesan rahasia dari objek stego yang
menggunakan metode LSB.
- Extract DCT, digunakan untuk membaca pesan rahasia dari objek stego yang
menggunakan metode DCT.
c. Menu Info, berisi :
- Help, digunakan untuk membuka form Help yang berisi tentang cara penggunaan
aplikasi steganografi ini.
- About, digunakan untuk menampilkan form About yang berisi informasi tentang
pembuat program.
Eksperimen
Eksperimen yang dilakukan pada program steganografi ini bertujuan untuk
mengetahui besar ukuran file yang digunakan sebelum dan sesudah disisipi file lain.
Eksperimen pertama dilakukan dengan menggunakan file wadah (file gambar)
berdimensi 279 x 210 pixel, bertipe PNG, berukuran 100 Kb, dan menggunakan
metode RGB Level. Jenis file yang disisipkan kedalam file wadah adalah file teks
bertipe txt.
Tabel 1 Besar Ukuran File Sebelum dan Sesudah Disisipi File Menggunakan Metode
RGB dan Modifikasi LSB
File Sisip 1 5 7 9 11 15 19
Sebelum 100 100 100 100 100 100 100
Sesudah
RGB
LSB
107
106
111
111
110
113
109
115
108*
117
108
119
108
119
File Sisip 23 27 31 33 39 43 45
Sebelum 100 100 100 100 100 100 100
108 108 108 108 108 108 108
Sesudah
RGB
LSB 119 119 119 119 120 121 121*
Dari eksperimen ternyata dengan menggunakan metode modifikasi LSB file
wadah dapat menampung teks lebih banyak. Ukuran file gambar yang dihasilkan
setelah teks disisipkan juga tidak terlalu besar. Sehingga metode modifikasi LSB ini
baik digunakan dalam pembuatan program steganografi, yang bertujuan untuk
menghemat media penyimpanan. Dari eksperimen ketiga dapat dibuat grafik yang
dapat dilihat pada gambar 2.
Gambar 2 Besar Ukuran File Sebelum dan Sesudah Disisipi File
Menggunakan Metode RGB dan Modifikasi LSB
Eksperimen selanjutnya dilakukan dengan menggunakan file wadah (file
gambar) berdimensi 1045 x 643 pixel, bertipe Joint Photographic Experts Group
(JPEG), berukuran 236 Kb, menggunakan metode DCT, dan dilakukan
pengkompresian file dengan ratio yang berubah-ubah. Sedangkan jenis file yang
disisipkan kedalam file wadah adalah file teks bertipe txt dengan ukuran yang sama.
Hasil dari eksperimen yang dilakukan dapat dilihat pada tabel 2.
Tabel 2 Besar Ukuran File Gambar Asli yang Dikompresi Menggunakan Ratio
Kompresi yang Berubah-Ubah dengan Ukuran File Gambar yang Telah Dikompresi
Setelah Disisipi Teks berukuran 1 Kb
Kompresi (dalam %) 0 25 50 75 100
Ukuran File Gambar Asli yang
Dikompresi (dalam Kb)
236 124 69.7 12.3 1.97
Ukuran File Gambar yang
Telah Dikompresi Setelah
Disisipkan Teks
236 133 77.7 14.6 Tidak
Bisa
Dari eksperimen ternyata file gambar dengan kompresi 0 dan 25% tidak
terlalu mengalami perubahan pada kualitas gambar setelah teksnya disisipkan,
sedangkan file gambar dengan kompresi 50% dan 75% mengalami perubahan pada
kualitas gambarnya yang dapat terlihat oleh mata manusia. File gambar asli akan
berukuran 1.97 Kb jika dilakukan kompresi sebesar 100%, namun file gambar
tersebut tidak dapat menampung teks yang akan disisipkan.
Eksperimen selanjutnya dilakukan dengan menggunakan file wadah (file
gambar) dengan ukuran gambar berubah-ubah, bertipe Joint Photographic Experts
Group (JPEG),menggunakan metode DCT, dan dilakukan pengkompresian file
dengan ratio yang sama yaitu 25%. Sedangkan jenis file yang disisipkan kedalam file
wadah adalah file teks bertipe txt. Hasil dari eksperimen yang dilakukan dapat dilihat
pada tabel 3.
Tabel 3 Ukuran File Gambar Asli yang Diubah-ubah dengan Ukuran Gambar Setelah
dilakukan Kompresi 25% dan Disisipkan Teks (dalam Kb)
File Sisip 1 3 5 7
Ukuran File Gambar Asli yang
Diubah - ubah
75.7 125 242 597
Ukuran File Gambar yang
Telah Dikompresi Setelah
Disisipkan Teks
32.9 73.9 34.8 80.1
Dari hasil yang didapat keenam tabel diatas dapat diambil suatu kesimpulan
bahwa berapa pun besarnya ukuran teks yang disisipkan ke dalam file wadah tidak
akan terlalu mempengaruhi besar dari file wadah tersebut. Hal ini berlaku selama
besar teks yang disisipkan tidak melebihi ukuran maksimum teks yang dapat
ditampung dengan masing-masing metode yang digunakan. Bila teks yang disisipkan
besarnya melebihi dari ukuran maksimumnya maka teks yang akan disisipkan ke
dalam file wadah akan terpotong.
PENUTUP
Kesimpulan
Program aplikasi steganografi ini dapat digunakan untuk menyembunyikan
informasi berupa teks ke dalam objek digital. Objek digital yang digunakan sebagai
objek penampung harus merupakan objek gambar dengan ekstensi PNG dan JPEG.
Ukuran teks yang akan disembunyikan tidak dapat lebih besar dari ukuran maksimum
teks dari masing-masing metode. Ukuran maksimum teks dapat dihitung dengan
rumus yang telah ditentukan pada setiap metode. Teks yang disembunyikan dapat
berupa teks yang langsung diketikkan ataupun berupa file teks.
Setelah dilakukan beberapa eksperimen dengan menggunakan metode RGB,
metode LSB, dan metode DCT, ternyata metode yang paling baik digunakan untuk
program steganografi ini adalah metode LSB, karena dengan metode LSB ukuran
teks yang dapat disisipkan kedalam gambar lebih besar dan perubahan ukuran gambar
setelah disisipkan teks tidak terlalu besar, sehingga dapat menghemat media
penyimpanan. Selain itu, juga dapat dilakukan penghematan file yang cukup
signifikan, dengan konsekuensi kecerahan gambar yang dihasilkan pada objek stego
ini sedikit berkurang. Agar si penerima objek steganografi dapat melihat informasi
yang disembunyikan, maka ia harus mempunyai password yang telah ditentukan
berikut dengan aplikasi steganografi ini.
Adapun kelebihan dari aplikasi steganografi ini yaitu dapat digunakan untuk
menghemat media penyimpanan. Selain itu, juga dapat digunakan untuk menjaga
keamanan informasi yang telah dibuat oleh seseorang
Saran
Dalam pembuatan aplikasi ini masih banyak terdapat kekurangan yang
disebabkan karena keterbatasan waktu dan kemampuan penulis. Diantaranya tidak
mampunya aplikasi ini menyembunyikan file sisip yang ukurannya lebih besar dari
gambar penampungnya Oleh karena itu dalam penulisan tugas akhir ini penulis
menyampaikan beberapa saran yang diharapkan berguna bagi pembaca guna
mengembangkan program ini lebih lanjut, diantaranya adalah memperbaiki atau
mengembangkan program yang dibuat misalnya menggunakan metode yang lebih
efisien, menambahkan jenis media digital sebagai “wadah” dari pesan rahasia,
mengubah keamanan datanya dengan teknik yang lebih canggih lagi, mengenkripsi
pesan yang dirahasiakan, informasi yang akan disimpan dapat lebih besar lagi seperti
dalam format video maupun lagu. Semoga aplikasi ini dapat berguna dan lebih baik
lagi dalam pengembangannya nanti.
DAFTAR PUSTAKA
[1.] Abdul Kadir. Dasar Pemrograman Java 2. Penerbit Andi, Yogyakarta, 2004.
[2.] Ady Wicaksono. Dasar-Dasar Pemrograman Java 2. Jakarta: PT. Elex Media
Komputindo.2007.
[3.] Anonim. Steganografi. [Online]. http://en.wikipedia.org./wiki/steganography
[4.] Budi Insan. Metode-metode dalam Embedding pesan rahasia dalam gambar.
[Online]. Available : http://budi.insan.co.id/courses/el7010/2004-2005/irianto-
report.pdf
[5.] Ermadi Satria Wijaya. Konsep Hidden Message Menggunakan Teknik
Steganografi. Media Informatika, Vol. 2, 2004, hal 23-38.
[6.] Rika Pustikawati. Steganalysis on Digital Images using Macroscopic Quantity in
Steganography OutGuess. [Online]. Available : http://library.ittelkom.ac.id
[7.] Sun Microsystem. JavaTM
2 Platform, Micro Edition Wireless Toolkit User’s
Guide. http://java.sun.com, California, 2008
[8.] NetBeans. [Online]. Available : http://netbeans.org
[9.] N. Provos, P. Honeyman. Hide and seek : An introduction to steganography
[Online]. Available : http://niels.xtdnet.nl/papers/practical.pdf
[10.] Susany Soplanit, Constantine Bandaria. Steganografi Dengan Chaotic Least
Significant Bit Encoding Pada Telepon Genggam. [Online]. Available :
http://petra.ac.id/~puslit/journals/dir.php?DepartementID=INF
Top Related