Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian...

27
Perancangan dan Implementasi Aplikasi Steganografi pada Citra Menggunakan Metode LSB Termodifikasi dalam Pemilihan Byte Penyisipan Artikel Ilmiah Peneliti : Khristie Grace Pattiasina (672008107) M. A. Ineke Pakereng, M.Kom. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen SatyaWacana Salatiga Mei 2013

Transcript of Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian...

Page 1: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

Perancangan dan Implementasi

Aplikasi Steganografi pada Citra

Menggunakan Metode LSB Termodifikasi

dalam Pemilihan Byte Penyisipan

Artikel Ilmiah

Peneliti : Khristie Grace Pattiasina (672008107)

M. A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen SatyaWacana

Salatiga

Mei 2013

Page 2: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

Perancangan dan Implementasi

Aplikasi Steganografi pada Citra

Menggunakan Metode LSB Termodifikasi

dalam Pemilihan Byte Penyisipan

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh gelar Sarjana Komputer

Peneliti: Khristie Grace Pattiasina (672008107)

M. A. Ineke Pakereng, M.Kom.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2013

Page 3: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 4: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 5: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 6: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 7: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 8: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan
Page 9: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

Perancangan dan Implementasi

Aplikasi Steganografi pada Citra

Menggunakan Metode LSB Termodifikasi

dalam Pemilihan Byte Penyisipan

1)

Khristie Grace Pattiasina, 2)

M.A. Ineke Pakereng

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Jl. Diponegoro 52-60, Salatiga 50771, Indonesia

Email: 1)

[email protected],2)

[email protected]

Abstract

The development of information technology increasingly provides convenience in

the process of sending messages and documents. Confidentiality is a major consideration

when an important document sent over a computer network. Steganography is a method

to hide a message inside another file without showing significant changes, with the intent

of reducing the suspicion of the file. In this study implemented an LSB steganography by

using the modified method. LSB used a modified LSB byte insertion in the selection of the

cover image as a document storage bits. The results show that the cover image before

and after insertion of visually did not show significant differences. Test the integrity of

the document indicates that the document does not change the contents of the file.

Keywords: Steganography, LSB Modified, Selection Byte Insertion

Abstrak

Perkembangan teknologi informasi semakin memberikan kemudahan dalam

proses pengiriman pesan dan dokumen. Kerahasian adalah menjadi pertimbangan utama

ketika suatu dokumen penting dikirimkan melalui jaringan komputer. Steganografi

merupakan suatu metode untuk merahasiakan pesan di dalam suatu file lain tanpa

menunjukan perubahan yang signifikan, dengan maksud mengurangi kecurigaan terhadap

file tersebut. Pada penelitian ini diimplementasikan suatu steganografi dengan

menggunakan metode LSB termodifikasi. LSB yang digunakan merupakan LSB

termodifikasi dalam pemilihan byte penyisipan pada cover image sebagai tempat

penyimpanan bit-bit dokumen. Hasil pengujian menunjukkan bahwa cover image

sebelum dan sesudah disisipi secara visual tidak menampakkan perbedaan yang

signifikan. Uji integritas dokumen menunjukkan bahwa dokumen tidak mengalami

perubahan isi file.

Kata Kunci: Steganografi, LSB Termodifikasi, Pemilihan Byte Penyisipan

1)

Mahasiswa Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana 2)

Staf Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana.

Page 10: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

1

1. Pendahuluan

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. Hal ini

disebabkan beberapa enkripsi mempunyai pola ciphertext yang menunjukkan

metode enkripsi yang digunakan, dengan demikian orang menjadi curiga dan akan

berusaha memecahkan pesan tersebut. Oleh karena itu, agar data yang

disembunyikan tidak dicurigai orang lain, terdapat suatu teknik penyamaran data

yaitu steganografi [1].

Pada steganografi pesan disembunyikan dalam media yang umum dikenal

yaitu image, audio, dan video, sehingga tidak menimbulkan kecurigaan. Teknik

steganografi menggunakan dua media yang berbeda. Salah satu media berfungsi

sebagai media yang berisikan informasi (pesan rahasia) dan media yang lain

berfungsi sebagai pembawa informasi tersebut (cover) yang dapat berupa sebuah

teks, gambar, suara, atau video.

Masalah yang sering muncul dalam steganografi adalah keterbatasan lokasi

penyisipan pesan. Keterbatasan ini ada karena teknik steganografi berusaha untuk

melakukan perubahan seminimal mungkin pada cover, dengan maksud

mengurangi kecurigaan. Teknik steganografi dengan metode LSB, melakukan

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

ini berarti melakukan perubahan pada tiap byte warna dari cover, yang dapat

berakibat besarnya perubahan yang terjadi pada cover.

Berdasarkan latar belakang tersebut, yaitu keterbatasan lokasi dan berusaha

meminimalisasi perubahan cover, pada penelitian diajukan suatu steganografi

pada citra menggunakan metode LSB termodifikasi dalam pemilihan byte

