• Tidak ada hasil yang ditemukan

Hal–hal yang dilakukan pada tahap ini adalah penentuan algoritma PRNG yang sesuai dan penentuan faktor yang mempengaruhi algoritma LCG.

• Analisis ukuran pesan

Tahap ini menganalisis ukuran pesan maksimal yang dapat disembunyikan pada cover-image. Ukuran pesan yang dapat disembunyikan bergantung pada ukuran cover-image serta banyaknya level bit yang digunakan.

• Analisis stego-key yang digunakan Tahap ini berperan penting dalam penentuan posisi piksel serta level bit yang digunakan.

• Analisis penyembunyian pesan

Hal–hal yang dilakukan pada tahap ini adalah analisis algoritma penyembunyian pesan dan analisis waktu penyembunyian pesan.

• Analisis pengambilan pesan

Hal–hal yang dilakukan pada tahap ini adalah analisis algoritma pengambilan pesan dan analisis waktu pengambilan pesan.

• Analisis kualitas

Proses analisis kualitas meliputi perbandingan kualitas cover-image

sebelum dan sesudah disembunyikan pesan, yaitu dengan menghitung nilai PSNR. Nilai PSNR ini berguna untuk mengetahui kesamaan piksel antara

stego-image dan cover-image.

• Analisis keamanan

Proses analisis keamanan dilakukan terhadap serangan pendeteksian secara visual. Steganalis akan berusaha membandingkan stego-image dan

cover-image, baik secara kasat mata maupun membandingkan histogram

RGB keduanya. Pada penelitian ini dibutuhkan 30 responden untuk menilai keberhasilan penelitian.

Kesimpulan

Setelah mendapatkan hasil dari analisis pada tahap sebelumnya, akan didapatkan beberapa kesimpulan. Kesimpulan yang diperoleh mengenai penerapan metode PRNG, hasil analisis kualitas, dan hasil analisis keamanan pada metode PRNG.

HASIL DAN PEMBAHASAN Analisis Algoritma PRNG

Metode steganografi yang digunakan pada penelitian ini adalah metode substitusi pada Least Significant Bit (LSB). Substitusi LSB yang dilakukan berbeda dengan substitusi pada umumnya. Substitusi LSB pada penelitian ini menggunakan modifikasi pada posisi piksel. Posisi piksel pesan yang akan disembunyikan berada pada posisi acak. Posisi acak ini akan dibangkitkan oleh PRNG. Hal ini dilakukan untuk memperkuat teknik penyembunyian data, sehingga pesan akan lebih sulit dicari.

Algoritma PRNG yang sering digunakan di antaranya Linear Congruential Generator

(LCG), Lagged Fibonacci Generator,

Linear Feedback Shift Register (LFSR), Blum Blum Shub, Fortuna, dan Mersenne Twister. Penelitian ini membutuhkan pembangkitan posisi piksel yang tidak akan berulang pada suatu periode. Algoritma LFSR pernah dipergunakan dalam penelitian ini sebelum menggunakan algoritma LCG. Akan tetapi, LFSR hanya membangkitkan deretan bit secara acak, apabila dikonversi ke dalam desimal akan terjadi perulangan posisi. Alasan lainnya adalah waktu pembangkitan PRNG yang didapatkan cukup lama. Algoritma yang dipilih berikutnya adalah algoritma LCG. Algoritma LCG ini dapat menghasilkan deretan bilangan acak dengan waktu yang cepat. Hal ini disebabkan LCG hanya membutuhkan sedikit operasi bit.

Penentuan nilai a, b, dan m pada algoritma LCG sangat mempengaruhi pembangkitan posisi piksel. Apabila nilai yang dipilih tidak memenuhi persyaratan maka terdapat kemungkinan posisi piksel akan berulang sebelum periode m-1. Pada penelitian ini, konstanta yang digunakan, yaitu nilai a = 5.521, b = 33.787, m = 307.200. Pemilihan konstanta a, b, dan m ini

7

berdasarkan percobaan terhadap beberapa nilai, selain itu juga harus memenuhi kondisi-kondisi berikut:

• Nilai a-1 yang dipilih adalah kelipatan dari faktor prima dari m dan harus memenuhi 0 ≤a-1 < m, dan

