28
Perancangan dan Implementasi Aplikasi Steganography untuk Pengamanan Pesan menggunakan Vigenere Cipher, PRNG, dan LSB Embedding Artikel Ilmiah Peneliti: Kukuh Setyo Nugroho (672008054) Magdalena A. Ineke Pakereng, M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Salatiga Mei 2015

Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

Embed Size (px)

Citation preview

Page 1: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

Perancangan dan Implementasi Aplikasi Steganography

untuk Pengamanan Pesan menggunakan Vigenere

Cipher, PRNG, dan LSB Embedding

Artikel Ilmiah

Peneliti:

Kukuh Setyo Nugroho (672008054)

Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2015

Page 2: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

i

Perancangan dan Implementasi Aplikasi Steganography

untuk Pengamanan Pesan menggunakan Vigenere

Cipher, PRNG, dan LSB Embedding

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

Untuk Memperoleh Gelar Sarjana Komputer

Peneliti:

Kukuh Setyo Nugroho (672008054)

Magdalena A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informasi

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2015

Page 3: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

ii

Page 4: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

iii

Page 5: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

iv

Page 6: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

v

Page 7: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

vi

Page 8: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

vii

Page 9: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

viii

Perancangan dan Implementasi Aplikasi Steganography

untuk Pengamanan Pesan menggunakan Vigenere

Cipher, PRNG, dan LSB Embedding

Kukuh Setyo Nugroho

1, Magdalena A. Ineke Pakereng

2

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50711, Indonesia

Email: [email protected], [email protected]

2

Abstract

Computer networks and the Internet facilitate the process of information exchange.

When a confidential information is transmitted over a computer network / internet, it is

necessary to guarantee that such information can only be accessed by certain people.

Steganography techniques can be used as a solution to the problem. Steganography is a

technique of hiding information in other media. Hiding techniques provide the advantage

that the transmitted message is not suspicious, because the message is in the form of

common media, such as image files, audio, or video. In this study, a Vigenere Cipher, and

PRNG steganography method is implemented. Hiding process is done in a particular color

component LSB. The result is an application of steganography, which uses a Vigenere

Cipher, PRNG, and LSB embedding steganography method. The test result shows that cover

image and stego image does not have any significant difference visually. Message integrity

test shows that inserted message does not change so sent message is the same as the received

message.

Keywords: Steganography, Vigenere Cipher, PRNG, LSB Embedding

Abstrak

Jaringan komputer dan internet mempermudah proses pertukaran informasi. Ketika

suatu informasi bersifat rahasia ditransmisikan lewat jaringan komputer/internet, maka

diperlukan jaminan bahwa informasi tersebut hanya dapat diakses oleh pihak yang

berkepentingan. Teknik steganografi dapat digunakan sebagai solusi untuk masalah tersebut.

Steganografi merupakan teknik menyembunyikan informasi pada suatu media lain. Teknik

penyembunyian memberikan keuntungan yaitu pesan yang ditransmisikan tidak

menimbulkan kecurigaan, karena pesan berada dalam bentuk media yang umum, seperti file

image, audio, atau video. Pada penelitian ini diimplementasikan metode steganografi

menggunakan algoritma Vigenere Chiper dan PRNG, dimana penyisipan dilakukan pada

LSB komponen warna tertentu. Penelitian menghasilkan suatu aplikasi steganografi, yang

menggunakan metode steganografi Vigenere Cipher, PRNG, dan LSB Embbeding. Hasil

Pengujian menunjukkan cover image dan stego image secara visual tidak menampakkan

perbedaan yang signifikan. Uji integritas pesan menunjukkan pesan yang disisipkan tidak

mengalami perubahan, sehingga pesan yang dikirimkan sama dengan pesan yang diterima.

Kata Kunci: Steganografi, Vigenere Cipher, PRNG, LSB Embedding

1

Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi, Universitas Kristen

Satya Wacana Salatiga 2

Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana Salatiga

Page 10: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

1

1. Pendahuluan

Jaringan komputer dan internet mempermudah proses pertukaran

informasi. Masalah yang muncul adalah informasi yang dilewatkan pada jaringan

komputer adalah data plaintext. Hal ini beresiko ketika ada pihak lain yang

berhasil menyadap informasi ini, dapat dengan mudah membaca isi informasi

tersebut.

Dalam bidang keamanan komputer, ada dua teknik yang digunakan untuk

menyembunyikan data atau pesan rahasia sehingga data atau pesan rahasia tetap

tidak terlihat, yaitu teknik kriptografi dan steganografi. Pada teknik kriptografi

sebelum data atau pesan rahasia dikirim, data dienkripsi dengan algoritma

tertentu, sehingga pesan yang dikirim tidak dapat dibaca atau diketahui orang

lain. Namun karena pesan tersebut merupakan pesan acak dan berbeda dengan

data aslinya, maka akan menimbulkan kecurigaan pada orang lain. Kecurigaan ini

akan mengarah ke usaha pembobolan informasi.

Steganografi merupakan teknik pengamanan pesan dengan cara

menyembunyikan pesan ke dalam media lain. Media ini pada umumnya disebut

cover, dan dapat berupa file audio, video, gambar, atau format yang lain. Pesan

tersembunyi ke dalam media lain yang dapat dipahami oleh orang lain (tidak

dalam bentuk informasi acak), maka hal ini memberikan kelebihan yaitu tidak

menimbulkan kecurigaan orang lain. Salah satu teknik steganogarfi adalah Least

Signigicant Bit (LSB). Teknik steganografi dengan metode LSB, melakukan satu

penyisipan pesan ke bit terendah (LSB) tiap pixel yang terdapat pada cover, pada

satu pasangan komponen byte tertentu.

Steganografi dengan menggunakan gambar sebagai media penyimpanan

memiliki kelebihan daripada media lain seperti audio dan video, yaitu ukuran file

gambar yang relatif lebih kecil dan meminimalisasi perubahan dari cover. File

gambar inipun merupakan salah satu format file yang sering dipertukarkan dalam

dunia internet. Alasan lainnya adalah banyaknya tersedia algoritma Steganografi

untuk media penampung yang berupa citra. Hal mengenai ukuran file ini penting

ketika stego image (file gambar yang telah disisipi pesan) harus dikirimkan

melalui jaringan komputer.

