STEGANOGRAFI CITRA PNG BERBASIS WEBSITE MENGGUNAKAN METODE MODIFIKASI VIGENERE CIPHER, LEAST SIGNIFICANT BIT, & DICTIONARY BASED COMPRESSION Afan Galih Salman, Rojali, George Binus University, Jalan K.H. Syahdan no. 9, Palmerah, Jakarta (11480), Indonesia [email protected] [email protected] [email protected] ABSTRACT Seiring berkembangnya teknologi informasi dalam memenuhi kebutuhan, muncul berbagai tindakan yang bersifat merugikan dan sulit untuk dihindari. Salah satu tindakan tersebut adalah pencurian data. Oleh karena itu, penelitian ini akan membahas tentang kriptografi dan steganografi yang bertujuan untuk mengatasi permasalahan tersebut. Penelitian ini akan menggunakan metode Modifikasi Vigenere Cipher, Least Significant Bit dan Dictionary Based Compression. Untuk mengetahui kinerja performa penelitian ini, maka metode Peak Signal to Noise Ratio (PSNR) digunakan untuk mengukur secara objektif dan metode Mean Opinion Score (MOS) digunakan untuk mengukur secara subjektif, serta performa penelitian ini akan dibandingkan juga dengan motode lainnya seperti Spread Spectrum dan Pixel Value Differencing. Setelah melakukan perbandingan tersebut maka dapat disimpulkan bahwa penelitian ini dapat memberikan performa lebih baik jika dibandingkan dengan metode lainnya (Spread Spectrum dan Pixel Value Differencing) dan memiliki rentang nilai MSE (0.0191622 – 0.05275) dan PSNR (60,909 – 65,306) dengan hidden file berukuran 18 Kb serta memiliki rentang nilai MOS (4,214 – 4,722) atau kualitas gambar mendekati sangat bagus. Keywords: Kriptografi, Steganografi, Modifikasi Vigenere Cipher, Least Significant Bit, Dictionary Based Compression, Spread Spectrum, Pixel Value Differencing. 1. PENDAHULUAN merupakan salah satu cara yang digunakan untuk mengatasi permasalahan tersebut. Seiring berkembangnya teknologi informasi dalam memenuhi kebutuhan, muncul berbagai tindakan yang bersifat merugikan dan sulit untuk dihindari. Salah satu tindakan tersebut adalah pencurian data, walaupun pengamanan data dapat menggunakan media teknologi informasi (cloud storage), tetapi cara ini tidak efektif karena data yang diterima oleh pihak penerima dapat saja dicuri dan digunakan oleh pihak yang tidak berwenang. Oleh karena itu, kriptografi dan steganografi Dictionary Based Compression merupakan salah satu algoritma kompresi yang tidak menggunakan metode statistik, tetapi menggunakan representasi simbol yang terdapat dalam kamus (Salomon, 2007, P.171), dalam penelitian ini juga akan menggabungkan algoritma Dictionary Based Compression untuk menekan banyaknya data yang ingin disisipkan dan menjaga kualitas gambar dalam proses steganografi. Maka dalam penelitian ini akan membangun aplikasi berbasis website dengan menggunakan tiga metode yaitu modifikasi Vigenere Cipher, Least Significant Bit, dan Dictionary Based Compression. Ketiga metode ini bertujuan untuk meningkatkan keamanan data dan menjaga kualitas gambar. Dalam penelitian ini juga akan melakukan pengujian secara subjektif dan objektif. Pengujian secara subjektif akan menggunakan Mean Opinion Score (MOS) yang bertujuan untuk membandingkan gambar sebelum disisipi pesan dengan sesudah disisipi pesan berdasarkan penglihatan manusia, sedangkan pengujian secara objektif akan menggunakan metode Peak Signal to Noise Ratio (PSNR) yang bertujuan untuk mengukur perbandingan rasio antara gambar yang sebelum disisipi pesan dengan sesudah disisipi pesan berdasarkan perhitungan matematika, serta performa penelitian ini dibandingkan juga dengan metode lainnya seperti Spread Spectrum dan Pixel Value Differencing. 2. METODE 2.1 Metode Perancangan Menurut (S.Pressman, 2010, P.4142) Model Incremental Process memakai urutan-urutan linear yang berulang dalam membangun suatu perangkat lunak. Seiring berjalan waktu pengerjaan, setiap urutan linear akan menghasilkan perkembangan dalam pengerjaan perangkat lunak yang kemudian dapat digunakan oleh pengguna. Pada model incremental yang pertama sering disebut sebagai core product. Core product adalah dasar kebutuhan yang diperlukan oleh pengguna, terkadang banyaknya tambahan fitur yang diperlukan dapat menyebabkan tidak semuanya dapat tersampaikan. Oleh karena itu, hasil evaluasi dari core product dapat dijadikan sebagai rencana perkembangan untuk incremental selanjutnya dengan cara memodifikasi core product agar menjadi lebih baik untuk memenuhi kebutuhan pengguna (fitur dan fungsi). Proses ini dilakukan berulang hingga menghasilkan produk yang lengkap. 2.2 Usulan Pemecahan Masalah Dalam penelitian ini terdapat dua algoritma utama yaitu algoritma penyisipan (yang selanjutnya akan disingkat Embed VLSB CMP) dan algoritma ekstrasi (yang selanjutnya akan disingkat Extract VLSB CMP). Algoritma Embed VLSB CMP digunakan untuk menyembunyikan pesan ke dalam suatu gambar, sedangkan algoritma Extract VLSB CMP digunakan untuk mengambil pesan yang telah disisipkan pada gambar. Pada algoritma Embed VLSB CMP, proses yang pertama kali dilakukan adalah kompresi data melalui Dictionary Based Compression untuk menekan banyaknya data yang ingin disisipkan pada suatu gambar, kemudian dilanjutkan dengan proses enkripsi Vigenere Cipher berdasarkan fungsi chaos untuk menjaga isi informasi pesan dengan cara mengenkripsi input-an keyboard (huruf, angka, tanda baca dan simbol) dan pada tahap akhir, dilakukan proses penyisipan data ke dalam gambar melalui Least Significant Bit untuk menghindari rasa kecurigaan terhadap orang lain. Sedangkan Pada algoritma Extract VLSB CMP, proses yang pertama kali dilakukan adalah pengambilan barisan bitbit pesan yang terdapat dalam gambar yang sudah disisipi melalui Least Significant Bit, kemudian dilanjutkan dengan proses dekripsi Vigenere Cipher berdasarkan fungsi chaos untuk mengembalikan pesan yang sudah terenkripsi dan pada tahap ahir, dilakukan proses dekompresi melalui Dictionary Based Compression untuk mengembalikan pesan dalam keadaan awal. Untuk mengetahui hasil performa dari algoritma VLSB CMP, maka akan dibandingkan juga dengan algoritma lainnya seperti, Spread Spectrum dan Pixel Value Differencing. 2.4 Flow Chart Extract VLSB CMP Mulai Input stego image (*.png) Data tidak valid Validasi stego image Data valid Membaca stego image (*.png) Selesai Proses extract pesan (least significant bit) Pengambilan barisan bit hingga bit penanda Hidden file (*.txt) Representasikan ke dalam angka desimal Representasi ke dalam simbol kamus Menghitung fungsi chaos Proses dekripsi (vigenere chiper berdasarkan fungsi chaos) Proses Dekompresi (dictionary based compression) ya Terdapat dalam kamus ? Melakukan proses dekripsi Membentuk plaintext Tidak Representasi ke dalam karakter ASCII Membangun kamus 2.3 Flow Chart Embed VLSB CMP Mulai Input hidden file (*.txt) 3. HASIL DAN BAHASAN Selesai Data tidak valid Input cover image (*.png) 3.1 Evaluasi Hasil MSE, PSNR, Stego image (*.png) Waktu Embed, dan Waktu Extract Melakukan penyisipan pesan ke dalam cover image Proses embed pesan (least significant bit) Image File Validasi hidden file dan cover image Representasi ke dalam biner Membaca hidden file (*.txt) Ya Membangun kamus Jumlah potongan sama dengan panjang hidden file di bagi dua ? Representasi ke dalam potong-potongan dua karakter Proses kompresi (dictionary based compression) Representasi ke dalam desimal ASCII Data valid Tidak Terdapat dalam kamus ? Tidak Tambahkan satu potongan dari huruf terakhir pada hidden file Membentuk chipertext Proses enkripsi (vigenere chiper berdasarkan fungsi chaos) Black angry birds.png Melakukan enkripsi Ya Representasi ke dalam angka kamus Menghitung fungsi chaos Cloud.png Method MSE PNSR (Db) VLSB CMP 0.002854 8 73.57 5 Spread Spectru m 0.016581 6 65.93 5 PVD 0.009789 2 68.22 3 VLSB CMP 0.007721 9 69.25 4 Spread Spectru m 0.042267 7 61.87 1 PVD 0.022102 1 64.68 6 VLSB CMP 47.64 8 VLSB CMP 0.006774 9 69.82 2 Spread Spectru m - PVD Cloud.png Spread Spectru m Firefox.png 0.038488 4 62.27 8 PVD 0.022943 5 64.52 4 VLSB CMP 0.006067 7 70.30 1 Firefox.png Spread Spectru m 0.032890 6 62.96 Flowers.png PVD 0.017664 4 65.66 VLSB CMP 0.003316 7 72.92 4 Spread Spectru m Fruit.png Flowers.png 0.991 0.617 - 0.559 0.136 VLSB CMP 47.64 8 0.189 0.104 Spread Spectru m 0.768 0.602 PVD - 0.313 0.131 VLSB CMP 47.64 8 0.499 0.108 Spread Spectru m 1.094 0.631 PVD - 0.653 0.166 0.314 0.113 0.892 0.658 65.76 6 VLSB CMP 47.64 8 0.014436 66.53 6 Spread Spectru m - VLSB CMP 0.005473 1 70.74 8 PVD - 0.525 0.162 Spread Spectru m 0.029326 1 63.45 8 VLSB CMP 47.64 8 0.56 0.103 Spread Spectru m 1.078 0.608 PVD - 0.654 0.147 PVD 0.015923 2 PVD Black angry birds.png 0.11 0.017238 6 Fruit.png Sand.png Image File 0.443 Method Rasi o Com p (%) VLSB CMP 47.64 8 Spread Spectru m - PVD - 66.11 Wakt u Embe d (Deti k) Wakt u Extra ct (Detik ) 0.326 0.104 0.926 0.625 0.453 0.139 Sand.png 3.2 Evaluasi Berdasarkan Mean Opinion Score (MOS) Dari kuesioner yang telah dilakukan, maka didapat hasil sebagai berikut : Images MO S Sco re Bla ck ang ry bird s Clo ud Firef ox Flow ers Fru it San d 5 93 100 60 71 91 70 4 26 20 44 39 27 39 3 5 4 13 12 6 10 2 2 1 7 3 2 5 1 0 1 2 1 0 2 MO S 4,66 7 4,72 2 4,214 4,396 4,6 42 4,3 49 MOS Score Quality Inage 5 Sangat Bagus Kemiripan Gambar (90 % - 100 %) 4 Bagus Kemiripan Gambar (70 % - 90 %) 3 Cukup Kemiripan Gambar (60 % - 70 %) 2 Buruk Kemiripan Gambar (40 % - 60 %) 1 Sangat Buruk Kemiripan Gambar (< 40 %) Description of MOS Maka dari hasil tabel diatas, dapat diketahui bahwa nilai minimum MOS = 4,214 diwakili oleh gambar firefox dan nilai maksimum MOS = 4,722 diwakili oleh gambar cloud. Sehingga dapat disimpulkan bahwa algoritma VLSB CMP memiliki rentang nilai MOS (4,214 – 4,722) atau kualitas gambar mendekati sangat bagus. 4. SIMPULAN DAN SARA 4.1 Simpulan 1. Perancangan aplikasi steganografi dapat menjawab kebutuhan akan peningkatan keamanan data dan dapat menjaga kualitas gambar dengan baik. Berdasarkan hasil kuesioner yang telah dilakukan, algoritma VLSB CMP memiliki rentang nilai MOS (4,214 – 4,722) atau kualitas gambar mendekati sangat bagus. 2. Dari pengujian MSE dan PSNR yang telah dilakukan, algoritma VLSB CMP menghasilkan nilai MSE lebih rendah dan PSNR lebih tinggi jika dibandingkan dengan algoritma lainnya seperti Spread Spectrum dan Pixel Value Differencing. 3. Dari pengujian yang telah dilakukan, proses embed dan extract pada algoritma VLSB CMP menghasilkan waktu yang lebih cepat jika dibandingkan dengan algoritma lainnya seperti Spread Spectrum dan Pixel Value Differencing. 4. Dari pengujian yang telah dilakukan, algoritma VLSB CMP mampu mengkompresi data (44,315 % – 48,160 %). 5. Dalam memenuhi kebutuhan pengguna, aplikasi dapat disajikan secara offline maupun online. 4.2 Saran 1. Untuk pengembangan aplikasi lebih lanjut, pemakaian format gambar dapat diperluas seperti, *bmp dan pemakaian format hidden file dapat diperluas seperti *docx, *xlsx. 2. Untuk meningkatkan efesiensi kompresi data, maka perlu pengembangan dalam algoritma kompresi. 5. REFERENSI Abhirama, D. (2009). Keystream Vigenere Cipher: Modifikasi Vigenere Cipher dengan Pendekatan Keystream Generator. Bandung: Institut Teknologi Bandung. Abraham, A., Mauri, J. L., Buford, J., & Suzuki, J. (2011). Advances in Computing and Communications. New York: Springer. Arryawan, E. (2010). Anti Forensik. Jakarta: Elex Media Komputindo. Bhavana.S, & K.L.Sudha. (2012). Text Steganography Using LSB Insertion Method Along With Chaos Theory. International Journal of Computer Science, Engineering and Applications (IJCSEA) Vol.2 , 147. H.Bodnar, G., & S.Hopwood, W. (2010). Accounting information systems (10 th). New York: Pearson Education. Hidayat, R. (2010). Cara Praktis Membangun Website Gratis. Jakarta: Elex media komputindo. Hoffstein, J., Pipher, J., & H.Silverman, J. (2008). An Introduction to Mathematical Cryptography. New York: Springer. http://codeindesign.com/dasarkriptografi-enkripsi-dan-dekripsi, diakses 11 maret 2014. http://fc09.deviantart.net/fs70/f/2012/16 6/d/6/firefox_icon__512x512_png __by_sykton-d53m9v7.png, diakses 14 mei 2014. http://img2.wikia.nocookie.net/__cb201 20804021901/clubpenguin/images /6/68/Fruit_frenzy_background.pn g, diakses 14 mei 2014. http://nazernasrisamaaja.wordpress.com /2011/03/30/kriptografisimetrisasimetris-dan-hybrid, diakses 11 maret 2014. http://pixabay.com/static/uploads/photo/ 2013/06/25/16/13/day141165_640.png?i, diakses 14 mei 2014. http://www.flowerpicturegallery.com/d/ 112582/Photo+of+spring+garden+ flowers+with+white+cream+colu mbine+flowers.PNG, diakses 14 mei 2014. http://www.gadgetmac.com/picture/ang ry%20birds%20bomb%20wallpap er%20iphone%204%20ipod%20to uch%204g.png?pictureId=891534 3&asGalleryImage=true, diakses 14 mei 2014. http://www.tristanb.com/what-issteganography, diakses 11 maret 2014. Iza, D. R. (2013). Steganografi Pada Citra Digital Menggunakan Metode Discrete Wavelet Transform. Malang: Universitas Brawijaya. Junior, R. B. (2010). Steganografi Pada Berkas Gambar Dengan Sudoku Sebagai Kunci Stego. Bandung: Institut Teknologi Bandung. Kazmier, L. j. (2005). Statistik Untuk Bisnis. Jakarta: Erlangga. Lestari, D., & Riyanto, M. Z. (2012). Suatu Algoritma Kriptografi Stream Cipher Berdasarkan Fungsi Chaos. Yogyakarta: Universitas Negeri Yogyakarta. Munir, R. (2004). Kriptografi. Bandung: Institut Teknologi Bandung. Munir, R. (2006). Kriptografi. Badung: Institut Teknologi Bandung. Munir, R. (2013). Kriptografi. Bandung: Institut Teknologi Bandung. Oktavian, D. P. (2010). Menjadi Programmer Jempolan Menggunakan PHP. Yogyakarta: MediaKom. Ollie. (2008). Panduan praktis mendesain template joomla. Jakarta: Mediakita. Paar, C., & Pelzl, J. (2010). Understanding Cryptography. New york: Springer. Pakereng, M. I., Beeh, Y. R., & Endrawan, S. (2010). Perbandingan Steganografi Metode Spread Spectrum dan Least Significant Bit (LSB) Antara Waktu Proses dan Ukuran File Gambar. Yogyakarta: Universitas Kristen Duta Wacana Yogyakarta. Pamungkas, B. (2007). Vigenere Cipher Dengan Kunci Substitusi Inkremental Berdasarkan Caesar Cipher. Bandung: Institut Teknologi Bandung. Pan, J.-s., Huang, H.-c., C.Jain, L., & Zaho, Y. (2013). Recent Advances In Information Hiding And Applications. New York: Springer. Parsons, J. J., & Oja, D. (2012). New Perspectives On Computer Concepts 2012. New York: Cengage Learning. Piarsa, I. N. (2011). Steganografi Pada Citra JPEG Dengan Metode Squential Dan Spreading. Lontar Komputer , 60-61. Pratiarso, A., Yuliana, M., Hadi, M. Z., Bari, F., & Brahim. (2012). Analisa PSNR Pada Teknik Steganografi Menggunakan Spread Spectrum. Electronic Engineering Polytechnic Institute of Surabaya (EEPIS) , 105-106. Rachdian, A., & Sikumbang, A. (2006). Mastering CMS Dengan Mambo. Jakarta: Elex media komputindo. Ramadhan, J. K. (2008). Analisis Enkripsi Halaman Web Berbasis HTML dengan Menggunakan Vigenere Chiper. Bandung: Insitut Teknologi Bandung. Rojali, Guritman, S., & Natalisa, H. T. (2009). Perbaikan Dan Evaluasi Kinerja Algoritma Pixel-Value Differencing (PVD). Bogor: Institut Pertanian Bogor. Rukmono, S. A. (2009). Triple Vigenere Cipher. Bandung: Institut Teknologi Bandung. S.Pressman, R. (2010). Software engineering : a practitioners approach (7 th). New York: McGraw Hill. Saefullah, A., Himawan, & Agani, N. (2012). Aplikasi Steganografi Untuk Menyembunyikan Teks Dalam Media Image Dengan Menggunakan Metode LSB. Jakarta: Universitas Budi Luhur. Salomon, D. (2007). Data Compression. New York: Springer. Setyawan, H., Muchallil, S., & Arnia, F. (2009). Implementasi Steganografi Dengan Metode Least Significant Bit (LSB). Jurnal Rekayasa Elektrika Vol 8, No.1 , 9. Shneiderman, B., & Plaisant, C. (2005). Designing the user interface : strategies for effective humancomputer interaction (4 th). USA: Addison-Wesley. Shneiderman, B., & Plaisant, C. (2010). Designing the user interface : strategies for effective humancomputer interaction (5 th). USA: Addison-Wesley. Stallings, W. (2010). Cryptography and Network Security: Principles and Practice. Boston: Prentice Hal. Sukianto, Y. (2008). Steganografi Dengan Menggunakan Teknik Dynamic Cell Spreding. Bandung: Institut Teknologi Bandung. Susanto, A. (2009). Penerapan Teori Chaos di Dalam Kriptografi. Bandung: Institut Teknologi Bandung. Wang, C.-M., Wu, N.-I., Tsai, C.-S., & Hwang, M.-S. (2007). A High Quality Steganographic Method With Pixel-Value Differencing And Modulus Function. Science Direct , 152-153. Whitten, J. L., & Bentley, L. D. (2007). System Analysis and Design Methods (7 th). New York: McGraw Hill. Wicaksono, K. N. (2009). Modifikasi Vigenere Cipher Dengan Menggunakan Teknik Subsitusi Berulang Pada Kuncinya. Bandung: Institut Teknologi Bandung.