Mendeteksi Keberadaan Pesan Tersembunyi dalam Citra Digital dengan Blind Steganalysis Wahyu Hidayat Politeknik Telkom
[email protected] Abstrak Steganalysis merupakan suatu metode anti-steganografi yang tujuan utamanya adalah mendeteksi keberadaan pesan rahasia yang disembunyikan dalam sebuah media penampung yang tampak innocent. Umumnya, teknik steganalysis tidak dapat digunakan secara universal karena dikembangkan untuk mendeteksi pesan tersembunyi yang disisipkan dengan menggunakan teknik steganografi tertentu. Oleh karena itu, blind steganalysis menjadi topik riset yang sangat menarik karena blind steganalysis memiliki kemampuan untuk mendeteksi keberadaan pesan tersembunyi terlepas dari teknik steganografi yang digunakan. Dalam penelitian ini sebuah kajian pustaka perbandingan dilakukan untuk memaparkan konsep dan prinsip kerja blind steganalysis, kelebihan dan kekurangan blind steganalysis, serta ilustrasi perbandingan beberapa varian feature dan classifier yang digunakan dalam beberapa variasi teknik blind steganalysis dari penelitian-penelitian yang telah dipublikasikan sebelumnya. Dapat disimpulkan bahwa secara umum blind steganalysis dilakukan melalui 2 fase yaitu feature analysis dan pattern classification dengan menggunakan berbagai pilihan feature dan classifier. Blind steganalysis memiliki tingkat akurasi bervariasi antara 86% samapai 99.37%. Tingkat akurasi blind staganalysis sangat dipengaruhi oleh feature dan classifier yang digunakan. Selain itu, semakin tinggi kompleksitas sebuah teknik steganografi, maka semakin rendah tingkat akurasi blind steganalysis. Kata kunci: steganografi, blind steganalysis, image feature, classifier, stego image Abstract Steganalysis is an anti-steganography method aiming to detect secret message’s presence that is embedded inside an innocent looking medium. Usually, some steganalysis technique cannot be used universally because it is developed in order to detect secret message’s presence that’s embedded using a certain steganography technique. Therefore, blind steganalysis has become an interisting research area because it has the ability to detect secret message’s presence regardless of the steganography technique used in the process. In this research, a literature study is conducted to explains the concept behind how blind steganalysis works, the advantages and disadvantages of blind steganalysis, along with the illustration and comparison of some feature and classifier used in some blind steganalysis technique that have been proposed in previous researches. Our conclusion is that generally, blind steganalysis can be done through two phases: feature analysis and pattern classifier. Both phases can be done using numerous variant of feature and classifier. Blind steganalysis accuracy varied between 86% to 99.37%. The accuracy itself depends on the feature and classifier being used. Other than that, the more complex steganography algorithm encountered, the less accurate blind steganalysis will become.
Keywords: steganography, blind steganalysis, image feature, classifier, stego image 1.
Pendahuluan Steganografi adalah sebuah bentuk komunikasi rahasia di mana sebuah pesan rahasia disisipkan dalam sebuah media penampung untuk menyembunyikan keberadaannya. Ada banyak jenis media yang dapat digunakan namun salah satu media penampung yang paling populer adalah citra digital. Steganografi dapat disalahgunakan oleh pelaku tindak kriminal dan teroris, sehingga pihakpihak yang berwenang memiliki kepentingan untuk memfilter pertukaran informasi. Oleh karena itu, banyak penelitian yang telah dilakukan untuk menemukan cara untuk mendeteksi keberadaan
pesan rahasia dan (jika memungkinkan) sekaligus mengekstrak pesan rahasia dari media penampungnya, atau minimal menghancurkannya. Teknik untuk mendeteksi, mengekstrak atau menghancurkan pesan rahasia dari sebuah media penampung disebut steganalysis. Persaingan yang ketat terjadi antara steganografi dan steganalysis. Algoritma steganografi terus dikembangkan untuk menyembunyikan keberadaan pesan rahasia, sementara algoritma steganalysis juga terus berkembang untuk mendeteksi keberadaan pesan rahasia yang disembunyikan dengan algoritmaalgoritma steganografi yang telah ditemukan.
Sebuah permasalahan yang menarik adalah bagaimana cara mendeteksi keberadaan pesan rahasia dalam sebuah media penampung tanpa mengetahui bagaimana cara pesan tersebut disisipkan ke dalam media penampung. Blind steganalysis hadir untuk menjawab tantangan ini. Blind steganalysis merupakan topik riset yang menarik dan masih terus berkembang sampai sekarang. Oleh karena itu, dalam penelitian ini dilakukan sebuah kajian pustaka perbandingan untuk memahami lebih lanjut tentang blind steganalysis Penelitian ini bertujuan untuk memaparkan konsep dan prinsip kerja blind steganalysis, memaparkan kelebihan dan kekurangan blind steganalysis, memperkenalkan beberapa varian teknik blind steganalysis dan membandingkan beberapa varian teknik blind steganalysis tersebut. Metode penelitian yang digunakan dalam penelitian ini adalah kajian pustaka perbandingan, yaitu dengan mengumpulkan, mempelajari dan merangkum intisari dari beberapa penelitian yang sudah ada sebelumnya. Setelah itu dilakukan analisis perbandingan dilakukan terhadap data dan hasil penelitian yang telah ada sebelumnya untuk menarik kesimpulan. 2.
Konsep Blind Steganalysis Steganografi dan steganalysis sering dianalogikan sebagai prisoner’s problem[1]. Alice dan Bob, dua orang penghuni penjara menerapkan steganografi untuk menyembunyikan pesan rahasia tentang rencana mereka untuk melarikan diri. Dalam komunikasi antar keduanya, sedapat mungkin Alice dan Bob berusaha menghindari kecurigaan sipir (Wendy). Pada saat yang bersamaan, Wendy menerapkan steganalysis untuk sedapat mungkin mendeteksi adanya sesuatu yang mencurigakan di dalam komunikasi antara Alice dan Bob. Alice
Wendy
Bob
Secret Message
Embedding Algorithm
Secret Message
Message
Suspicious?
No
Message
Retrieval Algorithm
Steganalysis didefinisikan sebagai teknik dan seni mendeteksi keberadaan pesan rahasia dalam sebuah media penampung. Keberadaan pesan rahasia dideteksi berdasarkan analisis terhadap media penampung secara visual, spasial, statistik dan lain-lain[2]. Tujuan utama steganalysis adalah mendeteksi keberadaan pesan rahasia, bukan mengekstrak isi pesan rahasia tersebut. Ada banyak teknik steganalysis. Masingmasing teknik memiliki karakteristik yang unik dan menerapkan algoritma yang berbeda-beda. Walaupun demikian, secara garis besar teknikteknik steganalysis dapat dikategorikan menjadi dua macam[2] yaitu specific steganalysis dan blind steganalysis. Sejauh ini beberapa penelitian menunjukkan bahwa specific steganalysis memiliki tingkat akurasi yang lebih baik dibanding blind steganalysis. Fenomena ini memang wajar, sebab dengan mengetahui bagaimana sebuah pesan rahasia disisipkan maka relatif lebih mudah untuk mendeteksi keberadaan dan bahkan mengekstrak isi pesan rahasia tersebut. Namun pada kenyataannya, warden cenderung tidak mengetahui algoritma steganografi yang digunakan. Di sisi lain, tanpa berbekal informasi tentang teknik steganografi yang digunakan, blind steganaysis dapat mendeteksi keberadaan pesan rahasia. Jika keberadaan pesan rahasia telah terdeteksi, maka mengetahui isi pesan tersebut tidak menjadi suatu keharusan. Dengan mendeteksi keberadaan dan melumpuhkan transmisi pesan rahasia saja sudah dianggap menggagalkan steganografi[3] Oleh karena itu maka blind steganalysis dianggap lebih dapat diaplikasikan secara luas untuk kasus-kasus real world[4] TABEL 1 PERBANDINGAN SPECIFIC STEGANALYSIS DENGAN BLIND STEGANALYSIS Jenis Kelebihan Kekurangan Steganalysis Tingkat akurasi Bekerja dengan baik yang lebih tinggi hanya untuk satu jenis Memiliki peluang teknik steganografi Specific yang lebih besar saja Steganalysis untuk berhasil Tidak cocok untuk mengekstrak isi benchmarking sebuah pesan tersembunyi teknik steganografi
Yes
Cover Message
Supress or Destroy Message
Cover Message
Gambar 1. Ilustrasi Prisoner‟s Problem
Steganografi berasal dari bahasa Yunani steganos (rahasia, tersembunyi) dan graphy (tulisan, gambar). Jadi steganografi dapat didefinisikan sebagai teknik dan seni menyembunyikan keberadaan pesan rahasia dalam sebuah media penampung yang tidak mencurigakan, misalnya citra digital. Tujuan utama steganografi adalah menghindari kecurigaan pada saat proses pertukaran pesan rahasia[2].
Blind Steganalysis
Dapat mendeteksi keberadaan pesan rahasia yang disisipkan dengan teknik steganografi apapun Cocok untuk benchmarking sebuah teknik steganografi
Tingkat akurasi yang rendah dibanding specific steganalysis Peluang untuk mengekstrak isi pesan tersembunyi kecil sebab memang bukan menjadi tujuan utama.
3.
Prinsip Kerja Blind Steganalysis Prinsip kerja blind steganalysis adalah binary classification[5], yaitu mengelompokkan sekumpulan objek menjadi 2 kelompok. Jika prinsip ini diterapkan pada media penampung berupa citra digital, maka target utama sebuah teknik blind steaganalysis adalah mampu membedakan antara citra digital yang disisipi pesan rahasia (stego image) dengan citra yang tidak disisipi pesan rahasia (clean image) Input Image i
Feature Vector yi Feature Analysis
Recognized Class ωi
1.
2.
3.
Akurat Feature mampu mengindikasikan keberadaan pesan tersembunyi dengan tingkat eror yang minimal Monoton Feature bersifat monotonic terhadap ukuran pesan yang disisipkan Konsisten Feature mampu menjadi indikator yang akurat terlepas dari format citra yang yang menjadi media penampung dan teknik steganografi yang digunakan.
Pattern Classifier
Gambar 2. Ilustrasi Prinsip Kerja Blind Steganalysis
dimana terdapat 2 buah variabel: 1. yi adalah feature vector dari citra input i 2. ωi adalah output dari pattern classifier di mana ωi ∈ {-1,1}. ωi akan bernilai 1 jika citra input i adalah stego image dan ωi akan bernilai -1 jika citra input i bukan stego image Pada blind steganalysis untuk citra digital selalu terdapat dua proses utama[3] yaitu feature analysis dan pattern classifier 1. Feature Analysis: Mengekstrak feature vector, yaitu serangkaian karakteristik citra digital yang mengindikasikan keberadaan pesan rahasia dan dinyatakan dalam bentuk kuantitatif. 2. Pattern Classifer: Menerapkan sebuah algoritma klasifikasi yang dapat membedakan stego image dan clean image berdasarkan feature vector yang dihasilkan dari proses feature analysi 3.1. Feature Analysis Feature adalah karakteristik citra digital yang diekstrak dalam bentuk kuantitatif. Serangkaian nilai kuanitatif yang diekstrak dari feature sebuah citra digital disebut feature vector. Feature vector y yang terdiri dari m dimensi dapat dinyakatan sebagai berikut[5]: y = (y1, y2, y3, ... ym) (1) Biasanya setiap feature diberi diberi bobot W yang berbeda-beda, sehingga feature vector yang telah mengalami pembobotan dinyatakan dengan: ∑
(2)
Pemilihan feature akan sangat mempengaruhi akurasi. Oleh karena itu feature yang cocok digunakan dalam blind steganalysis sebaiknya memenuhi tiga kriteria ideal berikut ini[3]:
Salah satu feature yang sering digunakan dalam blind steganalysis adalah transformasi Discrete Cosine Transform (DCT). Transformasi DCT bertujuan menghitung frekuensi-frekuensi pembentuk dari citra blok 8x8 dan memisahkan frekuensi rendah dan frekuensi tinggi dari hasil tranformasi DCT. Transformasi DCT terhadap blok 8x8 dapat dilakukan dengan rumus : DCT (u, v)
N 1 N 1 (2.x 1).u. (2. y 1).v. .C (u ).C (v) . f ( x, y). cos . cos 2.N 2.N 2N x 0 y 0
1
(3)
sedangkan invers DCT dapat dihitung dengan rumus: f ( x, y)
1 N 1 N 1 (2.x 1).u. (2. y 1).v. . .C (u ).C (v).DCT (u, v). cos . cos 2.N 2.N 2 N x 0 y 0
dengan ketentuan bahwa untuk citra digital dalam format file JPEG maka nilai N=8 dimana 1 , z0 C ( z) 2 1, z0
(5)
Beberapa teknik blind steganalysis dengan menggunakan feature DCT menunjukkan tingkat akurasi yang tinggi, diantaranya adalah [6] dan [7] yang mencapai tingat akurasi masing-masing 93.75% dan 88.97%. Sebenarnya DCT adalah bagian dari langkah-langkah kompresi JPEG. Kepopuleran format JPEG dan tingkat akurasi yang tinggi membuat feature DCT banyak digunakan dalam beberapa penelitian, meskipun dengan pendekatan yang berbeda-beda. Selain DCT, feature lain yang juga dapat digunakan dalam blind steganalysis adalah wavelet[8][9], run-length histogram[10] dan lainlain. Beberapa riset yang lain memodifikasi pendekatan yang digunakan dengan cara mengkombinasikan beberapa feature [4]. Pada dasarnya, apapun feature yang dipilih dan bagaimanapun pendekatannya, akan selalu dihasilkan sebuah nilai dalam bentuk kuantitatif. Sebuah feature dapat menghasilkan beberapa nilai dan beberapa feature dapat digunakan sekaligus. Oleh karena itu output dari proses feature analysis selalu berupa feature vector, yaitu serangkaian nilai kuantitatif yang diekstrak dari feature sebuah citra digital.
(4)
3.2. Pattern Classifier Pattern classifier pada blind steganalysis biasanya menerapkan teknik machine learning untuk dapat membedakan antara stego image dengan clean image. Penerapan machine learning dalam blind steganalysis terdiri dari 2 fase: 3.2.1.
Feature Vector
Classifier (FLD, SVM, Neural Network, etc)
Feature Vector Feature Extraction
Fase Training
Pada dasarnya yang dilakukan pada fase training adalah „mempelajari‟ contoh-contoh stego image dan contoh–contoh clean image yang ada di dalam training set untuk menemukan sebuah ciri atau fungsi yang dapat membedakan antara stego image dan clean image. Pada fase ini training set yang terdiri dari sekumpulan contoh clean image dan sekumpulan contoh stego image mengalami proses feature analysis. Feature vector y yang dihasilkan kemudian disimpan dalam sebuah feature database. Setelah itu akan dicari sebuah ciri atau fungsi F untuk memetakan y ke ω. Fungsi F inilah yang nanti digunakan pada fase classification. Berikut ini adalah ilustrasi fase training: Training Set (known stego images)
Feature Vector Feature Extraction
Feature Database
Training Set (known clean images)
Gambar 3. Ilustrasi Fase Training
3.2.2.
Digital Images (suspected stego images)
Feature Database
Fase Classification
Pada dasarnya yang dilakukan pada fase classification adalah menggunakan ciri atau fungsi F yang diperoleh dari fase training untuk mengidentifikasi apakah citra yang diuji merupakan stego image atau clean image. Pada fase ini feature vector dari citra digital yang dicurigai maupun feature vector (dari training set) yang tersimpan di dalam feature database akan digunakan oleh classifier untuk memutuskan apakah citra digital yang diuji merupakan stego image (ω=1) atau clean image (ω=-1). Prosedur atau langkah-langkah dalam fase classification bergantung pada classifier yang digunakan. Beberapa classifier yang dapat digunakan dalam blind steganalysis diantaranya adalah: 1. Fisher Linear Discriminator (FLD) 2. Support Vector Machine (SVM) 3. Neural Networks
Stego Images
Clean Images
Gambar 4. Ilustrasi Fase Classification
Sebuah classifier dapat digunakan untuk mengklasifikasikan citra digital berdasarkan feature vector yang berasal dari kombinasi beberapa feature. Hal ini tidak berlaku sebaliknya, tidak lazim mengkombinasikan beberapa classifier dalam blind steganalysis. Pemilihan classifier yang digunakan sangat penting sebab akan turut mempengaruhi tingkat akurasi sebuahn teknik steganalysis. Oleh karena itu masih diperlukan penelitian lebih lanjut untuk menemukan classifier yang memberikan tingkat akurasi yang lebih baik. 4.
Analisis Perbandingan Beberapa Teknik Blind Steganalysis Walaupun prinsip kerja dan fase-fase yang dilalui relatif sama, namun dalam tiap fase dapat digunakan feature dan classifier yang berbedabeda. Perbedaan feature yang digunakan pada tahap feature analysis menyebabkan masing-masing teknik blind steganalysis menghasilkan feature vector yang berbeda-beda baik dari sisi dimensi maupun nilainya. Terlebih lagi jika classifer yang digunakan sebagai pattern classifier juga berbeda, maka otomatis feature vector dari tahap feature analysis akan dikomputasi dengan cara yang berbeda pula. Perbedaan feature dan atau classifier yang digunakan pada tiap teknik blind steganalysis menyebabkan masing-masing teknik blind steganalysis memiliki tingkat akurasi yang berbedabeda. Oleh karena itu pemilihan feature dan atau classifier akan sangat mempengaruhi hasil kahir dan performa sebuah teknik blind steganalysis. Dalam penelitian ini dilakukan kajian pustaka perbandingan untuk membandingkan 4 buah teknik blind steganalysis. Berikut ini adalah perbandingan beberapa variasi teknik blind steganalysis dari 4 buah teknik blind steganalysis yang sudah pernah dipublikasikan dalam penelitian-penelitian sebelumnya:
TABEL 2 PERBANDINGAN BEBERAPA VARIAN TEKNIK BLIND STEGANAYSIS No
1
2
3
4
Teknik yang diusulkan J. Barbier, E. Filiol and K. Mayoura [7]
Feature
Classifier
Keterangan
Discrete Cosine Transform (DCT)
Fisher Linear Discriminator (FLD)
Diuji untuk steganogafi Outguess dan F5 Tingkat akurasi untuk mendeteksi Outguess sebesar 90.47% Tingkat akurasi untuk mendeteksi F5 sebesar 88.97% Diuji utntuk steganografi JSteg, Outguess dan F5. Tingkat akurasi 86%
G. Xuan et Gabungan al [9] beberapa fungsi wavelet Jing Dong Run Length and Tieniu Histogram Tan [10]
Y. Wang and P. Moulin [11]
Bayes
Support Vector Machine (SVM)
Probability Fisher Linear Density Discriminator Function (FLD) (PDF) & Characteris tic Function (CF)
Diuji untuk steganografi LSB Tingkat akurasi untuk mendeteksi LSB mencapai 99.37% Untuk pesan rahasia yang disisipkan dengan metode steganografi selain LSB, tingkat akurasi bervariasi namun masih di atas 90% Diuji dengan citra digital yang berasal dari Uncompressed Colour Image Database (UCID) Menerapkan teknik feature dimensionality reduction untuk mengurangi jumlah dimensi pada feature vector
Terlihat jelas bahwa tingkat akurasi blind steganalysis bervariasi antara 86% sampai 99.37% tergantung feature dan classifier yang digunakan. Selain itu tingkat akurasi blind steganalysis juga bervariasi untuk setiap teknik steganografi yang digunakan. Teknik steganografi sederhana seperti LSB akan lebih mudah dideteksi oleh blind steganalysis dibandingkan dengan teknik steganografi yang lebih rumit seperti yang digunakan pada Jsteg, Outguess dan F5. Semakin tinggi kompleksitas teknik steganografi, maka semakin rendah tingkat akurasi blind steganalysis. Selain beberapa teknik yang dipaparkan dalam tabel di atas, masih banyak variasi teknik blind steganalysis yang lainnya. Selain implementasinya yang luas dalam dunia nyata, blind steganalysis merupakan disiplin ilmu yang masih terus berkembang. Oleh karena itu, peluang riset dalam bidang ini masih sangat terbuka lebar. 5.
Kesimpulan Dari uraian sebelumnya maka dapat disimpulkan bahwa: 1. Blind steganalysis memiliki prinsip kerja yang sama dengan binary classification dimana terdapat dua proses utama yaitu feature analysis dan pattern classifier Masing-masing proses dapat menggunakan feature dan classifier yang berbeda-beda.
2.
3.
4.
Tingkat akurasi dari teknik blind steganalysis bervariasi antara 86% sampai 99.37% tergantung pada feature yang dipilih serta classifier yang digunakan. Tingkat akurasi blind steganalysis juga berbeda-beda untuk tiap teknik steganografi yang digunakan. Semakin tinggi kompleksitas teknik steganografi yang digunakan maka semakin rendah tingkat akurasi blind steganalysis. Walaupun tingkat akurasinya tidak sebaik specific steganalysis, namun blind steganalysis lebih dapat diaplikasikan secara luas untuk kasuskasus real world karena biasanya warden tidak memiliki informasi tentang metode steganografi yang digunakan
Daftar Pustaka G. J. Simmons, “Prisoner‟s problem and the subliminal channel,” in CRYPTO83—Advances in Cryptology, Plenum Press, 1984, pp. 51–67. [2] Yun Q. Shi. “Digital Image Blind Steganalysis”. Internet: www.cs.surrey.ac.uk/FMS/wmms/downloads/Yun Shi2007-08-08.pdf, Aug. 8, 2007 [May. 25, 2009]. [3] I. Avcibas, N. Memon and B. Sankur. “Steganalysis Using Image Quality Metrics.” IEEE Transactions on Image Processing, vol. 12, pp. 221-229, Feb. 2003. [4] Xiangyang Luo, D. Wang, Wei Hu and F. Liu. “Blind Detection For Image Steganography: A System Framework and Implementation.” The International Journal of Innovative Computing, Information and Control, vol. 5, pp. 443-442, Feb. 2009. [5] H. G. Schaathun. CSM25 Class Lecture, Topic: “Steganography Models.” ICT 224, Faculty of Engineering, University of Surrey, Spring 2007 [6] Xiang Li and Jianhua Li. “A New Blind Steganalysis Method for JPEG Images” in Proc. International Conference on Computer Science and Software Engineering, 2008, pp. 939-942. [7] J. Barbier, E. Filiol and K. Mayoura. “Universal Detection of JPEG Steganography.” Journal of Multimedia, vol. 2, pp. 1-9, Apr. 2007. [8] M. Goljan, J. Fridrich and T. Holotyak, “New Blind Steganalysis and it‟s Implication”, in Proc. SPIE Electronic Imaging, Photonics West, 2006. [9] G. Xuan et al, “Steganalysis Based on Multiple Features Formed by Statistical Moments of Wavelet Characteristic Functions”, in Information Hiding Workshop (IHW05), 2005 [10] Jing Dong and Tieniu Tan, “Blind Image Steganalysis Based on Run-Length Histogram Analysis”. IEEE International Conference on Image Processing(ICIP08), pp. 2064-2067, Oct. 2008. [11] Y. Wang and P. Moulin, “Optimized Feature Extraction for Learning-Based Image Steganalysis”, in SPIE Conference on Security, Steganography, and Watermarking of Multimedia Contents, Jan. 2006 [1]