Halaman

Rabu, 24 Juni 2009

Pengenalan Steganography

PENGENALAN STEGANOGRAPHY

a.SejarahSteganography
Catatan pertama tentang steganografi ditulis oleh seorang sejarawan Yunani, Herodotus, yaitu ketika Histaeus seorang raja kejam Yunani dipenjarakan oleh Raja Darius di Susa pada abad 5 Sebelum Masehi. Histaeus harus mengirim pesan rahasia kepada anak laki-lakinya, Aristagoras, di Militus. Histaeus menulis pesan dengan cara mentato pesan pada kulit kepala seorang budak dan ketika rambut budak itu mulai tumbuh, Histaeus mengutus budak itu ke Militus untuk mengirim pesan di kulit kepalanya tersebut kepada Aristagoras.
Cerita lain tentang steganografi datang juga dari sejarawan Yunani, Herodotus, yaitu dengan cara menulis pesan pada papan kayu yang ditutup dengan lilin. Demeratus, seorang Yunani yang akan mengabarkan berita kepada Sparta bahwa Xerxes bermaksud menyerbu Yunani. Agar tidak diketahui pihak Xerxes, Demaratus menulis pesan dengan cara mengisi tabung kayu dengan lilin dan menulis pesan dengan cara mengukirnya pada bagian bawah kayu, lalu papan kayu tersebut dimasukkan ke dalam tabung kayu, kemudian tabung kayu ditutup kembali dengan lilin.
Pada abad 20, steganografi benar-benar mengalami perkembangan. Selama berlangsung perang Boer, Lord Boden Powell (pendiri gerakan kepanduan) yang bertugas untuk membuat tanda posisi sasaran dari basis artileri tentara Boer. Untuk alasan keamanan, Boden Powell menggambar peta-peta posisi musuh pada sayap kupu-kupu agar gambar - gambar peta sasaran tersebut terkamuflase.
Perang Dunia II adalah periode pengembangan teknik-teknik baru steganografi. Pada awal Perang Dunia II walaupun masih digunakan teknik tinta yang tak terlihat, namun teknik-teknik baru mulai dikembangkan seperti menulis pesan rahasia ke dalam kalimat lain yang tidak berhubungan langsung dengan isi pesan rahasia tersebut, kemudian teknik menulis pesan rahasia ke dalam pita koreksi karbon mesin ketik, dan juga teknik menggunakan pin berlubang untuk menandai kalimat terpilih yang digunakan dalam pesan, teknik terakhir adalah microdots yang dikembangkan oleh tentara Jerman pada akhir Perang Dunia II.
Dari contoh-contoh steganografi konvensional tersebut dapat dilihat bahwa semua teknik steganografi konvensional berusaha merahasiakan komunikasi dengan cara menyembunyikan pesan ataupun mengkamuflase pesan.

Seiring dengan perkembangan teknologi terutama teknologi komputerisasi, steganografi merambah juga ke media digital, walaupun steganografi dapat dikatakan mempunyai hubungan erat dengan kriptografi, tetapi kedua metode ini sangat berbeda.

b. Pengertian Steganography

Steganography adalah seni dan ilmu untuk menyembunyikan pesan dalam sebuah pesan. Di jaman dahulu diceritakan oleh Herodotus bahwa orang Yunani kuno menyembunyikan pesan dengan cara membuat tattoo di kepala pembawa berita yang dibotaki dan menunggu sampai rambutnya tumbuh. Tentunya cara ini tidak cocok untuk mengirimkan berita dengan cepat.

Cara lain untuk menyembunyikan pesan adalah dengan menggunakan invisible ink (tinta yang tidak nampak). Tulisan yang ditulis dengan menggunakan invisible ink ini hanya dapat dibaca jika kertas tersebut di letakkan di atas lampu (atau diarahkan ke matahari). Ketika perang dunia pertama, orang Jerman menyembunyikan pesan dalam bentuk microdot, yaitu titik-titik yang kecil. Agen dapat membuat foto kemudian mengecilkannya sampai sekecil titik di tulisan dalam buku. Buku ini kemudian bisa dibawa-bawa tanpa ada yang curiga bahwa tanda titik di dalam tulisan di buku itu berisi pesan ataupun gambar.