penyisipan. Teknik ini merupakan pengembangan dari metode LSB. Penyisipan

dilakukan hanya pada byte warna pada cover yang memiliki nilai tertentu

(selective). Pemilihan nilai ini bersifat dinamis, tidak terbatas pada nilai byte

tertentu saja, sebagai contoh 254 dan 255 saja. Berdasarkan uraian tersebut, maka

akan dilakukan penelitian yang bertujuan untuk melakukan “Perancangan dan

Implementasi Aplikasi Steganografi Pada Citra Menggunakan Metode LSB

Termodifikasi Dalam Pemilihan Byte Penyisipan”.

2. Tinjauan Pustaka

Beberapa Penelitian yang membahas sistem steganografi pernah dilakukan.

Penelitian dengan topik “Efficient Method of Audio Steganography by Modified

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.

Page 11: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

2

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].

Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada

Citra Menggunakan Metode Least Significant Bit Termodifikasi dan RC6”.

Kesimpulan yang diperoleh adalah dapat melakukan penyisipan (embedding) atau

pengambilan (extracting) data pada byte komponen warna bernilai 254 atau 255,

pada file cover berformat PNG. Ukuran file yang disisipkan mempengaruhi

kecepatan proses (embedding, extracting), semakin besar file, semakin lama

waktu proses. Panjang kunci yang digunakan pada algoritma RC6 mempengaruhi

kecepatan proses enkripsi dan dekripsi, semakin besar panjang kunci, semakin

lama waktu proses [3].

Berdasarkan penelitian yang pernah dilakukan tentang steganografi dengan

metode LSB melalui media video, citra dan penelitian tentang metode LSB yang

dimodifikasi, maka dalam penelitian ini, akan dilakukan penelitian yang bertujuan

untuk merancang dan mengimplemetasikan aplikasi steganografi pada citra yang

menggunakan metode LSB termodifikasi dalam pemilihan byte penyisipan,

dimana dalam penelitian ini pengguna dapat memilih 2 (dua) byte bernilai

tertentu, yaitu genap dan ganjil, secara dinamis sebagai lokasi tempat

penyimpanan bit-bit dokumen yang akan disisipkan. Media yang dipakai sebagai

cover image dalam penelitian yaitu image dengan format PNG. Penelitian yang

dilakukan akan melihat apakah terjadi perubahan signifikan terhadap kualitas dan

besar ukuran data pada cover image setelah melalui proses embedding dan

extracting data, dan melihat apakah terjadi perubahan atau kerusakan pada data

yang telah diekstrak. Sistem yang dibangun diharapkan dapat membantu para

pengguna untuk menjaga kerahasiaan data pesan, dengan cara disisipkan dalam

file image.

Steganografi adalah ilmu 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)” [1]. Steganografi yang dibahas adalah

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

data dapat juga dilakukan pada media berupa suara digital, teks, ataupun video.

Penyembunyian data rahasia ke dalam image akan mengubah kualitas image

tersebut. Kriteria yang harus diperhatikan dalam penyembunyian data adalah: 1)

Mutu citra penampung tidak jauh berubah. Setelah penambahan data rahasia, citra

hasil steganografi masih terlihat dengan baik. Pengamat tidak mengetahui kalau di

dalam citra tersebut terdapat data rahasia. Data yang disembunyikan harus tahan

terhadap manipulasi yang dilakukan pada citra penampung. Bila pada citra

dilakukan operasi pengolahan citra, maka data yang disembunyikan tidak rusak;

2) Data yang disembunyikan harus dapat diungkapkan kembali (recovery). Dalam

penyembunyian pesan, steganografi menggunakan dua properti yaitu pesan

rahasia dan media penampung. Ada beberapa tipe media yang dapat digunakan

untuk menyisipkan pesan rahasia. Tipe media ini dapat berfungsi sebagai media

pembawa pesan rahasia, yang disebut dengan host message. Terdapat beberapa

Page 12: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

3

media yang dapat digunakan sebagai media steganografi, media penampung

tersebut dapat berupa text, image, audio, atau video [4].

Cara untuk mengaplikasikan steganografi pada file image terdiri dari

beberapa cara yang lazim digunakan dan prinsip kerja atau algoritma yang

digunakan sama seperti pada metode steganografi pada data audio. Berikut adalah

beberapa teknik yang digunakan : 1) Least Significant Bit Insertion (LSB) adalah

metode yang digunakan untuk menyembunyikan pesan pada media digital tersebut

berbeda-beda. Contohnya, pada berkas audio, pesan dapat disembunyikan dengan

menggunakan cara menyisipkannya pada bit rendah atau bit yang paling kanan

(LSB) pada data piksel yang menyusun file tersebut; 2) Redundant Pattern

Encryption adalah menggambar pesan kecil pada kebanyakan image. Keuntungan

dari metode ini adalah dapat bertahan dari cropping (kegagalan). Kerugiannya