Penerapan Steganografi citra digital pada penelitian ini menggunakan

cover image dengan format PNG karena file PNG menggunakan kompresi yang

tidak menghilangkan data (lossless compression). Hal ini dikarenakan metode ini

menggunakan bit-bit setiap piksel pada image. Pesan yang berada dalam citra

stego akan tetap aman dan dapat dimunculkan kembali jika proses pengunggahan

pada media (Twitter, Wordpress, Blogger) menggunakan citra berformat PNG [1].

Berdasarkan latar belakang tersebut, maka dilakukan penelitian yang

membahas tentang Perancagan dan Implementasi Aplikasi Steganography untuk

Pengamanan Pesan menggunakan Vigenere Cipher, PRNG, dan LSB Embedding.

2. Tinjauan Pustaka

Penelitian yang membahas sistem steganografi pernah dilakukan.

Penelitian dengan topik “Efficient Method of Audio Steganography by Modified

Page 11: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

2

LSB Algorithm and Strong Encryption Key With Enhanced Security”, yaitu

penelitian yang mengajukan metode baru untuk penyisipan pesan dalam audio,

dengan memodifikasi metode Least Significant Bit (LSB), dan menggunakan

kekuatan kunci enkripsi untuk meningkatkan keamanan pesan yang disisipkan.

Enkripsi yang digunakan adalah teknik enkripsi yang ditentukan sendiri dengan

aturan yang sederhana. Proses enkripsi diterapkan pada pesan, sebelum pesan

tersebut disisipkan ke dalam audio [2]. Berbeda dengan penelitian tersebut, pada

penelitian yang dilakukan ini, digunakan file gambar sebagai cover.

Pada penelitian yang berjudul “Implementasi Teknik Steganografi dengan

Metode LSB pada Citra Digital”, disebutkan tentang perlunya pengamanan

pengiriman pesan melalui jaringan Internet. Pada penelitian tersebut digunakan

media gambar sebagai cover. Hasil penelitian tersebut adalah sebuah aplikasi

steganografi dengan algoritma LSB Embedding, yang dapat menyembunyikan

pesan, sehingga orang lain tidak menyadari keberadaan pesan di dalam media [3].

Berbeda dengan penelitian ini adalah, pada penelitian ini pesan yang disisipkan,

sebelumnya dilakukan proses enkripsi. Hal ini dilakukan dengan tujuan untuk

meningkatkan keamanan pesan yang disisipkan.

Pada penelitian yang berjudul “Penerapan Metode Vigenere Cipher pada

Aplikasi Chat Messenger Sederhana”, disebutkan bahwa pada aplikasi chat perlu

dilakukan penyandian pesan, karena pesan yang dikirimkan dapat berupa data

penting, rahasia, atau pribadi. Pada penelitian tersebut digunakan algoritma

vigenere untuk proses penyandian pesan [4]. Beda dengan penelitian ini adalah

algoritma vigenere digunakan untuk menyandikan pesan sebelum pesan disisipkan

dalam suatu gambar.

Batasan masalah dalam penelitian ini adalah : 1) Format cover image yang

digunakan yaitu *.png, 2) Metode yang digunakan untuk mengamankan pesan

adalah dengan menggunakan algoritma Vigenere Ciphe,r 3) PRNG (Pseudo

Number Random Generator) digunakan untuk membangkitkan kunci pada proses

enkripsi pesan, 4) Penyisipan informasi ke dalam sebuah gambar menggunakan

teknik Least Significant Bit (LSB).

Berdasarkan penelitian-penelitian sebelumnya yang telah dilakukan

tentang steganografi, LSB Embedding, dan algoritma Vigenere, maka pada

penelitian ini dirancang dan diimplementasikan suatu aplikasi steganografi pada

citra digital, dengan menyisipkan pesan yang terenkripsi. Aplikasi yang dibangun

menggunakan bahasa pemrograman C# .net framework 4.5 yang berfungsi untuk

menyisipkan pesan berupa file teks pada citra digital yag bertujuan utnuk

memproteksi pesan tersebut melalui media citra digital. Teknik yag digunakan

dalam implementasi adalah Vigenere Cipher, PRNG, dan LSB Embedding,

dimana pesan rahasia berupa teks disisipkan ke dalam media citra digital sehingga

keberadaan pesan tidak diketahui oleh penglihatan manusia dengan mudah.

Penelitian yang dilakukan membahas tentang steganografi LSB Embedding.

Steganografi adalah ilmu dan seni dan seni menyembunyikan pesan

rahasia di dalam pesan lain sehingga keberadaan pesan rahasia tersebut tidak

dapat diketahui. Steganografi berasal dari Bahasa Yunani, yaitu “steganos” yang

artinya “tulisan tersembunyi (covered writing)” [5]. Steganografi yang dibahas

adalah penyembunyian data di dalam citra (image). Meskipun demikian,

Page 12: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

3

penyembunyian data dapat juga dilakukan pada wadah berupa suara digital, teks,

ataupun video. Cara untuk mengaplikasikan steganografi pada file image terdiri

dari beberapa cara yang biasa digunakan dan prinsip kerja atau algoritma yang

digunakan sama seperti pada metode steganografi pada data audio [6].

Dalam penyembunyian informasi ada beberapa kriteria yang harus

diperhatikan, yaitu : 1) Imperectibility keberadaan pesan rahasia dalam media

penampung tidak dapat dideteksi oleh inderawi. Misalnya, jika cover berupa

image, maka penyisisipan pesan membuat stego-image sukar dibedakan oleh

mata, 2) Fidelity : setelah melakukan penyisipan data rahasia, kualitas gambar

cover-image tidak jauh berubah. Hal ini menyebabkan tidak ada yang tahu bahwa

dalam gambar tersebut terdapat rahasia, 3) Recovery : data yang disembunyikan

harus dapat diungkapkan kembali. Karena tujuan dari setganografi adalah data-

hiding, maka data rahasia dalam cover-image harus dapat kembali untuk

digunakan lebih lanjut [3].

LSB (Least significant bit) adalah bagian dari barisan data biner (basis

dua) yang mempunyai nilai paling kecil. Letaknya adalah paling kanan dari

barisan bit. Sedangkan most significant bit adalah sebaliknya, yaitu angka yang

