IMPLEMENTASI DAN ANALISIS METODE STEGANOGRAPHY LSB PADA STEGO MEDIUM CITRA DIGITAL BMP Eko Aribowo1 Abstract : Data security methods have been developed for some format base data object, e.g. text, audio, image/ picture, and video. One of methods is steganography. Most Steganography methods be used in LSB. This paper describe that method and it’s implementation. In the implementation, the host of file which have been used is an image format on bitmap 24 bit. The information which have been embedded in the host file is encrypted by cryptography’s substitution method.The other softwares having the same method will be used for support analysis, that are Steganography from SecureKit Inc Version 1.61,S-Tool version 4.0 from Andy Brown and SecurEngine 3.0 from esecurelabs.com.. Steganogaphy’s LSB method can be implemented in some variant and jointly with other methods for security information. Key word : Steganography’s LSB, bitmap 24 bit, information hiding
1
[email protected],
[email protected] ,Teknik Informatika FTI,UAD Jl Prof Dr. Supomo Telp 0274-379418, 381523 Yogyakarta
Sejak awal era tahun 90-an dunia komputer mengalami perkembangan yang sangat pesat. Banyak sistem komputer baik yang ada dikantor, laboratorium maupun pribadi yang dikendalikan dari luar pusat komputer. Semakin banyak sistem yang terhubung ke internet, dan dari sana terhubung ke seluruh dunia tanpa batas ruang dan waktu. Dengan demikian ancaman terhadap keamanan komputer juga semakin kompleks dan lebih berbahaya. Dengan hubungan internet keseluruh dunia, seseorang dari belahan dunia lain dapat mengakses suatu sistem dan informasi yang mungkin bukan haknya. Selain itu, virus-virus dapat disebarkan lewat komunikasi tersebut. Oleh karena itu untuk mengatasi ancaman keamanan tersebut diperlukan suatu proses yang bertujuan untuk mengamankan atau melindungi datadata pada sistem komputer yang bertujuan untuk mengganggu atau merusaknya [3]. Salah satu metode untuk mengamankan data maupun sistem adalah dengan pembatasan hak akses yang biasanya dengan user name dan password. Maka perlu dibuat suatu metode untuk mengidentifikasi user sebelum masuk pada sistem. Komputer harus memastikan apakah user memiliki hak akses atau tidak, yang sering disebut dengan autentikasi yang dapat dilakukan dengan metode cryptography atau dengan metode steganography. Sehingga autentuikasi merupakan salah satu tahap yang sangat penting untuk membedakan entitas yang satu dengan yang lain, antara yang berhak dan yang tidak berhak Perkembangan komputer digital dan perangkat lainnya yang serba digital, telah membuat data digital
banyak digunakan baik dalam bentuk teks, citra, audio maupun video. Perkembangan ini telah membawa perubahan pada zaman ini, yang sering disebut sebagai zaman digital Apalagi dengan adanya perkembangan teknologi internet yang dapat menyajikan dan mempersatukan berbagai jenis data digital, membuat data digital semakin mempunyai peranan penting dalam hampir semua bidang kehidupan [8]. Oleh karena itu berbagai upaya telah dilakukan manusia untuk melakukan manipulasi terhadap data digital, baik dalam pengamanan data, untuk komunikasi, untuk advertisment, pendidikan, dan bidang-bidang lain. Oleh karena itu maka pada penelitian ini akan dilakukan studi dan implementasi metode steganography untuk penyembunyian informasi pada data digital, yang dapat digunakan untuk mengamankan data maupun informasi tertentu dengan cara ditempelkan pada data digital lain dalam bentuk citra atau gambar atau image. Metode penyembunyian data kedalam data digital lain tersebut sering dikenal dengan steganography. Salah satu contoh penggunaan metode ini dalam penyembunyian label hak cipta. Selain implementasi salah satu dari metode steganography yaitu LSB (Least Significant Bits) dalam penelitian ini juga akan dibahas mengenai analisa metode steganography tersebut, berdasarkan implementasi dan software lain yang menggunakan metode yang sama.. Desain dan Implemetasi Perancangan arsitektur sistem yang dibangun diperlukan setidaknya ada 3 alasan utama menurut Bass and his colleagues dalam pembangunan
suatu software yaitu sebagai sarana penghubung antara bagian-bagian yang terkait (stakeholder),memperjelas penekanan tujuan dari sistem, menggambarkan bagaimana sistem disusun dan bagaimana antar komponen saling bekerja sama [7]. Proses yang dibangun seperti halnya pada metode cryptography adalah enkripsi dan dekripsi, pada steganography juga terdiri dari 2 bagian utama, yaitu [6] 1. Proses pertama disebut sebagai proses embeding atau penyisipan, porses penempelan informasi kedalam file cover atau stego objek atau stego medium 2. Proses kedua juga disebut proses reveal atau ekstraksi adalah pembacaan informasi yang tersembunyi di dalam file cover [6] Pada arsitektur sistem, entitas yang langsung berhubungan dengan sistem adalah pengirim dan penerima informasi, yang mana informasi termuat dalam file cover / stego medium. Pada diagram tersebut ‘file induk’, ‘password’ dan ‘data / informasi’ yang akan disembunyikan adalah merupakan data yang mengalir dari entitas luar, sehingga dalam diagram tersebut digambarkan sebagai data yang mengalir dari pengirim. Data / informasi yang akan disembunyikan dapat berupa file maupun teks yang diketikan langsung.
Pengirim
Password Data, file induk
1.1 Penyi sipan
Perancangan sistem ditunjukan dengan diagram arus data yang untuk level 1 ditunjukqan pada gambar 1, penjelasan beserta implementasinya secara lengkap dibahas pada [2]. Dalam diagram arus data level 1 diatas file cover hasil proses ‘penyisipan’ merupakan input yang dibutuhkan oleh proses ‘ekstraksi’. Password juga merupakan input yang dibutuhkan oleh kedua proses, baik penyisipan maupun ekstraksi. Dalam sistem ini diasumsikan bahwa file cover hasil proses ‘penyisipan’ dari pengirim sampai ke tangan penerima sebagai input proses ekstraksi tidak harus melalui media komunikasi, sehingga dalam diagram tidak digambarkan entitas media komunikasi. Diagram arus data level 1 gambar 1 diatas pada proses ‘penyisipan’ dapat diperdetail (refining) menjadi diagram arus data level 2, seperti dalam gambar 2 dibawah. Berdasarkan hasil pendetailan dari proses ‘penyisipan’ seperti yang terlihat dalam gambar 2. diatas dapat dijelaskan beberapa hal, antara lain bahwa pengirim berinteraksi dengan sistem melalui user interface. Dalam user interface sistem membutuhkan 3 jenis input yaitu : file induk, data / file teks dan password. Seperti halnya pada diagram arus data level kontek, bahwa dalam diagram arus data hasil output dari proses ini adalah file cover. 1.2 Ekstrak si
Informasi & File Cover Penerima Passwor
File Cover
Gambar 1. Diagram Arus data level konteks dari sistem
Pengirim
2.1
Kebutuhan file citra bmp
Penntuan file indk
file citra bmp
File induk
kebutuhan teks /file teks 2.2 Penetuan Data / file data / file teks teks Data / file teks 2.5
Password Proses password
Byte piksel
2.4 Enkripsik an data
cipher teks
2.7 Konver si ke bit
Hitung panj tek &
2.3
konversi
Validasi
2.6 Enkrpsi knci & konvrs
panjang teks
2.8 Sisipkan dgn LSB
cipher teks
Bit-bit teks &
Piksel2 file Cover File Cover / Stego medium
Gambar 2 : Diagram arus data refining dari proses penyisipan Penerima
2.12
Kebutuhan 2.9 stego medium Tentukn Stego medium 2.10
Password
Proses Password
2.11 Validasi
Cek Stego medium 1.1
Timpa Citra stego medium Stego Medium
Proses Penysipn
Sisip Teks
Piksel2 Citra
Ekstraksi Stego dgn LSB
Tambah 2.13 Baca Tek yg ada& panjgnya
Penambahan Informasi
Piksel2 Citra
Bit2 cipher teks Cipher teks
Stego Medium Byte cipher teks
2.14 Dekripsi kan Data/informasi teks
Gambar 3 : Diagram arus data refining dari proses ekstraksi
Password File stego medium Piksel2 citra
3.2
Karakter passw
3.1 Baca piksel ke 2 -7
3.3 Pesan Validasi
validasi
3.4 Baca pajang teks Baca Piksel ke 10
pajang teks (pjtx) Bit-bit cipher
Cipher teks
Bit-bit password
Konvers password
3.5 Konversi piksel ke 11-pjtx Piksel2 citra File stego medium
Gambar 4 : DAD pendetailan dari proses Ekstraksi stego dengan LSB File cover ini yang nantinya input dan output dari teknik ini adalah dibutuhkan dalam proses ekstraksi oleh file tersebut. Media tersebut sering penerima. disebut pula sebagai file host, file induk, Gambar 3 di atas adalah diagram file cover , file master dan mungkin arus data level 2 yang merupakan hasil masih ada istilah-istilah lain, namun pendetailan (refining) dari proses dengan maksud sama [5]. Media digital ‘Ekstraksi’ pada diagram arus data level yang digunakan sebagai induk dapat 1 seperti yang terlihat dalam gambar 1. dalam berbagai format data digital, Dalam proses ‘ekstraksi’ input yang antara lain : teks, image atau citra, dibutuhkan sistem adalah file cover, audio, video, file sistem maupun file namun begitu perlu dijelaskan bahwa aplikasi dan pendukungnya [4]. Dalam antara user (penerima) berinteraksi penelitian ini file induk yang akan dengan sistem melalui user interface. digunakan adalah dalam format citra. Dalam proses ini juga diperlukan input Secara lebih spesifik lagi format citra berupa password. Sedangkan outputnya yang digunakan dalam penelitian ini berupa file cover dan teks informasi. adalah file citra bertipe : bitmap dengan Proses ekstraksi dengan metode ekstensi BMP, icon dengan ekstensi steganography LSB ( yaitu proses 2.11 ICO, metafile dengan ekstensi WMF pada gambar 3 ) dapat diperdetail dan enhanced metafile EMF. seperti terlihat pada gambar 4 di bawah. File citra yang digunakan Input dalam proses tersebut adalah dengan tipe-tipe tersebut tersusun atas password dan stego medium, begitu piksel-piksel. Dalam penelitian ini file juga yang ada dalam DAD gambar 4. format citra yang digunakan adalah file Pembahasan mengenai teknik yang setiap pikselnya tersusun atas 3 steganography tidak lepas dari media byte atau 24 bit. Tiga byte dalam setiap digital (file) yang digunakan untuk piksel-piksel tersebut memuat menempelkan informasi yang akan informasi warna citra tiap piksel dengan disembunyikan, karena bentuk utama format RGB (Red Green Blue). Untuk
file citra yang berformat 8 bit per pikselnya maka akan diubah menjadi format 24 bit, biasanya citra akan berubah lebih terang.namun tidak ada perubahan yang signifikan yang mempengaruhi makna citra. Perlu disampaikan bahwa pikselpiksel dalam file induk direncanakan tidak hanya digunakan untuk menyimpan objek informasi yang akan disembunyikan saja namun juga akan disimpan beberapa informasi lain. penggunaan piksel dalam file induk tersebut akan dibagi dalam beberapa bagian yaitu 1. Bagian piksel yang digunakan untuk menyimpan password 2. Bagian piksel yang digunakan untuk penanda ada atau tidaknya informasi yang tersembunyi 3. Bagian piksel yang digunakan untuk menyimpan panjang teks informai yang tersimpan 4. Bagian piksel yang digunakan untuk menyimpan atau menyembunyikan informasi itu sendiri Penggunaan piksel pada tiap citra file induk tersebut dapat digambarkan
seperti gambar 5 berikut : Penggunaan bit dalam tiap piksel dalam posisi piksel yang digunakan sebagai tempat penyembunyian informasi dapat dijelaskan sebagai berikut :Dalam tiap byte informasi yang akan ditempelkan dalam piksel gambar akan dipecah menjadi 3 bagian yaitu 2 bit, 3 bit dan 3 bit.[1]. 1. 2 bit pertama dari informasi, akan digunakan untuk mengganti 2 bit terakhir dalam byte pertama (Red) pada piksel 2. 3 bit dari bit ke 3 sampai 5 dari informasi akan digunakan untuk mengganti 3 bit terakhir dalam byte kedua (Green) dari piksel 3. 3 bit dari bit ke 6 sampai 8 dari informasi akan digunakan untuk mengganti 3 bit terakhir dalam byte kedua (Blue) dari piksel Hal tersebut dapat dijelaskan seperti dalam gambar 6 seperti berikut :
Password Panjang Teks Informasi tersembunyi Penanda ada / tidak
Gambar 5. Komposisi citra berdasarkan penggunaan pikselnya
Tampilan utama dari software yang dibangun ‘stegopic’ ( 10110101 ; 01010110 ; 00101111) adalah seperti gambar 7. Dalam gambar 7. dapat dilihat Bit data dan dibandingkan hasil output (01101010 ) Metode yang berupa ‘citra hasil’ (stego LSB medium) dengan ‘citra asli’ (file induk) yang mempunyai format ( 10110101 ; 01010101 ; 00101010 ) sama, secara indrawi kedua citra tersebut tidak mempunyai Gambar 6 Penggunaan bit dalam tiap piksel perbedaan. Dalam ‘citra hasil’ sebe-narnya sudah termuat informasi Pembahasan yang sudah dienkripsikan, sedangkan Penentuan File Induk dalam ‘citra asli’ merupakan citra yang masih murni. Proses dalam steganography tidak lepas dari file induk yang Proses Ekstraksi digunakan sebagai file cover, begitu pula dalam software ini. Langkah Untuk mendapatkan kembali teks pertama yang dapat dilakukan oleh informasi yang sudah ditempelkan pengguna adalah membuka file citra kedalam citra induk maka harus yang akan digunakan sebagai file induk dilakukan ekstraksi. Adapun langkah dalam steganography. Hal tersebut ekstraksi yang harus dilakukan dengan sebagai usaha untuk meminimalkan software yang dibangun dapat dijelaska terjadinya kesalahan dari pengguna seperti berikut : dalam mengoperasikan software ini Bit piksel
Gambar 7. Hasil (output) dengan software ‘stegopic’ setelah penempelan
1. Tentukan file stego medium yang akan diekstraksi 2. Tentukan password dan metode ekstraksi yang sama dengan yang digunakan untuk melakukan penempelan. Batasan dalam Implementasi Walaupun usaha yang telah dilakukan untuk pembangunan sistem dalam penelitian ini dirasa sudah optimum, namum tentu tidak menutup adanya kekurangan dalam sistem yang dihasilkan. Selain kekurangan dalam sistem ini juga ada beberapa batasan dalam implementasinya yaitu antara lain : 1. Ukuran minimum file induk yang dapat digunakan adalah tinggi 11 piksel dan panjang 10 piksel, nilai tersebut diberikan dengan pertimbangan bahwa jumlah password antara 6 sampai 8 yang ditempatkan pada piksel kolom ke 1 baris 2 sampai 9, sedangkan piksel ke 10 digunakan untuk menyimpan panjang informasi yang tersembunyi. 2. Ukuran maksimum file induk sampai saat ini tidak dibatasi, selama dalam kemampuan resolusi monitor PC (personal computer). 3. Panjang teks / file teks informasi yang akan ditempelkan minimum 1 karakter (1 byte), dan panjang maksimum tergantung pada ukuran file induknya yaitu tinggi piksel kali lebar piksel dikurangi 10 dikurangi minimum (tinggi,lebar) atau Max teks = Lebar x Tinggi 10 – min(tinggi,lebar) dimana Lebar : adalah lebar dari piksel induk
Tinggi : adalah tinggi dari piksel induk Pembandingan Hasil Dalam penelitian ini selain melakukan studi dan implementasi metode steganography juga dilakukan pembandingan hasil, antara output software yang dibangun ‘stegopic’ dengan hasil tiga software lain yang menggunakan metode yang sama. Hal ini dilakukan untuk mendukung dan memperkuat analisis atas metode steganography LSB. Software tersebut adalah Steganography versi 1.61 dari SecureKit Inc, S-Tool versi 4.0 dari Andy Brown dan SecurEngine 3.0 dari esecurelabs.com. Pembandingan hasil output software-software tersebut dapat dilakukan dengan salah satu fitur yang ada dalam ‘stegopic’ dengan bentuk output seperti gambar 8 dibawah. Setelah dilakukan pembandingan antara citra asli dengan hasil output dari ke empat software tersebut secara umum dapat disimpulkan beberapa hal antara lain : 1. bentuk dan ukuran file output dari keempat software tersebut tidak berbeda secara indrawi dan juga secara ukuran digital 2. penggunaan piksel dalam tiap citra berbeda, hal ini menjadikan tiap software tidak kompatibel, dalam arti stego medium output software yang satu tidak dapat dideteksi dan diekstrak dengan software yang lain, begitu pula sebaliknya.
untuk mengecek ada tidaknya informasi yang tersembunyi. Sehingga proses ekstrak hanya memisahkan informasi dari stego medium, setidaknya ini terjadi dalam keempat software tersebut. Namun hal ini belum bisa dijadikan sebagai kesimpulan atas sifat umum dari metode Steganography LSB, masih perlu dilakukan penelitian lebih lanjut.
Gambar 8 : Hasil pembandingan 2 citra : citra asli dan citra output stegopic Simpulan Setelah dilakukan implementasi, ujicoba dan pembandingan proses dengan tiga software lain yang menggunakan metode yang sama disimpulkan bahwa metode steganography LSB dapat diimplementasikan dengan berbagai variasi dan digabungkan dengan metode yang lain, sehinga terkesan tidak kompatibel. Hasil output keempat software tersebut tidak dapat dikembalikan menjadi file induk asli, hal ini karena dalam stego medium memuat informasi yang bernilai konstan
Pustaka [1]. Aribowo,E.,2002, “Implementasi Serial Cryptography dan Steganography pada pengamanan Informasi”, Prosiding SNTE Sept 2003, Teknik Elektro UGM Yogyakarta, ISBN: 979-97956-0-5) [2]. Aribowo, E.,2005,”Studi dan Implementasi metode steganography LSB untuk penyembunyian informasi”, tesis S2 Ilmu Komputer, Program Magister Ilmu Komputer, Pascasarjana Universitas Gadjah Mada, Yogyakarta [3]. Danny Hidayat, Wahyu Agung, Y. Sri Suharini, 2003, “Enkripsi data
pada steganography dengan Algoritma MD5”, Jurnal Teknologi Industri Vol VIII No 2, April 2003 : 99-106 [4]. Davidson J, 2002, “Information Hiding : the new digital age”, Information Assurance Colloquium, Electrical and Computer Engineering Department of mathematics, IOWA State University [5]. Hyung-Hwo Lee ,2002, “Information Hiding Technique : Principles of Steganography”, http://infocom.cheonan.ac.kr/~
hwlee/kisec-infohiding.ppt, 26 juni 2003 [6]. Lenti Jozsef,2000, “Steganographic Methods”, Periodica Polytechnica Ser. Electrical Engineering, Vol 4 N0 3-4,PP 249-256. [7]. Pressman , R.S.,2001, ”Software engineering : a practitioner’s approach”, fifth edition, MC Graw Hill, Singapore. [8]. Suhono H, Supangkat, Kuspriyanto, dan Juanda,2000, “Watermarking sebagai teknik penyembunyian label hak cipta pada data digital”, Jurnal Teknik Elektro, Vol 6,No 3:19-27