yaitu tidak dapat menggambar pesan yang lebih besar; dan 3) Spread Spectrum

steganografi terpencar-pencar sebagai pesan yang diacak (encrypted) melalui

image (tidak seperti dalam LSB). Untuk membaca suatu pesan, penerima

memerlukan algoritma yaitu crypto-key dan stego-key. Metode ini juga masih

mudah diserang yaitu penghancuran atau pengrusakan dari kompresi dan proses

image (gambar) [4].

Cara paling mudah untuk menyembunyikan pesan adalah dengan

memanfaatkan Least Significant Bit (LSB). Jika digunakan image 24 bitcolor

sebagai cover, sebuah bit dari masing-masing komponen Red, Green, dan Blue,

dapat digunakan, sehingga tiga bit dapat disimpan pada setiap piksel. Sebuah

image 800 x 600 piksel dapat digunakan untuk menyembunyikan 1.440.000 bit

(180.000 bytes) data rahasia. Misalkan terdapat piksel-piksel dari image 24 bit

color :

00111000 01010110 11000111 00110011

Jika ada pesan rahasia yang memiliki nilai 1101, maka dihasilkan:

00111001 01010111 11000110 00110011

dapat dilihat bahwa bit-bit pesan rahasia mengubah bit-bit terakhir citra gambar.

Perubahan pada LSB ini akan terlalu kecil untuk terdeteksi oleh mata manusia

sehingga pesan dapat disembunyikan secara efektif. Akan lebih baik jika

digunakan grayscale image karena perubahan warnanya akan lebih sulit dideteksi

oleh mata manusia. Proses ekstraksi pesan dapat dengan mudah dilakukan, yaitu

dengan mengekstrak LSB dari masing-masing piksel pada stego secara berurutan

dan menuliskannya ke output file yang akan berisi pesan tersebut. Kekurangan

dari metode modifikasi LSB ini adalah bahwa metode ini membutuhkan "tempat

penyimpanan" yang relatif besar. Kekurangan lain adalah bahwa stego yang

dihasilkan tidak dapat dikompres dengan format lossy compression [4].

3. Metode dan Perancangan Sistem

Penelitian yang dilakukan, diselesaikan melalui tahapan penelitian yang

terbagi dalam empat tahapan, yaitu: (1) Identifikasi masalah, (2) Perancangan

sistem, (3) Implementasi sistem, (4) Pengujian sistem dan analisis hasil pengujian.

Page 13: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

4

Gambar 1 Tahapan Penelitian [5]

Tahapan penelitian pada Gambar 1, dapat dijelaskan sebagai berikut. Tahap

pertama: identikasi masalah, yaitu mengidentifikasi masalah-masalah yang akan

dibahas serta mendapatkan data dan literatur yang terkait dengan proses

embedding dan extracting terhadap data teks, dan dokumen pada image .PNG,

menggunakan Metode Least Significant Bit (LSB) termodifikasi dalam pemilihan

byte yang digunakan untuk penyisipan (tidak terpaku pada byte tertentu); Tahap

kedua: perancangan sistem yang meliputi perancangan proses embedding dan

extracting 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

aplikasi/program dapat menyembunyikan pesan rahasia dan dapat melindungi

keamanan data yang disisipkan pada citra dengan menggunakan metode Least

Significant Bit (LSB) yang dimodifikasi dalam pemilihan byte penyisipan (tidak

terpaku pada byte tertentu); Tahap keempat: pengujian sistem dan analisis hasil

pengujian, yaitu dilakukan pengujian terhadap pengaruh ukuran data, waktu

proses, dan kualitas image, serta melihat hasil yang diberikan apakah sudah sesuai

dengan konsep steganografi.

Penelitian yang dilakukan membahas tentang lokasi penyisipan pada cover

image yaitu dengan memilih byte-byte tertentu, dijelaskan sebagai berikut.

Pemilihan byte sebagai lokasi penyisipan dilakukan oleh user, dengan ketentuan

byte yang dipilih merupakan pasangan byte yang memiliki 7 (tujuh) bit awal sama,

dan 1 (satu) bit terakhir (LSB) berbeda, dijelaskan pada Contoh 1:

Contoh 1: Byte MSB LSB

90 0 1 0 1 1 0 1 0

91 0 1 0 1 1 0 1 1

7 bit pertama sama berbeda

Aturan ini digunakan karena proses penyisipan dan ekstraksi terjadi pada LSB,

dan kemungkinan bit yang disisipkan adalah antara bit bernilai 0 atau 1. Sehingga

jika pada Contoh 1, byte bernilai 90, nilai LSB diganti (disisipi) dengan bit 0 akan

menjadi 90, dan jika diganti 1, akan menjadi 91. Demikian pula byte bernilai 91,

jika nilai LSB diganti 0 akan menjadi 90, jika diganti 1 menjadi 91.

Identifikasi Masalah

Implementasi Sistem

Pengujian Sistem dan Analisis Hasil Pengujian

