ALGORITMA TRIPLE TRANSPOSITION VIGENERE CIPHER
SKRIPSI
SHINDI WULANDARI 130803005
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
ALGORITMA TRIPLE TRANSPOSITION VIGENERE CIPHER
SKRIPSI
Diajukan untk melengkapi tugas dan memenuhi syarat untuk mencapai gelar Sarjana Sains
SHINDI WULANDARI 130803005
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
MEDAN 2017
Judul : Implementasi Steganografi Modified Least Significant Bit (MLSB) Untuk Enkripsi Pesan Pada Citra Dengan Algoritma Triple Transposition Vigenere Cipher
Kategori : Skripsi
Nama : Shindi Wulandari
Nomor Induk Mahasiswa : 130803005
Program Studi : Sarjana (S1) Matematika
Departemen : Matematika
Fakultas : Matematika dan Ilmu Pengetahuan alam (FMIPA) Universitas Sumatera Utara
Disetujui di Medan, Agustus 2017
Komisi Pembimbing:
Pembimbing 2, Pembimbing 1,
Dr. Mardiningsih, M.Si Dr. Syahriol Sitorus, M.IT NIP. 19630405 198811 2 001 NIP. 19710310 199703 1 004
Disetujui oleh
Departemen Matematika FMIPA USU Ketua,
Dr. Suyanto, M.Kom
IMPLEMENTASI STEGANOGRAFI MODIFIED LEAST SIGNIFICANT BIT (MLSB) UNTUK ENKRIPSI PESAN PADA CITRA DENGAN
ALGORITMA TRIPLE TRANSPOSITION VIGENERE CIPHER
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil karya sendiri. Kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Agustus 2017
SHINDI WULANDARI 130803005
Bismillaahirrahmaanirrahiim
Puji dan syukur penulis ucapkan kepada Allah SWT Yang Maha Kuasa, karena atas limpahan rahmat dan karunia-Nya sehingga skripsi ini dapat diselesaikan.
Pada skripsi ini penulis mengambil judul tentang Implementasi Steganografi Modified Least Significant Bit (MLSB) Untuk Enkripsi Pesan Pada Citra Dengan Algoritma Triple Transposition Vigenere Cipher.
Dalam penyusunan skripsi ini, penulis mendapatkan bimbingan, bantuan, dan dorongan dari berbagai pihak. Sehingga dengan segala hormat penulis mengucapkan terima kasih kepada:
1. Ibunda tercinta Syamsinar Miati dan ayahanda tercinta Berlin Purba serta kedua saudara penulis yaitu abangda tercinta Ade Linhar Purba dan adik tercinta Shella Miranda, atas segala pengertian, kesabaran, dukungan, semangat, dan kasih sayang yang telah diberikan kepada penulis. Mereka adalah penyemangat terbesar dalam hidup penulis hingga penulis dapat menyelesaikan skripsi ini.
2. Bapak Dr. Syahriol Sitorus, M.IT, selaku dosen pembimbing satu yang berkenan dan rela mengorbankan waktu, tenaga, dan pikiran, guna memberikan petunjuk, arahan, dan bimbingannya dalam penulisan skripsi ini.
3. Ibu Dr. Mardiningsih, M.Si selaku dosen pembimbing dua yang juga berkenan dan rela mengorbankan waktu, tenaga, dan pikiran, guna memberikan petunjuk, arahan, dan bimbingannya dalam penulisan skripsi ini.
4. Bapak Syawaluddin, M.IT dan Bapak Drs. Marihat Situmorang, M.Kom, selaku komisi penguji atas masukan dan saran yang telah diberikan demi perbaikan skripsi ini.
5. Bapak Dr. Kerista Sebayang, MS, selaku dekan FMIPA USU.
penulis yang membuat penulis terinspirasi untuk masuk di jurusan matematika ini.
8. Erfi Indriani, Putri Annisa, M. Rizky Ananda, dan Kakanda Fariza Zulmividya, sahabat penulis yang menemani perjuangan penulis dari awal hingga saat ini, selalu memotivasi serta memberikan kekuatan spiritual.
9. Abangda Hafizh Al-Kautsar Aidilof, Abangda Zulfikri Lubis, dan Kakanda Hasina Tony. Abang−kakak senior yang telah bersedia meluangkan waktunya untuk berdiskusi mengenai metode yang penulis gunakan dalam skripsi ini.
10. Sahabat-sahabat Muslimah Kece (Dilla, Indri, Fitri, Mia, dan Dhirah) dan Ghaaziyah Circle. Walau baru mengenal mereka selama perkuliahan ini, namun mereka sudah seperti keluarga sendiri bagi penulis.
11. Teman-teman matematika 2013 tersayang terutama Ema Sri Rezeki dan Agustiany, serta teman-teman lainnya yang tidak dapat disebutkan namanya satu persatu yang telah membantu penulis dengan memberikan dukungan dan doa dalam menyelesaikan skripsi ini.
Semoga Allah SWT yang akan membalas segalanya. Penulis juga menyadari masih terdapat banyak kekurangan dalam pembuatan skripsi ini, baik dalam teori maupun penulisannya. Oleh karena itu, penulis mengharapkan saran dari pembaca demi perbaikan bagi penulis. Semoga segala kebaikan dalam bentuk bantuan yang telah diberikan mendapat balasan dari Allah SWT. Akhir kata, penulis berharap semoga tulisan ini bermanfaat bagi para pembaca.
Medan, Agustus 2017 Penulis
Shindi Wulandari
ALGORITMA TRIPLE TRANSPOSITION VIGENERE CIPHER
ABSTRAK
Steganografi merupakan teknik menyembunyikan pesan rahasia di dalam media digital agar orang lain tidak menyadari ada suatu pesan rahasia di dalam media tersebut. Agar pesan rahasia yang disembunyikan lebih aman, dapat menggunakan teknik kriptografi untuk menyandikan pesan rahasia ke dalam karakter yang tidak dapat mengerti maknanya. Algoritma yang digunakan dalam penelitian ini adalah algoritma Steganografi Modified Least Significant Bit (MLSB) dan algoritma Triple Transposition Vigenere Cipher. MLSB merupakan metode LSB yang telah dimodifikasi dengan mengubah data dari bilangan 8 bit menjadi 5 bit, kemudian disisipkan ke dalam cover image. Teknik Triple Transposition Vigenere Cipher juga merupakan modifikasi dari teknik Vigenere Cipher dengan melakukan proses substitusi dan transposisi sebanyak 3 kali. Meskipun hasil yang diperoleh sama dengan panjang plainteks, cipherteks hasil enkripsi dengan metode ini agak sulit untuk dipecahkan karena dilakukan tiga kali proses pengenkripsian pesan yang setiap plainteksnya memiliki kunci yang berbeda. Kualitas citra steganografi dengan metode ini menunjukkan kualitas yang cukup baik, karena nilai Means Square Error (MSE) yang dihasilkan sebesar 3.9 yang artinya hanya sedikit nilai piksel error yang ditimbukan akibat penyisipan pesan menggunakan metode MLSB. File citra sebelum dan sesudah disisipi pesan, tidak menunjukkan perbedaan yang signifikan dan pesan yang diekstrak tidak mengalami perubahan.
Kata Kunci: Kriptografi, Steganografi, Triple Transposition Vigenere Cipher, Modified Least Significant Bit (MLSB).
ENCRYPTION WITH TRIPLE TRANSPOSITION VIGENERE CIPHER ALGORITHM
ABSTRACT
Steganography is a technique to hide secret messages in digital media so that others don’t realize there is a secret message in the media. For hidden secret messages to be more secure, use Cryptographic techniques to encrypt secret messages into characters who can’t understand it’s meaning. Algorithm used in this research is Steganography Modified Least Significant Bit (MLSB) algorithm and Triple Transposition Vigenere Cipher algorithm. MLSB is a modified LSB method by converting data from an 8 bit number to 5 bit, then inserted into the cover image. Triple Transposition Vigenere Cipher Technique is also a modification of Vigenere Cipher technique by substitution and transposition process 3 times. Although the results obtained are the same as the length of the plaintext, the encrypted ciphertext with this method is somewhat difficult to solve because three encryption processes are performed which each plaintext has a different key. The quality of steganographic image with this method shows good enough quality, because the value of Means Square Error (MSE) generated is 3.9 which means only a few pixel error value caused by message insertion using MLSB method. The image file before and after the message inserted, didn’t show any significant difference and the extracted message didn’t change.
Keywords: Cryptography, Steganography, Triple Transposition Vigenere Cipher, Modified Least Significant Bit (MLSB).
Halaman
PERSETUJUAN i
PERNYATAAN ii
PENGHARGAAN iii
ABSTRAK v
ABSTRACT vi
DAFTAR ISI vii
DAFTAR TABEL ix
DAFTAR GAMBAR xi
DAFTAR LAMPIRAN xii
BAB 1 PENDAHULUAN
1.1 Latar Belakang 1
1.2 Perumusan Masalah 3
1.3 Batasan Masalah 4
1.4 Tujuan Penelitian 4
1.5 Manfaat Penelitian 4
1.6 Kerangka Pemikiran 4
1.7 Metodologi Penelitian 5
BAB 2 LANDASAN TEORI
2.1 Keamanan Informasi 7
2.2 Kriptografi 7
2.2.1 Pengertian Kriptografi 7
2.2.2 Sejarah Kriptografi 8
2.2.3 Terminologi dan Konsep Dasar Kriptografi 9 2.2.4 Algoritma Triple Transposition Vigenere Cipher 12
2.3 Steganografi 15
2.3.1 Pengertian Steganografi 15
2.3.2 Sejarah Steganografi
2.3.3 Terminologi dan Konsep Dasar Steganografi 16
2.3.4 Proses Steganografi 16
2.3.5 Modified Least Significant Bit (MLSB) 17 2.4 Citra Digital
2.4.1 Pengertian Citra Digital 18
2.4.2 Jenis-jenis Citra Digital 18
2.5 Means Square Error (MSE) 20
2.6 Penelitian Terdahulu 21
BAB 3 ANALISI DAN PERANCANGAN APLIKASI
3.1 Analisis Sistem 23
BAB 4 IMPLEMENTASI
4.1 Kebutuhan Perangkat Lunak dan Perangkat Keras 33
4.2 Implementasi 33
4.2.1 Proses Enkripsi dan Encoding 34
4.2.2 Proses Decoding dan Dekripsi 38
4.3 Analisis dalam Aplikasi 41
4.4 Means Square Error (MSE) 66
4.5 Hasil Pengujian 67
4.5.1 Hasil Kriptografi 67
4.5.2 Hasil Steganografi 68
BAB 5 KESIMPULAN DAN SARAN
5.1 Kesimpulan 73
5.2 Saran 73
DAFTAR PUSTAKA 75
LAMPIRAN 77
Nomor Tabel
Judul Halaman
2.1 Hasil Penelitian Terdahulu 21
4.1 Proses Memasukkan Plainteks 1 42
4.2 Proses Transposisi Pertama 42
4.3 Kode ASCII Plainteks dan Kunci Pertama 43
4.4 Hasil Konversi Plainteks dan Kata Kunci Pertama 44 4.5 Hasil Penjumlahan Plainteks dengan Kata Kunci Pertama 44 4.6 Hasil Pengurangan Plainteks pada Proses Pertama 45 4.7 Pengembalian Plainteks ke Bentuk Semula pada Proses
Pertama
45 4.8 Hasil Proses Enkripsi pada Transposisi Pertama 46
4.9 Proses Memasukkan Plainteks 2 46
4.10 Proses Transposisi Kedua 47
4.11 Kode ASCII Plainteks dan Kunci Kedua 47
4.12 Hasil Konversi Plainteks dan Kata Kunci Kedua 48 4.13 Hasil Penjumlahan Plainteks dengan Kata Kunci Kedua 49 4.14 Pengembalian Plainteks ke Bentuk Semula pada Proses
Kedua
49 4.15 Hasil Proses Enkripsi pada Transposisi Kedua 50
4.16 Proses memasukkan plainteks 3 51
4.17 Proses Transposisi Ketiga 51
4.18 Kode ASCII Plainteks dan Kunci Ketiga 52
4.19 Hasil Konversi Plainteks dan Kata Kunci Ketiga 52 4.20 Hasil Penjumlahan Plainteks dengan Kata Kunci Ketiga 53 4.21 Hasil Pengurangan Plainteks pada Proses Ketiga 53 4.22 Pengembalian Plainteks ke Bentuk Semula pada Proses
Ketiga 54
4.23 Hasil Proses Enkripsi pada Transposisi Ketiga 54
4.24 Nilai RGB Citra Cover 57
4.25 Citra Cover Dalam Bentuk Biner 58
4.26 Biner Citra Setelah Disisipkan Pesan 58
4.27 Nilai Piksel Citra Stego 59
4.28 Hasil Ekstraksi Citra Stego 60
4.29 Pengambilan Karakter Control Symbol dari Komponen RGB 60 4.30 Konversi Control Symbol Menjadi Nilai Hexadecimal 60 4.31 Hasil Proses Dekripsi pada Substitusi Ketiga 63 4.32 Proses Dekripsi pada Proses Substitusi Ketiga 63 4.33 Pengurangan Plainteks dan Kunci pada Proses Dekripsi
Ketiga 64
4.34 Pengurangan Plainteks dengan Kata Kunci pada Proses
4.37 Perbandingan antara Citra Cover dan Citra Stego 68 4.38 Kapasitas Maksimum Karakter yang Mampu Ditampung
Tanpa Merusak Citra Cover 70
4.39 Kapasitas Maksimum Citra 72
Nomor Gambar
Judul Halaman
1.1 Diagram Konsep Penyembunyian Pesan 5
2.1 Scytale, Media Kriptografi yang Digunakan Oleh Bangsa
Yunani Kuno 8
2.2 Mesin Enigma 9
2.3 (a) Plainteks; (b) Cipherteks 10
2.4 Skema Enkripsi dan Dekripsi 11
2.5 Proses Algoritma Triple Transposition Vigenere Cipher 12
2.6 Bujursangkar Vigenere Cipher 13
2.7 (a) Skema Encoding; (b) Skema Decoding 17
2.8 Control Symbol 17
2.9 (a) Citra Biner; (b) Representasi Citra Biner 19
2.10 Citra Grayscale 19
2.11 Citra Warna 20
3.1 (a) Flowchart Enkripsi dan Encoding; (b) Flowchart
Decoding dan Dekripsi 23
3.2 Flowchart Proses Enkripsi 25
3.3 Flowchart Proses Dekripsi 26
3.4 Flowchart Proses Encoding 29
3.5 Flowchart Proses Decoding 30
3.6 Flowchart Proses Perhitungan Means Square Error (MSE) 32
4.1 Menu Utama 34
4.2 Bebatuan.png 35
4.3 Halaman Enkripsi dan Encoding 1 35
4.4 Pop-up Window Pilih Gambar 1 36
4.5 Halaman Enkripsi dan Encoding 2 36
4.6 Halaman Enkripsi dan Encoding 3 37
4.7 Halaman Enkripsi dan Encoding 4 37
4.8 Pop-up Window Simpan Gambar 38
4.9 Bebatuan_Stego.png 38
4.10 Halaman Decoding dan Dekripsi 1 39
4.11 Pop-up Window Pilih Gambar 2 39
4.12 Halaman Decoding dan Dekripsi 2 40
4.13 Halaman Decoding dan Dekripsi 3 40
4.14 Halaman Decoding dan Dekripsi 4 41
4.15 Citra Cover 57
4.16 Citra Stego 59
4.17 Pixel Citra Cover dan Citra Stego 66
Nomor Lamp
Judul Halaman
1 Fungsi Menu Utama 77
2 Fungsi Enkripsi dan Encoding 79
3 Fungsi Decoding dan Dekripsi 84
4 Fungsi Means Square Error (MSE) 88
ALGORITMA TRIPLE TRANSPOSITION VIGENERE CIPHER
ABSTRAK
Steganografi merupakan teknik menyembunyikan pesan rahasia di dalam media digital agar orang lain tidak menyadari ada suatu pesan rahasia di dalam media tersebut. Agar pesan rahasia yang disembunyikan lebih aman, dapat menggunakan teknik kriptografi untuk menyandikan pesan rahasia ke dalam karakter yang tidak dapat mengerti maknanya. Algoritma yang digunakan dalam penelitian ini adalah algoritma Steganografi Modified Least Significant Bit (MLSB) dan algoritma Triple Transposition Vigenere Cipher. MLSB merupakan metode LSB yang telah dimodifikasi dengan mengubah data dari bilangan 8 bit menjadi 5 bit, kemudian disisipkan ke dalam cover image. Teknik Triple Transposition Vigenere Cipher juga merupakan modifikasi dari teknik Vigenere Cipher dengan melakukan proses substitusi dan transposisi sebanyak 3 kali. Meskipun hasil yang diperoleh sama dengan panjang plainteks, cipherteks hasil enkripsi dengan metode ini agak sulit untuk dipecahkan karena dilakukan tiga kali proses pengenkripsian pesan yang setiap plainteksnya memiliki kunci yang berbeda. Kualitas citra steganografi dengan metode ini menunjukkan kualitas yang cukup baik, karena nilai Means Square Error (MSE) yang dihasilkan sebesar 3.9 yang artinya hanya sedikit nilai piksel error yang ditimbukan akibat penyisipan pesan menggunakan metode MLSB. File citra sebelum dan sesudah disisipi pesan, tidak menunjukkan perbedaan yang signifikan dan pesan yang diekstrak tidak mengalami perubahan.
Kata Kunci: Kriptografi, Steganografi, Triple Transposition Vigenere Cipher, Modified Least Significant Bit (MLSB).
ENCRYPTION WITH TRIPLE TRANSPOSITION VIGENERE CIPHER ALGORITHM
ABSTRACT
Steganography is a technique to hide secret messages in digital media so that others don’t realize there is a secret message in the media. For hidden secret messages to be more secure, use Cryptographic techniques to encrypt secret messages into characters who can’t understand it’s meaning. Algorithm used in this research is Steganography Modified Least Significant Bit (MLSB) algorithm and Triple Transposition Vigenere Cipher algorithm. MLSB is a modified LSB method by converting data from an 8 bit number to 5 bit, then inserted into the cover image. Triple Transposition Vigenere Cipher Technique is also a modification of Vigenere Cipher technique by substitution and transposition process 3 times. Although the results obtained are the same as the length of the plaintext, the encrypted ciphertext with this method is somewhat difficult to solve because three encryption processes are performed which each plaintext has a different key. The quality of steganographic image with this method shows good enough quality, because the value of Means Square Error (MSE) generated is 3.9 which means only a few pixel error value caused by message insertion using MLSB method. The image file before and after the message inserted, didn’t show any significant difference and the extracted message didn’t change.
Keywords: Cryptography, Steganography, Triple Transposition Vigenere Cipher, Modified Least Significant Bit (MLSB).
BAB 1 PENDAHULUAN
1.1 Latar Belakang
Dunia informatika saat ini berkembang sangat pesat dan membawa dunia ke era teknologi, karena itulah saat ini informasi menjadi sangat penting. Maka mulai bermunculan berbagai media untuk mengakses informasi dan mengelola informasi sehingga banyak kemudahan-kemudahan yang kemudian didapat untuk mengakses suatu informasi. Dari kemudahan akses informasi ini membawa pengaruh terhadap tingkat keamanan informasi yang dapat berakibat pada keamanan pesan itu sendiri. Sehingga informasi penting yang seharusnya rahasia menjadi sangat beresiko diketahui dan disalahgunakan oleh pihak lain yang tidak berhak. Hal itu menyebabkan munculnya rasa ketidakyakinan pada penerima maupun pengirim informasi tersebut. Terjadilah kekhawatiran penerima apakah informasi benar adanya dari sumber yang dimaksudkan, dan keraguan pengirim akankah informasi yang dikirim diterima oleh pihak yang dimaksudkan.
Bahkan berdasarkan CSI/FBI Computer Crime and Security Survey 2005, mayoritas perusahaan memberikan anggaran untuk pengembangan sistem dan keamanan data sekitar 5% dari total anggaran perusahaan tersebut. Salah satu contoh masalah keamanan komputer yang pernah terjadi di Amerika, kasus perusahaan film terkemuka di dunia, yakni Sony Pictures Entertaiment yang diretas oleh hacker yang disinyalir berasal dari Korea Utara.
Contoh lainnya di Indonesia, ada beberapa kasus sehubungan dengan kejahatan komputer. Salah satu kasusnya adalah seorang cracker Indonesia (yang dikenal dengan nama HC) tertangkap di Singapura ketika mencoba menjebol sebuah perusahaan di Singapura pada September dan Oktober 2000. Setelah berhasil membobol bank Lippo, kembali Fabian Clone beraksi dengan menjebol web milik Bank Bali. Perlu diketahui bahwa kedua bank ini memberikan layanan
Oleh karena itu dengan adanya kriptografi diharapkan informasi akan tetap terjaga kerahasiaannya hingga informasi tersebut sampai pada tujuannya, serta memberikan keyakinan pada penerima bahwa informasi tersebut memang benar berasal dari pengirim yang tepat begitu pula sebaliknya pengirim yakin bahwa penerima informasi adalah pihak yang tepat.
Kriptografi merahasiakan informasi dan menyandikannya ke dalam informasi acak yang tidak dimengerti kecuali oleh penerima yang tepat. Hal ini dikarenakan kriptografi itu sendiri ialah ilmu dan seni untuk menjaga keamanan pesan atau data. Kriptografi mengubah sebuah data atau informasi menjadi pesan acak yang sesuai dengan kunci pengacaknya. Di mana kunci ini diketahui oleh pengirim dan penerima informasi saja. Tentunya pengaplikasian kriptografi akan mengamankan sebuah informasi. Namun, saat ini jika informasi hanya dienkripsi saja dengan kriptografi, informasi tersebut masih rentan terhadap bahaya pencurian informasi. Di tambah lagi saat ini metode pengiriman pesan dan informasi bisa melalui email yang dapat diakses oleh siapa saja. Oleh karena itu pesan perlu disembunyikan ke dalam wadah berupa citra agar pesan tersebut tidak diketahui keberadaannya oleh orang yang tidak diinginkan. Proses penyisipan pesan ke dalam suatu wadah seperti citra inilah yang disebut dengan steganografi.
Penggunaan teknik steganografi dan kriptografi secara bersamaan ini dimaksudkan untuk memberikan keamanan berlapis dalam keamanan pertukaran.
Sehingga penulis mempunyai ide untuk mengkombinasikan metode kriptografi dan steganografi. Adapun pada metode kriptografi yang digunakan yaitu algoritma Triple Transposition Vigenere Cipher. Dengan algoritma Triple Transposition Vigenere Cipher, informasi yang bersifat rahasia tersebut dienkripsi menjadi sebuah bentuk persandian di mana dalam prosesnya setiap plainteks informasi tersebut dilakukan transposisi terlebih dahulu sebanyak tiga kali dengan menggunakan kunci yang berbeda satu dengan yang lainnya sehingga informasi tersebut tidak mudah dipecahkan. Dan dikombinasikan dengan metode steganografi yaitu algoritma Modified Least Significant Bit (MLSB). Metode MLSB ini bekerja dengan menggantikan 8 bit LSB citra penampangnya (citra cover) dengan 5 bit dari data citra penyisipan (citra embed) yang sudah
dimodifikasi. Modifikasi ini dilakukan dengan mengkonversi byte-byte citra penyisip dengan nilai ASCII (American Standart Code for Information Interchange) heksadesimal. Setelah bit-bit penyisip dikonversikan ke dalam ASCII heksadesimal, kemudian data penyisip digabung dengan kode control simbolnya (Control Symbol). Sebelum disisipkan ke dalam citra, pesan penyisip dikonversikan ke dalam biner yang menghasilkan 5 bit setiap nilai pesan.
Penulis berharap dengan adanya penelitian yang berjudul “Implementasi Steganografi Modified Least Significant Bit (MLSB) Untuk Enkripsi Pesan Pada Citra Dengan Algoritma Triple Transposition Vigenere Cipher” ini keberadaan informasi menjadi lebih aman.
1.2 Perumusan Masalah
Kasus peretasan atau penyadapan menjadi masalah yang serius bagi setiap negara, sehingga dibutuhkan cara untuk menjaga kerahasiaan pesan. Banyaknya metode penyandian tidak menjamin pesan akan tetap aman, sehingga dibutuhkan pengembangan dari metode-metode penyandian yang ada. Seperti pada penelitian terdahulu telah digunakan metode Vigenere Cipher pada penyisipan pesan LSB- SIFT menyimpulkan bahwa setelah dilakukan penyerangan dengan scratch dan salt & pepper kualitas stego-image menurun drastis, dilihat dari MSE yang tinggi mencapai lebih dari 130 dan PSNR yang rendah mencapai 24 desibel (Khotimah dan Shidiq, 2012). Adanya kekurangan dari penelitian terdahulu, membuat perlu pengembangan teknik dalam mengamankan informasi tersebut dengan cara mengubah informasi ke dalam bentuk sandi dengan menggunakan algoritma Triple Transposition Vigenere Cipher. Di mana dalam prosesnya setiap plainteks informasi tersebut dilakukan transposisi terlebih dahulu sebanyak tiga kali dengan menggunakan kunci yang berbeda satu dengan yang lainnya sehingga informasi tersebut tidak mudah dipecahkan oleh pihak lawan bisnis. Selanjutnya informasi yang telah diubah akan disisipkan ke dalam citra digital dengan mengkonversikan terlebih dahulu byte-byte citra ke dalam ASCII heksadesimal. Pengembangan dua
1.3 Batasan Masalah
Adapun batasan masalah dalam penelitian ini adalah sebagai berikut:
1. Menyembunyikan pesan rahasia atau pesan teks ke pada citra digital berekstensi *png.
2. Penelitian ini hanya membahas tentang kombinasi dua teknik pengamanan data yaitu menggunakan algoritma Triple Transposition Vigenere Cipher dan MLSB.
3. Menggunakan citra RGB dengan format *png sebagai wadah penampung pesan.
1.4 Tujuan Penelitian
Tujuan penelitian ini adalah menyembunyikan pesan rahasia dalam bentuk teks dengan Modified Least Significant Bit (MLSB) dan algoritma Triple Transposition Vigenere Cipher sehingga pesan rahasia tidak diketahui keberadaannya.
1.5 Manfaat Penelitian
Manfaat dari penelitian ini adalah sebagai berikut:
1. Dapat merahasiakan pesan tanpa diketahui keberadaan pesan tersebut.
2. Dapat digunakan sebagai referensi bacaan untuk mahasiswa Matematika, terlebih bagi mahasiswa yang akan melakukan penelitian serupa.
1.6 Kerangka Pemikiran
Adapun diagram konsep penelitian adalah sebagai berikut:
Gambar 1.1 Diagram Konsep Proses Penyembunyian Pesan
1.7 Metodologi Penelitian
Penelitian ini dilakukan dengan langkah-langkah berikut:
1. Studi Literatur
Pada tahap ini dilakukan dengan mempelajari bahan-bahan ataupun buku- buku referensi, skripsi, jurnal dan sumber lain yang berkaitan dengan kriptografi Triple Transposition Vigenere Cipher dan steganografi Modified Least Significant Bit (MLSB).
2. Analisis
Pada tahap ini digunakan untuk mengolah data hasil studi literatur dan kemudian melakukan analisis terhadap permasalahan sehingga menjadi suatu informasi.
Input pesan, kunci public TTVC, citra
cover
Enkripsi TTVC
A
A
Cipherteks TTVC
Mulai
Proses MLSB
Citra stego
Selesai
3. Perancangan Sistem
Pada tahap ini dilakukan analisis sesuai dengan kebutuhan seperti cara membangun aplikasi yang mengimplementasikan kombinasi algoritma kriptografi Triple Transposition Vigenere Cipher dan algoritma steganogafi Modified Least Significant Bit (MLSB), jenis perangkat yang digunakan, pembuatan desain interface (antarmuka), dan hasil yang diinginkan (citra yang telah disisipkan pesan).
4. Implementasi
Dalam tahap ini dilakukan penerjemahan ke dalam bahasa pemrograman dari hasil analisis dan perancangan yang telah dibuat sebelumnya dengan menggunakan software MATLAB.
5. Pengujian Sistem
Pada tahap ini dilakukan implementasi dari kombinasi algoritma kriptografi Triple Transposition Vigenere Cipher dan steganografi Modified Least Significant Bit (MLSB) dalam memberikan keamanan pesan dengan format file citra berekstensi png.
6. Dokumentasi
Pada tahap ini berisi laporan dan kesimpulan akhir dari pengujian dalam bentuk penulisan tugas akhir beserta kesimpulannya dan menampilkan data- data sebagai bukti dalam bentuk hard copy.
BAB 2
TINJAUAN PUSTAKA
2.1 Keamanan Informasi
Informasi saat ini sudah menjadi sebuah komoditi yang sangat penting bagi sebuah organisasi, perguruan tinggi, lembaga pemerintahan maupun individual, kemampuan dalam mengakses dan menyediakan informasi secara cepat (Rahardjo, B 2005). Karena pentingnya sebuah informasi, sering kali informasi yang diinginkan hanya dapat diakses oleh orang tertentu misalnya pihak penerima yang diinginkan, dan jika informasi ini sampai diterima oleh pihak yang tidak diinginkan akan berdampak kerugian pada pihak pengirim. Keamanan informasi adalah bagaimana kita dapat mencegah penipuan, atau paling tidak mendeteksi adanya penipuan di sebuah sistem yang berbasis informasi, di mana informasinya sendiri tidak bersifat fisik (Rahardjo, B 2005). Untuk itu diperlukanlah sebuah pendekatan dalam melakukan pengamanan pada informasi, seperti melakukan enkripsi, steganografi, cipher dan hashing terhadap informasi tersebut.
2.2 Kriptografi
2.2.1 Pengertian Kriptografi
Kriptografi (cryptography) berasal dari bahasa Yunani, yaitu dari kata crypto dan graphia yang berarti ‘penulisan rahasia’. Kriptografi adalah ilmu ataupun seni yang mempelajari bagaimana membuat suatu pesan yang dikirim oleh pengirim dapat disampaikan kepada penerima dengan aman (Schneier, 1996, dalam Setyaningsih, 2015).
2.2.2 Sejarah Kriptografi
Kriptografi mempunyai sejarah yang panjang dan mengagumkan. Sejarah lengkap kriptografi dapat ditemukan di dalam buku David Kahn, The Codebreakers.
Penulisan rahasia ini dapat dilacak kembali mulai dari 4000 tahun sebelum Masehi sampai pada abad ke-20.
Sejarah kriptografi sebagian besar merupakan sejarah kriptografi klasik, yaitu metode enkripsi yang menggunakan kertas dan pensil atau menggunakan alat bantu mekanik sederhana. Kriptografi klasik secara umum dikelompokkan menjadi dua kategori, yaitu algoritma transposisi (transposition cipher) dan algoritma substitusi (substitution cipher). Algoritma transposisi adalah algoritma yang mengubah susunan – susunan huruf di dalam pesan, sedangkan algoritma substitusi yaitu mengganti setiap huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf yang lain.
Gambar 2.1 Scytale, Media Kriptografi yang Digunakan Oleh Bangsa Yunani Kuno
Sekitar 400 SM algoritma transposisi digunakan oleh bangsa Sparta dalam bentuk sepotong papyrus atau scytale, perkamen yang dibungkus dengan batang kayu silinder. Pada media tersebut pesan ditulis secara horizontal (baris per baris).
Apabila kertas dilepas, maka setiap huruf akan tersusun secara acak membentuk pesan rahasia. Agar pesan tersebut dapat dibaca, maka kertas harus kembali dililitkan ke silinder yang diameternya sama dengan diameter silinder pengirim.
(Setyaningsih, 2015)
Sedangkan algortima substitusi paling awal dan paling sederhana adalah Caesar cipher, yaitu digunakan oleh raja Yunani kuno, Julius Caesar. Caranya adalah dengan mengganti setiap karakter di dalam alfabet dengan karakter yang terletak pada tiga posisi berikutnya di dalam susunan alfabet. Pada perang dunia
ke II, Pemerintah Nazi Jerman membuat mesin enkripsi yang dinamakan dengan Enigma. Mesin ini melakukan proses enkripsi yang sangat rumit. Namun Enigma cipher berhasil dipecahkan oleh pihak Sekutu dan keberhasilan memecahkan Enigma sering dikatakan sebagai faktor yang memperpendek perang dunia ke – 2.
Gambar 2.2 Mesin Enigma
Perkembangan peralatan komputer digital inilah yang memicu terbentuknya kriptografi modern. Dengan menggunakan komputer digital, akan sangat mungkin menghasilkan cipher yang lebih kompleks dan rumit. Tidak seperti kriptografi klasik yang mengenkripsi karakter per karakter, kriptografi modern beroperasi pada string biner.
2.2.3 Terminologi dan Konsep Dasar Kriptografi
Di dalam kriptografi akan sering ditemukan beberapa istilah atau terminologi.
Berikut merupakan istilah penting untuk diketahui dalam memahami kriptografi (Munir, 2006).
a. Plainteks dan Cipherteks
Pesan (message) adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks atau teks jelas (cleartext) (Setyaningsih, 2015). Pesan dapat berupa data atau informasi yang dikirim
media perekaman (kertas, storage, dan sebagainya). Pesan yang tersimpan tersebut tidak hanya berupa teks, tetapi juga dapat berbentuk citra (image), suara (audio), dan video.
Agar plainteks (message) tidak dapat dimengerti oleh pihak yang tidak diinginkan, maka pesan tersebut perlu disandikan ke bentuk lain yang tidak dapat dipahami. Bentuk pesan yang telah berbentuk sandi inilah yang disebut dengan cipherteks atau kriptogram. Berikut ini adalah contoh pesan asli (plainteks) dan pesan yang telah disandikan (cipherteks).
(a) (b)
Gambar 2.3 (a) Plainteks; (b) Cipherteks
b. Pengirim dan Penerima
Komunikasi data melibatkan pertukaran pesan antara dua entitas. Pengirim (sender) adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima (receiver) adalah entitas yang menerima pesan. Pengirim tentu menginginkan pesan dapat dikirm secara aman, yaitu pengirim yakin bahwa pihak lain tidak dapat membaca isi pesan yang dikirim. Solusinya adalah dengan cara menyandikan pesan menjadi cipherteks.
c. Enkripsi dan Dekripsi
Proses untuk menyandikan plainteks (message) menjadi cipherteks disebut dengan enkripsi (encryption). Sedangkan dekripsi (decryption) adalah kebalikan dari
enkripsi yaitu proses untuk memperoleh kembali plainteks (message) dari cipherteks (Setyaningsih, 2015). Proses enkripsi dan deskripsi membutuhkan kunci sebagai parameter yang digunakan untuk transformasi.
Gambar 2.4 Skema Enkripsi dan Dekripsi
d. Penyadap
Penyadap (eavesdropper) adalah orang yang mencoba menangkap pesan selama ditransmisikan. Tujuan penyadap adalah untuk mendapatkan informasi sebanyak- banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud untuk memecahkan cipherteks.
e. Kriptanalisis
Kriptografi berkembang dengan sangat pesan hingga melahirkan suatu bidang yang berlawanan yaitu kriptanalisis. Kriptanalisis (cryptanalysis) adalah ilmu yang mempelajari upaya-upaya untuk memperoleh plainteks dari cipherteks tanpa informasi tentang kunci yang digunakan. Tujuan serangan kriptanalisis adalah untuk mengetahui beberapa plainteks yang sesuai dengan cipher teks yang ada dan berusaha menentukan kunci yang memetakan satu dengan yang lainnya.
Jika suatu plainteks diduga berada dalam suatu pesan, posisinya mungkin tidak diketahui. Namun, suatu pesan lazimnya cukup pendek sehingga memungkinkan penyerang (kriptanalis) menduga plainteks yang diketahui dalam setiap posisi yang mungkin dan melakukan penyerangan pada setiap kasus secara paralel.
2.2.4 Algoritma Triple Transposition Vigenere Cipher
Banyak cara perusahaan mengamankan informasi di antaranya dengan menggunakan algoritma Blowfish, algoritma Elgamal, tetapi masih punya beberapa kelemahan yang dapat membuat pesan dapat disusupi oleh orang yang tidak bertanggung jawab sehingga muncul algoritma terbaru yaitu Triple Tranposition Vigenere Cipher.
Triple Transposition Vigenere Cipher adalah metode enkripsi dengan cara mengulang teknik Vigènere Cipher yang setiap plainteksnya dilakukan transposisi terlebih dahulu sebanyak tiga kali dengan menggunakan kunci yang tiap kuncinya harus berbeda satu dengan yang lainnya (Caroline, 2010). Metode Triple Transposition Vigènere Cipher dapat digambarkan seperti Gambar 2.7.
Gambar 2.5 Proses Algoritma Triple Transposition Vigenere Cipher
Proses yang terjadi pada Triple Transposition Vigènere Cipher terbagi menjadi dua bagian. Metode transposisi dapat disimbolkan dengan T dan metode substitusi menggunakan vigenere yang disimbolkan dengan E serta kunci untuk melakukan vigenere K.
Secara matematis metode Triple Transposition Vigènere Cipher ini dapat dituliskan sebagai:
Proses enkripsi: C S3(T3(S2(T2(S1(T1(P)))))) (2.1) Plainteks
Transposisi
Substitusi
Enkripsi
3 kali pengulangan
Bila dijabarkan, ciphertext diperoleh dengan mentransposisikan plaintext, kemudian hasilnya disubstitusi menggunakan kunci pertama, lalu ditransposisikan kembali, lalu disubstitusi dengan menggunakan kunci yang berbeda dari kunci pertama, disebut saja kunci kedua, setelah itu dilakukan transposisi lagi yang kemudian di akhiri dengan proses substitusi menggunakan kunci ketiga. Substitusi di sini menggunakan Vigenere Cipher.
Ketiga algoritma transposisi sudah didefinisikan terlebih dahulu dengan suatu kunci atau suatu aturan tertentu setiap kali proses enkripsi metode transposisinya akan selalu tetap. Untuk metode enkripsi ini, spasi tidak diperhitungkan sehingga lebih baik dihilangkan saja. Rumus untuk transposisi adalah membagi panjang ciphertext dengan suatu kunci tertentu yang ditentukan oleh pengguna yang kemudian teks dibaca secara vertikal dari kolom pertama.
Berikut adalah tabel bujur sangkar vigenere cipher.
Gambar 2.6 Bujursangkar Vigenere Cipher
Cara menggunakan bujursangkar vigenere adalah sebagai berikut: baris paling atas menyatakan huruf-huruf plainteks dan kolom paling kiri menyatakan huruf-huruf pada kunci. Pertama tarik garis vertikal dari huruf plainteks ke bawah.
Setelah itu tarik garis horizontal dari huruf kunci ke kanan. Cari titik
perpotongannya. Perpotongan kedua garis tersebut menyatakan huruf cipherteks dari huruf plainteks yang bersangkutan.
Secara matematis, misalkan p adalah karakter ke − i i pada plainteks, c i adalah karakter ke − i pada cipherteks, dan k adalah karakter ke − i i pada kunci, maka enkripsi pada vigenere cipher dapat dinyatakan sebagai berikut:
) ( i i
i p k
c mod 26 (2.2)
sedangkan untuk dekripsi pada vigenere cipher dapat dinyatakan sebagai:
) ( i i
i c k
p mod 26 (2.3)
Perbedaan antara teknik vigenere cipher dengan triple transposition vigenere cipher ini adalah jika pada teknik vigenere cipher hanya bisa menampung plainteks dan kunci yang terdiri dari huruf A – Z, maka pada teknik Triple Transposition Vigenere Cipher tabel vigenere dimodifikasi sehingga plainteks dan kunci dapat menampung printable character (karakter dengan kode ASCII 20h – 7Eh). Teknik ini juga dapat dikombinasikan dengan metode steganografi Modified Least Significant Bit (MLSB), karena mempunyai batasan masalah yang sama, yaitu hanya dapat menampung printable character (karakter dengan kode ASCII 20h – 7Eh).
Kemudian untuk proses dekripsi dapat dilakukan dengan arah sebaliknya.
Bila dirumuskan maka akan terlihat sebagai berikut:
Proses dekripsi: PT1'(S1'(T2'(S2'(T3'(S3'(C)))))) (2.4)
Maksud T di sini adalah transposisi kebalikkannya dan ' S' adalah substitusi kebalikannya. Maka proses dekripsinya adalah sebagai berikut:
Pengacakan posisi plainteks dan kunci membuat metode ini terasa seperti memiliki sebuah kunci yang benar-benar teracak dengan panjang kunci yang sama dengan panjang kunci plainteks. Namun disamping kelebihan tersebut, teknik ini juga terdapat kelemahan yaitu masih ada kemungkinan kunci dapat dipecahkan
oleh kriptanalis menggunakan metode Kasiski walaupun kemungkinan tersebut lebih kecil dibandingkan algoritma Vigenere Cipher sederhana ataupun cipher transposisi (Caroline, 2010).
2.3 Steganografi
2.3.1 Pengertian Steganografi
Steganografi (steganography) berasal dari Bahasa Yunani, yaitu “steganos” yang artinya menyembunyikan dan “graphein” yang artinya tulisan. Jadi steganografi berarti juga tulisan yang disembunyikan. Steganografi adalah ilmu dan seni untuk menyembunyikan pesan rahasia di dalam media digital sedemikian rupa sehingga orang lain tidak menyadari ada suatu pesan rahasia di dalam media tersebut (Rakhmat dan Fairuzabadi, 2010).
2.3.2 Sejarah Steganografi
Herodotus adalah seorang sejarawan Yunani pertama yang menulis tentang steganografi, yaitu ketika seorang raja kejam Yunani bernama Histaeus dipenjara oleh Raja Darius di Susa pada abad ke-5 sebelum Masehi. Histaeus harus mengirim pesan rahasia kepada anak laki-lakinya, Aristagoras, di Militus.
Histaues menulis pesan dengan cara menato pesan pada kulit kepala seorang budak. Ketika rambut budak itu mulai tumbuh, Histaues mengutus budak itu ke Militus untuk mengirim pesan di kulit kepalanya tersebut kepada Aristagoras.
Cerita lain yang ditulis oleh Herodotus, yaitu Demeratus seorang Yunani yang akan mengabarkan berita kepada Sparta bahwa Xerxes bermaksud menyerbu Yunani. Agar tidak diketahui pihak Xerxes, Demartus menulis pesan dengan cara mengisi tabung kayu dengan lilin dan menulis pesan dengan cara mengukirnya pada bagian bahwah kayu. Papan kayu tersebut dimasukkan ke dalam tabung kayu, kemudian tabung kayu ditutup kembali dengan lilin.
Teknik steganografi yang lain adalah tinta yang tak terlihat. Teknik ini pertama digunakan pada zaman Romawi kuno, yaitu dengan menggunakan air sari buah jeruk, urin, atau susu sebagai tinta untuk menulis pesan. Cara membacanya adalah dengan dipanaskan di atas nyala lilin. Tinta yang sebelumnya tidak terlihat, ketika terkena panas akan berangsur – angsur menjadi gelap sehingga pesan dapat dibaca (Sutoyo, 2009).
2.3.3 Terminologi dan Konsep Dasar Steganografi
Ada beberapa istilah yang berkaitan dengan steganografi (Sutoyo, 2009) yaitu:
1. Embedded Message
Pesan atau informasi yang disembunyikan. Contohnya dapat berupa teks, gambar, suara, video, dll.
2. Cover – object
Pesan yang digunakan untuk menyembunyikan embedded message. Contohnya dapat berupa teks, gambar, suara, video, dll.
3. Stego – object
Pesan yang sudah berisi pesan embedded message.
Steganografi membutuhkan dua properti, yaitu wadah penampung dan pesan rahasia yang akan disembunyikan. Steganografi digital menggunakan media digital sebagai wadah penampung, misalnya gambar, suara, teks, dan video. Pesan rahasia yang disembunyikan juga dapat berupa gambar, suara, teks, dan video (Sutoyo, 2009).
2.3.4 Proses Steganografi
Secara umum, terdapat dua proses didalam steganografi, yaitu proses encoding untuk menyisipkan pesan ke dalam cover – object dan proses decoding untuk ekstraksi pesan dari stego – object. Kedua proses ini mungkin memerlukan kunci
Stego-object Stego-object
Pesan Stego-object Pesan
rahasia (stegokey) agar hanya pihak yang berhak saja yang dapat melakukan penyisipan pesan dan ekstraksi pesan (Munir, 2006).
(a) (b)
Gambar 2.7 (a) Skema Encoding; (b) Skema Decoding
2.3.5 Modified Least Significant Bit (MLSB)
Metode Modified Least Significant Bit (MLSB) adalah suatu metode dari hasil pengembangan metode LSB yang sudah ada. Di mana dalam penyisipan pesannya dilakukan sama persis dengan LSB (menyisipkan pada bit paling kanan), yang membedakan antara MLSB dan LSB adalah pada pesan yang ingin disisipkan.
Pada LSB pesan yang disisikan masih dalam bentuk 8 bit, sementara pada MLSB, pesan dikonversi ke dalam 5 bit. Pengubahan 8 bit menjadi 5 bit dilakukan dengan menggunakan control symbol. Misalnya embed yang akan disisipkan berupa pesan “STEGO with 05 bits” di mana jika embed tersebut diubah ke biner membutuhkan memori sebesar 18 x 8 bit = 144 bit. Pada metode MLSB, pesan di atas diubah menjadi ASCII heksadesimal (5 bit), maka pesan berubah menjadi:
53h, 54h, 45h, 47h, 4fh, 20h,77h, 69h,74h, 68h, 20h, 30h, 35h, 20h, 62h, 69h,74h,73h. 20h menerangkan spasi pada tabel ASCII. Kemudian data embed tersebut ditambahi dengan keterangan control symbol yang sudah ditetapkan (Zaher, 2011). Adapun tabel control symbol adalah sebagai berikut:
Encoding Decoding
Kunci Kunci
Wadah Penampung Wadah Penampung
Gambar 2.8 Control Symbol
Adapun kelebihan dari metode Modified Least Significant Bit (MLSB) ini adalah pada penyisipan ke dalam citra digital menggunakan metode MLSB telah memenuhi kriteria steganografi yang baik, yakni memiliki imperceptibility (keberadaan citra embed di dalam citra stego tidak dapat dideteksi secara kasat mata), fidelity (mutu citra tidak berubah walaupun setelah mengalami proses penyisipan) dan memiliki recovery (citra embed dapat diekstrak kembali) (Lubis, H. 2012). Di samping itu metode Modified Least Significant Bit (MLSB) ini juga memiliki kelemahan yaitu keamanan pada stego image menggunakan metode MLSB masih bisa terdeteksi oleh aplikasi. Namun walau begitu, pesan tidak akan bisa langsung dibaca oleh pihak ketiga (Nurwanto dan Sudarmawan, 2015).
2.4 Citra Digital
2.4.1 Pengertian Citra Digital
Citra digital adalah citra yang bersifat diskrit yang dapat diolah oleh komputer yang merupakan suatu array dari bilangan yang merepresentasikan intensitas terang pada point yang bervariasi (pixel). Citra ini dapat dihasilkan melalui kamera digital dan scanner ataupun citra yang telah mengalami proses digitalisasi.
Citra digital disimpan juga secara khusus di dalam file 24 bit atau 8 bit. Citra 24 bit menyediakan lebih banyak ruang untuk menyembunyikan informasi (Sutoyo, 2009).
2.4.2 Jenis-Jenis Citra Digital
Berdasarkan warna – warna penyusunannyan, citra digital dapat dibagi menjadi tiga macam (Wildan, 2010) yaitu:
1. Citra Biner
Citra biner adalah citra yang hanya memiliki 2 warna, yaitu hitam dan putih. Oleh karena itu, setiap pixel pada citra biner cukup direpresentasikan dengan 1 bit.
(a) (b)
Gambar 2.9 (a) Citra Biner; (b) Representasi Citra Biner
Alasan penggunaan citra biner adalah karena citra biner memiliki sejumlah keuntungan sebagai berikut:
a. Kebutuhan memori kecil karena nilai derajat keabuan hanya membutuhkan representasi 1 bit.
b. Waktu pemrosesan lebih cepat di bandingkan dengan citra hitam – putih ataupun warna.
2. Citra Grayscale
Citra grayscale adalah citra yang nilai pixel-nya merepresentasikan derajat keabuan atau intensitas warna putih. Nilai intensitas paling rendah merepresentasikan warna hitam dan nilai intensitas paling tinggi merepresentasikan warna putih. Pada umumnya citra grayscale memiliki kedalaman pixel 8 bit (256 derajat keabuan), tetapi ada juga citra grayscale yang kedalaman pixel-nya bukan 8 bit, misalnya 16 bit untuk penggunaan yang memerlukan ketelitian tinggi. Gambar 2.10 adalah contoh citra grayscale.
Gambar 2.10 Citra Grayscale
3. Citra Warna
Citra warna adalah citra yang nilai pixel-nya merepresentasikan warna tertentu.
Setiap pixel pada citra warna memiliki warna yang merupakan kombinasi dari tiga warna dasar RGB (red, green, blue). Setiap warna dasar menggunakan penyimpanan 8 bit = 1 byte, yang berarti setiap warna mempunyai gradasi sebanyak 255 warna. Berarti setiap pixel mempunyai kombinasi warna sebanyak 28.28.28 = 224 = 16 juta warna lebih. Itulah yang menjadikan alasan format ini disebut dengan true color karena mempunyai jumlah warna yang cukup besar sehingga bisa dikatakan hampir mencakup semua warna di alam. Gambar 2.13 adalah contoh citra warna.
Gambar 2.11 Citra Warna
2.5 Means Square Error (MSE)
Means Squared Error (MSE) digunakan untuk mengukur kinerja algoritma steganografi pada sebuah citra. Citra cover dibandingkan dengan citra sisipan
dengan memeriksa selisih nilainya. Perhitungan nilai MSE dari citra berukuran 𝑀𝑥𝑁 pixel dilakukan sesuai dengan rumus pada persamaan 2.5 di bawah ini.
M
x N
y
y x f y x MxN f
MSE
1
2
1
, ' 1 ,
2.5
di mana:
M dan N = ukuran panjang dan lebar citra
x yf , = intensitas citra di titik
x,y dari citra asli
x yf' , = intensitas citra di titik
x,y dari citra hasil penyisipanSemakin kecil nilai MSE, maka semakin bagus prosedur yang dilakukan.
Artinya kualitas citra setelah dilakukan penyisipan pesan hampir sama dengan kualitas aslinya.
2.6 Penelitian Terdahulu
Dalam melakukan penelitian, penulis membutuhkan beberapa bahan penelitian yang sudah pernah dilakukan peneliti – peneliti lainnya mengenai masalah implementasi steganografi Modified Least Significant Bit (MLSB) dan kriptografi Triple Transposition Vigenere Cipher.
Tabel 2.1 Hasil penelitian terdahulu
No. Peneliti Metode Penelitian dan Hasil
1. Mazen Abu Zaher (2011)
Modified Least Significant Bit (MLSB)
Algoritma MLSB ini menyediakan skema yang disempurnakan dari metode LSB tradisional. Tujuan utama dari pekerjaan yang disajikan adalah untuk meningkatkan jumlah data yang akan disembunyikan pada cover image dan
melakukan enkripsi data.
2. Hazuar Nurwanto dan Sudarmawan (2015)
Implementasi Penyandian Dan Penyembunyian Pesan Pada Citra Menggunakan Algoritma RSA Dan Modified LSB
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. Maureen Linda Caroline (2010)
Metode Enkripsi baru : Triple Transposition Vigènere Cipher
Proses enkripsi/dekripsinya relatif fleksibel dan mudah untuk dilakukan secara manual ataupun dengan bantuan program komputer. Untuk prosesnya, cukup digunakan metode transposisi dan sebuah bujursangkar Vigènere yang akan digunakan sebanyak tiga kali.
Karena itu, mudah untuk diimplementasikan sebagai sebuah
program komputer.
Pengimplementasian tidak akan sulit berhubung sudah banyak perangkat lunak yang mengimplementasikan Vigènere Cipher di dunia maya dan hanya tinggal diunduh saja. Dan untuk pengguna, tidak diperlukan perangkat lunak bantuan lainnya.
4. Hasina Toni (2011)
Implementasi Steganografi Least Significant Bit (LSB) Dengan Modifikasi Vigenere Cipher Pada Citra Digital
Algoritma vigenere cipher yang telah dimodifikasi lebih sulit dipecahkan dibandingkan dengan algoritma vigenere cipher biasa.
5. Fatkhurul Dewi Khotimah dan Guruh Fajar Shidik (2012)
Vigenere Cipher Pada Penyisipan Pesan LSB-SIFT
Setelah dilakukan penyerangan dengan scratch dan salt & pepper kualitas stego-image menurun drastis, dilihat dari MSE yang tinggi mencapai lebih dari 130 dan PSNR yang rendah mencapai 24 desibel
Sumber: Beberapa penelitian sebelumnya.
BAB 3
PERANCANGAN APLIKASI
3.1 Analisis Sistem
Analisis sistem berfungsi untuk melihat hasil kombinasi dari kedua algoritma yang digunakan yaitu algoritma Triple Transposition Vigenere Cipher dan algoritma Modified Least Significant Bit (MLSB) yang akan disisipkan dalam citra berformat png.
Secara garis besar penelitian ini terdiri dari dua proses, yaitu proses enkripsi dan proses encoding. Di mana untuk proses enkripsi penulis akan menggunakan algoritma triple transposition vigenere cipher. Sedangkan untuk proses encoding penulis akan menggunakan metode steganografi Modified Least Significant Bit (MLSB). Di samping kedua proses tersebut, penulis juga akan melengkapi penelitian ini dengan proses decoding dan dekripsi. Hal ini bertujuan agar pesan yang telah dienkripsi dan disembunyikan dapat kembali menjadi pesan awal yang dapat dimanfaatkan oleh orang yang berhak.
Input citra, plainteks, kunci
Enkripsi
Encoding
Citra stego
Mulai Mulai
Input citra stego, kunci
Dekripsi
Decoding
Plainteks
3.2 Analisis Algoritma Triple Transposition Vigenere Cipher
Pada teknik Triple Transposition Vigenere Cipher, tabel bujursangkar vigenere cipher ditambahkan jumlah karakter sehingga dapat menampung printable character (karakter dengan kode ASCII 20h – 7Eh). Untuk mengacaukan pengulangan serta memanipulasi kemunculan huruf –huruf pesan, penulis memilih cara yaitu dengan perulangan transposisi kunci sebanyak tiga kali.
Berikut adalah langkah-langkah dari proses enkripsi:
1. Masukkan pesan (plainteks).
2. Masukkan kunci.
3. Dapatkan nilai panjang kunci secara acak untuk digunakan sebagai jumlah kolom pada saat proses transposisi pertama.
4. Lakukan proses transposisi.
5. Ulang kunci sepanjang plainteks hasil transposisi.
6. Ubah huruf plainteks dan kunci menjadi kode ASCII.
7. Lakukan penggantian indeks bit dari plainteks dan kata kunci dengan cara mengurangi setiap bit dengan 30 (20h-1-1).
8. Lakukan pergeseran indeks plainteks dengan cara menambahkan indeks plainteks dengan indeks kata kunci.
9. Periksa apakah nilai setiap indeks plainteks lebih besar dari 96. Jika lebih besar dari 96, maka indeks plainteks dikurangi dengan 96 sehingga akan menghasil cipherteks hasil transposisi ketiga. Jika tidak lebih besar dari 96 maka lakukan langkah selanjutnya.
10. Apabila nilai indeks berada di luar dari jumlah maksimum karakter yang tersedia maka kembalikan nilai indeksnya menjadi indeks awal (tambah kembali dengan 30).
11. Kembalikan menjadi karakter plainteks.
12. Lakukan perulangan sebanyak tiga kali dari langkah nomer 2 sampai langkah nomer 11.
13. Hasil akhir proses yaitu cipherteks.
Gambar 3.2 merupakan flowchart proses enkripsi dari suatu pesan dengan menggunakan Triple Transposition Vigenere Cipher.
Ya
Tidak
3 kali pengulangan
Gambar 3.2 Flowchart Proses Enkripsi
Setelah diperoleh cipherteks, dengan begitu pesan tersebut tidak akan dapat dibaca oleh pihak yang tidak berhak tanpa melalui proses deskripsi. Proses deskripsi pada modifikasi vigenere cipher ini memerlukan kunci yang sama pada saat proses enkripsi.
Langkah – langkah dari proses deskripsi adalah sebagai berikut:
1. Masukkan cipherteks 2. Masukkan kunci
Mulai
Input plainteks, kunci
Tentukan jumlah kolom
Transposisi plainteks
Ulang kunci sepanjang plainteks
hasil transposisi
Ubah kunci dan plainteks → ASCII
Kurangi plainteks dan kunci dengan
30
Tambahkan kunci dan plainteks
pi ki
pi ki
96 pi ki96Kembalikan plainteks awal (menambahkan
dengan 30 )
Kembalikan menjadi karakter plainteks (pesan)
Cipherteks
A
A
Selesai
5. Lakukan penggantian indeks byte dari plainteks dan kata kunci ketiga dengan cara mengurangi setiap byte dengan 30.
6. Lakukan pergeseran indeks plainteks dengan cara menambahkan indeks plainteks dengan indeks kata kunci.
7. Periksa apakah nilai setiap indeks plainteks lebih kecil 96. Jika lebih kecil dari 96, maka indeks plainteks ditambahkan dengan 96. Jika lebih besar dari 96 maka lakukan langkah selanjutnya.
8. Kembalikan nilai indeksnya menjadi indeks awal (tambah kembali dengan 30).
9. Kembalikan ke bentuk karakter semula berdasarkan kode karakter ASCII.
10. Dapatkan nilai panjang kunci secara acak untuk digunakan sebagai jumlah kolom pada saat proses transposisi.
11. Lakukan proses transposisi hingga menghasilkan plainteks.
12. Lakukan perulangan sebanyak tiga kali dari langkah nomer 2 sampai langkah nomer 11.
13. Hasil dari ekstraksi yaitu plainteks atau pesan asli.
Gambar 3.3 merupakan flowchart dari proses deskripsi pada triple transposition vigenere cipher.
Mulai
Input cipherteks, kunci
Ulang kunci sepanjang cipherteks
1 Ubah cipherteks,
kunci → ASCII
3 kali pengulangan
Ya
Tidak
Gambar 3.3 Flowchart Proses Dekripsi
Kurangi cipherteks dan kunci dengan
30
Kurangi cipherteks dan kunci
ci ki
ci ki
96Kembalikan ke plainteks awal (menambahkan dengan 30 )
Konversi kembali kode ASCII setiap
plainteks menjadi karakter
Tentukan jumlah kolom
Transposisi cipherteks
Plainteks 1
Selesai
ci ki
963.3 Analisis Algoritma Modified Least Significant Bit (MLSB)
Strategi penyisipan pesan ke dalam citra yang digunakan adalah dengan metode Modified Least Significant Bit (MLSB). Di mana dalam penyisipan pesannya dilakukan sama persis dengan LSB (menyisipkan pada bit paling kanan), yang membedakan antara MLSB dan LSB adalah pada pesan yang ingin disisipkan.
Pada LSB pesan yang disisikan masih dalam bentuk 8 bit, sementara pada MLSB, pesan dikonversi ke dalam 5 bit. Pengubahan 8 bit menjadi 5 bit dilakukan dengan menggunakan control symbol.
Berikut adalah langkah – langkah dari proses encoding:
1. Masukan pesan (cipherteks).
2. Masukkan citra.
3. Jika ukuran teks pesan lebih besar daripada ukuran citra, maka akan diminta untuk memasukan kembali citra yang lebih besar. Jika tidak, proses akan berlanjut ke langkah selanjutnya.
4. Ubah pesan menjadi kode ASCII.
5. Gabungkan semua kode karakter tersebut dan gunakan tanda spasi sebagai pemisah antar kode karakter.
6. Lakukan konversi masing-masing karakter ke dalam karakter kontrol simbol.
7. Lakukan proses pengurangan masing-masing kontrol simbol dengan nilai terendah dari masing-masing rentang nilai dari karakter kontrol simbol.
8. Dapatkan nilai biner dari daftar kontrol simbol tersebut dengan cara melakukan konversi hexadecimal menjadi nilai biner.
9. Dapatkan nilai biner dari masing-masing nilai pixel pada citra cover.
10. Pilih lokasi pixel dari citra.
11. Lakukan penyisipan 5 bit data karakter kontrol simbol ke dalam 5 bit nilai binary dari citra cover.
12. Ubah biner citra yang telah mengandung bit pesan ke pixel.
13. Ubah pixel menjadi citra, maka akan diperoleh citra baru yang mengandung pesan (stego-image).
Gambar 3.4 merupakan flowchart dari proses encoding
Ya
Tidak
Gambar 3.4 Flowchart Proses Encoding
Dari proses encoding akan dihasilkan citra baru yang telah mengandung pesan. Jika diperhatikan dengan mata manusia, tidak terdapat perbedaan antara citra tidak mengandung pesan dengan citra yang telah mengandung pesan.
Untuk dapat mengambil kembali pesan yang terkandung dalam citra harus
Mulai
Input pesan
Input citra
Ukuran pesan
>
Ukuran citra
Ubah pesan → ASCII
Gabungkan semua kode karakter → tanda spasi (pemisah)
Konversi karakter pesan → control
symbol
Ubah control symbol
→ biner
Ubah pixel citra → biner
Pilih lokasi pixel dari citra
Ganti MLSB citra dengan bit pesan
Ubah biner citra → pixel
Stego-image
A
A
Selesai Pengurangan masing-
masing control symbol dengan nilai
terendah
1. Masukkan citra yang mengandung pesan (stego-image).
2. Ubah citra stego menjadi nilai biner.
3. Pilih lokasi pixel dari citra
4. Ambil MLSB citra sehingga menghasilkan biner pesan.
5. Ubah nilai biner ke dalam karakter simbol dengan cara mengkonversi nilai biner menjadi nilai hexadecimal.
6. Lakukan pembuangan karakter kontrol pertama dan terakhir dari daftar karakter kontrol simbol.
7. Lakukan proses penambahan masing-masing kontrol simbol dengan nilai terendah dari masing-masing rentang nilai dari karakter kontrol simbol yang berada sebelum masing-masing karakter.
8. Ubah karakter kontrol simbol menjadi nilai desimal.
9. Lakukan pengambilan nilai kode ASCII karakter dengan cara memecah pesan berdasarkan karakter spasi.
10. Ubah kode ASCII pesan menjadi karakter, sehingga menghasilkan pesan (cipherteks).
Gambar 3.5 merupakan flowchart proses decoding
Mulai
Pilih lokasi pixel dari citra Ubah citra stego →
biner
Ambil MLSB citra
→ biner pesan
1 Input stego-
image
Gambar 3.5 Flowchart Proses Decoding
3.4 Analisis Means Square Error (MSE)
Mean Square Error (MSE) pada penelitian ini digunakan untuk melihat perbandingan nilai antara citro cover dengan citra stego. Dalam analisis ini jika
Pembuangan karakter control symbol
Penambahan masing- masing control symbol dengan nilai
terendah
Ubah control symbol → desimal
Pengambilan nilai kode ASCII karakter
→ tanda spasi (pemisah) Ubah ASCII pesan
→ karakter
Cipherteks
Selesai Ubah biner → karakter control
symbol 1