paling besar dan letaknya di sebelah paling kiri [7].

Gambar 1 Least Significant Bit (LSB) [7]

Pada Gambar 1 terlihat jelas bit-bit LSB pada 1 piksel warna, penanaman

informasi dapat dilakukan pada bit-bit tersebut.

Contoh:

Data awal, tiga piksel dari gambar 24-bit

(00100111 11101001 11001000)

(00100111 11001000 11101001)

(11001000 00100111 11101001)

Nilai biner dari karakter „A‟ adalah 10000011

Data setelah penanaman karakter „A‟

(00100111 11101000 11001000) → 100

(00100110 11001000 11101000) → 000

(11001001 00100111 11101001) → 11,

Hanya bit-bit yang digarisbawahi yang mengalami perubahan.

Page 13: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

4

Model warna RGB merupakan gambar yang tiap pikselnya

direpresentasikan oleh kombinasi intensitas tiga buah komponen warna, yaitu Red

(R), Green (G), Blue (B). Masing-masing komponen tersebut terdiri atas 8 bit.

Sebuah warna dalam piksel gambar RGB dapat direpresentasikan dalam tiga byte

atau 24-bit. Kombinasi ketiga intensitas warna tersebut dapat menghasilkan 16

juta ( ) variasi warna [8].

Vigenere cipher menggunakan suatu kunci yang memiliki panjang

tertentu. Panjang kunci tersebut dapat lebih pendek ataupun sama dengan panjang

plaintext.

Untuk memudahkan dalam proses pengenkripsianya, maka dapat

digunakan alat bantu berupa bujur sangkar Vigenere yang dikenal juga dengan

nama tabula recta.

Gambar 2 Tabula Recta [4]

Baris pada gambar tabula recta menyatakan huruf plainteks yang akan

dienkripsi, dan kolom menyatakan huruf kunci enkripsi. Dan perpotongan antara

baris dan kolom menyatakan huruf yang sudah terenkripsi atau diistilahkan

dengan ciphertext.

Jika panjang kunci kurang dari panjang plaintext, maka kunci tersebut

akan diulang secara periodik hingga panjang kunci tersebut sama dengan panjang

plainteksnya.

Algoritma enkripsi vigenere cipher :

Ci = (Pi + Ki) mod 26

Algoritma dekripsi vigenere cipher :

Pi = (Ci – Ki) mod 26

Dimana :

Ci = nilai desimal karakter ciphertext ke-i

Pi = nilai desimal karakter plaintext ke-i

Ki = nilai desimal karakter kunci ke-i

Page 14: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

5

Contoh 1

- Plainteks : TEKNOLOGI

- Kunci : FTI

Plainteks T E K N O L O G I

Kunci F T I F T I F T I

Cipherteks Y X S S H T T O Q

Pada Contoh 1 kata kunci FTI diulang sedemikian rupa hingga panjang

kunci sama dengan panjang plainteksnya. Kemudian setelah panjang kunci sama

dengan panjang plainteks, proses enkripsi dilakukan dengan melakukan

menggeser setiap huruf pada plainteks sesuai dengan huruf kunci bersesuaian

dengan huruf plainteks tersebut.

Vigenere Cipher yang akan dipakai dalam pada aplikasi ini adalah

vigenere cipher extended dimana pengenkripsian tidak hanya untuk huruf

alphabet tetapi termasuk juga karakter – karakter ASCII. Jadi pengenkripsian

tidak tebatas untuk 26 karakter tetapi mencapai 256 karakter.

Pseudo Random Number Generator (PRNG) adalah algoritma yang

membangkitkan deretan bilangan yang tidak benar-benar acak. Bilangan acak

dihasilkan dengan rumus-rumus matematika dan dapat berulang kembali secara

periodik. Bilangan acak banyak digunakan dalam kriptografi, misalnya untk

pembangkitan elemen kunci, pembangkitan initialization vector (IV),

pembangkitan parameter kunci di dalam sistem kriptografi kunci public, dan

sebagainya. Beberapa algoritma PRNG yang sering digunakan di antaranya

Linear Congruential Generator (LCG), Lagged Fibonacci Generator, Linier

Feedback Shift Register (LSFR), Blum Blum Shub, Fortuna, dan Mesenne

Twister [5]. Pembangkitan bilangan pseudorandom (semi acak) adalah deretan

bilangan dengan kemungkinan pengulangan yang sangat kecil atau periode

pengulangan yang sangat besar [9].

Linier Congruential Generator (LCG) adalah salah satu pembangkit

bilangan acak tertua dan sangat terkenal. Algoritma ini diciptakan oleh D.H.

Lehmer pada tahun 1951. LCG didefinisikan dalam bentuk:

yang dalam hal ini,

= bilangan acak ke-n

= bilangan acak sebelumnya

= bilangan pengali

b = bilangan penambah

m = modulus

X0 = nilai awal berupa bilangan bulat tak negatif

(a,b dan m semuanya konstanta)

Untuk memulai pembangkitan bilangan acak ini dibutuhkan semua

bilangan bulat X0, yang dijadikan sebagai seed awal (bibit pembangkitan).

Bilangan acak pertama yang dihasilkan selanjutnya menjadi bibit pembangkitan

bulat acak selanjutnya. Jumlah bilangan acak yang tidak sama satu sama lain

Page 15: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

6

(unik) adalah m. semakin besar nilai m, semakin kecil kemungkinan akan

dihasilkan nilai sama [9].

PNG merupakan standar terbuka format imageraster yang didukung oleh

W3C dan IETF. Pada dasarnya, format PNG bukan merupakan format baru

karena telah dikembangkan pada tahun 1995 untuk mengganti format GIF. Format

ini tidak digunakan lagi secara luas oleh browser dan perangkat lunak aplikasi

pengolah gambar, sehingga dukungan terhadap format tidak begitu besar hingga

tahun 2003, di mana format PNG semakin dikenal dan dipergunakan untuk

aplikasi manipulasi gambar. PNG (Portable Network Graphics) adalah salah satu

format penyimpanan citra yang menggunakan metode pemadatan yang tidak

menghilangkan bagian dari citra tersebut (lossless compression). Format PNG

diperkenalkan untuk menggantikan format penyimpanan citra GIF. Citra dengan

