IMPLEMENTASI DAN PENGUJIAN SISTEM
4.1.1 Pembahasan Algoritma Least Significant Bit (LSB)
4.1.1.3 Hitung Nilai Biner Setiap Karakter
File yang digunakan sebagai pesan yang akan disisipkan berformat *.txt. Misalkan karakter pesan yang akan disisipkan adalah “RAHASIA”. Setiap karakter dari pesan akan dilakukan perhitungan nilai binernya. Untuk mempermudah proses perhitungan kita dapat menggunakan tabel ASCII sebagai bantuan untuk menentukan nilai biner dari masing-masin karakter pesan “RAHASIA”. Dengan demikian, nilai biner masing masing karakter dapat kita liha pada table 4.1
Tabel 4.1 Tabel Nilai Biner Pesan
Karakter Pesan Nilai Biner Berdasarkan Table ASCII
“R” 0101 0010 “A” 0100 0001 “H” 0100 1000 “A” 0100 0001 “S” 0101 0011 “I” 0100 1001 “A” 0100 0001
Dari tabel 4.1 dapat kita ketahui jumlah total dari bit pesan yang akan disisipkan adalah 56 bit. Dengan demikian dibutuhkan 56 piksel atau lebih agar seluruh pesan dapat disisipkan kedalam citra penampungnya, karena dengan teknik LSB dan LSB menurut Fungsi Linear setiap 1 piksel citra hanya dapat menampung 1 bit pesan yang akan disisipkan.
Penyembunyian data dilakukan dengan mengganti bit-bit data yang tidak terlalu berpengaruh didalam segmen citra dengan bit-bit data rahasia atau pesan rahasia pada susunan bit didalam sebuah byte (1 byte = 8 bit). Urutan bit didalam sebuah byte terdapat satu buah bit yang sangat berarti
yaitu disebut dengan Most Significant Bit (MSB) dan terdapat juga satu bit yang tidak berarti yang disebut dengan Least Significant Bit (LSB).
Gambar 4.5 Bit MSB dan LSB dibarisan bit didalam byte
Langkah – langkah penyisipan algoritma LSB adalah sebagai berikut; 1. Input cover citra
2. Baca nilai Piksel citra, kemudian ubah kedalam bentuk biner 3. Hitung maksimal pesan yang dapat disisipkan
4. Input teks dan ubah kebentuk biner
5. Gantikan 1 bit LSB dari piksel cover image dengan 1 bit embed. 6. Petakan menjadi citra baru (stego image).
Dengan Algoritma LSB setiap byte dari citra penampung dapat disisipkan 1 bit pesan secara berurutan sampai karakter pesan selesai disisipkan. Berikut adalah citra dalam bentuk biner dengan dengan kapasitas 5x5 piksel yang belum disisipi pesan.
karakter yang akan disisipkan adalah karakter “A” dengan nilai biner “0100 0001”, dengan demikian ada 8 piksel yang akan disisipi pesan. Berikut adalah proses Insertion LSB. Maka hasil penyisipannya sebagai berikut.
Gambar 4.7 Citra stego 5x5 piksel dalam bentuk biner
Teknik penyisipan dilakukan pada bit-bit terakhir atau paling kanan disetiap barisan bit didalam byte pada citra penampungnya. Metode LSB sudah banyak dilakukan didalam teknik steganografi, sehingga membutuhkan pengembangan atau modifikasi, untuk pengembangannya dapat berupa penambahan kunci maupun merubah teknik penyisipannya.
4.1.2 Least Significant Bit (LSB) menurut Fungsi Linear
Teknik penyisipan menggunakan algoritma LSB menurut Fungsi Linear juga membutuhkan proses pendukung yang sama dengan algoritma LSB, akan tetapi ada penambahan dalam menentukan kunci dan penghitungan letak penyisipan.
Penyisipan pesan menggunakan metode LSBmenurut Fungsi Linear dilakukan dengan menyisipkan 1 bit embed kedalam 1byte cover citra dengan menggatikan 1 bit LSB dengan 1 bit pesan. Sebelum disisipkan terlebih dahulu dilakukan Modifikasi yaitu menghitung letak koordinat penyisipannya. Teknik perhitungan letak koordinat dilakukan dengan Fungsi 3.4 dimana m dan b ditetapkan sebagai private key yang dibangkitkan secara
acak (random) oleh sistem, adapun Fungsi Linear yang digunakan adalah sebagai berikut:
f(x) = mx + b ... (4.4 )
keterangan:
y adalah kolom piksel, x adalah baris piksel m dan b adalah konstanta. Dari persamaan 4.4 kita akan menghitung koordinat peletakan pesan rahasia dengan ketentuan konstanta m dan b merupakan bilangan integer positif. Proses Penyisipan dilakukan dilakukan dengan menggantikan 1 bit LSB citra yang telah ditentukan koordinatnya dengan 1 bit karakter pesan teks yang akan disembunyikan.
Langkah – langkah yang dilakukan dalam proses Penyisipan menggunakan metode LSBmenurut Fungsi Linear adalah sebagai berikut: 1. Input cover citra
2. Baca nilai Piksel citra, kemudian ubah kedalam bentuk biner 3. Bangkitkan kunci
4. Hitung maksimal pesan yang dapat disisip berdasarkan kunci yang telah dibangkitkan.
5. Input teks dan ubah kebentuk biner
6. Tentukan letak koordinat penyisipan dengan menggunakan Fungsi linear 7. Gantikan 1 bit LSB dari piksel cover image dengan 1 bit embed.
8. Petakan menjadi citra baru (stego image).
Berikut adalah citra cover 11x18 piksel yang disiapkan untuk menyisipka karakter “A” dengan nilai biner “0100 0001”, dengan demikian ada 8 piksel yang akan disisipi pesan. Berikut adalah proses Insertion LSB. Maka hasil penyisipannya sebagai berikut.
Gambar 4.8 citra cover11x18 piksel dalam bentuk biner
Setelah itu dilakukan proses pembangkitan kunci (m dan b) secara otomatis oleh sistem. Misalkan kunci yang dihasilkan adalah m=2 dan b=1. Kemudian dilakukan perhitungan pesan maksimal yang dapat disisipkan kedalam cover citra dengan menghitung nilai xmax berdasarkan persamaan 4.4
dan diinputkan kunci yang telah didapat.
Maka pesan yang dapat disisipkan pada citra cover 10x18 piksel adalah sebanyak 8 bit . Input karakter yang akan disisipkan kedalam cover
citrapada gambar 3.5 diatas. Kita asumsikan karakter yang akan disisipkan adalah karakter “A” dengan nilai biner “0100 0001”, dengan demikian ada 8 piksel yang akan disisipi pesan. Berikut adalah proses Insertion LSBmenurut Fungsi Linear.
Penyelesaiannya sebagai berikut, sistem membangkit kan konstanta yang bernilai m = 2 dan b = 1 (private key), penyelesaian:
1. Dimulai penyisipan 1 bit pertama yaitu x = 0, maka : f(x) = mx + b
f(x) = 2(0) + 1 f(x) = 1
letak koordinat penyisipan bit pertama adalah {0,1} 2. Penyisipan 1 bit kedua yaitu x = 1
f(x) = mx + b f(x) = 2(1) + 1 f(x) = 3
Letak koordinat penyisipan 1 bit kedua adalah {1,3} 3. Penyisipan 1 bit ketiga yaitu x = 2
f(x) = mx + b f(x) = 2(2) + 1 f(x) = 5
Letak koordinat penyisipan 1 bit ketiga adalah {2,5} 4. Penyisipan 1 bit keempat yaitu x = 3
f(x) = mx + b f(x) = 2(3) + 1 f(x) = 7
Letak koordinat penyisipan bit pertama adalah {3,7}. 5. Dimulai penyisipan 1 bit kelima yaitu x = 4, maka :
f(x) = mx + b f(x) = 2(4) + 1 f(x) = 9
letak koordinat penyisipan bit kelima adalah {4,9} 6. Penyisipan 1 bit keenam yaitu x = 5
f(x) = mx + b f(x) = 2(5) + 1 f(x) = 11
Letak koordinat penyisipan 1 bit keenam adalah {5,11} 7. Penyisipan 1 bit ketujuh yaitu x = 6
f(x) = mx + b f(x) = 2(6) + 1
f(x) = 13
Letak koordinat penyisipan 1 bit ketujuh adalah {6,13}
8. Penyisipan 1 bit kedelapan yaitu x = 7 f(x) = mx + b
f(x) = 2(7) + 1 f(x) = 15
Letak koordinat penyisipan bit kedelapan adalah {7,15}.
Setelah semua koordinat penyisipan selesai dihitung, kemudian gantikan 1 bit LSB dengan 1 bit pesan sesuai dengan koordinat peletakannya masing – masing. Dari hasil perhitungan koordinat diatas dapat kita ketahui bahwa pesan “0100 0001” dapat disisipkan pada koordinat piksel
cover citra urutan ({0,1}, {1,3}, {2,5}, {3,7}, {4,9}, {5,11}, {6,13} dan {7,15}). Segmen citra setelah menjadi stego image adalah sebagai berikut:
Gambar 4.9 citra stego11x18 piksel dalam bentuk biner
Proses ekstraksi juga membutuhkan perhitungan yang sama dengan proses penyisipan. Untuk mengurai kembali pesan yang disembunyikan sistem juga membutuhkan perhitungan koordinat penyisipannya.
4.1.3 Perhitungan Fidelity
Salah satu parameter yang digunakan adalah ketahan file (fidelity) metode yang digunakan untuk melihat ketahanan cover adala perhitungan MSE dan BER, sebagai berikut.