Dalam dunia teknologi yang moderen, pesan dapat disembunyikan di balik citra (image), misalnya. Pesan dapat dikodekan dalam low-order bit sehingga tidak terlalu mengganggu gambar (image) yang ditampilkan.

c.Mengenal Steganography

Selama ini kita lebih banyak mengenal teknik pengamanan data yang berbasis kriptografi, seperti RSA. Teknik ini menggunakan pendekatan pengacakan data yang hendak dipindahkan, sehingga pihak yang tidak berkepentingan tidak dapat mengetahui informasi yang terkandung di dalam data tersebut. Sebenarnya, terdapat pendekatan lain terhadap masalah pengamanan data, yaitu steganography atau watermarking, dan masih banyak teknik lain yang mungkin hanya digunakan dan diketahui segelintir orang. Steganography adalah teknik pengamanan data dengan cara menyisipkan data yang hendak dirahasiakan ke dalam data yang ukurannya lebih besar (data-carrier), tanpa mengubah karakteristik data-carrier, sehingga pihak yang tidak berkepentingan tidak dapat mengetahui data apa yang disisipkan tersebut. Watermarking adalah teknik yang mirip dengan steganography, yaitu menggunakan penyisipan data, kami kurang tahu secara pasti definisi dari teknik ini, namun secara umum, teknik ini dilakukan dengan cara "menimpakan" data yang ingin disisipkan "ke atas" data-carrier. Kita hanya akan membahas steganography dalam tulisan ini.

2.CARA KERJA STEGANOGRAPHY

Steganografi merupakan salah satu cara untuk menyembunyikan suatu pesan / data rahasia di dalam data atau pesan lain yang tampak tidak mengandung apa-apa, kecuali bagi orang yang mengerti kuncinya . Dalam bidang keamanan komputer, steganografi digunakan untuk menyembunyikan data rahasia saat enkripsi tidak dapat dilakukan atau bersamaan dengan enkripsi. Jadi, walaupun enkripsi berhasil dipecahkan (decipher) pesan / data rahasia tetap tidak terlihat.

Selain itu, pada kriptografi pesan disembunyikan dengan “diacak” sehingga pada kasus-kasus tertentu dapat dengan mudah mengundang kecurigaan, sedangkan pada steganografi pesan “disamarkan” dalam bentuk yang relatif “aman” sehingga tidak terjadi kecurigaan itu. Steganografi dapat digunakan pada berbagai macam bentuk media, seperti image, audio, dan video.

a.Sistem kerja Steganography

Gambar1 Steganographic System

Gambar 2.1 menunjukkan sebuah sistem steganografi umum dimana dibagian pengirim pesan (sender), dilakukkan proses embedding (Fe) pesan yang hendak dikirim secara rahasia (emb) ke dalam data cover sebagai tempat meyimpannya (cover), dengan menggunakan kunci tertentu (key), sehingga dihasilkan data dengan pesan tersembunyi di dalamnya (stego). Di bagian penerima pesan (recipient), dilakukan proses extracting (fE-1) pada stego untuk memisahkan pesan rahasia (emb) dan data penyimpan (cover) tadi dengan menggunakan kunci yang sama seperti pada proses embedding tadi. Jadi hanya orang yang tahu kunci ini saja yang dapat mengekstrak pesan rahasia tadi. Proses tadi dapat direpresentasikan secara lebih jelas pada gambar 2 di bawah.


Saat ini, steganography masih jarang digunakan untuk kepentingan komersial, teknik ini masih dalam tahap penelitian. Namun demikian, steganography dapat dimanfaatkan dalam industri DVD, dan industri lain yang berhubungan dengan data multimedia yang harus diproteksi. Anda dapat membayangkan, jika sebuah data pengenal disamarkan dalam data yang ingin kita proteksi (dalam hal ini data-carrier), maka akan sangat sulit bagi orang lain untuk mengetahui di mana data tersebut tersimpan dalam data-carrier. Dalam tulisan ini, di menyertakan sebuah program aplikasi yang dapat di jalankan pada platform windows yang memanfaatkan teknik steganography untuk menyisipkan data teks ke dalam sebuah file bitmap 24 bit, tanpa mengubah karakteristik gambar pada file bitmap tersebut. Program ini hanya sempat diuji pada platform Windows 2000 Professional, tetapi pada Windows XP kemungkinan besar tidak akan ada masalah. Berikut ini adalah snapshot dan program tersebut sebelum dan sesudah data disisipkan.