format PNG mempunyai faktor kompresi yang lebih baik dibandingkan citra

dengan format GIF.

Satu fasilitas dari GIF yang tidak terdapat pada format PNG adalah

dukungan terhadap penyimpanan multi-citra untuk keperluan animasi. Untuk

keperluan pengolahan citra, format PNG dapat dijadikan alternatif selama proses

pengolahan citra, karena format ini selain tidak menghilangkan bagian dari citra

yang sedang diolah, sehingga penyimpanan berulang ulang dari citra tidak akan

menurunkan kualitas citra, juga PNG diciptakan untuk menggantikan keberadaan

GIF karena masalah lisensi. Format PNG dibuat sebagai alternatif lain dari format

GIF, dan digunakan untuk menyimpan berkas dengan kedalaman 24 bit serta

memiliki kemampuan untuk menghasilkan background transparan dengan

pinggiran yang halus. Format PNG menggunakan metode kompresi lossless untuk

menampilkan gambar 24 bit atau warna-warna. Format ini mendukung

transparansi di dalam alpha channel. Format PNG sangat baik digunakan pada

dokumen online, dan mempunyai dukungan warna yang lebih baik saat dicetak

[10].

Citra digital dengan format 24 bit warna (true color image), sebagai

contohnya PNG, memiliki susunan 3 warna dalam 1 pixel. Ketiga warna tersebut

adalah red, green, dan blue. Tiap warna berukuran 1 byte (8 bit) oleh karena itu

disebut 24 bit warna. Kapasitas maksimal pesan yang dapat disisipkan ke dalam

gambar menggunakan metode LSB dapat dihitung menggunakan rumus seperti

persamaan 1 [3].

(1)

Dalam hal ini :

K : Kapasitas bit maksimal pesan yang dapat disisipkan dalam gambar.

P : Panjang gambar dalam pixel.

L : Lebar gambar dalam pixel.

3 : Konstanta yang menunjukkan jumlah warna dalam 1 pixel. 1 pixel

terdapat 3 warna.

8 : Konstanta yang menunjukkan jumlah bit dalam 1 byte.

Page 16: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

7

Contoh penyisipan pesan pada gambar dengan panjang 400px dan lebar 255px

menggunakan persamaan 1, sebagai berikut.

K = (P x L) x 3 bit

K = 400 x 255 x 3 bit

K = 90000 x 3 bit

K = 270000 bit

Untuk mendapatkan nilai dalam satuan byte, maka 270000/8 = 33750 byte.

Bedasarkan perhitungan tersebut menunjukkan jumlah maksimal kapasitas

pesan yang dpaat disisipka dalam gambar berukuran 400px x 255px adalah

sebanyak 270.000 bit atau dalam satuan byte adalah 33.750 byte.

3. Metode dan Perancangan Sistem

Penelitian yang dilakukan, diselesaikan melalui tahapann penelitian yang

terbagi dalam empat tahapan, yaitu: (1) Analisis kebutuhan dan studi literatur, (2)

Perancangan sistem, (3) Implementasi sistem dan pengujian sistem serta analisa

hasil pengujian, (4) Penulisan laporan hasil penelitian.

Gambar 3 Tahapan Penelitian

Tahapan penelitian pada Gambar 3 dapat dijelaskan sebagai berikut.

Tahap pertama: analisis kebutuhan dan studi literatur. Analisis kebutuhan adalah

menganalisis kebutuhan pengguna yang muncul disebabkan karena permasalahan

yang ada yaitu kebutuhan pengguna dalam mengamankan data file dan literatur

yang terkait dengan proses embedding dan extracting tehadap data file pada cover

image, menggunakan metode vigenere, pseudorandom, dan LSB Embedding ;

Tahap kedua: perancangan sistem yang meliputi perancangan proses embedding

dan exctracting pada sistem steganografi yang dibangun; Tahap ketiga:

implementasi sistem, yaitu mengimplementasikan tahapan penelitian pertama dan

kedua ke dalam sebuah program, dengan membuat aplikasi/program sesuai

kebutuhan sistem berdasarkan perancangan sistem yang telah dilakukan. Misalnya

Page 17: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

8

aplikasi dapat menyembunyikan pesan rahasia yang disisipkan pada citra dengan

menggunakan metode vigenere, pseudorandom, dan LSB; dan Tahap keempat :

Pengujian sistem dan analisis hasil pengujian, yaitu dilakukan pengujian terhadap

aplikasi steganografi yang dibangun, dengan tujuan untuk mengetahui pengaruh

encoding dan decoding pada proses yang berjalan di sistem.

Pada tahap ini, dilakukan perancangan proses sistem embedding dan

extracting pada data file yang menerapkan teknik LSB Embedding untuk

digunakan didalam aplikasi. Sistem terdiri dari dua proses, yaitu proses enkripsi

dan proses dekripsi menggunakan algoritma Vigenere Cipher. Perancangan

program yang digunakan dapat dilihat di flowchart pada Gambar 4 sebagai

berikut.

Gambar 4 Proses Perancangan Aplikasi yang Digunakan

Proses dimulai dari input pesan, kemudian pesan dienkripsi dengan

menggunakan vigenere cipher. Untuk selanjutnya kunci (password) dimasukkan,

kunci diproses untuk dibangkitkan menggunakan Pseudorandom. Pesan yang

telah dienkripsi dan kunci yang diacak akan melalui proses Exclusive-OR dan

merubah dari ASCII ke biner. Pada embedding proses penyisipan dilakukan

dengan cara menyisipkan tiap bit pesan kedalam tiap pixel dalam gambar. Hasil

dari proses embedding adalah stego image (gambar yang telah disisipi dengan

pesan). Untuk proses selnajutnya adalah proses extracting. Dimana pada proses

ini terjadi proses pembangkitan kunci dengan pseudorandom dan proses dekripsi

dengan menggunakan vigenere cipher, setelah melalui kedua proses tersebut maka

pesan yang sebelumnya disisipkan dalam gambar bisa diambil dengan melalui

proses exracting. Dan hasil dari proses extracting adalah pesan utuh sama halnya

dengan pesan yang belum disisipkan dalam gambar.

Proses penyembunyian pesan ke dalam file gambar (.PNG) dalam sistem

pada Gambar 5, dijelaskan sebagai berikut :