Perancangan Sistem meliputi Perancangan Proses

Embedding, dan Proses Extracting

Page 14: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

5

Contoh 2:

90 01011010 disisip 0 01011010 90

90 01011010 disisip 1 01011011 91

91 01011011 disisip 0 01011010 90

91 01011011 disisip 1 01011011 91

Kesimpulannya adalah pasangan lokasi yang dapat disisipkan harus memiliki 7

(tujuh) bit pertama yang sama. 1 (satu) bit terakhir (LSB) digunakan untuk

menyisipkan. 1 (satu) bit terakhir tersebut mengakibatkan nilai lokasi tersebut

adalah genap jika LSB bernilai 0, dan ganjil jika LSB bernilai 1.

Penelitian yang dilakukan menghasilkan aplikasi steganografi, yang terdiri

dari dua proses utama, yaitu proses embedding dan proses extracting. Proses

embedding data dalam sistem steganografi, dijelaskan sebagai berikut. File yang

akan disisipkan akan dipilih terlebih dahulu, kemudian dihitung besar lokasi yang

tersedia pada file. File PNG yang digunakan sebagai media penyisipan harus

memiliki jumlah byte yang cukup untuk menampung file pesan. Proses

berikutnya adalah proses penyisipan bit file pesan di LSB byte file media. Proses

ini bersifat dinamis karena penyisipan dapat dilakukan pada byte file media yang

dapat dipilih oleh user, dan tidak terpaku pada byte bernilai 254 atau 255 saja.

Lokasi penyisipan data pesan dilakukan pada 2 (dua) byte bernilai tertentu, genap

dan ganjil. Selanjutnya pembacaan diteruskan lagi ke byte berikutnya. Proses

tersebut diulangi sampai semua bit file pesan selesai disisipkan. Setelah proses

selesai, file image disimpan sebagai file baru. Jika ada kesalahan pada proses

embedding maka proses akan berhenti dan menyimpan file baru. Jika besar lokasi

penyimpanan tidak dapat menampung file yang disisipkan maka tidak terjadi

proses embedding. Proses embedding dijelaskan pada Contoh 3.

Contoh 3: Proses Embedding Data

Berdasarkan Contoh 2, diketahui bahwa lokasi penyisipan yang dipilih user

adalah 90 dan 91. File gambar memiliki susunan warna sebagai berikut.

90 91 10 20 250 90

160 100 91 91 91 90

0 255 90 89 90 91

File yang disisipkan berisi karakter “a”

a = nilai ASCII 97 0110 0001 8 (delapan) bit yang harus disisipkan.

Maka diperlukan 8 lokasi bernilai bernilai 90 atau 91.

Hasil penyisipan adalah sebagai berikut:

Page 15: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

6

byte

warna 90 91 10 20 250 90

nilai

binary 01011010 01011011 00001010 00010100 11111010 01011010

bit

pesan 0 1

1

hasil 01011010 01011011 tetap tetap tetap 01011011

byte

warna 160 100 91 91 91 90

nilai

binary 10100000 01100100 01011011 01011011 01011011 01011010

bit

pesan 0 0 0 0

hasil tetap tetap 01011010 01011010 01011010 01011010

byte

warna 0 255 90 89 90 91

nilai

binary 00000000 11111111 01011010 01011001 01011010 01011011

bit

pesan 1

hasil tetap tetap 01011011 tetap tetap tetap

Hasil akhir penyisipan: 90 91 10 20 250 91

160 100 90 90 90 90

0 255 91 89 90 91

Proses embedding hanya dapat dilakukan jika lokasi yang dipilih oleh user

memiliki jumlah yang sama atau lebih besar dari panjang bit pesan. Jika user

memilih lokasi yang tidak mencukupi, maka sistem akan memberikan pesan

kesalahan. Hal ini dikarenakan tiap 1 (satu) bit pesan memerlukan 1 byte lokasi

penyisipan. Pada Contoh 3, untuk menyisipkan 1 (satu) karakter (1 karakter

ASCII = 1 byte, 1 byte = 8 bit), maka diperlukan 8 lokasi (warna) yang memiliki

nilai 90 atau 91. Proses embedding dalam bentuk flowchart, ditunjukkan pada

Gambar 2.

Page 16: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

7

Gambar 2 Proses Embedding

Proses extracting data merupakan proses untuk membaca pesan yang

disisipkan di dalam media penampung (cover). Proses extracting dalam sistem

yang dibangun dijelaskan sebagai berikut. Pilih file yang berisi pesan rahasia yang

telah disisipkan. Setelah itu, pilih lokasi byte yang akan diambil LSB-nya, jika

byte sesuai maka proses extracting akan dilakukan. Hasil dari variabel penampung

akan ditampilkan oleh program. Proses extracting dalam bentuk flowchart,

ditunjukkan pada Gambar 3.

Page 17: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

8

Gambar 3 Proses Extracting

Contoh 4: Proses Ekstraksi