Sebelum data disisipkan:

Setelah data disispkan

Dapat di amati bahwa tidak terdapat perubahan yang dapat di lihat dari kedua gambar pada bagian kiri snapshot program di atas, inilah yang dimaksud dengan "tanpa mengubah karakteristik data-carrier", sebab tidak dapat membedakan gambar yang belum dan sudah disisipi data teks.

Selain pada data teks, steganography juga dapat diaplikasikan pada data suara, pada data teks sendiri, dan lain-lain. Pada data teks, steganography biasanya dilakukan dengan menambahkan spasi secara acak ke dalam data teks tersebut.

b. Menggunakan Program Steganography.exe

Tulisan ini menyertakan sebuah program setengah jadi (karena error handling untuk input user yang ngawur belum diimplementasikan) sebagai bahan belajar bagi kita, yang diberi nama steganography.exe. File executable-nya dapat di peroleh dari direktori Steganography/Debug atau Steganography/Release setelah file zip-nya anda ekstrak. Untuk menyisipkan data teks ke dalam file bitmap, dapat melakukan langkah-langkah berikut:

  • Buka file bitmap dari menu File|Open. Untuk saat ini yang didukung hanya format bitmap 24 bit (RGB).
  • Ketikkan atau copy-kan teks yang akan dimasukkan ke text box/edit box pada sebelah kanan tampilan gambar, seperti pada ilustrasi-ilustrasi yang di lihat pada bagian awal tulisan ini. Perlu di perhatikan, setiap gambar bitmap mempunyai batas-batas tertentu untuk disisipi data teks, jika batas ini terlewati, misalnya nilai thresholdnya terlalu aneh atau jumlah teks input yang di masukkan berlebihan, maka akan terjadi perubahan signifikan pada gambar tersebut yang membuat teknik steganography ini tidak bekerja sesuai dengan yang diinginkan.
  • Ketikkan nilai threshold pada text box/edit box di bagian bawah program, di sebelah label threshold. Nilai threshold ini berkisar antara 0.2 s/d 0.4 (pengetikan menggunakan format numerik English/USA), jika mengetikkan nilai lain, kemungkinan akan terjadi ketidaknormalan selama program dijalankan. Jika tidak mengetikkan apapun, maka akan digunakan nilai default 0.3. Jika mengetikkan karakter selain angka dan titik(.) maka akan terjadi error, dan program harus dimatikan. kami belum sempat memasukkan error handling untuk bagian ini, sebab program ini memang program quick'n dirty, hanya sebagai ilustrasi.
  • Klik tombol encode, dan proses encoding (penyisipan data) akan dilakukan. Setelah selesai, akan muncul pesan "encoding finished". Langkah ini akan menyisipkan data teks ke dalam file buffer bitmap yang di buka (di memory) dan akan membuat file Map.txt pada direktori tempat file bitmap yang di buka berada. File ini berisi data yang dibutuhkan untuk mengambil kembali data teks dari gambar bitmap ini.
  • Untuk menyimpan data yang telah dirubah ini, dapat memakai menu File|SaveAs. Untuk saat ini, program ini belum bisa menyimpan perubahan langsung pada file bitmap yang sedang terbuka, ini adalah sebuah bug yang belum diperbaiki, sehingga menu File|Save dan tombol toolbar untuk save tidak berfungsi sebagaimana mestinya. Perhatikan bahwa program ini akan membuat map file (Map.txt) pada direktori tempat file bitmap yang sedang di buka sekarang berada.

Untuk mengambil data teks, lakukan langkah-langkah berikut:

  • Buka file bitmap dari menu file|open. Untuk saat ini yang didukung hanya format bitmap 24 bit (RGB).
  • Klik tombol decode, kemudian akan muncul dialog Open, kemudian harus memilih map file untuk data bitmap yang sekarang di buka, map file ini adalah file Map.txt yang dihasilkan saat melakukan proses encoding. Jika memilih map file yang salah, maka hasilnya tidak dapat diprediksi, bisa saja teks yang keluar salah atau malah program ini kacau di tengah jalan. Perlu berhati-hati. Hasil proses decoding ini (teks yang ada dalam gambar) akan ditampilkan pada edit box/text box pada sebelah kanan bagian yang menampilkan gambar.
  • Inilah hal-hal yang perlu ketahui saat menjalankan program steganography.exe.

