Steganografi pada Teks Terkompresi Menggunakan Media Surat Elektronik Pembimbing 1 : TOHARI AHMAD, S.Kom., MIT., Ph.D. Pembimbing 2 : HUDAN STUDIAWAN, S.Kom., M.Kom. Melvin Simon Zepta Marbun 5109100035
1.Pendahuluan
Pengiriman Pesan Pengirim Penerima Penyedia dan Pengelola Media yang Digunakan dalam Pertukaran Pesan
Pengiriman Pesan via Email Pengirim Penerima Penyedia dan Pengelola Email Dalam pengiriman pesan melalui email, ada 3 pihak yang terlibat : pengirim, penerima dan pengelola email
Pada kondisi tertentu, informasi yang dipertukarkan bersifat rahasia Rahasia artinya informasi ini terbatas untuk pihak-pihak yang berkepentingan saja Dalam konteks distribusi pesan melalui email, pesan rahasia didistribusikan hanya kepada pengirim dan penerima tertentu
Pengirim Pesan terenkripsi?? Penerima Penyedia dan Pengelola Email Pesan terenkripsi menarik perhatian, khususnya yang berbentuk teks
Pengirim Steganografi Penerima Penyedia dan Pengelola Email
Steganografi pada Pesan pesan Pengirim Penerima teks Penyedia dan Pengelola Email Pesan disisipkan ke dalam teks. Teks di sini disebut sebagai stego cover.
Pengirim menyisipkan pesan ke dalam teks sebelum pesan dikirimkan Penerima mengekstrak pesan dari dalam teks setelah teks diterima
Rumusan Masalah 1. Bagaimana menambah ukuran data di dalam stego cover? 2. Bagaimana menyamarkan stego cover sehingga tidak mudah dikenali oleh pihak-pihak yang tidak berkepentingan dalam proses komunikasi yang dilakukan? 3. Bagaimana meningkatkan sekuritas dalam proses steganografi?
Batasan Masalah 1. Aplikasi yang dibangun tidak mengurusi proses pengiriman email, hanya membangkitkan alamat email berdasarkan cover text dan secret message. 2. Dalam algoritma yang diajukan ini, tidak dibahas mengenai proses distribusi key antara pengirim dan penerima.
Tujuan dan Manfaat Tujuan : Memberikan referensi baru dalam proses komunikasi data secara rahasia Manfaat : Menawarkan proses pengiriman data rahasia secara murah dan mudah, karena penggunaan email saat ini gratis dan dapat diakses oleh banyak orang
2.Tinjauan Pustaka
Tinjauan Pustaka Pustaka utama yang digunakan pada tugas akhir ini : 1. Kompresi dengan Huffman Coding 2. Steganografi 3. Latin Square
Latin Square Definisi Latin square: Latin square susun n dengan isi sebuah himpunan-n X adalah sebuah array berukuran n x n dimana setiap anggota mengandung sebuah elemen dari X yang berarti setiap baris dari L adalah permutasi dari X dan setiap kolom dari L adalah permutasi dari X.
Latin Square(1) Dalam bahasa yang lebih sederhana, Latin square adalah array n x n yang berisi sebanyak n simbol berbeda yang masingmasing selalu muncul sekali dalam tiap baris dan sekali pada tiap kolom. Nama Latin square dipakai karena menggunakan huruf Latin sebagai simbol. Pertama kali diperkenalkan oleh Leonhard Euler. Simbol yang digunakan pada Latin square tidak harus selalu angka, melainkan dapat menggunakan alfabet juga.
Latin Square(II) Mudah untuk membuat sebuah Latin square susun n >= 1. Sebagai contoh, baris pertama dapat berupa 1 2 n
Latin Square(III) Kemudian baris ini digeser secara siklis ke kiri sebanyak 1,2,,n-1 kali untuk membuat baris-baris berikutnya. Jadi jika dibuat tabel Latin square susun 4, maka tabel yang digunakan seperti berikut 1 2 3 4 2 3 4 1 3 4 1 2 4 1 2 3
LS A B C... w x y z B C... w x y z A C... w x y z A B D... x y z A B C E... y z A B C D F... z A B C D E.... A B C D E F... A B C D E F G.............................. u v w... q r s t v w x y z... t u w x y z A B... v x y z A B C... w y z A B C... w x z A B C... w x y
Desain dan Analisis
Penyisipan Pesan
Langkah-langkah dalam Penyisipan Pesan Merepresentasikan secret message dalam bentuk baru Kompresi dengan Huffman Coding Pembangkitan alamat email Menyusun stego cover
Diagram Alir Penyisipan Pesan(1)
Diagram Alir Penyisipan Pesan(2)
Ekstraksi Pesan
Langkah-langkah dalam Ekstraksi Pesan Rekonstruksi R Rekonstruksi D Ekstraksi secret message dari cover text
Diagram Alir Ekstraksi Pesan
Pengujian dan Pembahasan
Pengujian Secret message : hari jumat jam sepuluh sidang TA
Pengujian Kasus 3 Cover text : Cover Text
Hasil Pengujian Hasil Pengujian
Penampakan menggunakan gmail
Pembahasan Jumlah karakter dari secret message : 32 Banyak alamat email yang dihasilkan : 10
Kesimpulan 1. Ukuran data yang disisipkan di dalam cover text dapat ditambah dengan cara membuat representasi data baru dari secret message dan melakukan kompresi pada representasi data baru tersebut. 2. Stego cover tersamarkan karena terdiri dari dua bagian. Bagian yang pertama berisi teks-teks umum yang mudah ditemui dimana saja sehingga mengurangi kecurigaan tentang keberadaan pesan rahasia di dalamnya. Bagian yang kedua adalah kumpulan alamat email yang terlihat natural karena tidak adanya format resmi yang mengatur bagaimana bagian awal dari alamat email disusun(penyusunan alamat email boleh menggunakan angka, huruf atau kombinasi keduanya).
Kesimpulan 3. Sekuritas pada proses steganografi dilakukan dengan cara menggunakan key dalam proses penyisipan dan ekstraksinya. Selain itu penggabungan penggunaan koding berbasis kombinatorik dan Huffman Coding juga berperan dalam meningkatkan sekuritas dengan cara membuat proses penyisipan dan ekstraksi pesan menjadi lebih rumit.
Kesimpulan 4. Metode ini tidak menghasilkan noise, karena tidak dilakukan perubahan apapun pada cover text yang digunakan. 5. Metode ini tidak bergantung pada satu bahasa khusus dan dapat diimplementasikan dalam berbagai bahasa dengan cara melakukan modifikasi pada tabel Latin square seperlunya. 6. Dari hasil pengujian didapatkan bahwa terjadi penambahan rata-rata alamat email sebanyak 3 sampai 4 alamat untuk setiap kelipatan 10 dari jumlah karakter secret message.
Saran 1. Pengembangan dari metode ini diharapkan terus dilakukan, dengan cara memeriksa akibat dari penerapan jenis teknik kompresi yang lain, misalnya Arithmetic Coding atau jenis kompresi lossless lainnya dan akibatnya pada kapasitas yang dihasilkan. 2. Dilakukan pengembangan pada langkah-langkah yang bertugas membangkitkan alamat email sehingga menghasilkan alamat email yang lebih sedikit. 3. Untuk meningkatkan kapasitas yang lebih, diharapkan ada pengembangan sehingga cover text yang digunakan lebih pendek atau sedikit. 4. Ditemukannya algoritma pengacakan yang dapat menghasilkan kata-kata yang masuk akal sehingga alamat email yang dibangkitkan lebih terlihat natural. 5. Cover text dan secret message yang digunakan sebaiknya berasal dari bahasa yang sama.
Terima Kasih
Detil Penyisipan Pesan
Variabel yang digunakan S: secret message T: cover text Delta D: vektor jarak relatif (vektor yang menampung jarak relatif tiap karakter dalam pesan rahasia) E: vektor dari nilai kelipatan () R: vektor jarak relatif baru R : kumpulan bit penggabungan dari hasil kompresi vektor jarak relatif baru A: himpunan domain alamat email ( ) K3: panjang bit tiap elemen dalam
1. Representasi Secret Message dalam Bentuk Baru
1. Representasi Secret Message dalam Bentuk Baru(2)
2.Kompresi dengan Huffman Coding Variabel R kemudian dikompres dengan menggunakan Huffman coding. Dan hasil kompresi tiap elemen R akan berupa bilangan biner. Panjang tiap elemen hasil kompresi disimpan ke dalam variabel K3. Kemudian nilai R didapat dengan menyatukan hasil kompresi tiap elemen pada R menjadi suatu bit stream. Setelah itu periksa apakah panjang dari bit stream adalah kelipatan dari 12. Jika tidak, dilakukan penambahan bit 0 di bagian belakang bit stream sampai panjang bit stream mencapai kelipatan 12.
3. Pembangkitan Stego Keys Bitstream yang didapat dipisahkan menjadi 2 variabel, yaitu G1 dan G2. G1 berisi 9 bit pertama dari bitstream G2 berisi 3 bit terakhir dari bitstream
3.1 Mendapatkan variabel v,w,x,y dan z
3.2 Membangkitkan Kata Acak Pertama lakukan pengacakan sebuah bilangan bulat i dengan rentang 4 sampai 7. Kemudian lakukan pengacakan bilangan bulat j dengan rentang 1-52 sebanyak i kali, lalu petakan nilai tersebut pada baris pertama pada tabel Latin square. Dalam setiap iterasi lakukan penggabungan dari setiap huruf yang didapat. Setelah i iterasi maka akan didapat kumpulan huruf acak dengan panjang i.
3. Membangkitkan Alamat Email
4. Menyusun Stego Cover
Detil Ekstraksi Pesan
Ekstraksi Pesan
Posisi Karakter Penting pada Email
1.Rekonstruksi R Setelah mengetahui karakter dan bagian penting dari stego keys, maka variabel v, w,x, y dan z dari setiap alamat email dapat diidentifikasi dengan melakukan pemetaan dari tiap karakter penting ke tabel Latin square, karena pada dasarnya setiap karakter penting adalah hasil pemetaan dari,,, dan di proses penyisipan. Alamat email yang pertama dipetakan ke baris pertama dari tabel Latin square.alamat email kedua dipetakan ke baris kedua dan begitu seterusnya. Khusus untuk variabel, bagian domain dari alamat email dipetakan ke variabel.
1.Rekonstruksi R(2) Nilai G1 adalah nilai biner dari hasil persamaan Sedangkan G2 didapat dengan memetakan bagian domain dari alamat email ke dalam A
1.Rekonstruksi R(2) Lalu variabel G1 dan G2 digabungkan menjadi sebuah kumpulan bit dengan panjang 12 bit. Lalu tiap kumpulan bit dari tiap alamat email dijadikan satu menjadi satu bitstream (R ) R dipecah menjadi kumpulan codewords dengan bantuan K3 Lalu tiap codewords didekompresi dengan menggunakan Tree Huffman yang telah didistribusikan sebelumnya Didapatkan variabel R
2. Rekonstruksi D Dengan menggunakan persamaan : Dimana r adalah elemen dari R dan e adalah elemen dari E (K1) dan c adalah tiap elemen dari variabel D
Ekstraksi Secret Message Proses ekstraksi secret message dari cover text dilakukan dengan cara berikut. Untuk setiap c pada D, didapatkan sebuah karakter a di cover text pada indeks c. Kemudian karakter pesan rahasia berikutnya didapat dengan mengakumulasi jumlah dari nilai c sekarang dengan nilai c pada indeks sebelumnya. Proses ini terus berulang sampai indeks c yang terakhir. Lalu kumpulan a yang didapat menghasilkan kata atau kalimat yang merupakan secret message (S).