Berdasarkan Contoh 3, diketahui lokasi penyisipan yang dipilih user adalah 90

dan 91. File gambar yang telah disisipi memiliki susunan warna sebagai berikut :

90 91 10 20 250 91

160 100 90 90 90 90

0 255 91 89 90 91

Page 18: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

9

Berdasarkan informasi pesan yang disisipkan diketahui bahwa panjang pesan

adalah 8, artinya ada 8 lokasi yang bernilai 90 dan 91 yang menyimpan bit pesan.

byte

warna 90 91 10 20 250 90

nilai

binary 01011010 01011011 00001010 00010100 11111010 01011010

bit

pesan 0 1

1

byte

warna 160 100 91 91 91 90

nilai

binary 10100000 01100100 01011011 01011011 01011011 01011010

bit

pesan 0 0 0 0

byte

warna 0 255 90 89 90 91

nilai

binary 00000000 11111111 01011010 01011001 01011010 01011011

bit

pesan 1

Hasil akhir ekstraksi:

0110 0001 97 merupakan kode ASCII untuk karakter “a”.

4. Hasil dan Pembahasan

Gambar 4 menunjukkan antarmuka dari proses embedding. Untuk

menjalankan proses embedding, user memilih cover image, dengan memilih

tombol select cover image. Proses selanjutnya yaitu, memilih file teks atau file

dokumen yang akan disimpan ke dalam file image pada menu select message file,

selanjutnya memilih menu select embedding location untuk memilih nilai

penyimpanan bit-bit dokumen pada byte bernilai tertentu sesuai keinginan dari

user. Proses selanjutnya adalah memilih tombol embed. Setelah melakukan proses

embed, maka user harus memilih tombol save embedded untuk menyimpan file

Cover yang sudah disisipkan file atau pesan rahasia tersebut.

Page 19: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

10

Gambar 4 Antarmuka Proses Embedding

Gambar 5 menunjukkan antarmuka dari proses extracting, dimana user

dapat memilih cover image yang di dalamnya terdapat pesan rahasia yang akan

diekstrak. Proses selanjutnya user harus memilih menu select embedding

location untuk memilih nilai penyimpanan bit-bit dokumen pada byte yang

bernilai sama seperti ketika proses extracting, jika user memilih nilai

penyimpanan bit-bit dokumen pada byte yang bernilai sama sesuai ketika proses

embedding, maka pesan rahasia yang telah disisipkan akan ditemukan, sehingga

user dapat melihat atau mengambil pesan rahasia yang telah disisipkan, jika

user memilih nilai penyimpanan bit-bit dokumen pada byte yang bernilai tidak

sesuai ketika proses embedding, maka pesan rahasia yang telah disisipkan tidak

akan ditemukan, sehingga user tidak dapat melihat atau mengambil pesan

rahasia tersebut.

Gambar 5 Antarmuka Proses Extracting

Gambar 6 menunjukkan antarmuka dari proses compare, dimana user dapat

memilih cover image yang dipakai pada saat sebelum dan sesudah disisipkan

pesan atau pada proses embedding dan extracting, untuk melihat perbedaan pixel

dari cover image tersebut.

Page 20: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

11

Gambar 6 Antarmuka Proses Compare

Kode Program 1 Perintah Untuk Proses Embedding 1. string binary = Convert.ToString(warna, 2).PadLeft(8, '0');

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

3. arrayBit[7] = p;

4. binary = new string(arrayBit);

Kode Program 1 merupakan perintah yang digunakan untuk menyisipkan bit

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

mengubah byte ke dalam bentuk binary. Sehingga untuk byte dengan nilai 5 akan

menjadi “00000101”. Kemudian perintah pada baris 2, string binary diubah dalam

bentuk array karakter. Perintah pada baris 3, array indeks ke 7 (bit indeks paling

kurang signifikan/LSB) diganti dengan bit pesan pada variabel p. Perintah pada

baris ke 4, array yang telah “disisipi” ini dikembalikan dalam bentuk string

binary, untuk kemudian nantinya disimpan kembali dalam cover.

Kode Program 2 Perintah Untuk Proses Extracting 1. string binary = Convert.ToString(b, 2);

2. return binary[7];

Kode Program 2 menjelaskan proses ekstraksi nilai LBS dari byte warna.

Perintah pada baris 1, byte warna disimpan pada variabel b. Variable b diubah

dalam bentuk string binary. Kemudian perintah pada baris 2 dibaca nilai paling

akhir (LSB), yaitu pada indeks ke 7.

Kode Program 3 Perintah Untuk Proses Compare 1. Color[] a = EIS.ELSB.ReadColor(banding1);

2. Color[] b = EIS.ELSB.ReadColor(banding2);

3. int akhir = (a.Length > b.Length ? b.Length : a.Length);

4. int total = Math.Abs(a.Length - b.Length);

5. for (int i = 0; i < akhir; i++)

6. {

7. if (!a[i].Equals(b[i])) { total++; }

8. }