1. Input gambar, password, dan pesan yang akan dienkripsi

Page 18: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

9

2. Proses enkripsi pesan dengan menggunakan algoritma Vigenere Cipher.

3. Pesan dienkripsi dengan cara mengubah file dari ASCII ke biner.

4. Generate password dengan mengunakan metode Pseudo Random Number

Generator.

5. Sisipkan setiap bit pesan yang telah dienkripsi kemudian disisipkan ke

dalam gambar (.PNG) dengan menggunakan metode LSB Embedding.

6. Memutuskan jika semua pixel gambar telah disisipi maka akan lanjut ke

proses selanjutnya, tetapi jika penyisipan belum penuh maka akan kembali

ke proses sebelumnya yaitu penyisipan pesan.

7. Menghasilkan Stego Image.

Gambar 5 Proses Embedding Data

Data dalam Sistem

Gambar 6 Proses Extracting Data

Data dalam Sistem

Proses pengambilan pesan data dari dalam file gambar (.PNG) secara

umum pada Gambar 6 dijelaskan sebagai berikut :

1. Input Stego Image (.PNG) dan password.

2. Generate password dengan menggunakan metode Pseudo Random

Number Generator.

Page 19: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

10

3. Proses Extracting dengan cara mengambil Stego image dan membaca tiap

bit pesan di LSB dari tiap komponen warna dari gambar yang digunakan

untuk menyisipkan pesan.

4. Memutuskan jika bit pesan terbaca semua maka akan lanjut ke proses

selanjutnya tetapi jika tidak maka akan kembali ke proses sebelumnya

sehingga bit pesan dapat terbaca semua.

5. Mengubah pesan yang telah dienkripsi menjadi biner dan dikembalikan ke

ASCII.

6. Proses dekripsi pesan menggunakan algoritma Vigenere Cipher untuk

mendekripsikan pesan yang disisipkan dalam gambar.

7. Menghasilkan pesan yang sama dengan aslinya.

4. Hasil dan Pembahasan

Aplikasi yang dibangun adalah aplikasi steganografi yang dapat

menyamarkan file text (.txt) dalam file image (.png), yang terdiri atas dua proses

yaitu, proses embedding dan proses extracting. Hasil implementasi sistem

bedasarkan perancangan yang telah dilakukan, dijelaskan sebagai berikut.

Aplikasi yang dihasilkan dalam penelitian ini, dibangun menggunakan .Net

Framework. .Net Framework library digunakan untuk memanipulasi citra digital.

.Net Framework memiliki sebuah namespace System.Drawing, yang di

dalamnya berisi kumpulan class yang digunakan untuk melakukan manipulasi

gambar. Class Bitmap dapat digunakan untuk membuat, membaca, dan

memanipulasi gambar warna 24 bit, sebagai contoh adalah file gambar dengan

format PNG, dengan cara mengakses data piksel yang ada didalamnya.

Penggunaan class Bitmap ini memberikan keuntungan yaitu kompatibiltas

program dengan sistem operasi Windows. Program yang ditulis dengan

menggunakan .Net Framework, berjalan pada software environment (bukan

hardware environment), yang dikenal dengan Common Language Runtime (CLR),

yang disebut dengan application virtual machine. CLR menyediakan layanan

seperti keamanan, pengaturan alokasi memori, dan exception handling.

Gambar 7 Antarmuka Proses Embedding

Page 20: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

11

Gambar 7 menunjukkan tampilan antarmuka aplikasi untuk proses

embedding. Ada lima langkah yang harus dilakukan user dalam proses

embedding: 1) memilih cover image, dengan memilih button cover file, user dapat

memilih file image berformat .png; 2) memilih file/pesan yang ingin dirahasiakan

berupa file text, dengan memilih button message file; 3) user memasukkan

password pada field key; 4) proses selanjutnya yaitu, user memilih tombol hide

message untuk melakukan proses embedding; 5) setelah melakukan proses

embedding, maka user tinggal memilih button save stego image untuk menyimpan

hasil dari proses embedding, user memilih direktori tempat penyimpanan image

yang telah disisipkan file/pesan, hingga ditampilkan message box save, kemudian

pilih button ok untuk menutup message box, dan proses embedding selesai.

Kode Program 1 Perintah Enkripsi Vigenere Cipher Extended

1 public static byte[] Encrypt(byte[] data, byte[] key)

2 {

3 key = ExpandKey(key, data.Length);

4 List<byte> result = new List<byte>();

5 int keyIndex = 0;

6 foreach (byte M in data)

7 {

8 byte C = (byte)((M + key[keyIndex]) % 256);

9 result.Add(C);

10 keyIndex++;

11 }

Kode program 1 merupakan perintah yang digunakan untuk melakukan

proses enkripsi citra digital. Algoritma enkripsi yang digunakan adalah Vigenere

Cipher Extended. Penggunaan mod 256 adalah kode ASCII, karena untuk

memenuhi karakter lowercase, uppercase, tanda baca & simbol (perintah pada

baris 8).

Kode Program 2 Perintah Untuk Membangkitkan Kunci Pada Proses Enkripsi

1 private byte Xn, a, c, m;

2

3 public LCG(byte seed)

4 {

5 Xn = seed;

6 a = 12;

7 c = 19;

8 m = byte.MaxValue;

9 }

10

11 public byte Next()

12 {

13 Xn = (byte)(((a * Xn) + c) % m);

14 return Xn;

15 }

Kode program 2 merupakan perintah yang digunakan membangkitkan

kunci pada waktu proses enkripsi pesan. Tiap bilangan merupakan hasil proses

pseudorandom dengan menggunakan rumus Linear Congruential Generator

(perintah pada baris 13-14). Rumus ini menggunakan tiga konstanta, yaitu a=12,

c=19, dan m =255 (perintah pada baris 6-8), dan nilai awal yang digunakan

disimpan dalam variabel Xn (perintah pada baris 5).

Page 21: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

12

Kode Program 3 Perintah Untuk Proses PRNG

Kode Program 3 merupakan perintah untuk proses terjadinya

pseudorandom. Langkah yang dilakukan dengan perintah pada baris 1 adalah

melakukan proses Exclusive-OR modulasi antara class LCG dengan class

Vigenere (perintah pada baris 2-5) setelah melalui proses Exclusive-OR maka ke

proses selanjutnya yaitu proses Embedding.

Kode Program 4 Perintah Untuk Proses Embedding

Kode program 4 merupakan perintah untuk menyisipkan bit pesan ke

dalam byte image. Langkah yang dilakukan dengan perintah pada baris 1 adalah

mengubah nilai byte ke dalam bentuk binary. Sebagai contoh, untuk byte dengan

nilai 5 akan menjadi “00000101”. Kemudian perintah pada baris 2 digunakan

untuk mengubah string binary ke dalam bentuk array karakter. Perintah pada

baris 3 digunakan untuk mengganti array indeks ke 7 (bit indeks LSB) dengan bit

pesan pada variabel p. Perintah pada baris ke 4 digunakan untuk mengembalikan

array yang telah “disisipi” ke dalam bentuk string binary, untuk kemudian

disimpan kembali dalam cover.

Gambar 8 Antarmuka Proses Extracting

Pada Gambar 8 menunjukkan tampilan antarmuka proses extracting. Ada

lima langkah yang harus dilakukan user dalam proses extract: 1) memilih cover

