Steganografi : 4. Contoh Penerapan


Pendahuluan

Berhubung banyaknya request dari teman-teman saya, bagaimana cara menerapkan steganografi dalam kehidupan sehari-hari in the easiest way, saya akan coba untuk memberikan suatu contoh bagaimana menerapkan teknik steganografi tersebut.

Isi

Bagi yang belom mengerti apa sebenarnya steganografi itu bisa dilihat pada artikel saya sebelumnya https://andreastjong.wordpress.com/2008/09/18/steganografi-1pendahuluan/.

Sebelum kita memulai contoh ini ada beberapa hal terlebih dahulu yang harus dipersiapkan. Pertama-tama adalah software steganografi (digunakan Hide4PGP aka H4PGP20W) , bisa anda download di http://www.heinz-repp.onlinehome.de/H4PGP20W.ZIP. Tenang saja karena software ini free. Lalu harus disiapkan juga data yang ingin disembunyikan dan media yang akan digunakan, dalam contoh ini saya menggunakan file gambar berformat gif (test.gif) dengan dimensi 200×230, ukuran 111kb, sedangkan untuk media yang akan disisipkan saya akan menggunakan file audio dengn format wav (stego.wav)

Langkah yang harus anda lakukan untuk menyisisipkan data:

  1. Download H4PGP20W.zip
  2. extract di salah satu folder anda (sebagai contoh di C:)
  3. Taruh file yang ingin disisipkan dan media yang akan disisipi ke direktori tersebut (stego.wav dan test.gif)
  4. buka command prompt
  5. Masuk ke direktori tempat anda mengekstrakt H4PGP20W tadi
  6. Ketikkan perintah berikut “Hide4PGP stego.wav test.gif
  7. Selamat karena anda sudah berhasil melanyisipkan file test.gif ke stego.wav (anda boleh men-delete file test.gif jika anda mau)

Langkah yang harus anda lakukan untuk mengekstrak data

:

  1. buka command prompt
  2. Masuk ke direktori tempat anda mengekstrakt H4PGP20W tadi
  3. Ketikkan perintah berikut “Hide4PGP -x stego.wav test.gif
  4. Silahkan check di direktori tersebut, apakah ada file yang bernama test.gif

Semoga tulisan ini dapat berguna bagi anda sekalian.

Advertisement

Steganografi : 3. LSB (Low Bit Coding)


Pendahuluan

Lanjutan dari artikel saya yang sebelumnya, mengenai pengertian steganografi, dan metode LSB (Least Significant Bit) pada steganografi, akan saya bahas mengenai metode LSB (Low Bit Coding) dalam steganografi. LSB (Low Bit Coding) adalah salah satu metode steganografi yang diterapkan untuk media audio/suara. Pada artikel ini, akan sedikit saya bahas mengenai “sinyal suara dalam dunia digital” dan implementasi penerapan metode LSB pada media audio/suara.

Isi

Bagi kalian yang sudah pernah baca artikel saya sebelumnya tentang Steganografi : 2.LSB(Least Significant Bit) mungkin akan bingung, kenapa saya membahas metode yang sama untuk ke-dua kalinya. Tapi jika anda cermat, anda pasti melihat bahwa 2 metode ini mempunyai sedikit perbedaan pada namanya. Kalau sebelumnya bernama Least Significant Bit, yang sekarang adalah Low Significant Bit. Perbedaannya adalah Least Significant Bit diterapkan untuk media gambar, sedangkan Low Significant Bit diterapkan untuk media suara. Sebelum saya menjelaskan lebih jauh, saya akan mencoba menjelaskan tentang digital signal terlebih dahulu.

Digital Signal

Tahukah anda bagaimana suara anda disimpan ke dalam komputer (Hard Disk)? Anda pasti pernah menjalankan player music di komputer anda seperti WMP atau Winamp, tapi pernahkah anda menyadari data yang tertera pada player tersebut? Seperti: Frekuensi, Stereo atau Mono, Panjang bit yang digunakan. Apakah anda pernah membandingkan kualitas suara antara “cd audio quality” dengan “file mp3 bajakan yang anda download dari internet”? Mana yang lebih enak didengar? Sudah tentu “cd audio quality” yang lebih bagus. Hal ini disebabkan karena frekuensi yang digunakan adalan 44,1 KHz dengan kualitas stereo (standart qualitas audio cd).