9. return total;

Kode Program 3 menjelaskan tahap proses compare. Perintah pada baris 1

dan 2 merupakan perintah yang digunakan untuk membaca warna yang terdapat

pada masing-masing image. Kemudian perintah pada baris 3 menghitung selisih

jumlah warna antara warna a dan b. Nilai selisih dibuat selalu positif (absolute)

pada perintah baris 4. Perintah pada baris 5-7 dilakukan perbandingan warna pada

Page 21: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

12

indeks yang sama dari kedua gambar. Jika terjadi perbedaan nilai, maka nilai total

akan ditambahkan 1. Nilai total ini mencatat jumlah perbedaan yang ada.

Sistem steganografi yang dibangun perlu diuji, untuk melihat apakah sudah

sesuai dengan konsep steganografi. Beberapa pengujian yang dilakukan dijelaskan

sebagai berikut. Tabel 1 Hasil Pengujian Proses Embedding dan Extracting

Dengan Panjang Pesan (byte) yang Berbeda

Gambar 7 Grafik Hasil Pengujian Pengaruh Panjang Pesan (Byte)

Terhadap Lama Waktu Proses Embbeding dan Extracting

Berdasarkan hasil pengujian pengaruh panjang pesan terhadap lama waktu

proses embedding dan extracting pada Tabel 1 dan grafik pada Gambar 7, dapat

disimpulkan bahwa panjang pesan (byte) mempengaruhi proses embedding dan

proses extracting. semakin besar panjang pesan (byte), semakin lama waktu

proses embedding dan proses extracting.

Tabel 2 Hasil Pengujian Proses Embedding dan Extracting dengan Dimensi File yang Berbeda

NO Cover Image Size Dimensions

Panjang

Pesan Embedding Extracting

(byte) (millisecond) (millisecond)

1 lena.png 785294 512x512 10 byte 745,04 444,03

2 lena.png 785294 512x513 20 byte 933,05 454,05

3 lena.png 785294 512x514 30 byte 1111,06 461,13

4 lena.png 785294 512x515 40 byte 1309,07 472,03

5 lena.png 785294 512x516 50 byte 1487,08 483,06

NO Cover Image Size Dimensions Panjang Pesan Embedding Extracting

(byte) (millisecond) (millisecond)

1 baboon.png 785294 64x64 10 byte 18 12

2 baboon.png 785294 128x128 10 byte 61 47

3 baboon.png 785294 256x256 10 byte 237,4 133

4 baboon.png 785294 512x515 10 byte 1689,12 1044,8

5 baboon.png 785294 1024x1024 10 byte 4037,23 2654,7

Page 22: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

13

Gambar 8 Grafik Hasil Ukuran Cover Image Terhadap

Lama Waktu Proses Embedding dan Extracting

Berdasarkan hasil pengujian pengaruh ukuran cover image terhadap lama

waktu proses embedding dan extracting pada Tabel 2 dan grafik pada Gambar 8,

dapat disimpulkan bahwa ukuran cover image mempengaruhi proses embedding

dan proses extracting. Semakin besar ukuran cover image, semakin lama proses

embedding dan proses extracting.

Tabel 3 Hasil Pengujian Proses Embedding dan Extracting

Dengan Lokasi Penyisipan yang Berbeda

Gambar 9 Grafik Hasil Pengaruh Lokasi Penyisipan Terhadap

Lama Waktu Proses Embedding dan Extracting

Berdasarkan hasil pengujian pengaruh lokasi penyisipan terhadap lama

waktu proses embedding dan extracting pada Tabel 3 dan grafik pada Gambar 9,

dapat disimpulkan bahwa lokasi penyisipan tidak mempengaruhi proses

embedding dan proses extracting.

NO Cover Image

Lokasi

Penyisipan Dimension

Panjang

Pesan Embedding Extracting

(byte)

(millisecond)

(millisecond)

1 vegetables.png 0 dan 1 512x512 10 788,05 442,5

2 vegetables.png 64 dan 65 512x512 10 775,04 453,3

3 vegetables.png 128 dan 129 512x512 10 795,05 478,2

4 vegetables.png 158 dan 159 512x512 10 777,04 479,9

5 vegetables.png 200 dan 201 512x512 10 776,04 494,1

Page 23: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

14

Tabel 4 Hasil Pengujian Integritas (Keutuhan) File Pesan Sebelum dan Sesudah Disisipkan

No

Nama

File Ukuran MD5 Sebelum Embed MD5 Sesudah Extract Kesimpulan

1 10byte.txt 10 byte e807f1fcf82d132f

9bb018ca6738a19f

e807f1fcf82d132f

9bb018ca6738a19f Utuh

2 20byte.txt 20 byte fd85e62d9beb4542

8771ec688418b271

fd85e62d9beb4542

8771ec688418b271 Utuh

3 10byte.txt 30 byte a46857f0ecc21f0a

06ea434b94d9cf1d