c. Algoritma dan penerapan steganography

Program yang di lihat snapshotnya pada bagian di atas adalah sebuah program yang di buat dengan menggunakan Microsoft Visual C++ 6.0 Service Pack 5, berdasarkan beberapa paper tentang steganography. Riset tentang steganography saat ini lebih banyak dilakukan oleh perguruan tinggi di Jepang. Dapat di download program tersebut beserta source code-nya pada download source code program steganography,
dan juga bebas untuk memodifikasi program tersebut.

Steganography menggunakan data gambar didasarkan pada sifat dasar data gambar itu sendiri menurut persepsi manusia, dapat di bayangkan jika sebuah pixel pada sebuah gambar dengan resolusi 24 bit RGB, berubah 1 bit, masing-masing pada bagian Red, Green dan Blue-nya, apakah mata manusia dapat membedakannya? tentunya sangat sulit. Hal inilah yang diimplementasikan pada program di atas. Hal penting lainnya yang merupakan karakteristik dari data gambar adalah, semakin tinggi "kompleksitas" gambar tersebut, maka semakin sulit untuk membedakan gambar yang telah disisipi dan yang belum disisipi data lain. "kompleksitas" ini diukur dengan membandingkan perubahan antara bit-bit nilai RGB pixel yang bersebelahan pada gambar tersebut, atau dengan bahasa sederhana, seberapa drastis perubahan warna dari satu pixel ke pixel disebelahnya, atau seberapa random distribusi warna pada sebuah gambar.

3. Pemanfaatan Steganography

Steganografi adalah sebuah pisau bermata dua, ia bisa digunakan untuk alasan-alasan yang baik, tetapi bisa juga digunakan sebagai sarana kejahatan. Steganografi juga dapat digunakan sebagai salah satu metode watermarking pada image untuk proteksi hak cipta, seperti juga digital watermarking (fingerprinting). Dan yang terutama, seperti disebutkan sebelumnya, steganografi dapat digunakan untuk menyembunyikan informasi rahasia, untuk melindunginya dari pencurian dan dari orang yang tidak berhak untuk mengetahuinya. Steganografi juga dapat digunakan oleh para teroris untuk saling berkomunikasi satu dengan yang lain.

Sehubungan dengan keamanan sistem informasi, steganography hanya merupakan salah satu dari banyak cara yang dapat dilakukan untuk menyembunyikan pesan rahasia. Steganography lebih cocok digunakan bersamaan dengan metode lain untuk menciptakan keamanan yang berlapis. Sebagai contoh steganography dapat digunakan bersama dengan enkripsi.

BAB III

PENUTUP

1.Implikasi teknologi steganography

Di masa depan (atau malah saat ini), teknologi yang memanfaatkan teknik ini akan semakin mempersulit orang-orang yang tidak bertanggung jawab yang suka melakukan pembajakan pada produk-produk multimedia.

Mungkin juga teknologi ini akan membuat kita suka mengirim pesan-pesan rahasia kepada teman-teman kita melalui data-carrier yang tak terduga. Mudah-mudahan tulisan ini dapat membuka wawasan kita tentang teknologi pengamanan data.

2. Kesimpulan

Steganography adalah cara yang menarik dan efektif dalam menyembunyikan pesan rahasia dan telah digunakan selama berabad-abad. Metode-metode untuk “memperlihatkan” pesan yang disembunyikan ( disebut steganalysis ) sudah cukup banyak, tetapi yang sulit adalah menyadari digunakannya steganography itu dan kunci yang diperlukan untuk ”membuka” pesan yang ada. Teknologi yang digunakan sederhana tetapi pelacakannya cukup sulit. Karenanya, steganography masih digunakan dalam menjaga keamanan suatu informasi dan diterapkan dalam banyak hal-hal sampai sekarang.

3. Saran

Pengembangan metode steganography harus lebih ditingkatkan melihat banyak keuntungan dari steganography, terutama untuk menggabungkan image steganography dan audio steganography untuk menghasilkan video steganography yang lebih baik.


Tidak ada komentar:

Posting Komentar