Frekuensi, secara singkat adalah banyaknya sample yang di-ambil perdetiknya. Jadi jika kualitas media audio dengan frekuensi 44,1 KHz berarti dalam satu detik terdapat sampel data sebanyak 44.100 sample. Mono atau stereo menunjukkan banyaknya layer yang digunakan. Mono berarti hanya menggunakan 1 layer (Mudahnya, speaker kiri dan kanan mengeluarkan suara yang sama).  Stereo berarti menggunakan 2 layer (Mudahnya, speaker kiri dan kanan mengeluarkan suara yang berbeda). Jadi jika media audio mempunyai kualitas frekuensi 44,1 KHz Stereo, berarti sample yang dihasilkan dalam satu detik = 44.100 sample untuk layer kiri dan 44.100 sample untuk layer kanan, sehingga total 88.200 sample tiap detiknya.

Panjang bit menentukan ketepatan pengukuran sample (precision). Nilai sample dalam media audio ada diantara rentang [-1,+1]. Jika panjang bit yang digunakan adalah 8 bit, dengan bit yang pertama menunjukkan nilai + atau -, dan 7 bit sisanya merepresentasikan nilai si sampe. Jika yang digunakan adalah 16 bit, berarti 1 bit pertama untuk menunjukkan nilai + (0) atau – (1), dan 15 bit sisanya merepresentasikan nilai sample.

LSB (Low Bit Coding)

Basically. Metode ini sama dengan LSB pada media gambar. Jadi akan saya coba jelaskan secara singkat kembali mengenai metode LSB ini, sekedar untuk review saja. Jika anda belum mebaca artikel saya yang sebelumnya, bisa dikunjungi dengan meng-klik link berikut: https://andreastjong.wordpress.com/2008/09/22/steganografi-2-lsb-least-significant-bit/

Misalkan data yang ingin anda sisipkan berupa text “secret“. Kalau direpresentasikan ke dalam binary, kata “secret“ini menjadi”

character ASCII value (decimal) hexadecimal binary
s 115 73 01110011
e 101 65 01100101
c 99 63 01100011
r 114 72 01110010
e 99 63 01100011
t 116 74 01110100

Misalkan media suara yang akan anda sisipi mempunyai panjang bit 8, dengan nilai seperti berikut:
Media

00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011

Maka stego yang dihasilkan adalah sebagai berikut:

00000000 00000001 00000001 00000001 00000000 00000000 00000001 00000001
00000000 00000001 00000001 00000000 00000000 00000001 00000000 00000001
00000000 00000001 00000001 00000000 00000000 00000000 00000001 00000001
00000000 00000001 00000011 00000011 00000010 00000010 00000011 00000010
00000000 00000001 00000011 00000010 00000010 00000010 00000011 00000011
00000000 00000001 00000011 00000011 00000010 00000011 00000010 00000010

To be continued..

Steganografi : 2. LSB (Least Significant Bit)


Pendahuluan

Menyambung artikel saya yang sebelumnya mengenai pengertian steganografi , saya akan mencoba untuk menjelaskan mengenai algoritma yang paling mudah untuk diterapkan dalam steganografi, yaitu LSB (Least Significant Bit). LSB ini dapat diterapkan dalam berbagai media, antara lain: gambar dan suara). Contoh yang akan saya gunakan pada artikel ini adalah media gambar.

Isi

Bit atau binary digit adalah unit dasar penyimpanan data di dalam komputer, nilai bit suatu data adalah 0 atau 1.  Semua data yang ada pada komputer anda disimpan ke dalam satuan bit ini, termasuk gambar, suara, ataupun video. Jika anda senang dengan multimedia, maka anda seharusnya sudah mengetahui jenis-jenis format pewarnaan di dalam media gambar, seperti grayscale, RGB, dan CMY. Sebagai contoh pewarnaan monochrome bitmap (menggunakan 1 bit untuk tiap pixelnya), RGB – 24 bit (8 bit untuk Red, 8 bit untuk Green, dan 8 bit untuk Blue), Grayscale-8 bit (menentukan tingkat kehitaman suatu pixel berdasarkan nilai bitnya). Saya tidak akan membahas mengenai hal ini lebih lanjut, karena topik ini lebih cocok masuk ke dalam topik multimedia.

Anda mungkin sudah melihat contoh gambar Lena pada artikel saya sebelumnya

Gambar Lena ini menggunakan format pewarnaan grayscale, artinya tiap pixel dari gambar ini direpresentasikan dengan nilai sepanjang 8 bit.

