IMPLEMENTASI PENYANDIAN DAN PENYEMBUNYIAN PESAN
PADA CITRA MENGGUNAKAN ALGORITMA RSA
DAN MODIFIED LSB
NASKAH PUBLIKASI
diajukan oleh
Hazuar Nurwanto
11.11.5622
kepada
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM YOGYAKARTA
YOGYAKARTA
2015
1
IMPLEMENTASI PENYANDIAN DAN PENYEMBUNYIAN PESAN PADA
CITRA MENGGUNAKAN ALGORITMA RSA DAN MODIFIED LSB
Hazuar Nurwanto
1), Sudarmawan
2),
1)
Teknik Informatika STMIK AMIKOM Yogyakarta
2) Dosen STMIK AMIKOM Yogyakarta
Jl Ringroad Utara, Condongcatur, Depok, Sleman, Yogyakarta Indonesia 55283
Email : [email protected]), [email protected]2)
Abstract - Cryptography is a technique to encode the message and steganography is a technique to hide the message. This combination is used as a system to secure the message because the message had two security processes, ie encryption and insertion into a digital image. The image is used as the cover image is the image of BMP and PNG format. The system was developed using the programming language Matlab R2007b. Results of testing steganography (Least Siqnificant bits) LSB, security can be maintained even if the message is detected by StegSpy application because the application of RSA cryptography method with asymmetric keys to encrypt messages into secret codes, message insertion capacity has a large capacity with the image quality have inserted the message is still relatively well represented by PSNR. But the image that has been inserted message is not resistant to image manipulation so that the message can not be decrypted properly. This study confirms that the combination of the RSA algorithm and Modified LSB can be used to improve data security.
Keyword - Data Security, Cryptography, Steganography,
RSA, Modified LSB, Encryption, Decryption
1. Pendahuluan
1.1 Latar Belakang Masalah
Penggunaan steganografi merupakan teknologi yang sangat bermanfaat dalam pengamanan data/pesan. Steganografi yaitu menyembunyikan informasi atau pesan ke dalam media lain seperti citra digital, teks, suara, atau video sehingga tidak menimbulkan kecurigaan orang lain. Steganografi membutuhkan dua properti, yaitu informasi dan media penampung [1]. Media penampung yang banyak digunakan untuk menyembunyikan informasi yaitu citra digital. Penyisipan informasi pada media citra digital sebagai media penampung mempunyai kelebihan karna indra penglihatan manusia memiliki keterbatasan tersebut, manusia sulit membedakan citra digital yang asli dengan citra yang telah disisipi pesan rahasia.
Metode steganografi yang banyak digunakan saat ini masih mempunyai kekurangan dalam hal kualitas, kapasitas, dan ketahanan [2]. Metode-metode yang digunakan dalam pembuatan steganografi mempunyai kriteria-kriteria yang kapasitas media penampung menyimpan informasi (payload capacity), kualitas media penampung yang telah disisipi pesan (fidelity), ketahanan terhadap manipulasi (robustness), dan tidak menimbulkan
kecurigaan pada media penampung yang telah disisipi pesan (unsusoicious file) [3]. Kriteria-kriteria ini harus dipenuhi oleh metode yang digunakan dalam pembuatan steganografi, agar media yang menampung informasi tidak menimbulkan kecurigaan. Namun dari kriteria-kriteria tersebut, steganografi tidak memastikan keamanan terhadap informasi yang tersembunyi pada media penampung. Sehingga jika media penampung dapat diungkap oleh orang yang tidak bertanggung jawab, maka informasi yang tersembunyi akan langsung diketahui.
Metode Least Significant Bit (LSB) merupakan salah satu metode yang dapat digunakan dalam steganografi. yaitu merubah file sisipan ke dalam bentuk bit dan menyisipkan bit dari file sisipan tersebut ke dalam bit-bit pada file gambar. Salah satu enkripsi yang dapat digunakan yaitu algoritma Rivest, Shamir, Adleman (RSA) adalah blockcipherteks yang dapat mengenkripsi dan dekripsi yaitu mengubah pesan asli (plaintext) menjadi pesan dalam bentuk tersandi (ciphertext). Baik teknik kriptografi dan steganografi sama-sama memiliki kekurangan, oleh karna itu menggabungkan kedua teknik enkripsi ini dimaksud akan menambah tingkat keamanan pada saat pertukaran data menyisipkan pesan bahkan untuk mengklaim autentufikasi dari suatu media citra digital yang dibuat.
1.2 Rumusan Masalah
1. Bagaimana melakukan proses embedding dan
extracting dengan metode modified LSB terhadap
pesan yang telah terenkripsi dengan algoritma RSA. 2. Bagaimana meningkatkan keamanan data
menggunakan algoritma kriptografi kunci public RSA dan metode steganografi modified LSB.
1.3 Tujuan
1 .Merancang sebuah aplikasi yang dapat mengenkripsi dan mendeskripsi teks menggunakan algoritma kriptografi RSA serta dapat menyisipkan dan mengekstrak cipherteks dalam media citra digital menggunakan algoritma Modified LSB. 2. Melakukan pengujian terhadap keamanan pesan
aplikasi stegnalysis yaitu StegSpy 2.1.
3. Untuk mengetahui kualitas citra yang telah disisipipesan yang dinyatakan dalam PSNR, serta ketahanan terhadap manipulasi citra yang telah disisipi pesan.
2
1.4 Metode Penelitian
Metodologi penelitian yang akan digunakan adalah : 1. Studi Literatur
Mempelajari literature tentang teori dasar mengenai kriptografi, jenis-jenis kriptografi, keunggulan kriptografi asimetris dibandingkan kriptografi simetris, memahami tentang algoritma RSA dan metode steganografi LSB, dan semua teori yang berkaitan baik dari beberapa buku, jurnal, maupun penelitian terdahulu.
2. Analisi Data
Pada tahap ini dilakukan analisis kebutuhan terhadap sistem berserta batasan-batasan yang diperlukan. Menganalisis algoritma kriptografi RSA, teknik enkripsi dan dekripsi pada RSA, serta menganalisis algoritma steganografi LSB, teknik penyisipan dan ekstraksi pesan pada LSB.
3. Perancangan Sistem
Melakukan perancangan desain dalam bentuk
flowchart, UML (Unified Modelling Language) dan
antar muka sistem untuk memudahkan proses implementasi pada tahap selanjutnya.
4. Implementasi Sistem
Pada tahap ini dilakukan pembuatan sistem sesuai dengan analisis dan perancangan yang sudah didefinisikan sebelumnya. Implementasi sistem menggunakan bahasa pemrograman Matlab R2007b. 5. Pengujian Sistem
Pengujian dilakukan terhadap keberhasilan proses kriptografi dan steganografi pada sistem, serta pengujian keamanan pesan, kualitas dan ketahanan citra yang telah disisipi pesan.
6. Dokumentasi Sistem
Melakukan pembuatan dokumentasi sistem melalui dari tahap awal hingga pengujian sistem, untuk selanjutnya dibuat dalam bentuk laporan penelitian (skripsi).
2. Tinjauan Pustaka
Penelitian mengenai steganografi telah banyak dilakukan, terutama steganografi pada data citra. Bandyopadhyay dan Chakraborty melakukan penelitiannya pada tahun 2011, penelitian ini memaparkan tentang metode steganografi pada citra menggunakan empat algoritma yang disesuaikan dalam urutan DNA. Pada tahun sebelumnya Bandyopadhyay et al (2010) juga telah memperkenalkan sebuah metode baru steganografi berdasarkan algoritma genetik dalam penelitiannya. Penggunaan steganografi dan kriptografi secara bersamaan juga pernah dilakukan, diantaranya pada tahun 2010, Naraya dan Prasad memperkenalkan sebuah pendekatan baru untuk keamanan steganografi pada citra menggunakan teknik kriptografi dan konversi, metode ini menunjukan bagaimana citra dengan mengubahnya menjadi cipher image menggunakan kunci rahasia S-DES dan menyembunyikan citra tersebut dalam citra lain menggunakan steganografi. Metode yang diusulakan ini juga mencegah kemungkinan steganalysis.
Steganografi pada media lain seperti suara digital juga pernah dilakukan Geetha dan Muthu dalam penelitiannya (2010) tentang audio steganografi mengatakan bahwa menyisipkan pesan rahasia ke dalam suara digital adalah sangat sulit dilakukan dibandingkan citra digital (Bandyopadhyay et al,2008), hal ini dikarenakan tidak adanya byte tambahan yang dihasilkan untuk penyisipan (Geetha and Muthu, 2010). Pada audio steganography , pesan rahasia disisipkan dengan sedikit mengubah urutan biner dari berkas suara. Pada penelitian yang dilakukan oleh Atoum el al (2011), mengusulkan sebuah metode baru penyisipan informasi ke dalam berkas audio (MP3) di antara frame (BF) dalam berkas MP3.
3. Gambaran Umum
3.1 Perancangan Prosedural (Flowchart)
Perancangan flowchart merupakan gambaran yang
berupa bagan atau grafik dari langkah-langkah dan urutan-urutan prosedur dari suatu program. Untuk memahami proses pada sistem keamanan data ini, berikut adalah gambaran umum flowchart untuk menjelaskan proses kerja sistem yang dirancang.Gambar 1. Flowchart Gambaran Umum 3.2 Perancangan Sistem
Untuk memperjelas tentang gambaran sistem, maka penulis membuat UML dengan empat diagram, yaitu use case diagram, activity diagram, sequence diagram dan class diagram.
3
3.2.1 Use Case Diagram
Berikut ini adalah interaksi antara aktor dengan sistem yang ada pada aplikasi ini :
Gambar 2. Use Case Sistem 3.2.2 Activity Diagram
Berikut Activity diagram embed yaitu alur aktivitas embedded yang dilakukan antara pengguna (pengirim) dengan system :
Gambar 3. Activity Diagram Embed 3.2.3 Sequence Diagram
Sequence Diagram menggambarkan interaksi
yang terjadi antar objek satu dengan objek lainnya yang ada dalam sistem, dan disusun pada urutan waktu. Tujuan pemodelan ini yaitu untuk memvisualisasikan langkah-langkah yang dilakukan untuk menghasilkan output tertentu pada suatu sistem. Berikut sequence diagram dari aplikasi, yaitu pada saat user melakukan Embed :
Gambar 4. Sequance Diagram Embed 3.2.4 Class Diagram
Berikut ini adalah class diagram yang digunakan untuk menggambarkan struktur kelas yang ada pada aplikasi ini:
Gambar 5. Class Diagram
4. Pembahasan 4.1 Implementasi
Pada tahap implementasi inilah rancangan aplikasi yang telah dibuat akan diterapkan ke dalam aplikasi. Mulai dari implementasi desain interface aplikasi serta pengujian program dan citra.
4
1. Tampilan Halaman Home
Halaman Home merupakan awal yang akan ditampilkan saat sistem dijalankan, pada halaman home terdapat 5 menu bar yang terdiri diri menu Home, Embed,
Extract, Help, dan Exit
Gambar 6. Tampilan Halaman Home 2. Tampilan Halaman Embed
Halaman Embed merupakan halaman untuk proses enkripsi pesan menjadi cipherteks dan penyisipan bit-bit cipherteks ke da;am cover image , proses tersebut terjadi pada pihak pengirim pesan. Pada halaman Embed ini, user atau pengirim pesan akan menginputkan pesan dan juga memilih cover image yang sesuai dengan panjang karakter pesan yang akan dikirim kepada penerima pesan
Gambar 7. Tampilan Halaman Embed 3. Tampilan Halaman Extract
Halaman Extract merupakan halaman tempat berlangsungnya proses ekstraksi pesan dari stego image dan dekripsi cipherteks ke plainteks agar dapat dibaca oleh penerima pesan. Untuk dapat mendekripsikan cipherteks, penerima pesan membutuhkan kunci privat yang sebelumnya telah dikirimkan oleh pengirim pesan.
Gambar 8. Tampilan Halaman Extract 4. Tampilan Halaman Help
Halaman Help menampilkan bantuan agar used lebih memahami dalam penggunaan sistem. Terdapat penjelesan cara penggunaan aplikasi.
Gambar 9. Tampilan Halaman Help
4.2 Pengujian
1. Pengujian Keamanan Pesan
Pengujian keamanan pesan dilakukan untuk mengetahui aman atau tidaknya pesan yang tersisip pada citra, pengujian keamanan ini dilakukan menggunakan aplikasi steganalysis yaitu StegSpy 2.1. Pengujian ini dilakukan terhadap dua Formar Gambar yaitu Bitmap dan png.
5
Gambar 8. Tampilan Stegspy 2.1 Dan Hasil Dekteksi File Stego Image
Pengujian keamanan pesan pada citra bitmap dan png dilakukan pada lima citra bitmap dengan ukuran 1000 x 1000 pixels yang telah disisipi pesan.
Tabel 1. Pengujian Keamanan Pesan Pada Citra Bitmap
Tabel 2. Pengujina Keamanan Pesan Pada Citra PNG
Dalam hasil pengamatan melalui pengujian terhadap citra penampung yang telah disisipi pesan dengan berbagai macam ukuran, StegSpy mampu mendekteksi sebagai citra stego yang telah disisipi pesan, sehingga bisa disimpulkan citra stego tidak tahan terhadap steganalysis StegSpy. Pengujian keamanan pesan dengan menggunakan algoritma kriptografi asimetri yaitu RSA menggunakan kunci publik dan private.
Tabel 3. Pengujian Keamanan Pesan Menggunakan Kunci Simetri
Pada tabel 3 pengujian keamanan pesan tetap terjaga karena kunci privat (n dan d) yang dimiliki oleh user yang sebelumnya dikirim oleh pengirim, sehingga jika kunci privat nya berbeda atau salah maka hasil dekripsinya akan berbeda dengan pesan aslinya.
Sehingga dapat disimpulkan walaupun pesan bisa terdekteksi oleh aplikasi StegSpy, pesan tidak akan bisa langsung di baca oleh pihak ketiga. Karena sebelum pesan disisipkan, pesan di enkripsi terlebih dahulu. Penggunaan kriptografi RSA dengan kunci publik dan privat dapat menambah keamanan pesan sehingga pesan tetap terjaga keamanannya.
2. Pengujian Kualitas Citra
Pengujian kualitas citra dilakukan untuk mengetahui kualitas citra yang telah disisipi pesan. Kualitas pada cita daoat diketahui menggunakan Peak Signal to Noise
Ration (PSNR) yang merupakan standar pengukuran error
pada pengolahan citra. Kualitas citra yang telah dimanipulasi pada umumnya mempunyai nilai PSNR yang berbeda pada rentang antara 20-40db. Jika PSNR yang tinggi maka kualitas citra akan lebih baik. Pengujian dilakukan terhadap dua format citra bitmap dan png.
Tabel 4. Pengujian Kualita Citra Bitmap
Tabel 5. Pengujian Kualita Citra PNG
Dari tabel 4 nilai rata-rata PSNR pada citra berformat bitmap adalah 85.68db, dan pada tabel 5 nilai rata-rata PSNR pada citra berformat png adalah 85.81 db, Sehingga dapat ditarik kesimpulan dari nilai rata-rata kedua format citra tersebut, maka kualitas citra yang dihasilkan setelah disisipi pesan adalah tergolong sangat baik.
3. Pengujian Ketahanan Citra
Pengujian ketahanan untuk mengetahui bagaimana perubahan pesan yang sudah disisipkan kedalam citra jika dilakukan manipulasi terhadap citra. Manipulasi yang dilakukan terhadap citra yaitu dengan melakukan rotate
left, rotate right, rotate 180 o dan cropping. Pengujian ketahanan dilakukan terhadap lima citra bitmap dan lima citra png yang telah disisipkan pesan.
6
Tabel 6 Pengujian Ketahanan Terhadap Manipulasi Citra Bitmap
Tabel 7 Pengujian Ketahanan Terhadap Manipulasi Citra png
Pengujian ketahanan terhadap manipulasi yang dilakukan dengan hasil seperti pada tabel 6 dan 7 menunjukan bahwa citra png tidak tahan terhadap manipulasi.
5. Kesimpulan
Berdasarkan pada pengujian yang dilakukan maka didapatkan kesimpulan sebagai berikut :
1. Dalam mengingkatkan keamanan data dapat digunakan kombinasi antara algoritma kriptografi kunci publik RSA dengan metode steganografi
modified LSB. RSA digunakan untuk mengenkripsi
pesan asli (plainteks) menjadi pesan terenkripsi(cipherteks), salanjutnya cipherteks disembunyikan dalam media citra digital agar keberadaan pesan tidak dicurigai oleh pihak lain. Penggabungan dua algoritma tersebut dapat menjaga kerahasiaan pesan, dimana pesan hanya dapat diakses oleh orang yang berwenang dan memiliki kunci. 2. Keamanan pada stego image menggunakan metode
Modified LSB masih bisa terdeteksi oleh aplikasi StegSpy, Namun walaupun pesan bisa terdeteksi oleh
aplikasi StegSpy, pesan tidak akan bisa langsung di baca oleh pihak ketiga. Karena sebelum pesan disisipkan, pesan dienkripsi terlebih dahulu menggunakan algoritma RSA. Penggunaan kunci asimetris yaitu kunci publik tidak sama dengan kunci privat, sehingga pesan masih tetap terjaga keamanannya.
3. Kualitas citra yang telah disisipi pesan menggunakan metode Modified LSB tergolong baik.
4. Metode Modified LSB tidak tahan terhadap menipulasi citra dan serangan steganalysis.
6. Daftar Pustaka
[1] Munir, Rinaldi. 2005. Pengolahan Citra Digital. Bandung: Informatika Bandung.
[2] Morkel, T., JHP. Eloff, dan MS. Olivier. An
Overview of Image Steganography. Information and
Computer Security Architecture (ICSA) Research Group, Department of Computer Science, University of Pretoria, Pretoria.
[3] Kim, David, dan Michael G Solomon. 2012.
Fundamentals of Information Systems Security.
Jones & Bartlett Learning, United State of America. 7. Biodata Penulis
Hazuar Nurwanto, mahasiswa yang memperoleh gelar Sarjana Komputer (S.Kom), Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, lulus tahun 2015. Sudarmawan, MT, Dosen tetap dan Kepala Jurusan Teknik Informatika STMIK AMIKOM Yogyakarta, memperoleh gelar S1 Teknik Elektro UGM pada tahun 1998, dan memperoleh gelar Magister S2 Teknik Elektro UGM pada tahun 2006.