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..