Misalkan data anda berupa text “secret“, kalau direpresentasikan ke dalam binary kata “secret“ini menjadi”

character ASCII value (decimal) hexadecimal binary
s 115 73 01110011
e 101 65 01100101
c 99 63 01100011
r 114 72 01110010
e 99 63 01100011
t 116 74 01110100

Sesuai dengan namanya, LSB artinya bit yang tidak significant / tidak mempunyai pengaruh yang besar, maka metode ini mengganti nilai bit ke-8 gambar Lena untuk menyisipkan data. Kalau dipetakan dari kata “secret”  kira-kira seperti ini (bandingkan dengan table binary sebelumnya) :

Media

00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000000 00000000 00000001 00000001 00000001 00000001 00000001 00000001
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011
00000001 00000001 00000010 00000010 00000010 00000011 00000011 00000011

Data yang ingin disisipkan

0 1 1 1 0 0 1 1
0 1 1 0 0 1 0 1
0 1 1 0 0 0 1 1
0 1 1 1 0 0 1 0
0 1 1 0 0 0 1 1
0 1 1 1 0 1 0 0

Hasil akhir (Stego):

00000000 00000001 00000001 00000001 00000000 00000000 00000001 00000001
00000000 00000001 00000001 00000000 00000000 00000001 00000000 00000001
00000000 00000001 00000001 00000000 00000000 00000000 00000001 00000001
00000000 00000001 00000011 00000011 00000010 00000010 00000011 00000010
00000000 00000001 00000011 00000010 00000010 00000010 00000011 00000011
00000000 00000001 00000011 00000011 00000010 00000011 00000010 00000010

Coba anda perhatikan, angka yang saya bold menunjukkan kalau data tersebut sudah diganti sesuai dengan data yang ingin disisipkan. Benar sekali, metode ini hanya sesimple itu, karenanya pada awal artikel saya menyebutnya sebagai metode yang paling mudah diterapkan dalam steganografi.

To be continued..

Steganalisis aka Steganalysis


Pendahuluan

Topik steganografi semakin banyak diminati beberapa tahun belakangan ini. Dengan semakin berkembangnya teknik steganografi ini, maka kemungkinan penyalahgunaan ilmu ini pun akan menjadi semakin besar. Untuk itu, perlu juga yang dikembangkan ilmu tandingan dari steganografi, yaitu steganalisis. Kalau dilihat, memang sepertinya ilmu ini berkembang karena sifat paranoid yang sudah build-in pada manusia. Ada pendapat yang mengatakan “sesuatu akan menjadi menyeramkan jika kita tidak dapat melihat wujud fisiknya”, mungkin istilah ini cukup mirip dengan alasan pengembangan dari steganalisis ini. Bagi anda yang belum tahu mengenai apa sebenarnya steganografi itu, bisa membacanya pada artikel berikut:

https://andreastjong.wordpress.com/2008/09/18/steganografi-1pendahuluan/

Isi

Steganalisis adalah ilmu yang mempelajari karakteristik penyembunyian suatu data pada media (steganografi) dan bagaimana cara untuk mendeteksi bahkan sampai membongkar data tersembunyi tersebut. Jangan menganggap remeh ilmu ini, karena steganalisis sangat sulit sekali diterapkan. Secara teoritis memang sangat mudah sekali menerapkan ini, tetapi secara technical sangat sulit sekali.

Steganografi adalah ilmu untuk menyisipkan suatu data pada sebuah media. Apapun metode yang anda gunakan, atau sehebat apapun metode yang anda gunakan, pasti akan mempunyai jejak statistika penyisipannya. Jika dianalogikan, seperti kita memasukan benda asing (anggap y) ke dalam suatu benda asli (anggap x), akan membuat suatu perubahan pada benda asli (x), baik perubahan itu kasat mata atau tidak kasat mata. Anggap hasil perubahan benda asli sebagai benda z, jadi kalu dirumuskan secara matematis, kita dapat menyatakan z = x + y.

Hal inilah yang menjadi dasar dari ilmu steganalisis. Bagaimana cara untuk mendeteksi perubahan yang terjadi. Ada banyak metode yang dapat digunakan untuk mendeteksi hal ini. Seperti halnya steganografi, metode yang digunakan sangat tergantung dari media yang akan dideteksi.

Pada media gambar anda dapat menggunakan metode:

  1. Metode persuasif, melihat dengan mata telanjang dan merasakan ada kejanggalan pada media tersebut
  2. Visual Attack
  3. Statistical method