• Nilai a-1 yang dipilih adalah kelipatan 4 dari faktor prima dari m dan harus memenuhi 0 ≤a-1 < m.

Konstanta a, b, dan m yang telah dipilih, kemudian dilakukan pemeriksaan terhadap persyaratan LCG. Langkah-langkah pemeriksaan untuk memenuhi syarat LCG, yaitu:

1 b relatif prima terhadap m, yaitu

gcd (33.787, 307.200)=1 atau x(b)+y(m)=1

Penjelasan:

-28.877(33.787)+3.176(307.200)=1. 2 a – 1 dapat dibagi dengan semua faktor

prima dari m. Penjelasan:

(5.521-1) dapat dibagi dengan 2, 3, 5. 3 a – 1 adalah kelipatan 4 jika m adalah

kelipatan 4. Penjelasan:

307.200 dapat dibagi 4, (5.521-1) dapat dibagi 4. 4 m > maks(a, b, X0). Penjelasan: 307.200 >maks (5.521, 33.787, X0). 5 a > 0, b > 0. Penjelasan: 5.521 > 0, 33.787 >0.

Selain harus memenuhi persyaratan LCG, nilai a, b, dan m yang digunakan juga harus dapat melakukan pengungkapan kembali. Hal ini berkaitan dengan tujuan steganografi, yaitu recovery. Konstanta a, b, dan m yang dapat digunakan dapat dilihat pada Tabel 1.

Tabel 1 Konstanta a, b, dan m yang dapat digunakan a b m 1.561 33.787 307.200 5.521 33.787 307.200 5.521 53.971 307.200 2.761 53.971 307.200 6.841 53.971 307.200

Nilai–nilai pada Tabel 1 telah diperiksa, sehingga nilai–nilai tersebut dapat digunakan pada algoritma LCG. Penentuan kompleksitas waktu algoritma PRNG adalah sebagai berikut:

[1] for ij to n

[2] nilailcg[i] = ((a * nilailcg[i-1]) + b) mod totalpix

Kompleksitas waktu dari algoritma PRNG sangat ditentukan oleh baris [1]. Baris [1] merupakan proses untuk mendapatkan posisi piksel. Baris [1] ini akan dieksekusi sebanyak n dengan n merupakan panjang bit pesan yang akan disembunyikan. Algoritma PRNG akan dimulai pada iterasi ke-j. Proses mendapatkan posisi piksel ini berlangsung sebanyak n kali, sehingga algoritma tersebut memiliki kompleksitas waktu O(n).

Analisis Ukuran Pesan

Proses penyembunyian pesan dapat dilakukan apabila ukuran pesan lebih kecil daripada ukuran cover-image. Penyembunyian pesan tidak hanya dilakukan pada 1 bit LSB, tetapi dapat dilakukan penyembunyian pesan pada 2, 3, dan 4 LSB. Kemudian akan disebut Level 1, Level 2, Level 3, dan Level 4. Penggunaan level bit ini diperlukan apabila ingin meningkatkan kapasitas penyembunyian pesan. Adapun perumusan ukuran pesan yang dapat disembunyikan sebagai berikut. Ukuran pesan (bytes) =[((Panjang cover * Lebar cover ) –55)* level*3] / 8

Berdasarkan perumusan tersebut, ukuran pesan maksimum yang dapat disembunyikan dalam cover dengan dimensi 640 x 480 piksel, dapat dilihat pada Tabel 2.

Tabel 2 Ukuran pesan maksimum yang dapat disembunyikan dalam

cover

Level Dimensi FileCover

(640 x 480 piksel) 1 115.179 bytes

2 230.358 bytes

3 345.538 bytes

4 460.717 bytes

Pada Tabel 2 dapat dilihat bahwa level bit merupakan salah satu faktor penting dalam meningkatkan kapasitas penyembunyian pesan. Semakin besar level bit yang digunakan maka akan semakin besar ukuran file pesan yang dapat disimpan.

Analisis Stego-key

Stego-key yang digunakan selain berfungsi sebagai initial value pada

8

