Judul : Penyisipan Pesan Rahasia dalam Citra Gambar pada Aplikasi Image Sharing Berbasis Android dengan Metode Advanced Least Significant Bit (ALSB) Nama : Rahmantogusnyta Mariantisna NIM : 1108605013 Pembimbing I : I Dewa Made Bayu Atmaja Darmawan, S.Kom., M.Cs. Pembimbing II : I Wayan Supriana, S.Si., M.Cs. ABSTRAK Aplikasi image sharing merupakan aplikasi yang banyak digunakan saat ini, dimana aplikasi ini digunakan dalam kegiatan sehari-hari untuk berbagai macam keperluan, baik untuk keperluan bisnis, kerja, ataupun keperluan pribadi. Penggunaan aplikasi yang mudah memungkinkan semua kalangan usia menggunakannya. Para pengguna mengambil foto dari kamera pada smartphone miliknya, kemudian foto tersebut diupload pada aplikasi image sharing. Dikarenakan penggunaannya yang banyak, hal ini bisa dimanfaatkan untuk berkomunikasi secara rahasia dengan cara menyisipkan sebuah pesan rahasia ke dalam foto yang diupload, tanpa menimbulkan kecurigaan. Penyisipan pesan ke dalam foto dilakukan dengan steganografi, yaitu sebuah metode untuk menyembunyikan pesan ke sebuah media penampung. Pada penelitian ini, media penampung yang digunakan berupa foto, dan pesan yang disisipkan berupa teks. Algoritma steganografi yang digunakan adalah Advanced Least Significant Bit (ALSB), sebuah algoritma yang menyisipkan pesan dengan cara mengganti bit pada foto cover dengan bit pada pesan. Hasil penyisipan pesan tersebut diupload pada aplikasi yang telah dibangun, dimana pesan rahasia yang disisipkan pada foto yang telah diupload hanya bisa dibuka oleh user penerima pesan. Berdasarkan pengujian yang telah dilakukan, hasil foto yang disisipkan pesan tidak mengalami perubahan ukuran file foto, dan mengalami perubahan yang sangat kecil dari segi kualitas, yang ditunjukkan dengan nilai Mean Squared Error (MSE) yang rendah dengan nilai MSE rata-rata 0.03, dan nilai Peak Signal to Noise Ratio (PSNR) yang tinggi dengan rata-rata 74.93. Hasil pengujian keutuhan pesan juga dilakukan, dimana hasil MD5 yang sama antara pesan awal dan pesan yang diekstraksi menunjukkan bahwa pesan sampai secara utuh kepada penerimanya tanpa mengalami perubahan setelah melalui proses penyisipan dan ekstraksi. Kata kunci : Advance Least Significant Bit (ALSB), penyisipan, ekstraksi, image sharing. iv
Title : Insertion of Secret Message in an Images on an Android Based Image Sharing Application using Advanced Least Significant Bit (ALSB) Method Name : Rahmantogusnyta Mariantisna Student Number : 1108605013 Supervisors : 1. I Dewa Made Bayu Atmaja Darmawan, S.Kom., M.Cs : 2. I Wayan Supriana, S.Si., M.Cs. ABSTRACT Image sharing applications are widly used in daily activities for various purposes, whether it be for business, work, or personal. Since it s easy to use, people of all ages can use it. Users take photos from the camera on their smartphones, then the photo is uploaded to the image sharing app. Due to the large amount of users that use this application, it can be used to communicate secretly by inserting a secret message into an uploaded photo, without raising suspicion. The insertion of messages into the photo is done by steganography, which is a method to hide messages inside a cover object. In this study, the cover object used is in the form of photos, and messages inserted are in the form of text. The steganographic algorithm used is Advanced Least Significant Bit (ALSB), an algorithm that inserts a message by replacing the bits in the cover photo with bits from the message. The photo with the message is uploaded on the built application, where the secret message inserted in that photo can only be opened by the recipient user of the message. Based on the tests that have been done, the inserted photos do not change in size, and had a very small change in quality, which is indicated by a low Mean Squared Error (MSE) value with an average MSE value of 0.03, and a high Peak Signal to Noise Ratio (PSNR) value with an average of 74.93. The results of the message integrity test are also performed, where the same MD5 results between the initial message and the extracted message indicate that the message arrived to the recipient without undergoing changes after going through the insertion and extraction process. Keywords : Advance Least Significant Bit (ALSB), insertion, extraction, image sharing. v
DAFTAR ISI LEMBAR PENGESAHAN TUGAS AKHIR... iii ABSTRAK... iv ABSTRACT... v KATA PENGANTAR... vi DAFTAR ISI... vii DAFTAR TABEL... ix DAFTAR GAMBAR... x DAFTAR SOURCE CODE... xi BAB I... 1 PENDAHULUAN... 1 1.1 Latar Belakang... 1 1.2 Rumusan Masalah... 3 1.3 Batasan Masalah... 3 1.4 Tujuan Penelitian... 4 1.5 Manfaat Penelitian... 4 1.6 Metodelogi Penelitian... 4 1.6.1 Metode Penelitian... 4 1.6.2 Pengumpulan Data... 5 1.6.3 Analisa Sistem... 5 1.6.4 Perancangan Sistem... 5 1.6.5 Implementasi Sistem... 5 1.6.6 Penulisan Laporan... 5 BAB II... 7 TINJAUAN PUSTAKA... 7 2.1 Tinjauan Empiris... 7 2.2 Tinjauan Teoritis... 8 2.2.1 Steganografi... 8 2.2.2 Advanced Least Significant Bit (ALSB)... 9 2.2.3 Format Citra.bmp (bitmap)... 11 2.2.4 Peak Signal to Noise Ratio (PSNR) dan MSE... 11 2.2.5 Android... 12 2.2.6 Android Studio... 14 BAB III... 15 ANALISIS DAN PERANCANGAN... 15 vii
3.1 Analisa Sistem... 15 3.1.1 Objek Penelitian... 15 3.1.2 Variabel Penelitian... 15 3.2 Desain Sistem... 16 3.2.1 Skema Sistem Sisi Pengirim... 19 3.2.1 Skema Sistem Sisi Penerima... 22 3.3 Perancangan Sistem... 24 3.3.1 Use Case Diagram... 24 3.3.2 Activity Diagram... 24 3.3.5 Class Diagram... 27 3.3.6 Entity Relationship Diagram... 28 3.3.7 Rancangan Antarmuka Sistem... 29 3.6 Pengujian Sistem... 33 BAB IV... 35 HASIL DAN PEMBAHASAN... 35 4.1 Tahap Implementasi... 35 4.1.1 Implementasi Penyisipan Pesan ke dalam Gambar... 35 4.1.2 Implementasi Penyisipan menggunakan Algoritma ALSB... 36 4.1.3 Implementasi Proses Ekstraksi Algoritma ALSB... 38 4.1.4 Implementasi Menampilkan Gambar... 41 4.2 Tampilan Antarmuka Sistem... 43 4.3 Hasil dan Pengujian Sistem... 52 4.3.1 Pengujian perbandingan size file foto asli dengan file yang telah disisipkan pesan.... 52 4.3.2 Pengujian Kualitas Foto yang Telah Disisipkan Pesan... 54 4.3.3 Perbandingan isi pesan teks awal dengan pesan teks setelah diekstraksi dari foto... 56 4.3.4 Pengujian Kapasitas Pesan... 57 4.3.5 Pengujian Black Box... 58 BAB V... 61 KESIMPULAN DAN SARAN... 61 5.1 Kesimpulan... 61 5.2 Saran... 61 DAFTAR PUSTAKA... 62 viii
DAFTAR TABEL Tabel 4. 1 Perbandingan ukuran foto asli dengan foto berisi pesan... 52 Tabel 4. 2 Hasil Pengujian Kualitas Foto... 54 Tabel 4. 3 Perbandingan pesan awal dan pesan yang dibuka penerima... 56 Tabel 4. 4 Pengujian kapasitas pesan yang bisa disisipkan menggunakan ALSB 58 Tabel 4.5 Hasil Pengujian Blackbox... 58 ix
DAFTAR GAMBAR Gambar 2.1 Flowchart penyisipan bit pesan Advance least significant bit... 10 Gambar 3.1 Desain Sistem... 16 Gambar 3. 2 Flowchart Alur pada aplikasi Image Sharing... 18 Gambar 3. 3 Skema Sistem dari Sisi Pengirim... 20 Gambar 3. 4 Flowchart penyisipan menggunakan ALSB... 21 Gambar 3. 5 Skema Sistem dari Sisi Penerima... 22 Gambar 3. 6 Flowchart ekstraksi pesan menggunakan ALSB... 23 Gambar 3. 5 Use Case Diagram... 24 Gambar 3. 6 Activity Diagram Registrasi... 25 Gambar 3. 7 Activity Diagram Login... 26 Gambar 3. 8 Activity Diagram Upload Foto... 26 Gambar 3. 9 Activity diagram buka foto... 27 Gambar 3. 10 Class Diagram... 28 Gambar 3. 11 Entity Relationship Diagram... 28 Gambar 3. 12 Rancangan Antarmuka Halaman Login... 29 Gambar 3. 13 Rancangan Tampilan Registrasi... 30 Gambar 3. 14 Rancangan Antarmuka Halaman Home... 31 Gambar 3. 15 Rancangan Antarmuka Halaman Menu pada Home... 32 Gambar 3. 16 Rancangan Antarmuka Halaman Upload Foto... 33 Gambar 4.1 Tampilan Halaman Login... 43 Gambar 4.2 Tampilan registrasi user baru... 44 Gambar 4. 3 Tampilan Home... 45 Gambar 4. 4 Pop-up pesan rahasia... 46 Gambar 4. 5 Tampilan Menu pada home... 47 Gambar 4.6 Tulis pesan dan tag user... 48 Gambar 4.7 Tampilan mengambil foto... 49 Gambar 4.8 Kumpulan foto yang berisi pesan untuk user yang login... 50 Gambar 4.9 Notifikasi gambar... 51 x
DAFTAR SOURCE CODE Source Code 4. 1 Mengambil byte dari gambar... 35 Source Code 4. 2 Fungsi penyisipan pesan menggunakan ALSB... 35 Source Code 4. 3 Fungsi penyisipan menggunakan ALSB... 36 Source Code 4. 4 Fungsi ekstraksi pesan... 39 Source Code 4. 5 ALSB untuk ekstraksi pesan... 39 Source Code 4. 6 Fungsi menampilkan gambar pada aplikasi... 41 xi
BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan teknologi dan telekomunikasi yang sangat pesat saat ini membawa dampak positif maupun dampak negatif di kehidupan manusia seharihari. Salah satu dampak positif perkembangan tersebut adalah kemudahan berbagi informasi melalui telpon genggam. Telpon genggam merupakan perkembangan dari telpon, yang pada awalnya hanya digunakan untuk menelpon. Namun sejak adanya telpon genggam, kegunaannya pun semakin banyak. Telpon genggam saat ini banyak digunakan untuk bertukar informasi melalui internet. Informasi yang ditukarkan bisa bersifat umum dan juga rahasia. Namun pertukaran informasi rahasia melalui internet memiliki sebuah resiko yaitu informasi yang dikirimkan sampai pada pihak yang salah. Hal ini bisa terjadi karena semua pengguna internet terhubung dalam satu jaringan. Oleh karena itu diperlukan suatu cara untuk menyembunyikan pesan rahasia agar keamanannya tetap terjaga, dan agar pesan rahasia tersebut sampai pada pihak yang benar. Salah satu cara yang bisa digunakan adalah steganografi. Steganografi berasal dari bahasa Yunani, yang berarti tulisan yang tertutup/tersamar ( covered letter ). Dalam arti lain dapat dikatakan sebagai cara komunikasi yang menyembunyikan keberadaan pesan. Steganografi adalah seni dan ilmu untuk menyembunyikan pesan rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak dapat diketahui. Berbeda dengan kriptografi yang merahasiakan isi pesan namun keberadaan pesan tetap ada, steganografi merahasiakan dengan menutupi keberadaan pesan. Dengan kemajuan teknologi digital saat ini, teknik steganografi bisa diterapkan pada citra digital yaitu foto. Steganografi bisa diterapkan dengan berbagai algoritma. Salah satu algoritma yang banyak digunakan dalam steganografi gambar adalah Least Significant Bit (LSB). Algoritma ini bekerja dengan cara menyisipkan informasi pada bit-bit paling kanan dari setiap elemen RGB, sebab perubahan tersebut hanya mengubah nilai byte satu lebih tinggi atau satu lebih rendah darinilai sebelumnya. 1
2 Namun seiringnya perkembangan teknologi, algoritma ini dapat dikembangkan untuk memiliki daya tampung pesan rahasia yang lebih banyak. Perkembangan dari algoritma LSB ini disebut Advanced Least Significant Bit (ALSB). Algoritma ALSB merupakan pengembangan dari LSB, dimana ALSB tidak hanya mengubah bit paling kanan dari nilai RGB tetapi mampu mengubah sampai 4 bit paling kanan dari nilai RGB. Dengan begini, jumlah pesan rahasia yang dapat ditampung melebihi daya tampung dengan algoritma LSB pada suatu gambar yang sama. Perubahan nilai byte RGB yang dialami pun tidak terlalu besar, sehingga tidak menimbulkan perubahan gambar yang signifikan. Karena algoritma ALSB merupakan perkembangan dari LSB yang banyak digunakan dalam steganografi gambar, maka ALSB juga bisa digunakan dalam steganografi gambar. Seperti yang kita ketahui, salah satu fitur telpon genggam yang sangat ramai digunakaan saat ini adalah fitur kameranya. Dengan adanya kamera pada sebuah telpon genggam, seorang pengguna bisa mengambil foto untuk mengabadikan sebuah momen penting kemudian di-upload untuk dibagikan. Saat ini teknologi internet memudahkan pengguna untuk berbagi informasi, salah satunya yaitu berbagi informasi dalam bentuk citra digital gambar. Hasil foto kamera bisa diupload pada sebuah aplikasi image sharing, yaitu aplikasi mobile yang memungkinkan penggunanya untuk membagikan hasil fotonya untuk dilihat pengguna lainnya. Karena aplikasi berjenis image sharing ini gratis, maka penggunanya tersebar di seluruh dunia, dan penggunaan aplikasi tersebut merupakan hal yang biasa dalam kehidupan sehari-hari. Dengan memanfaatkan aplikasi image sharing, seorang pengguna bisa mengirimkan pesan atau informasi rahasia dengan melakukan steganografi pada citra gambar yang diupload. Pengirim pesan tidak berkomunikasi langsung dengan penerima, sehingga keberadaan pesan atau komunikasi dikatakan tersembunyi. Karena banyaknya pengguna yang melakukan upload foto setiap saat, pengiriman pesan rahasia yang disisipkan pada foto yang diupload akan sulit dideteksi dan tidak menimbulkan kecurigaan yang bisa membahayakan keamanan pesan rahasia.
3 Pada penelitian ini metode steganografi yang digunakan adalah Advanced Least Significant Bit (ALSB). ALSB merupakan salah satu metode steganografi yang dikembangkan dari metode steganografi LSB, dimana kelebihan ALSB adalah memiliki kemampuan untuk menyisipkan pesan yang berukuran lebih besar dalam media gambar. Dengan kelebihan ALSB tersebut, diharapkan dapat menyisipkan pesan dengan baik dalam file gambar yang digunakan pada aplikasi image sharing. 1.2 Rumusan Masalah Berdasarkan uraian pada latar belakang, maka permasalahan yang akan dikaji dalam penelitian ini dapat dirumuskan sebagai berikut : a. Bagaimana hasil penyisipan pesan dan ektraksi pesan teks pada gambar menggunakan Advanced Least Significant Bit (ALSB)? b. Bagaimana nilai MSE dan PSNR untuk menunjukkan kualitas gambar yang telah disisipi pesan? c. Bagaimana kualitas pesan rahasia yang diterima oleh penerima setelah dilakukan ekstraksi? 1.3 Batasan Masalah Batasan masalah yang diajukan adalah sebagai berikut : a. Fungsi yang dimiliki oleh aplikasi ini yaitu penyisipan pesan, ekstraksi pesan, upload gambar, dan membuka gambar. b. Jenis gambar yang dipakai untuk menyembunyikan pesan adalah citra gambar berwarna dengan format BMP (bitmap). c. Pesan rahasia yang disisipkan berupa pesan teks, yang dibatasi jumlah karakternya hanya sampai 64 karakter. d. Penerima pesan rahasia dalam satu foto hanya satu penerima.
4 1.4 Tujuan Penelitian Adapun tujuan penelitian yang dibahas dalam penelitian ini adalah membangun aplikasi pengiriman pesan rahasia dalam citra gambar pada aplikasi image sharing dengan metode ALSB pada mobile Android. 1.5 Manfaat Penelitian Adapun manfaat penelitian yang nantinya diharapkan dari penelitian ini adalah a. Dapat membangun aplikasi image sharing pada Android yang mampu menyisipkan pesan rahasia dalam citra gambar. b. Dapat melakukan penyisipan pesan pada gambar, dan dapat melakukan ekstraksi pesan secara utuh menggunakan aplikasi yang dibangun. c. Hasil penelitian di harapkan dapat dijadikan sebagai bahan perbandingan bagi pihak lain yang ingin melalukan penelitian lebih lanjut dan di harapkan penelitian ini dapat menambah wawasan bagi para pembaca. 1.6 Metodelogi Penelitian Pada sub bab metodelogi penelitian ini akan menjelaskan langkah-langkah yang akan dilalui untuk melakukan pengenalan. Adapun sub bab bahasan yang akan dijelaskan adalah metode penelitian, pengumpulan data, analisa sistem, perancangan sistem, implementasi sistem, penulisan laporan. 1.6.1 Metode Penelitian Menurut Jaedun (2013), definisi dari metode eksperimen adalah penelitian yang dilakukan terhadap variabel yang data-datanya belum ada sehingga perlu dilakukan proses manipulasi melalui pemberian treatment/perlakuan tertentu terhadap subjek penelitian yang kemudian diamati atau diukur dampaknya (data yang akan datang). Dengan melakukan penelitian ini akan mendapatkan hasil yang bervariasi sesuai dengan keadaan yang ada, maka dari itu penelitian ini menggunakan metode penelitian eksperimental.
5 1.6.2 Pengumpulan Data Teknik pengumpulan data yang digunakan penulis adalah dengan cara mengumpulkan sendiri dari mengambil foto dan penyisipan pesan melalui aplikasi yang dirancang. Data-data yang dikumpulkan adalah data gambar asli sebelum dilakukan penyisipan dan data gambar yang berisi pesan rahasia. 1.6.3 Analisa Sistem Aplikasi yang akan dibangun dalam penelitian ini, dirancang sebagai aplikasi image sharing yang mampu menyisipkan pesan rahasia ke dalam gambar,sehingga aplikasi ini harus dapat memenuhi kebutuhan-kebutuhan sebagai berikut: 1. Aplikasi dapat melakukan pengambilan foto menggunakan kamera yang ada pada smartphone penggunanya. 2. Aplikasi mampu menampilkan foto yang diupload penggunanya, agar dilihat oleh pengguna lainnya. 3. Aplikasi mampu menyisipkan dan ekstraksi pesan rahasia menggunakan algoritma ALSB. 1.6.4 Perancangan Sistem Perancangan sistem dilakukan untuk mengetahui alur data dan proses yang terjadi pada sistem sebelum dilakukan proses implementasi. Dalam perancangan sistem ini akan digunakan flowchart, skema sistem serta perancangan desain antarmuka sistem (interface). 1.6.5 Implementasi Sistem Implementasi sistem dalam penelitian ini mempresentasikan hasil tahapan perancangan kedalam sebuah bahasa pemrograman yang dapat dijalankan dan digunakan untuk mendapatkan hasil. Untuk implementasi sistem akan digunakan Java.. 1.6.6 Penulisan Laporan Tahap terakhir dalam penyelesaian perekayasaan ini adalah penulisan laporan sebagai dokumentasi perekayasaan. Laporan yang dihasilkan merupakan