Pada metode suara anda dapat menggunakan metode:

  1. Metode Persuasif, sama seperti di atas
  2. Statistical Method

Secara umum, penerapan steganografi pada media suara sangat sulit untuk diterapkan, berkaitan dengan sistem HAS (Human Auditoring System) pada manusia yang sangat sensitif, sehingga untuk mendeteksi-nya pun sangatlah sulit. Metode yang dapat digunakan juga sangat terbatas.

Metode global yang digunakan untuk steganalisis adalah sebagai berikut:

  1. Membersihkan noise pada media (de-Noising)
  2. Mengekstraksi feature-feature yang ada
  3. Klasifikasi berhasilkan feature-feature tersebut
  4. Decission

To be continued :

  1. Visual Attack : https://andreastjong.wordpress.com/2008/10/16/steganalisis-visual-attack/
  2. Metode Statistika : Under development

Steganografi : 1.Pendahuluan


Pendahuluan

Steganografi. Apakah anda pernah mendengar mengenai topik ini? Mungkin bagi sebagian dari anda yang pernah mempelajari tentang kriptografi, pernah mendengar tentang topik ini. Dari beberapa buku mengenai kriptografi yang saya baca, topik mengenai steganografi ini hanya sedikit sekali disinggung. Itupun berada pada bab-bab terkahir saja. Pada artikel ini saya akan mencoba membahas lebih jauh mengenai steganografi.

Isi

Sebelum membahas lebih jauh mengenai Steganografi, ada baiknya kita lebih dahulu mengenal apa yang disebut dengan kriptografi.

Kriptografi

Kriptografi adalah sebuah ilmu untuk mengamankan data. Cara untuk mengamankan data yang digunakan adalah dengan mengacak data tersebut (scrambled). Ada banyak metode yang dapat digunakan untuk menerapkan steganografi, mungkin yang paling terkenal adalah md5 (sudah build-in di berbagai bahasa pemrograman). Teknik kriptografi ini juga sering sekali dikenal dengan nama teknik enskripsi.  Teknik untuk mengembalikan data yang telah di-enkripsi dinamakan dekripsi. Dekripsi digunakan untuk mendapatkan kembali data asli, dari data yang sudah diacak oleh teknik enkripsi.

Data hiding

Data hiding (hanya ada di English version saja, tidak ada terjemahannya di versi Indonesia) adalah suatu metode pengamanan data, tetapi berbeda dengan kriptografi, cara untuk mengamankan data yang digunakan adalah dengan cara menyembunyikan data tersebut ke dalam suatu media. Media yang digunakan untuk menyembunyikan data ini sangatlah beragam, mulai dari media text, gambar, suara, sampai video. Data hiding ini secara lebih jauh berkembang menjadi 2 buah topik yang lebih spesifik, dibedakan berdasarkan dari tujuan dari penyembunyian data, yaitu: Steganografi dan Watermarking. Secara umum dapat dikatakan bahwa steganografi bertujuan murni untuk menyembunyikan data, sedangkan watermarking menyembunyikan data dengan tujuan agar media yang ditumpangi tersebut mempunyai digital signature, berkaitan dengan copyright problem.

Steganografi

Seperti yang saya jelaskan pada teknik data hiding, media yang dapat digunakan sangat beragam. Tingkat kesulitan pengerjaan ini juga tergantung dari media yang digunakan sebagai sarana untuk menyembunyikan data. Sebagai contoh, saya akan menyembunyikan file.txt ke-dalam media gambar. Hasil akhirnya tetap seperti asli-nya, hanya saja gambar yang baru mengandung data yang saya sisipkan.

Andreas Tjong +  =        

Bagi anda yang sudah pernah terjun cukup dalam pasti tidak asing dengan gambar di atas. Perkenalkan gambar di atas adalah Lena.bmp (gambar yang paling sering digunakan sebagai media untuk menyisipkan pesan pada steganografi) karena memiliki karakteristik pixel yang cukup beragam dan menyebar.

Ada banyak metode yang dapat anda terapkan untuk melakukan steganografi. berikut akan coba saya paparkan beberapa metode yang saya ketahui:

  1. Media Gambar:
    • LSB (Least Significant Bit)
  2. Media Suara
    • LSB (Low Significant Bit)
    • Phase Coding
    • Spread Spectrum
    • Echo

To be continued in:

https://andreastjong.wordpress.com/2008/09/22/steganografi-2-lsb-least-significant-bit/