algoritma PRNG, juga berfungsi untuk menentukan level bit yang akan disembunyikan. Informasi stego-key yang digunakan dalam penelitian ini dapat dilihat pada Tabel 3. Tabel 3 Stego-key Stego-key (Kunci) Initial Value Level Bit ilkomers 145691 1 infohide 113686 1 komputer 218531 2 embedded 249594 2 kualitas 38155 3 pixel 83955 3 steganog 42812 4 password 84334 4 Pada Tabel 3, terdapat 8 stego-key yang digunakan. Stego-key yang dimasukkan pada awalnya dalam bentuk karakter. Kemudian dikonversi ke dalam bentuk binary, yang selanjutnya akan dilakukan padding hingga panjang bit merupakan kelipatan dari:

nilaiblok = ⎣log2 total piksel⎦.

Berikutnya akan dibagi menjadi blok-blok, dengan panjang bit pada tiap bloknya adalah

nilaiblok. Setelah pembagian blok, selanjutnya akan dilakukan operasi XOR pada blok. Hasil dari operasi XOR ini merupakan initial value. Berdasarkan initial value yang dihasilkan, akan didapat level bit yang akan digunakan dan posisi–posisi piksel berikutnya.

Analisis Penyembunyian Pesan

Algoritma Penyembunyian Pesan

Input: Cover-image M1, Pesan M2,

Kunci K

Output: Stego-image S

1. Dari kunci K, didapatkan initial

value yang akan digunakan dalam

pembangkitan PRNG

a. Konversi nilai ASCII dari

kunci K ke binary

b. Lakukan Padding, sehingga

panjang bit kelipatan

nilaiblok=floor(log2

totalpix);

c. Simpan nilai binary bit hasil

konversi ke dalam temp

d. Bagi bit-bit kunci ke dalam

blok–blok dengan panjang = nilaiblok

e. Lakukan operasi XOR pada

blok-blok yang telah dibagi

f. Hasil akhir operasi XOR diubah

ke dalam bentuk

desimal(result)

g. Initial value untuk LCG =

result

h. Iterasilcg ← M2*8/3

level ← “ ”

i. for i←0 to strlen(result)

jika result[i]=1 level←1;

jika result[i]=2 level←2;

jika result[i]=3 level←3;

jika result[i]=4 level←4;

selainnya result [i+1];

j. jika level = “ ” dan i>=

strlen(result)

level←1;

2. Definisikan header yang terdiri

atas boundary, level, iterasilcg,

dan nama file pesan

3. Ambil isi file pesan dan simpan

pada temporary data (tempData)

4. Sisipkan header pada 55 posisi

pertama.

posisi[0] ← result

for p←0 to 54

posisi[p+1]←((a * posisi[p])

+ b) mod totalpix

Sisipkan header pada 1 LSB

untuk posisi ke-p

Nilai awal untuk LCG ← posisi[54]

Jika level=1

for p←55 to ceil(iterasilcg)

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

Sisipkan pesan pada 1 LSB untuk posisi ke-p

Jika level=2

for p←55 to ceil(iterasilcg)

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

Sisipkan pesan pada 2 LSB untuk posisi ke-p

Jika level = 3

for p←55 to ceil(iterasilcg)

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

Sisipkan pesan pada 3 LSB untuk posisi ke-p

Jika level = 4

for p←55 to ceil(iterasilcg)

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

Sisipkan pesan pada 4 LSB untuk posisi ke-p

5. Simpan hasil penyembunyian pesan

pada S dengan format sama dengan M1

Langkah awal dari algoritma penyembunyian pesan ini yaitu mendapatkan initial value, sehingga dapat ditentukan level bit yang digunakan. Kemudian akan dilakukan pembangkitan algoritma PRNG. Dari pembangkitan algoritma PRNG ini akan didapatkan posisi piksel. Langkah selanjutnya, yaitu pendefinisian header. Header terdiri atas

boundary, level, iterasi pada LCG dan nama

file pesan. Informasi header dapat dilihat pada Gambar 7.

9

Gambar 7 Informasi header.

yang dalam hal ini,

= level, yang memiliki panjang 8 bit, = boundary, yang masing-masing

memiliki panjang 8 bit,

= iterasi LCG, yang memiliki panjang maksimal 48 bit,

= nama file pesan, yang memiliki panjang maksimal 10 karakter atau 80 bit.

Total bit yang akan disisipkan pada header