a46857f0ecc21f0a

06ea434b94d9cf1d Utuh

4 20byte.txt 40 byte f5bf3e984432ae6f

9f98840951e5cef3

f5bf3e984432ae6f

9f98840951e5cef3 Utuh

5 10byte.txt 50 byte fb46ea63c015ee69

0bd3f2e50a461296

fb46ea63c015ee69

0bd3f2e50a461296 Utuh

Berdasarkan hasil pengujian integritas (keutuhan) file pesan sebelum dan

sesudah disisipkan pada Tabel 4, dapat disimpulkan bahwa tidak terjadi perubahan

pesan. Pesan yang sebelum disisipkan, dengan pesan hasil ekstrak memiliki isi

yang sama (utuh).

Tabel 5 Hasil Pengujian Pengaruh Panjang Pesan Terhadap Banyaknya Pixel yang Berubah

Gambar 10 Hasil Pengaruh Panjang Pesan Terhadap Banyaknya Pixel yang Berubah

Berdasarkan hasil pengujian pengaruh panjang pesan terhadap banyaknya

pixel yang berubah pada Tabel 5 dan Gambar 10, dapat disimpulkan bahwa

panjang pesan (byte) mempengaruhi perbedaan pixel atau banyaknya pixel yang

berubah. Semakin besar panjang pesan (byte), semakin besar banyaknya pixel

yang berubah.

NO Cover Image Embedded Image Size Dimensions Panjang Pesan Perbedaan Pixel

(byte)

1 lena.png lena1.png 785294 512x512 10 byte 74

2 lena.png lena2.png 785294 512x513 20 byte 120

3 lena.png lena3.png 785294 512x514 30 byte 165

4 lena.png lena4.png 785294 512x515 40 byte 209

5 lena.png lena5.png 785294 512x516 50 byte 253

Page 24: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

15

Tabel 6 Hasil Pengujian Perbedaan Susunan Warna

Antara Gambar Asli Dengan Gambar Yang Telah Disisipkan

Gambar 11 Color Histogram Gambar Asli Cover

Image (lena.png)

Gambar 12 Color Histogram Gambar

Disisipi (lena1.png)

Gambar 13 Color Histogram Gambar Disisipi

(lena2.png)

Gambar 14 Color Histogram Gambar

Disisipi (lena3.png)

NO Cover Image Embedded Image Size Dimensions Panjang Pesan

(byte)

1 lena.png lena1.png 785294 512x512 10 byte

2 lena.png lena2.png 785294 512x513 20 byte

3 lena.png lena3.png 785294 512x514 30 byte

4 lena.png lena4.png 785294 512x515 40 byte

5 lena.png lena5.png 785294 512x516 50 byte

Page 25: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

16

Gambar 15 Color Histogram Gambar Disisipi

(lena4.png)

Gambar 16 Color Histogram Gambar

Disisipi (lena5.png)

Berdasarkan hasil pengujian perbedaan susunan warna antara gambar asli

dengan gambar yang telah disisipkan pada Tabel 6 dan grafik pada Gambar ke-11

sampai Gambar ke-16, dapat disimpulkan bahwa mean (rata-rata) nilai warna

sama, jadi perbedaan susunan warna antara gambar asli dengan gambar yang telah

disisipkan tidak ada.

Pengujian penyisipan beberapa file dalam satu cover image dilakukan

dengan tujuan untuk mengetahui apakah teknik LSB termodifikasi dalam

pemilihan lokasi penyisipan memungkinkan satu cover dapat menyimpan

beberapa file pesan sekaligus. Pengujian dilakukan dengan cara: 1) menyisipkan

file pesan pertama ke dalam cover; 2) menyimpan file cover yang telah disisipi; 3)

melakukan penyisipan dengan file cover yang telah disisipi untuk file pesan

selanjutnya. Hasil Pengujian dapat dilihat pada Tabel 7. File cover yang

digunakan adalah vegetables.png, dengan ukuran file 796474 byte, dimensi

512x512 (1.048.576 pixel).

Tabel 7 Hasil Pengujian Penyisipan Beberapa File Dalam Satu Cover

No Nama File Ukuran

Lokasi

Penyisipan MD5 Sebelum

Embed

MD5 Sesudah

Extract Kesimpulan

1 10byte.txt 10 byte 226 dan 227

e807f1fcf82d132f

9bb018ca6738a19f

e807f1fcf82d132f

9bb018ca6738a19f Utuh

2 flower.png 1181 byte 0 dan 1

9e8c0f69e740649a

3203e637c16fe0e5

9e8c0f69e740649a

3203e637c16fe0e5 Utuh

3 rose.gif 971 byte 38 dan 39

f827557b7b9347e6

64682d60134e565d

f827557b7b9347e6

64682d60134e565d Utuh

4 topsecret.ttf 170 byte 40 dan 41

7f6b1ec2317f81ec

f9c327998e1c8737

7f6b1ec2317f81ec

f9c327998e1c8737 Utuh