image yang telah di-embbed dengan memilih button cover; 2) memasukkan

password pada field key; 3) selanjutnya pilih button extract message untuk proses

extracting, setelah melalui proses extracting, data yang telah disisipkan

sebelumnya ditampilkan kembali pada bagian data grid view; 4) selanjutnya user

dapat memilih lokasi dimana ingin menyimpan file hasil ektraksi dengan memilih

1 byte seed = XORModulasi.XOR(initialKey);

2 byte[] keySequence1 = LCG.GenerateSequence(seed, fileName.Length);

3 var cipherFileName = Vigenere.Encrypt(fileName, keySequence1);

4 byte[] keySequence2 = LCG.GenerateSequence(seed, fileContent.Length);

5 var cipherContent = Vigenere.Encrypt(fileContent, keySequence2);

1 string binary = Convert.ToString(current, 2).PadLeft(8, '0');

2 char[] arrayBit = binary.ToCharArray();

3 arrayBit[7] = p;

4 binary = new string(arrayBit);

Page 22: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

13

button save message file. Message box image saved ditampilkan kemudian pilih

button done untuk menutup message box, dan proses extract selesai. Ketika proses

ekstraksi selesai dijalankan, maka akan ditampilkan lama waktu yang digunakan

untuk proses extracting.

Kode Program 5 Perintah Untuk Proses Extracting

Kode Program 5 menjelaskan proses ektraksi nilai LSB dari byte warna.

Perintah pada baris 1 digunakan untuk menyimpan byte warna pada variabel b.

Variabel b diubah dalam bentuk string binary. Kemudian perintah pada baris 2

digunakan untuk membaca nilai paling akhir (LSB), yaitu pada indeks ke 7.

Kode Program 6 Perintah Dekripsi Vigenere Cipher Extended

1 public static byte[] Decrypt(byte[] data, byte[] key)