adalah 160. Tiap piksel dapat menyembunyikan pesan sebanyak 3 bit, sehingga banyaknya posisi piksel yang dibutuhkan adalah 160 / 3 = 53,33. Untuk itu dilakukan pembulatan, sehingga posisi piksel yang dibutuhkan sebanyak 55 posisi. Selain itu, pembatasan header ini dilakukan untuk kemudahan dalam proses pengambilan pesan. Setelah proses penyembunyian header, diikuti proses penyembunyian pesan. Proses penyembunyian pesan akan ditentukan oleh level bit. Level 1 membutuhkan 1 bit LSB

cover pada proses penyembunyian pesan. Sebagai contoh:

( 10101011 11100100 10110011 ) Level 2 membutuhkan 2 LSB cover pada proses penyembunyian pesan. Sebagai contoh:

( 10101011 11100100 10110011 ) Level 3 membutuhkan 3 LSB cover pada proses penyembunyian pesan. Sebagai contoh:

( 1010 1011 11100100 10110011 ) Level 4 membutuhkan 4 LSB cover pada proses penyembunyian pesan. Sebagai contoh:

( 10101011 11100100 10110011 ) Setelah tidak ada lagi bit pesan yang akan disembunyikan, hasil penyembunyian pesan ini akan disimpan ke dalam format yang sama dengan format file cover.

Untuk perhitungan kompleksitas waktu algoritma penyembunyian pesan adalah sebagai berikut:

[1] for p←55 to n+55

[2] posisi[p] ← ((a * posisi[p-1]) + b) mod totalpix

Kompleksitas algoritma penyembunyian pesan ditentukan oleh baris [1] dan baris [2].

Baris [1] merupakan proses penyembunyian pesan. Baris [1] ini akan dieksekusi sebanyak n dengan n merupakan panjang bit pesan yang akan disembunyikan. Baris [2] merupakan proses mendapatkan posisi piksel. Baris [2] ini berlangsung sebanyak n

kali. Proses lainnya berlangsung satu kali, sehingga algoritma tersebut memiliki kompleksitas waktu O(n). Perhitungan kompleksitas waktu algoritma penyembunyian pesan lebih lengkap dijelaskan pada Lampiran 1.

Analisis Waktu Penyembunyian Pesan

Analisis waktu penyembunyian pesan akan dipengaruhi proses pembangkitan PRNG oleh algoritma LCG dan berapa lama proses penyembunyian pesan itu sendiri. Proses penyembunyian pesan itu sendiri sangat dipengaruhi oleh ukuran file pesan yang akan disembunyikan. Di sisi lain pada algoritma LCG, beberapa faktor yang dapat mempengaruhi waktu penyembunyian pesan adalah nilai a (faktor pengali), b

(increment), dan m (banyaknya piksel

cover). Untuk ukuran file gambar sebagai

cover dalam percobaan ini digunakan file

gambar format PNG dengan dimensi 640 x 480 piksel. Pesan yang akan dibandingkan waktu proses penyembunyiannya adalah 10

file gambar format JPEG. Informasi mengenai file cover-image dan pesan gambar dapat dilihat pada Lampiran 2. Hasil analisis waktu penyembunyian pesan dapat dilihat pada Tabel 4.

10

Tabel 4 Hasil analisis waktu penyembunyian pesan(detik)

Berdasarkan data pada Tabel 4, terlihat waktu penyembunyian pesan akan semakin membesar seiring bertambahnya ukuran file

pesan yang disembunyikan dan level bit yang digunakan. Adapun salah satu hasil penyembunyian pesan dapat dilihat pada Lampiran 3. Untuk lebih jelas waktu penyembunyian pesan dapat dilihat dalam bentuk grafik seperti pada Gambar 8.

Waktu Penyembunyian Pesan

0 10 20 30 40 50 60 2907 2 3744 0 4680 2 5294 1 6435 2 7567 4 8277 0 9275 3 1047 54 1100 22

Ukuran Pesan (bytes)

W a kt u ( d et ik ) ilkomers infohide komputer embedded kualitas pixel steganog password

Gambar 8 Grafik waktu penyembunyian pesan.

Berdasarkan pada Gambar 8, grafik waktu penyembunyian pesan akan semakin naik seiring bertambahnya ukuran file dan level bit yang digunakan. Hal ini membuktikan bahwa ukuran file dan level bit berpengaruh terhadap waktu penyembunyian pesan. Berdasarkan grafik tersebut, dapat dilihat bahwa waktu penyembunyian pesan naik secara linear. Grafik waktu penyembunyian pesan mengalami kenaikan yang hampir sama pada tiap level.