5 pesan.pdf 27466 byte 254 dan 255

4c97766552c85a6a

5d5e247c04c5049a

4c97766552c85a6a

5d5e247c04c5049a Utuh

Berdasarkan hasil pengujian pada Tabel 7, dapat disimpulkan bahwa

penyisipan dapat dilakukan beberapa kali pada file cover yang sama, dengan

lokasi penyisipan yang berbeda.

Berdasarkan semua pengujian yang telah dilakukan, diketahui bahwa proses

extracting (ekstrasi) lebih cepat daripada embedding. Hal ini dikarenakan pada

embedding terjadi proses membaca lokasi, menyisipkan, dan menyimpan sebagai

gambar baru, sedangkan pada proses extracting, proses yang terjadi adalah

Page 26: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

17

membaca lokasi penyisipan saja. Kecepatan proses embedding dan proses

extracting, dipengaruhi oleh besarnya ukuran file yang disisipkan. Semakin besar

ukuran file, semakin banyak pula bit yang harus disisipkan. Ukuran cover image

mempengaruhi proses embedding dan proses extracting, semakin besar ukuran

cover image, semakin lama proses embedding dan proses extracting. Besar kecil

jumlah byte lokasi penyisipan tidak mempengaruhi proses embedding dan proses

extracting. Integritas atau keutuhan file pesan yang sebelum disisipkan, dengan

pesan hasil ekstrak memiliki isi yang sama (utuh), tidak terjadi perubahan dengan

kata lain, file sebelum disisipkan dengan file hasil ekstrak adalah sama. Panjang

pesan (byte) mempengaruhi perbedaan pixel atau banyaknya pixel yang berubah,

semakin besar panjang pesan (byte), semakin besar pula banyaknya pixel yang

berubah. File cover tidak mengalami perubahan warna yang signifikan, sehingga

melalui uji perbandingan secara visual file cover sebelum dan sesudah penyisipan,

tidak berbeda. Penyisipan dapat dilakukan beberapa kali pada file cover yang

sama, dengan lokasi penyisipan yang berbeda. Hal ini menunjukkan bahwa

metode yang digunakan berhasil menyembunyikan file pesan dengan baik dalam

citra, dimana perubahan terhadap cover image tidak terlalu signifikan, sehingga

tidak menimbulkan kecurigaan terhadap file tersebut.

5. Simpulan

Berdasarkan hasil pembahasan dan pengujian yang telah dilakukan pada

pembuatan aplikasi steganografi pada citra, dapat disimpulkan bahwa sistem

steganografi yang dibangun menggunakan metode LSB termodifikasi dalam

pemilihan byte penyisipan, dapat melakukan penyisipan (embedding) dan

pengambilan (extracting) data, pada file cover berformat PNG. Ukuran file yang

disisipkan mempengaruhi kecepatan proses embedding dan extracting, semakin

besar file, semakin lama waktu proses. Besar kecil jumlah byte lokasi penyisipan

tidak mempengaruhi proses embedding dan proses extracting. Secara visual, cover

image tidak menunjukkan perbedaan yang mudah dikenali oleh mata manusia.

Aplikasi dapat menjaga keutuhan (integrity) file yang disisipkan. Beberapa file

pesan dapat disisipkan dalam satu file cover, namun pada lokasi byte penyisipan

yang berbeda. Saran yang dapat diberikan untuk penelitian lebih lanjut adalah

sebagai berikut: 1) Sistem memiliki fitur untuk mengijinkan pengguna dapat

memilih lebih dari dua byte untuk penyisipan dengan range nilai yang tidak hanya

berdekatan; 2) Sistem dapat memilih lokasi penyisipan secara otomatis

berdasarkan besar ukuran file yang akan disisipkan.

6. Daftar Pustaka

[1] Munir, Rinaldi, 2006, Kriptografi Steganografi dan Watermarking,

Bandung: Institut Teknologi Bandung.

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

Steganography by Modified LSB Algorithm and Strong Encryption Key with

Enhanced Security, Hyderabad : Department of Computer Science and

Engineering-JNTUH.

Page 27: Perancangan dan Implementasi Aplikasi Steganografi pada Citra … · 2017. 7. 18. · Penelitian lain yang pernah dilakukan berjudul “Aplikasi Steganografi pada Citra Menggunakan

18

[3] Solsolay, 2012, Aplikasi Steganografi pada Citra Menggunakan Metode

Least Significant Bit Termodifikasi dan RC6, Skripsi. Fakultas Teknologi

Informasi Universitas Kristen Satya Wacana.

[4] Arusbusman, Yusrian Roman, 2007, Image Steganografi, Jakarta:

Universitas Gunadarma.

[5] Hasibuan, Zainal, A., 2007, Metodologi Penelitian Pada Bidang Ilmu

Komputer Dan Teknologi Informasi : Konsep, Teknik, dan Aplikasi, Jakarta

: Ilmu Komputer Universitas Indonesia.