2 {

3 key = ExpandKey(key, data.Length);

4 List<byte> result = new List<byte>();

5 int keyIndex = 0;

6 foreach (byte M in data)

7 {

8 byte K = key[keyIndex];

9 if (K <= M)

10 {

11 byte C = (byte)((M - K) % 256);

12 result.Add(C);

13 }

14 }

Kode program 6 merupakan perintah yang digunakan untuk melakukan

proses dekripsi citra digital. Algoritma dekripsi yang digunakan adalah Vigenere

Cipher Extended. Penggunaan mod 256 adalah kode ASCII, karena untuk

memenuhi karakter lowercase, uppercase, tanda baca & simbol (perintah pada

baris 11).

Pengujian terhadap sistem steganografi yang dibangun dilakukan dengan

tujuan untuk melihat apakah sistem telah memenuhi konsep steganografi dengan

metode vigenere cipher, PRNG, dan LSB embedding, terkait pengaruh kualitas

file image, keamanan dan keutuhan file data. Pengujian sistem dilakukan dengan

dengan karakteristik spesifikasi komputer, yang terlihat pada Tabel 1.

Tabel 1 Spesifikasi Komputer

Sistem Operasi Microsoft Windows 7 32-bit (x82)

Prosesor Intel® Core™ i3-2350M, 2.30GHz

RAM 4 GB

Harddisk 500 GB

Kecepatan Harddisk 5400 rpm

VGA AMD Radeon™ HD 6470M 1GB

C# 2012 .net 4 Miicrosoft Visual Studio 2012

Pengujian Integritas Pesan (Pengujian 1), dilakukan dengan cara

menghitung nilai hash/checksum dari pesan sebelum disisipkan dengan pesan

setelah proses ekstraksi. Pesan dinyatakan utuh jika memiliki nilai yang sama.

Perhitungan hash dilakukan dengan metode algoritma SHA256 [10]. Hasil

pengujian 1 dapat dilihat pada Tabel 2.

1 string binary = Convert.ToString(b, 2);

2 return binary[7];

Page 23: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

14

Tabel 2 Hasil Pengujian Integritas Pesan

No File Nilai Hash sebelum

disisipkan

Nilai Hash setelah

diekstrak

Kesimpulan

1 Message1.txt 55b17c982c4ca26c

27bb7e1d9f47c5bb

eb211322cb18281

1adf12928ba092eac

55b17c982c4ca26c

27bb7e1d9f47c5bb

eb211322cb18281

1adf12928ba092eac

File Utuh

2 Message2.txt 67e23752084794a

3caf837c7c1dc3f3e

36ee4da05ba496d

afec32786506ff60b

67e23752084794a

3caf837c7c1dc3f3e

36ee4da05ba496d

afec32786506ff60b

File Utuh

3 Message3.txt 8fc5da55bd64b297

f981205dfada5b68

126b8e30f5896078

6cbfbc168983d1a7

8fc5da55bd64b297

f981205dfada5b68

126b8e30f5896078

6cbfbc168983d1a7

File Utuh

4 Message4.txt 70cbc4722fb6691c

2cbbcbc52b85d640

0a018835d6115b21

66cf113ad3af4090

70cbc4722fb6691c

2cbbcbc52b85d640

0a018835d6115b21

66cf113ad3af4090

File Utuh

Berdasarkan hasil pengujian 1 pada Tabel 2, dapat disimpulkan bahwa

aplikasi steganografi yang dibangun berhasil menyisipkan pesan dan

mengeksraksi pesan tanpa menyebabkan perubahan/kerusakan pada pesan. Dalam

hal ini pengujian aplikasi telah memenuhi kriteria steganografi yaitu Recovery

(data yang disembunyikan harus dapat diungkapkan kembali untuk digunakan

lebih lanjut).

Pengujian Pengaruh Dimensi Gambar Terhadap Waktu Proses

(Pengujian 2), dilakukan dengan tujuan untuk mengetahui pengaruh dimensi

gambar terhadap waktu proses. Pengujian 2 dilakukan dengan menggunakan

gambar yang sama dengan dimensi yang berbeda (otomatis size berbeda), dan teks

yang sama dengan panjang 1024 karakter (1024 byte) Hasil pengujian dapat

dilihat pada Tabel 3.

Tabel 3 Hasil Rata-Rata Pengujian Pengaruh Dimensi Gambar Terhadap Waktu Proses

No Gambar Ukuran

File

Dimensi Teks Embedding

(detik)

Extracting

(detik)

1 Lena128x128.png 48 KB 128x128 1024 bytes 0.055003 0.019001

2 Lena256x256.png 184 KB 256x256 1024 bytes 0.17901 0.065004

3 Lena512x512.png 669 KB 512x512 1024 bytes 0.70504 0.252014

4 Lena768x768.png 980 KB 768x768 1024 bytes 1.557089 0.563032

Kesimpulan dari hasil pengujian 2 adalah dimensi gambar mempengaruhi

waktu proses. Semakin kecil ukuran dimensi gambar, semakin cepat waktu

proses.

Pengujian Perubahan Piksel (Pengujian 3), dilakukan dengan cara

membandingkan susunan piksel pada gambar sebelum dan sesudah proses

embedding. Semakin kecil angka perubahan, semakin mirip gambar akhir dengan

gambar awal. Hasil pengujian dapat dilihat pada Tabel 4.

Page 24: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

15

Tabel 4 Hasil Pengujian Perubahan Piksel

Panjang

Pesan

File Dimensi Jumlah Piksel

Berbeda

Prosentase

Perubahan

128 byte lena.png 1024x1024 289 pixel 0,03 %

256 byte lena.png 1024x1024 530 pixel 0.05 %

512 byte lena.png 1024x1024 1013 pixel 0,09 %

1024 byte lena.png 1024x1024 1975 pixel 1,89 %

Berdasarkan hasil pengujian 3 pada Tabel 4, disimpulkan bahwa jumlah

piksel yang berbeda bertambah sesuai dengan panjang pesan. Prosentase

perubahan dihitung berdasarkan jumlah perbedaan piksel dibagi jumlah piksel

dikali 100 persen.

Pengujian Kapasitas Maksimal Pesan Dapat Disisipkan Dala Gambar

(Pengujian 4), dilakukan dengan menggunakan Persamaan 1.

(1)

Dalam hal ini :

K : Kapasitas bit maksimal pesan yang dapat disisipkan dalam gambar.

P : Panjang gambar dalam pixel.

L : Lebar gambar dalam pixel.

3 : Konstanta yang menunjukkan jumlah warna dalam 1 pixel. 1 pixel

terdapat 3 warna.

8 : Konstanta yang menunjukkan jumlah bit dalam 1 byte.

Pengujian pertama dilakukan pada gambar dengan panjang 128px dan

lebar 128px, dan digunakan Persamaan 1 untuk menghitung kapasitas maksimal

pesan yang dapat disisipkan dalam gambar. Proses perhitungan sebagai berikut.

Berdasarkan perhitungan tersebut menunjukkan jumlah maksimal

kapasitas pesan yang dapat disisipkan dalam gambar berukuran 128px x 128px

adalah sebanyak 6.144 byte.

Page 25: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

16

Pengujian kedua dilakukan pada gambar dengan panjang 512px dan lebar

512px, dan dapat digunakan persamaan 1 untuk menghitung kapasitas maksimal

pesan yang dapat disisipkan pada gambar. Proses perhitungan sebagai berikut.

Berdasarkan perhitungan tersebut menunjukkan jumlah maksimal

kapasitas pesan yang dapat disisipkan dalam gambar berukuran 512px x 512px

adalah sebanyak 32.768 byte.

Bedasarkan hasil dua pengujian pada Pengujian 4, disimpulkan bahwa

semakin besar jumlah pixel pada sebuah gambar, akan semakin banyak jumlah

byte pesan yang dapat disisipkan.

Pengujian Perbandingan Visual Gambar Sebelum dan Sesudah Proses

Embedding (Pengujian 5), dilakukan dengan cara menunjukkan file gambar

(cover) sebelum dan sesudah proses embedding kepada 30 responden. Cover

image menggunakan dimensi 512x512 berformat PNG, file data yang disisipkan

1024 karakter (1024 byte). Kepada responden ditanyakan “Pada Pengujian

Gambar terkait dengan proses embedding apakah ada perbedaan antara gambar A

dan B secara kasat mata?”. Gambar A adalah gambar sebelum disisipi file data,

gambar B adalah gambar yang telah disisipi file data. Hasil pengujian ditunjukkan

pada Tabel 5.

Tabel 5 Hasil Pengujian Visual

No Gambar A Gambar B Hash Checksum (MD5) Perbedaan

Piksel Responden

Hash A Hash B

1. 541fb5f7

be643675

9db3a924

9c89cfa6

3a982d3a

b343c79f

8e4c8bdb

a9c63ed8

2,970 Tidak Ada

Perbedaan

Page 26: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

17

2.

5349f01d

482c876a

02be0aa3

851b1fa7

b3d2bd3f

054f7b7d

c050cee7

d39a0695

2,971 Tidak Ada

Perbedaan

3.

44db09bb

3cd77688

20b71095

18729763

fb5956ef

60f9b262

232ec8fa

056f8ebc

2,964 Tidak Ada

Perbedaan

4.

e8c7d444

6e9c5802

289ea691

5c3ab576

2e41622d

210f28a3

ef14872e

ce8ab749

1,720 Tidak Ada

Perbedaan

5.

afee8a2d

921448d7

bfb0238b

39f79ede

e7a83302

63ba0ee9

5ba6ca2a

e9bb5d26

2,952 Tidak Ada

Perbedaan

6.

11145f1f

8d0c9221

8aca7693

8739fc86

b8a5550a

1e3d04c9

e407ec65

5a9da08e

2,945 Tidak Ada

Perbedaan

7.

ab9bfe26

a41a55c5

f9aa15f7

c004558e

a18046f7

fc0140b2

d7082a79

9373e90c

2,946 Tidak Ada

Perbedaan

Page 27: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

18

8.

e5df45ec

38cc7be0

3bbbb1d6

e2daa4fc

b0ccd1c5

f16b5645

8be4a06a

ee71aeb4

2,976 Tidak Ada

Perbedaan

Tabel 5 menunjukkan informasi pengujian 5, disimpulkan bahwa aplikasi

berhasil mempertahankan bentuk visual dari file image, terbukti dari hasil

kuisioner yang menyatakan bahwa tidak ada perbedaan antar kedua gambar dan

tidak mengalami perubahan yang cukup signifikan secara visual. Dalam hal ini

pengujian aplikasi telah memenuhi kriteria steganografi yaitu Imperecbility ( tidak

dapat dibedakan secara kasat mata ) dan Fidelity ( kualitas cover-image tidak jauh

berbeda dengan stego-image ). Perhitungan checksum dilakukan dengan

menggunakan algoritma MD5 [11]. Perbedaan nilai hash terjadi karena pada

proses enkripsi, terdapat proses embedding kunci.

5. Simpulan

Berdasarkan penelitian, pengujian dan analisis terhadap sistem, maka

dapat diambil kesimpulan sebagai berikut: (1) Sistem steganografi yang dibangun

dengan metode Vigenere Cipher, PRNG, dan LSB Embedding, dapat melakukan

penyisipan (embedding)/pengambilan (extracting) data file, dan cover image

berformat PNG; (2) Berdasarkan hasil pengujian integritas pesan, pesan sebelum

disisipkan dan setelah disisipkan tidak mengalami perubahan, jika nilai hash

dinyatakan sama; (3) Dimensi gambar yang berbeda mempengaruhi kecepatan

proses penyisipan dan jumlah piksel yang berbeda bertambah sesuai dengan

panjang pesan; (4) Berdasarkan pengujian kapasitas maksimal pesan yang dapat

disisipkan dalam gambar, semakin besar jumlah pixel pada gambar akan

menambah jumlah kapasitas byte pesan yang akan disisipkan pada gambar; (5)

Berdasarkan hasil pengujian visual terhadap gambar sebelum dan sesudah proses

embedding, gambar tidak mengalami perubahan secara signifikan secara visual.

Saran pengembangan yang dapat diberikan untuk penelitian lebih lanjut adalah

sebagai berikut: (1) Data yang telah disisipkan dapat dikembangkan tidak hanya

dalam bentuk teks, namun juga data gambar atau audio; (2) Media cover image

yang digunakan tidak hanya yang berformat PNG, tetapi format yang lain; (3)

Metode Vigenere Cipher, PRNG, LSB Embedding dapat diterapkan pada media

selain citra digital; (4) File Stego Image tahan terhadap serangan manipulasi data

(cropping, compression, rotating). (5) Dilakukan perbandingan ukuran image

antara aplikasi steganografi yang menggunakan Pseudo Random Number

Generator dengan aplikasi steganografi yang tidak menggunakan Pseudo Random

Number Generator.

Page 28: Perancangan dan Implementasi Aplikasi Steganography untuk …repository.uksw.edu/bitstream/123456789/14978/2/T1_672008054_Full... · menggunakan algoritma Vigenere Chiper dan PRNG,

19

6. Daftar Pustaka

[1]. Edisuryana, Isnanto, & Somantri, 2013, Aplikasi Steganografi pada Citra

Berformat Bitmap Dengan Menggunakan Metode End of File, Karya

Ilmiah, Semarang : Universitas Diponegoro.

[2]. Sridevi, Damodaram, & Narasiham, 2009, Efficient Method of Audio

Steganography by Modified LSB Algorithm and Strong Encryption Key

with Enhanced Security, Jurnal, Hyderabad : Department of Computer

Science and Engineering-JNTUH.

[3]. Alatas, Putri, 2009, Implementasi Teknik Steganografi Dengan Metode

LSB Pada Citra Digital, Tugas Akhir, Jakarta: Teknik Informatika

Universitas Gunadarma.

[4]. Caksono, Nur Adi Susliawan Dwi, 2010, Penerapan Metode Vigenere

Cipher pada Aplikasi Chat Messenger Sederhana, Makalah, Bandung:

Program Studi Teknik Informatika Institut Teknologi Bandung.

[5]. Munir, Rinaldi, 2006, Kriptografi, Steganografi, dan Watermarking,

Bandung: Institut Teknologi Bandung.

[6]. Arubusman, Yusrian Roman, 2007, Audio Steganografi, Tugas Akhir,

Jakarta: Teknik Informatika Universitas Gunadarma.

[7]. Utomo, Tri Prasetyo, 2012, Steganografi Gambar Dengan Metode Least

Significant Bit Untuk Proteksi Komunikasi Pada Media Online, Jurnal,

Bandung: Jurusan Teknik Informatika UIN Sunan Gunung Djati.

[8]. Susanti, Irena, 2007, Penerapan Steganografi Gambar Pada Least

Significant Bit (LSB) dengan penggunaan PRNG (Pseudo Random

Number Generator), Skripsi, Bogor: Departemen Ilmu Komputer Institut

Pertanian Bogor.

[9]. Susanto, Agus, 2006, Studi Dan Implementasi Steganografi Pada Berkas

MIDI, Jurnal, Bandung:Program Studi Teknik Informatika Institut

Teknologi Bandung.

[10]. W3C, 2003. Portable Network Graphics (PNG) Specification (Second

Edition). http://www.w3.org/TR/PNG/#11IHDR. Diakses pada tanggal

10 April 2015.

[11]. Shafiq, S., Khiyal, M. S. H., & Khan, A. Development of Mechanism of

Integrity in M-Commerce Using Joint Signature Scheme.

[12]. Rivest, R., 1992, The MD5 Message-Digest Algorithm.