Analisis Pengambilan Pesan

Algoritma Pengambilan Pesan

Input: Kunci K, stego-image S

Output: Pesan M2

1. Kunci K akan menghasilkan initial

value pada PRNG

a. Konversi nilai ASCII dari

kunci K ke binary

b. Lakukan Padding, sehingga

panjang bit kelipatan

nilaiblok=floor(log2totalpix);

c. Simpan nilai binary bit hasil

konversi ke dalam temp

d. Bagi bit-bit kunci ke dalam

blok–blok dengan panjang = nilaiblok

e. Lakukan operasi XOR pada

blok-blok yang telah dibagi

f. Hasil akhir operasi XOR diubah

ke dalam bentuk

desimal(result)

g. Initial value untuk LCG =

result

2. Untuk mendapatkan jumlah iterasi

maka ambil headernya, yaitu 55

posisi pertama

posisi[0] ← result

a. for p←0 to 54

posisi[p+1]←((a*posisi[p])

+ b) mod totalpix

pada S ambil nilai indeks warna R, G, B pada setiap posisi ke-p;

jika nilai R, G, B adalah genap

header=0;

selainnya

header=1;

b. Dapatkan level, boundary,

iterasilcg, dan nama file

pesan

3. Nilai awal untuk LCG ← posisi[54]

Jika level=1

for p←55 to iterasilcg

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

pada S ambil nilai indeks warna R, G, B pada setiap posisi ke-p;

jika nilai R, G, B adalah genap bitpesan=0; selainnya bitpesan=1; Jika level=2 for p←55 to iterasilcg

