BAB IV HASIL DAN PEMBAHASAN
Kapasitas daya tampung pesan pada steganografi PVD semakin besar jumlahnya jika cover yang digunakan berupa image dengan kontras yang luas. Hal
itu dikarenakan jumlah selisih antara dua piksel yang berdekatan pada cover semakin besar jumlahnya, bitstream pesan yang dapat disisipkan pada setiap dua
piksel cover semakin besar pula jumlahnya. Sebagaimana yang terlihat pada tabel jangkauan Tabel 1 yang digunakan pada penelitian ini. Semakin besar selisih
piksel maka bit pesan yang diambil untuk disisipkan berada pada rentang yang lebih besar.
Karakteristik piksel-piksel yang berdekatan pada sebuah citra umumnya memiliki selisih yang tidak besar. Selisih piksel hanya berada pada rentang R
1
dan range
R
2
, sehingga citra tersebut hanya mampu menampung sedikit bit pesan Rojali 2009. Teknik pengolahan citra dapat dilakukan dalam rangka
meningkatkan nilai selisih piksel-piksel tersebut. Salah satu teknik pengolahan citra yang dapat dilakukan yakni filterisasi. Proses tersebut dapat merubah nilai
piksel-piksel yang dimiliki sebuah citra. Oleh karena itu, sebelum sebuah citra dijadikan cover dilakukan proses filterisasi customize terhadap citra-citra cover
tersebut.
4.1 Pembuatan Aplikasi Steganografi PVD 4.1.1 Alat dan Data
Pada penelitian ini aplikasi steganografi PVD dikembangkan menggunakan pemrograman script lewat Matlab versi 6.5 yang berjalan pada sistem operasi
Microsoft Windows XP SP2. Aplikasi terdiri atas dua menu yaitu penyisipan dan pengambilan pesan. Menu-menu tersebut dibangun dengan m file dan GUI. Input
data cover berupa file gambar berformat bmp dengan mode RGB sedangkan pesan yang disisipkan berupa plain teks dan file gambar berformat bmp bermode
RGB. Aliran data dilakukan dengan menginput data cover dan pesan rahasia yang
ingin disembunyikan. Setelah itu proses penyisipan pesan dilakukan. Aliran data
berakhir dengan menghasilkan data output stego image. Pada proses pengambilan pesan, aliran data dimulai dengan menginput data stego image dan berakhir pada
output data pesan rahasia. Kedua proses ini tampak pada Gambar 14.
4.1.2 Algoritme dan Perancangan Aplikasi
Aplikasi steganografi PVD memiliki dua menu dalam implementasinya yakni embeded message penyisipan pesan dan extract message pengambilan
pesan. Gambar 15 merupakan algoritme yang digunakan untuk pengembangan embeded message
penyisipan pesan pada aplikasi steganografi PVD. Pada algoritme penyisipan pesan dilakukan tiga proses penyisipan pesan yang
sama pada setiap layer Red, Green dan Blue. Dimulai dengan menginput cover berformat bmp yang memiliki tiga layer RGB. Kemudian, dari setiap layer
tersebut dua piksel yang berdekatan g
x
, g
x+1
dihitung selisihnya, masing-masing disimpan dalam variabel dred, dgreen, dblue. Nilai selisih tersebut kemudian
dimutlakan absolute value yang dihitung sebesar dabs masing-masing disimpan dalam variabel dabsred, dabsgreen, dabsblue. Mengacu kepada tabel jangkauan
Input data Cover
Proses Penyisipan
Pesan
Output data
stego image Input data
Pesan
Input data Cover
Proses Pengambilan
Pesan
Output Pesan Rahasia
Gambar 14 Aliran data proses penyisipan dan pengambilan pesan.
Gambar 9 maka dapat ditetapkan daerah rentang dari nilai dabs tersebut terdapat lima daerah rentang yang ditetapkan pada penelitian ini. Adapun rentang 1 dengan
kisaran antara 0 sampai dengan 7, rentang 2 dengan kisaran antara 8 sampai dengan 15, rentang 3 dengan kisaran antara 15 sampai dengan 31, rentang 4
dengan kisaran antara 32 sampai dengan 63, rentang 5 dengan kisaran antara 64 sampai dengan 127 dan rentang 6 dengan kisaran antara 128 sampai dengan 255.
Algoritme dilanjutkan dengan menentukan daerah rentang untuk dabs. Penentuannya ditetapkan dengan menghitung nilai ti yang merupakan seberapa
banyak bit dari bitstream pesan yang dapat disisipkan. Nilai ti dihitung pada setiap iterasi saat menghitung selisih antara dua piksel. Nilai ti dihitung dengan
melakukan operasi log terhadap nilai selisih batas bawah dan batas atas dari rentang yang bersesuaian. Operasi log menghasilkan ketetapan bahwa pada selisih
piksel 0 sampai 7 dan 8 sampai 15 dapat disisipkan 3 bit pesan, selisih 16 sampai 31 disisipkan 4 bit, selisih 32 sampai 63 disisipkan 5 bit, selisih 64 sampai 127
disisipkan 6 bit dan selisih 128 sampai dengan 255 disisipkan 7 bit Tabel 1. Tabel 1 Daya tampung pesan pada setiap daerah rentang
Rentang 1
2 3
4 5
6 lb
batas bawah 8
16 32
64 128
ub batas atas
7 15
31 63
127 255
ti
jumlah bit yang disisipkan
3 3
4 5
6 7
Input pesan berupa citra RGB memiliki tiga layer. Setiap layer memiliki nilai piksel yang berbeda. Sebelum disisipkan nilai piksel-piksel tersebut
dikonversi terlebih dahulu menjadi format string binary binstream. Setelah dihitung nilai ti maka bitstream pesan diambil sepanjang length ti dan disimpan
dalam messbindata. Kemudian bitstream messbindata dikonversi menjadi nilai desimal messdecdata, dijumlahkan dengan batas bawah rentang pada tabel
jangkauan lj menjadi nilai selisih untuk dua piksel yang baru dx. Selisih absolut
dari d dan dx adalah nilai m yang dibutuhkan pada persamaan 4 untuk menghitung nilai dua piksel yang baru px, py.
Input pesan berupa plain teks, string binary binstream pesan dibagi menjadi tiga bagian. Setelah dihitung nilai ti maka diambil bintstream sepanjang
length ti dan disimpan dalam messbindata. Proses pengambilan bitstream pesan
sepanjang ti dilanjutkan menghitung nilai-nilai messbindata, mesdecdata, dx, dan m
ini terus berulang seiring iterasi yang dilakukan pada setiap dua piksel cover g
x
, g
x+1
. Iterasi dihentikan sampai semua bitstream pesan disisipkan dalam
piksel cover sehingga menghasilkan nilai-nilai piksel baru px,py yang digunakan untuk membentuk stego image. Aplikasi ini selain menghasilkan stego image
pada menu penyisipan pesan juga menghasilkan nilai PSNR, daya tampung maksimal, dan ukuran dimensi pesan yang digunakan untuk pengambilan pesan.
Adapun algoritme yang digunakan untuk pengembangan menu extracted message
pengambilan pesan disajikan pada Gambar 15.
Gambar 15 Diagram alir proses pengambilan pesan.