posisi[p] ← ((a *

11

pada S ambil nilai indeks warna R, G, B pada setiap posisi ke-p;

jika nilai R, G, B adalah genap

bitpesan= nilai indeks warna & 2;

selainnya

bitpesan= nilai indeks

warna & 3; Jika level=3

for p←55 to iterasilcg

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

pada S ambil nilai indeks warna R, G, B pada setiap posisi ke-p;

jika nilai R, G, B adalah genap

bitpesan= nilai indeks

warna & 6; selainnya

bitpesan= nilai indeks

warna & 7; Jika level=4

for p←55 to iterasilcg

posisi[p] ← ((a *

posisi[p-1]) + b) mod totalpix

pada S ambil nilai indeks warna R, G, B pada setiap posisi ke-p;

jika nilai R, G, B adalah genap

bitpesan= nilai indeks

warna & 14; selainnya

bitpesan= nilai indeks warna & 15;

4. Konversi nilai bit ke dalam

bentuk ASCII

Nilai ASCII akan disimpan dalam

bentuk file pesan dengan nama

sesuai dengan namafilepesan

Langkah awal pada algoritma pengambilan pesan ini, yaitu mendapatkan

header. Header yang diperoleh, akan menghasilkan boundary, level, iterasi lcg,

dan nama file pesan. Level dan iterasi lcg ini akan digunakan untuk proses selanjutnya, yaitu mendapatkan isi pesan. Pada algoritma ini, pemanggilan fungsi LCG dilakukan sebanyak dua kali, yaitu untuk mendapatkan

header dan isi pesan. Langkah selanjutnya adalah bit–bit pesan yang didapatkan akan dikonversi ke dalam bentuk ASCII. Kemudian hasilnya akan disimpan sesuai dengan nama file pesan yang terdapat pada

header.

Untuk perhitungan kompleksitas waktu algoritma pengambilan pesan adalah sebagai berikut:

[1] for p←55 to n+55

[2] posisi[p] ← ((a * posisi[p-1]) + b) mod totalpix

Kompleksitas algoritma pengambilan pesan ditentukan oleh baris [1] dan baris [2]. Baris [1] merupakan proses pengambilan pesan. Baris [1] ini akan dieksekusi sebanyak n dengan n merupakan panjang bit pesan. Baris [2] merupakan proses mendapatkan posisi piksel. Baris [2] ini berlangsung sebanyak n kali. Proses lainnya berlangsung satu kali, sehingga algoritma tersebut memiliki kompleksitas waktu O(n). Perhitungan kompleksitas waktu algoritma pengambilan pesan lebih lengkap dijelaskan pada Lampiran 4.

Analisis Waktu Pengambilan Pesan

Analisis waktu pengambilan pesan akan dipengaruhi proses pembangkitan PRNG oleh algoritma LCG dan berapa lama proses pengambilan pesan itu sendiri. Hasil analisis waktu pengambilan pesan dapat dilihat pada Tabel 5.

Tabel 5 Hasil analisis waktu pengambilan pesan (detik)

Berdasarkan data pada Tabel 5, terlihat waktu pengambilan pesan akan semakin membesar seiring bertambahnya ukuran file

pesan yang disembunyikan dan level bit

yang digunakan. Untuk lebih jelas waktu pengambilan pesan dapat dilihat dalam bentuk grafik seperti pada Gambar 9 berikut.

12

Waktu Pengambilan Pesan

0 100 200 300 400 500 600 2907 2 374 40 468 02 52941643 52 756 74 8277 0 927 53 1047 54 1100 22 Ukuran Pesan (bytes)

W akt u ( d et ik ) ilkomers infohide komputer embedded kualitas pixel steganog password

Gambar 9 Grafik waktu pengambilan pesan. Berdasarkan pada Gambar 9, grafik waktu pengambilan pesan akan semakin naik seiring bertambahnya ukuran file dan level bit yang digunakan. Hal ini membuktikan bahwa ukuran file dan level bit berpengaruh terhadap waktu pengambilan pesan. Grafik waktu pengambilan pesan mengalami kenaikan yang berbeda pada tiap level bit. Waktu pengambilan pesan pada level 1 dan level 2

naik secara linear, sedangkan pada level 3 dan level 4 grafik waktu naik lebih cepat.

Analisis Kualitas

Proses penyembunyian pesan akan mempengaruhi kualitas gambar. Kriteria yang harus diperhatikan pada information hiding, yaitu fidelity (setelah penyembunyian pesan, cover-image masih terlihat baik), robustness (pesan harus tahan terhadap manipulasi), dan recovery (pesan yang disembunyikan harus dapat diungkapkan kembali). Akan tetapi, pada steganografi hanya kriteria fidelity dan

recovery yang diperlukan. Hal ini disebabkan steganografi tidak bertujuan

robustness. Karena steganografi lebih bertujuan bagaimana pesan disembunyikan. Pada penelitian ini, untuk melihat perubahan kualitas pesan akan dilakukan dengan menghitung nilai PSNR. Semakin besar nilai PSNR yang didapatkan, maka steganalis semakin tidak mencurigai adanya pesan yang disembunyikan. Hasil analisis kualitas dapat dilihat pada Tabel 6.

Tabel 6 Hasil analisis kualitas stego-image (dB)

Analisis kualitas dapat dikatakan baik apabila kualitas stego-image yang dihasilkan tidak mengalami distorsi yang besar dibandingkan dengan cover-image. Dengan kata lain, stego-image yang dihasilkan sulit untuk dibedakan dengan cover-image. PSNR yang dihasilkan memiliki nilai lebih besar dari 30 dB, sehingga stego-image yang dihasilkan memiliki kualitas yang baik. Berdasarkan data pada Tabel 6, terlihat bahwa kualitas stego-image sangat dipengaruhi oleh besarnya ukuran file pesan, serta level bit yang digunakan. Terbukti bahwa semakin besar ukuran file pesan dan level bit yang digunakan, nilai PSNR akan semakin mengecil.

Analisis Keamanan

Penggantian bit–bit yang redundan dapat menimbulkan kecurigaan, sehingga serangan dapat dilakukan untuk mendeteksi adanya data yang disembunyikan. Serangan pada

stego-image ini disebut steganalisis. Terdapat dua aspek serangan pada steganografi, yaitu pendeteksian dan penghancuran. Pada penelitian kali ini, analisis keamanan dilakukan terhadap serangan pendeteksian secara visual. Diasumsikan steganalis mempunyai cover-image dan stego-image. Dengan demikian steganalis akan membandingkan kedua gambar tersebut. Selain itu juga steganalis akan mencoba membandingkan histogram dari kedua gambar.

1313

Analisis keamanan akan dilakukan dengan menyebarkan kuisioner kepada 30 responden. Format kuisioner dapat dilihat pada Lampiran 5. Responden terdiri atas 50% mahasiswa Ilmu Komputer dan 50% mahasiswa di luar Ilmu Komputer. Pesan yang digunakan pada kuisioner memiliki ukuran 110.022 bytes, sedangkan cover-image yang digunakan memiliki dimensi 640 x 480 piksel. Pesan yang digunakan adalah pesan dengan ukuran file yang terbesar. Pemilihan pesan ini disebabkan karena semakin besar ukuran file pesan yang digunakan, maka semakin kecil kualitas gambar yang dihasilkan. Hal ini akan cukup mewakili penilaian keberhasilan penelitian ini.

Penilaian pada kuisioner dibagi menjadi tiga kriteria, yaitu berbeda, sedikit berbeda, dan tidak berbeda. Kriteria berbeda dapat dipilih apabila responden dapat melihat adanya perubahan warna yang sangat nyata terhadap cover-image. Perubahan warna yang dihasilkan terjadi pada hampir semua bagian gambar. Dengan kata lain, stego-image yang dihasilkan tampak jauh berbeda dari cover-image. Kriteria sedikit berbeda dapat dipilih apabila responden hanya melihat beberapa perbedaan warna. Perubahan warna yang dihasilkan hanya pada tempat-tempat tertentu saja. Responden hanya melihat sedikit perbedaan pada gambar. Kriteria tidak berbeda dapat dipilih apabila responden tidak melihat adanya perbedaan warna yang dihasilkan. Responden tidak melihat perubahan warna pada seluruh bagian gambar. Hasil kuisioner untuk analisis keamanan dapat dilihat pada Tabel 7.

Tabel 7 Hasil kuisioner untuk analisis keamanan Jumlah Stego-key Berbeda Sedikit Berbeda Tidak Berbeda ilkomers 0 2 28 infohide 0 2 28 komputer 0 4 26 embedded 0 6 24 kualitas 0 6 24 pixel 0 4 26 steganog 0 2 28 password 0 2 28

Berdasarkan pada Tabel 7, dapat dilihat hasil kuisioner, yaitu 93% responden berpendapat bahwa stego-image dengan

stego-key “ilkomers” tidak berbeda dengan

cover-image, 93% responden berpendapat bahwa stego-image dengan stego-key

“infohide” tidak berbeda dengan cover-image, 87% responden berpendapat bahwa

stego-image dengan stego-key “komputer” tidak berbeda dengan cover-image, 80% responden berpendapat bahwa stego-image

dengan stego-key “embedded” tidak berbeda dengan cover-image, 80% responden berpendapat bahwa stego-image dengan

stego-key “kualitas” tidak berbeda dengan

cover-image, 87% responden berpendapat bahwa stego-image dengan stego-key

“pixel” tidak berbeda dengan cover-image, 93% responden berpendapat bahwa stego-image dengan stego-key “steganog” tidak berbeda dengan cover-image, 93% responden berpendapat bahwa stego-image

dengan stego-key “password” tidak berbeda dengan cover-image. Grafik hasil kuisioner untuk analisis keamanan dapat dilihat pada Gambar 10.

Gambar 10 Grafik hasil kuisioner untuk analisis keamanan.

Berdasarkan pada Gambar 10, dapat dilihat secara keseluruhan 88% responden berpendapat bahwa stego-image yang dihasilkan tidak berbeda dengan cover-image dan 12% responden berpendapat bahwa stego-image yang dihasilkan sedikit berbeda dengan cover-image. Berdasarkan hasil kuisioner tersebut, stego-image yang dihasilkan tidak terlalu menimbulkan kecurigaan karena sebagian besar responden tidak menyadari adanya perbedaan antara

stego-image dan cover-image.

Analisis keamanan berikutnya dilakukan dengan membandingkan histogram komponen warna RGB. Apabila tidak terdapat perbedaan yang nyata di antara histogram cover-image dan stego-image, maka kecil kemungkinan steganalis mencurigai kedua gambar tersebut. Berikut histogram pada cover-image dan stego-image.

14

Gambar 11 Histogram cover-image dan stego-image pada warna Red (R).

Gambar 12 Histogram cover-image dan stego-image pada warna Green (G).

Gambar 13 Histogram cover-image dan stego-image pada warna Blue (B).

Dokumen terkait