STEGANOGRAFI
SKRIPSI
WILDAN HIDAYAT
060823006
DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM
UNIVERSITAS SUMATERA UTARA
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat mencapai gelar Sarjana Sains
WILDAN HIDAYAT 060823006
PROGRAM STUDI SARJANA MATEMATIKA DEPARTEMEN MATEMATIKA
FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS SUMATERA UTARA
Judul : PERLINDUNGAN PESAN RAHASIA PADA
CITRA DIGITAL MENGGUNAKAN
METODE LEAST SIGNIFICANT BIT STEGANOGRAFI
Kategori : SKRIPSI
Nama : WILDAN HIDAYAT
Nomor Induk Mahasiswa : 060823006
Program Studi : SARJANA (S1) MATEMATIKA
Departemen : MATEMATIKA
Fakultas : MATEMATIKA DAN ILMU PENGETAHUAN
ALAM (FMIPA) UNIVERSITAS SUMATERA UTARA
Diluluskan di
Medan, 27 Januari 2010
Komisi Pembimbing :
Pembimbing 2 Pembimbing 1
Syahriol Sitorus, S. Si, M. IT Drs. Suyanto, M. Kom 19710310 199703 1 004 19590813 198601 1 002
Diketahui Oleh:
Departemen Matematika FMIPA USU Ketua,
PERNYATAAN
PERLINDUNGAN PESAN RAHASIA PADA CITRA DIGITAL MENGGUNAKAN METODE LEAST SIGNIFICANT BIT
STEGANOGRAFI
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, 27 Januari 2010
PENGHARGAAN
Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa Pemurah dan Maha penyayang, dengan limpah kurnia- Nya kertas kajian ini berhasil diselesaikan dalam waktu yang telah ditetapkan.
ABSTRAK
Jaringan komputer dan Internet telah mengalami perkembangan yang sangat pesat. Teknologi ini mampu menyambungkan hampir semua komputer yang ada di dunia sehingga bisa saling berkomunikasi dan bertukar informasi. Bentuk informasi yang dapat ditukar berupa data teks, citra digital, video, audio. Steganografi sebagai suatu seni penyembunyian pesan ke dalam pesan lainnya yang telah ada sejak sebelum masehi dan kini seiring dengan kemajuan teknologi jaringan serta perkembangan dari teknologi digital, steganografi banyak dimanfaatkan untuk mengirim pesan melalui jaringan Internet tanpa diketahui orang lain dengan menggunakan media digital berupa file citra digital.
SECRET MESSAGE PROTECTION IN DIGITAL IMAGE USING LEAST SIGNIFICANT BIT STEGANOGRAPHY
ABSTRACT
Computer Network and Internet have expand wide. This technology is able to joint most of all computer in world so it can communicate each other and changing over information. Information which can be converted such as text data, digital image, video, audio. Steganografi as an art in order to hidden message which is have been there since pre-christian and nowadays along with technological progress of network and also growth from digital technology, steganografi is used to send the message through Internet network using digital media such as digital image.
DAFTAR ISI
1.2 Perumusan Masalah 3
1.3 Pembatasan Masalah 3
1.4 Tujuan penelitian 3
1.5 Kontribusi Penelitian 4
1.6 Metode Penelitian 4
1.7 Tinjauan Pustaka 5
BAB 2 LANDASAN TEORI 6
2.3.1 Sejarah dan Defenisi Steganografi 13
2.4 Manfaat Steganografi 15
2.5 Metode Steganografi 16
2.5.1 Metode Least-Significant Bit 19
2.6 Kriteria Steganografi yang Baik 21
BAB 3 PERANCANGAN APLIKASI 22
3.1 Gambaran Umum Program 22
3.2 Perancangan Tampilan 24
3.2.1 Antar muka form menu utama 24
BAB 4 IMPLEMENTASI 40
4.1 Implementasi 40
4.2 Cara Kerja Program 43
4.2.1. Pemilihan Citra 43
4.2.2 Pemilihan Pesan Rahasia 44
4.2.3 Penulisan Pesan Rahasia 46
4.2.4 Pembacaan Pesan Rahasia 48
4.3 Uji Coba Program 51
4.3.1 Proses scaling 51
4.3.2 Proses Penambahan Noise 55
4.3.3 Proses Perputaran Citra 57
4.3.4 Proses Pemotongan Citra 58
BAB 5 KESIMPULAN DAN SARAN 61
5.1 Kesimpulan 61
5.2 Saran 61
Daftar Pustaka 62
LAMPIRAN A [LISTING PROGRAM] 63
DAFTAR GAMBAR
Halaman
Gambar 2.1 Citra biner 7
Gambar 2.2 Representasi citra biner 7
Gambar 2.3 Citra grayscale (abu-abu) 8
Gambar 2.4 Citra Berwarna 9
Gambar 2.5 Warna bitmap 11
Gambar 2.6 Proses Steganography 16
Gambar 2.7 Proses Cryptography 17
Gambar 2.8 SistemSteganografi 17
Gambar 2.9 Versi grafis dari sistem Steganografi 17
Gambar 3.1 Metode Steganografi 23
Gambar 3.2 Rancangan tampilan form utama 24
Gambar 3.3 Rancangan tampilan form encode 25
Gambar 3.4 Rancangan tampilan form decode 26
Gambar 3.5 Rancangan tampilan form tentang saya 26
Gambar 3.6 Rancangan tampilan form bantuan 27
Gambar 3.7 Flowchart program 30
Gambar 3.8 Lebaran.bmp 31
Gambar 3.9 Citra dalam bentuk biner 32
Gambar 3.10 Proses Penyimpanan Pesan 37
Gambar 3.11 Citra Sebelum disisipi Pesan 37
Gambar 3.11 Citra Setelah disisipi Pesan 38
Gambar 3.12 Arsitektur Rancangan Perlidungan Pesan 38
Gambar 4.1 Menu utama 40
Gambar 4.2 Pemilihan Citra 43
Gambar 4.3 Citra yang telah dipilih 44
Gambar 4.4 Pemilihan Pesan Rahasia 45
Gambar 4.5 Citra dan Pesan Rahasia sudah dipilih 46 Gambar 4.6 Proses Penggabungan Pesan rahasia dengan citra 47 Gambar 4.7 Citra yang telah disisipi pesan rahasia 48
Gambar 4.8 Proses pembacaan pesan rahasia 49
Gambar 4.9 Pesan Rahasia yang berhasil diambil. 50 Gambar 4.10 Pesan Rahasia yang berhasil diambil. 51
Gambar 4.11 Citra yang telah diperbesar2x. 52
Gambar 4.12 Citra yang telah diperkecil2x. 52
Gambar 4.13 Proses Pembacaan Pesan Rahasia. 53
Gambar 4.14 Pesan Rahasia tidak dapat dibuka . 54
Gambar 4.15 Proses Pembacaan Pesan Rahasia. 54
Gambar 4.16 Pesan Rahasia tidak dapat dibuka. 55 Gambar 4.17 Pesan Rahasia tidak dapat dibuka. 56
Gambar 4.18 Proses Pembacaan Pesan Rahasia. 57
Gambar 4.19 Pesan Rahasia tidak dapat dibuka. 58
Gambar 4.20 Proses Pembacaan Pesan Rahasia. 58
DAFTAR TABEL
Halaman
Tabel 3.1 Bagan Alir (Flowchart) 28
Tabel 3.2 Tabel ASCII 31
Tabel 3.3 Tabel Kode Biner 31
Tabel 3.4 Tabel Kode Biner 33
Tabel 3.5 Tabel Lokasi Penyimpanan pesan 36
ABSTRAK
Jaringan komputer dan Internet telah mengalami perkembangan yang sangat pesat. Teknologi ini mampu menyambungkan hampir semua komputer yang ada di dunia sehingga bisa saling berkomunikasi dan bertukar informasi. Bentuk informasi yang dapat ditukar berupa data teks, citra digital, video, audio. Steganografi sebagai suatu seni penyembunyian pesan ke dalam pesan lainnya yang telah ada sejak sebelum masehi dan kini seiring dengan kemajuan teknologi jaringan serta perkembangan dari teknologi digital, steganografi banyak dimanfaatkan untuk mengirim pesan melalui jaringan Internet tanpa diketahui orang lain dengan menggunakan media digital berupa file citra digital.
SECRET MESSAGE PROTECTION IN DIGITAL IMAGE USING LEAST SIGNIFICANT BIT STEGANOGRAPHY
ABSTRACT
Computer Network and Internet have expand wide. This technology is able to joint most of all computer in world so it can communicate each other and changing over information. Information which can be converted such as text data, digital image, video, audio. Steganografi as an art in order to hidden message which is have been there since pre-christian and nowadays along with technological progress of network and also growth from digital technology, steganografi is used to send the message through Internet network using digital media such as digital image.
BAB 1
PENDAHULUAN
1.1 Latar Belakang
Internet sudah berkembang menjadi salah satu media komunikasi data yang sangat
populer. Kemudahan dalam penggunaan dan fasilitas yang lengkap merupakan
keunggulan yang dimiliki oleh internet, dan bukan menjadi satu rahasia umum lagi di
kalangan masyarakat pengguna internet pada saat sekarang ini. Akan tetapi, seiring
dengan berkembangnya media internet dan aplikasi yang menggunakan internet
semakin bertambah pula kejahatan dalam sistem informasi. Dengan berbagai teknik
pengambilan informasi secara ilegal yang berkembang, banyak yang mencoba untuk
mengakses informasi yang bukan haknya. Untuk itu, sejalan dengan berkembangnya
media internet yang sangat cepat ini harus juga diikuti dengan perkembangan
pengamanan dalam sistem informasi yang berada dalam media internet tersebut.
Berbagai macam teknik yang digunakan untuk melindungi informasi yang
dirahasiakan dari orang yang tidak berhak telah banyak dilakukan dalam upaya
mengamankan suatu data penting dengan menggunakan sistem kriptografi yang
melakukan enkripsi sebelum data penting tersebut ditransmisikan. Tindakan
pengamanan menggunakan cara tersebut ternyata dianggap belum cukup dalam
mengamankan suatu data karena adanya peningkatan kemampuan komputasi.
Berbeda dengan teknik kriptografi, steganografi menyembunyikan pesan rahasia agar
bagi orang awam tidak menyadari keberadaan dari pesan yang disembunyikan.
Teknik ini sering digunakan untuk menghindari kecurigaan orang dan menghindari
keinginan orang untuk mengetahui isi pesan rahasia tersebut. Caranya dengan
menyembunyikan informasi rahasia di dalam suatu wadah penampung informasi
tidak dapat dilihat. Wadah penampung informasi tersebut dapat berbentuk berbagai
jenis file multimedia digital seperti teks, citra, audio, video. Pada Skripsi ini
difokuskan pada wadah penampung berupa citra digital. Penggunaan wadah
penampung berupa citra digital karena adanya batasan kepekaan manusia dalam hal
sistem visualisasi. Hasil keluaran dari steganografi ini memiliki bentuk persepsi yang
sama dengan yang aslinya, tentunya persepsi disini sebatas oleh kemampuan indera
manusia, tetapi tidak oleh komputer atau pengolah digital lainnya. Dengan
berkembangnya dunia multimedia, maka steganografi menggunakan file-file
multimedia ini sebagai kedok untuk menyembunyikan pesan. Lalu lintas file-file
multimedia di internet sudah lumrah sehingga akan mengurangi kecurigaan akan
adanya pesan rahasia. Teknik steganografi yang akan digunakan adalah menggunakan
citra digital sebagai wadah penampung dari pesan yang akan disembunyikan.
Saat ini di dalam media internet dapat kita bayangkan lautan informasi yang
dapat kita akses. Sebagian besar ada yang telah dilindungi oleh suatu teknik
pengamanan informasi yang umum digunakan, salah satunya teknik pengamanan
menggunakan kriptografi yang dimana masih kurang cukup mengamankan informasi
yang berjalan di lalu lintas internet dikarenakan masih terus berkembangnya teknik
untuk mengakses informasi oleh orang yang tidak berhak.
Berdasarkan pada asumsi bahwa keamanan data adalah tujuan dari teknologi
dalam hal ini Informasi. Maka dalam Skripsi ini, steganografi merupakan solusi dari
permasalahan yang telah disebutkan diatas. Dikarenakan dengan penggunaan teknik
1.2 Perumusan Masalah
Dari uraian latar belakang diatas, maka dapat dirumuskan masalah – masalah yang
timbul diantaranya :
1. Bagaimana cara mempertahankan data rahasia dari serangan – serangan atau
usaha secara paksa untuk membukanya.
2. Bagaimana cara menyembunyikan data sebaik mungkin dengan menggunakan
metode tertentu.
1.3 Pembatasan Masalah
Batasan masalah dalam Skripsi ini meliputi :
a. Format file citra digital yang digunakan sebagai wadah atau penampung pesan
rahasia adalah *.bmp
b. Format file citra digital yang dihasilkan dari program ini adalah *.bmp.
c. Teknik Steganography yang digunakan hanya dapat menyimpan Pesan rahasia
berupa teks, dan citra (*.bmp).
d. Citra yang digunakan adalah citra 24 bit.
1.4 Tujuan Penelitian
Tujuan yang hendak dicapai dalam Skripsi ini adalah :
a. Memberikan informasi bagaimana penerapan Steganography di dalam citra
digital.
b. Membuat aplikasi penyembunyian pesan rahasia ke dalam citra digital.
c. Menyembunyikan pesan rahasia agar tidak jatuh ke tangan orang yang tidak
1.5 Kontribusi Penelitian
Penelitian ini bermanfaat bagi para pengguna internet agar keamanan data dalam
berkirim pesan rahasia dapat lebih terjamin.
1.6 Metode Penelitian
Penelitian ini dilakukan dengan langkah-langkah sebagi berikut:
a. Melakukan studi literatur mengenai Least Significant Bit Image
Steganography baik pada beberapa buku, makalah, maupun artikel-artikel
yang ada pada situs-situs internet yang berhubungan dengan Least Significant
Bit Image Steganography.
b. Menganalisa proses enkripsi dan dekripsi pada Least Significant Bit Image
Steganography.
c. Melakukan perancangan dan menerapkan Least Significant Bit Image
1.7 Tinjauan Pustaka
Dalam tulisan ini, penulis memanfaatkan buku-buku yang dapat dipergunakan untuk
menjelaskan teori-teori pemecahan masalah atau dasar pemikiran untuk menjelaskan
masalah yang dibahas.
(G.W. Awcock, 1996) dalam bukunya “Applied Image Processing”
membahas tentang pengolahan citra.
(Hendri pandia, 2002) dalam bukunya “Visual Basic 6.0 Tingkat Lanjut”
membahas penggunaan visual basic sebagai salah satu bahasa pemrograman.
(Jonathan Cummins, 2004) dalam jurnalnya “Steganography And Digital
Watermarking” membahas proses pembentukan watermark dan penerapan
steganografi.
(Marvin Chandra Wijaya,2007) dalam bukunya “Pengolahan citra digital
menggunakan matlab” membahas proses pengolahan citra digital, model citra digital
serta operasi terhadap citra digital.
(Rian Rianto Sigit ST. A. Basuki. N. Ramadijanti. Dan D. Pramadihanto,
2005) dalam bukunya “step by step pengolahan citra digital” membahas tentang
teori, langkah-langkah pemrograman dan latihan-latihan dalam melakukan
pengolahan citra digital.
(Rinaldi Munir, 2005) dalam bukunya “pengolahan citra digital” membahas
mengenai kualitas citra serta pengolahannya.
(Wiliam K. Pratt,1991) dalam bukunya “Digital Image Processing Second
Edition” membahas tentang pengolahan citra digital membahas penerapan
BAB 2
LANDASAN TEORI
2.1 Teori Dasar Citra Digital
Citra digital adalah gambar dua dimensi yang dapat ditampilkan pada layar
monitor komputer sebagai himpunan berhingga (diskrit) nilai digital yang disebut
pixel (picture elements). Pixel adalah elemen citra yang memiliki nilai yang
menunjukkan intensitas warna.
Berdasarkan cara penyimpanan atau pembentukannya, citra digital dapat
dibagi menjadi dua jenis. Jenis pertama adalah citra digital yang dibentuk oleh
kumpulan pixel dalam array dua dimensi. Citra jenis ini disebut citra bitmap
(bitmap image) atau citra raster (raster image). Jenis citra yang kedua adalah citra
yang dibentuk oleh fungsi-fungsi geometri dan matematika. Jenis citra ini disebut
grafik vektor (vector graphics). Dalam pembahasan skripsi ini, yang dimaksud
citra digital adalah citra bitmap.
Citra digital (diskrit) dihasilkan dari citra analog (kontinu) melalui
digitalisasi Digitalisasi citra analog terdiri atas penerokan (sampling) dan
kuantisasi (quantization) Penerokan adalah pembagian citra ke dalam
elemen-elemen diskrit (pixel), sedangkan kuantisasi adalah pemberian nilai intensitas
warna pada setiap pixel dengan nilai yang berupa bilangan bulat (G.W. Awcock,
1996).
Banyaknya nilai yang dapat digunakan dalam kuantisasi citra bergantung
merepresentasikan intensitas warna pixel. Kedalaman pixel sering disebut juga
kedalaman warna. Citra digital yang memiliki kedalaman pixel n bit disebut juga
citra n-bit.
Berdasarkan warna-warna penyusunnya, citra digital dapat dibagi menjadi
tiga macam (Marvin Chandra Wijaya,2007) yaitu:
a. Citra biner, yaitu citra yang hanya terdiri atas dua warna, yaitu hitam dan
putih. Oleh karena itu, setiap pixel pada citra biner cukup direpresentasikan
dengan 1 bit.
Gambar 2.1 citra biner
Gambar 2.2 representasi citra biner
Meskipun saat ini citra berwarna lebih disukai karena memberi
kesan yang lebih kaya dari citra biner, namun tidak membuat citra biner
mati. Pada beberapa aplikasi citra biner masih tetap di butuhkan, misalkan
citra logo instansi ( yang hanya terdiri dari warna hitam dan putih), citra
pemindaian dokumen teks, dan sebagainya. Seperti yang sudah disebutkan
diatas, citra biner hanya mempunyai dua nilai derajat keabuan : hitam dan
putih. Pixel – pixel objek bernilai 1 dan pixel – pixel latar belakang bernilai
0. pada waktu menampilkan gambar, adalah putih dan 1 adalah hitam. Jadi
pada citra biner, latar belakang berwarna putih sedangkan objek berwarna
hitam seperti tampak pada gambar 2.1 diatas. Meskipun komputer saat ini
dapat memproses citra hitam-putih (grayscale) maupun citra berwarna,
namun citra biner masih tetap di pertahankan keberadaannya.
Alasan penggunaan citra biner adalah karena citra biner memiliki
sejumlah keuntungan sebagai berikut:
a. Kebutuhan memori kecil karena nilai derajat keabuan hanya
membutuhkan representasi 1 bit.
b. Waktu pemrosesan lebih cepat di bandingkan dengan citra
hitam-putih ataupun warna.
b. Citra grayscale, yaitu citra yang nilai pixel-nya merepresentasikan derajat
keabuan atau intensitas warna putih. Nilai intensitas paling rendah
merepresentasikan warna hitam dan nilai intensitas paling tinggi
merepresentasikan warna putih. Pada umumnya citra grayscale memiliki
kedalaman pixel 8 bit (256 derajat keabuan), tetapi ada juga citra grayscale
yang kedalaman pixel-nya bukan 8 bit, misalnya 16 bit untuk penggunaan
yang memerlukan ketelitian tinggi.
Citra grayscale merupakan citra satu kanal, dimana citra f(x,y)
merupakan fungsi tingkat keabuan dari hitam keputih, x menyatakan
variable kolom atau posisi pixel di garis jelajah dan y menyatakan variable
kolom atau posisi pixel di garis jelajah. Intensitas f dari gambar hitam putih
pada titik (x,y) disebut derajat keabuan (grey level), yang dalam hal ini
derajat keabuannya bergerak dari hitam keputih. Derajat keabuan memiliki
rentang nilai dari Imin sampai Imax, atau Imin < f < Imax, selang (Imin,
Imax) disebut skala keabuan.
Biasanya selang (Imin, Imax) sering digeser untuk alasan-alasan
praktis menjadi selang [0,L], yang dalam hal ini nilai intensitas 0
meyatakan hitam, nilai intensitas L meyatakan putih, sedangkan nilai
intensitas antara 0 sampai L bergeser dari hitam ke putih. Sebagai contoh
citra grayscale dengan 256 level artinya mempunyai skala abu dari 0
sampai 255 atau [0,255], yang dalam hal ini intensitas 0 menyatakan hitam,
intensitas 255 menyataka putih, dan nilai antara 0 sampai 255 menyatakan
warna keabuan yang terletak antara hitam dan putih.
c. Citra berwarna, yaitu citra yang nilai pixel-nya merepresentasikan warna
tertentu Banyaknya warna yang mungkin digunakan bergantung kepada
kedalaman pixel citra yang bersangkutan. Citra berwarna direpresentasikan
dalam beberapa kanal (channel) yang menyatakan komponen-komponen
warna penyusunnya. Banyaknya kanal yang digunakan bergantung pada
model warna yang digunakan pada citra tersebut.
Intensitas suatu pada titik pada citra berwarna merupakan
kombinasi dari tiga intensitas : derajat keabuan merah (fmerah(x,y)), hijau
fhijau(x,y) dan biru (fbiru(x,y)). Persepsi visual citra berwarna umumnya
lebih kaya di bandingkan dengan citra hitam putih. Citra berwarna
menampilkan objek seperti warna aslinya ( meskipun tidak selalu tepat
demikian ). Warna-warna yang diterima oleh mata manusia merupakan
hasil kombinasi cahaya dengan panjang gelombang berbeda.
2.2 Format Citra Digital
Citra digital dapat disimpan dalam berbagai macam format. Beberapa format citra
digital dapat memanfaatkan metode kompresi dalam penyimpanan data citra.
Kompresi yang dilakukan dapat bersifat lossy maupun lossless, bergantung kepada
jenis format yang digunakan. Kompresi yang bersifat lossy menyebabkan
penurunan kualitas citra, meskipun dalam beberapa kasus penurunan kualitas
tersebut tidak dapat dikenali oleh mata manusia. Beberapa format citra digital yang
banyak ditemui adalah BMP, JPEG, GIF, PNG, dan lain-lain.
2.2.1 Bitmap images
Kriteria yang paling penting dari citra ini adalah kedalaman warna yaitu berapa
banyak bit per pixel yang didefinisikan dari sebuah warna (Rinaldi Munir, 2005).
Bitmap dengan mengikuti kriteria tadi maka dapat dilihat:
a. 8 bit = 256 warna (256 gray scales).
Gambar 2.5 warna bitmap
Secara umum dapat dikatakan semakin banyaknya warna, maka akan
diperlukan keamanan yang ketat atau tinggi dikarenakan bitmap memiliki area
yang sangat luas dalam sebuah warna yang seharusnya dihindarkan. Dilihat dari
kedalaman atau kejelasan dari sebuah warna, bitmap dapat mengambil sejumlah
data tersembunyi dengan perbandingan sebagai berikut (ukuran ratio dari bitmap
dalam byte = ukuran dari data yang disembunyikan) :
1. 8 bit = 256 warna : 8 : 1
2. 24 bit = 16.777.216 warna : 8 : 1
Perbandingan tersebut diperoleh dari penentuan LSB dalam suatu byte,
untuk citra 8 bit letak LSB adalah pada bit terakhir sedangkan untuk citra 24 bit
letak LSB adalah pada bit ke-8, bit ke-16 dan bit ke 24 dimana masing-masing
byte mewakili warna merah (red), warna hijau (green) dan warna biru (blue).
Manipulasi pada bitmap tidak dapat dikonvert atau diubah ke dalam bentuk
format grafik yang lain karena data tersembunyi dalam file tersebut akan hilang.
Format menggunakan metode komperesi yang lain (seperti JPEG) tidak di
gunakan dalam skripsi ini. Mengurangi ukuran dari carrier file sangatlah penting
untuk melakukan transmisi online, yaitu dengan menggunakan utilitas kompresi
(seperti : ARZ, LZH, PKZIP, WinZip), dikarenakan kerja mereka tidak terlalu
2.2.2 GIF
Graphic Interchange Format (GIF, dibaca jiff ,tetapi kebanyakan orang
menyebutnya dengan giff ) yang dibuat oleh Compuserve pada tahun 1987 untuk
menyimpan berbagai gambar dengan format bitmap menjadi sebuah file yang
mudah untuk diubah pada jaringan koputer. GIF adalah file format graphic yang
paling tua pada Web, dan begitu dekatnya file format ini dengan web pad saat itu
sehingga para Browser menggunakan format ini.
File GIF dapat disimpan dalam dua jalan yaitu secara berurutan (Dari atas
ke bawah) dan pembagian dengan baris ( 8 baris, 4 baris dan 2 baris). Pembagian
baris pada gambar dengan resolusi gambar yang rendah dengan cepat dimana
secara gradual datangnya untuk menjadikan lebih focus , dengan expense dari
penambahan kapasitas file.
Terdapat dua tipe dari GIFs, antara lain:
1. GIF87a: support dengan interlacing dan kapasitas dari beberapa file. Teknik itu dinamakan GIF87 karena pada tahun 1987 standar ini
ditemukan dan dijadikan standar.
2. GIF89a: adalah kelanjutan dari spesifikasi GIF87a dan penambahan pada transparency, pemberian tulisan dan animasi dari text dan grafik.
2.2.3 JPEG
Joint Photograpic Experts (JPEG , dibaca jay-peg) di rancang untuk kompresi
beberapa full-color atau gray-scale dari suatu gambar yang asli, seperti
pemandangan asli di dunia ini. JPEGs bekerja dengan baik pada continous tone
images seperi photographs tetapi tidak terlalu bagus pada ketajaman gambar dan
seni pewarnaan seperti penulisan, kartun yang sederhana atau gambar yang
mengunakan banyak garis. JPEG sudah mendukung untuk 24-bit colordepth atau
(p-JPEGs) adalah tipe dari beberapa persen lebih kecil dibandingkan baseline JPEGs:
Tetapi keuntungan dari JPEG dan tipe-tipenya telihat pada langkah-langkahnya
sama seperti interlaced GIFs.
JPEG adalah algoritma kompresi secara lossy. JPEG bekerja dengan
merubah gambar spasial dan merepresentasikan kedalam pemetaan frekueunsi.
Discrete CosineTransform (DCT) dengan memisahkan antara informasi frekuensi
yang rendah dan tinggi dari sebuah gambar. Informasi frekuensi yang tinggi akan
diseleksi untuk dihilangkan yang terikat pada pengaturan kualitas yang digunakan.
Kompresi dengan tingkatan yang lebih baik , tingkatan yang lebih baik dari
informasi yang dihilangkan. Waktu Kompresi dan dekompresi dilaksanakan
dengan simetris. JPEG Group’s (IJG) decoder lebih ditingkatkan kemampuannya
dibandingkan dengan encodernya. Manakala, ketika diperlihatkan 8 bits,
mengurangi kuantisasi warna yang lambat. Banyak para penjual JPEG
menawarkan untuk mempercepat hasil dari JPEG, kuantisasi warna dan kualitas
dengan mengimplementasikan IJG.
JPEG dirancang untuk mengeksploitasi tingkatan dari mata kita yakni
bahwa mata kita tidak akan dapat mebedakan perubahan yang lambat terang dan
warna dibandingkan dengan perbedaan suatu jarak apakah jauh atau dekat. Untuk
itu JPEG sangat baik digunkan pada fotografi dan monitor 80-bit. JPEG
sebenarnya hanyalah algoritma kompresi, bukan merupakan nama format file. File
yang biasa disebut JPEG pada jaringan sebenarnya adalah JFIF (JPEG File
InterchangeFormat).
2.3 Steganografi
2.3.1 Sejarah dan Defenisi Steganografi
Steganografi merupakan suatu cabang ilmu yang mempelajari tentang bagaimana
(Jonathan Cummins, 2004). Steganografi merupakan seni penyembunyian pesan
ke dalam pesan lainnya sedemikian rupa sehingga orang lain tidak menyadari ada
sesuatu di dalam pesan tersebut. Kata steganografi (steganography) berasal dari
bahasa Yunani yaitu steganos yang artinya tersembunyi atau terselubung dan
graphein, yang artinya menulis, sehingga kurang lebih artinya adalah “menulis
tulisan yang tersembunyi atau terselubung” Teknik ini meliputi banyak sekali
metoda komunikasi untuk menyembunyikan pesan rahasia. Metliputi penggunaan
tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur
tersembunyi dan komunikasi spektrum lebar.
Catatan pertama tentang steganografi ditulis oleh seorang sejarawan
Yunani, Herodotus, yaitu ketika Histaeus seorang raja kejam Yunani dipenjarakan
oleh Raja Darius di Susa pada abad 5 Sebelum Masehi. Histaeus harus mengirim
pesan rahasia kepada anak laki-lakinya, Aristagoras, di Militus. Histaeus menulis
pesan dengan cara mentato pesan pada kulit kepala seorang budak dan ketika
rambut budak itu mulai tumbuh, Histaeus mengutus budak itu ke Militus untuk
mengirim pesan di kulit kepalanya tersebut kepada Aristagoras.
Cerita lain tentang steganografi datang juga dari sejarawan Yunani,
Herodotus, yaitu dengan cara menulis pesan pada papan kayu yang ditutup dengan
lilin. Demeratus, seorang Yunani yang akan mengabarkan berita kepada Sparta
bahwa Xerxes bermaksud menyerbu Yunani. Agar tidak diketahui pihak Xerxes,
Demaratus menulis pesan dengan cara mengisi tabung kayu dengan lilin dan
menulis pesan dengan cara mengukirnya pada bagian bawah kayu, lalu papan kayu
tersebut dimasukkan ke dalam tabung kayu, kemudian tabung kayu ditutup
kembali dengan lilin.
Pada abad 20, steganografi benar-benar mengalami perkembangan. Selama
berlangsung perang Boer, Lord Boden Powell (pendiri gerakan kepanduan) yang
bertugas untuk membuat tanda posisi sasaran dari basis artileri tentara Boer, untuk
alasan keamanan, Boden Powell menggambar peta-peta posisi musuh pada sayap
Perang Dunia II adalah periode pengembangan teknik-teknik baru
steganografi. Pada awal Perang Dunia II walaupun masih digunakan teknik tinta
yang tak terlihat, namun teknik-teknik baru mulai dikembangkan seperti menulis
pesan rahasia ke dalam kalimat lain yang tidak berhubungan langsung dengan isi
pesan rahasia tersebut, kemudian teknik menulis pesan rahasia ke dalam pita
koreksi karbon mesin ketik, dan juga teknik menggunakan pin berlubang untuk
menandai kalimat terpilih yang digunakan dalam pesan, teknik terakhir adalah
microdots yang dikembangkan oleh tentara Jerman pada akhir Perang Dunia II.
Dari contoh-contoh steganografi konvensional tersebut dapat dilihat bahwa
semua teknik steganografi konvensional berusaha merahasiakan komunikasi
dengan cara menyembunyikan pesan ataupun mengkamuflase pesan. Maka
sesungguhnya prinsip dasar dalam steganografi lebih dikonsentrasikan pada
kerahasian komunikasinya bukan pada datanya
Seiring dengan perkembangan teknologi terutama teknologi komputasi,
steganografi merambah juga ke media digital, walaupun steganografi dapat
dikatakan mempunyai hubungan erat dengan kriptografi, tetapi kedua metode ini
sangat berbeda.
2.4 Manfaat Steganografi
Steganografi adalah sebuah pisau bermata dua, ia bisa digunakan untuk
alasan-alasan yang baik, tetapi bisa juga digunakan sebagai sarana kejahatan.
Steganografi juga dapat digunakan sebagai salah satu metode untuk
menyembunyikan informasi rahasia, untuk melindunginya dari pencurian dan dari
orang yang tidak berhak untuk mengetahuinya. Steganografi juga dapat digunakan
Proses
2.5 Metode Steganografi
Steganografi merupakan salah satu cara untuk menyembunyikan suatu pesan / data
rahasia di dalam data atau pesan lain yang tampak tidak mengandung apa-apa,
kecuali bagi orang yang mengerti kuncinya (Jonathan Cummins, 2004). Dalam
bidang keamanan komputer, steganografi digunakan untuk menyembunyikan data
rahasia saat enkripsi tidak dapat dilakukan atau bersamaan dengan enkripsi. Jadi,
walaupun enkripsi berhasil dipecahkan (decipher) pesan / data rahasia tetap tidak
terlihat.
Proses
Steganografi mempunyai proses yang berbeda dengan kriptografi dimana
pesan rahasia yang ingin dikirimkan tidak di acak melainkan disembunyikan pada
penampungnya seperti pada gambar 2.6 diatas. Hal ini sangat menguntungkan
karena akan mengurangi keinginan seseorang untuk memeriksa file tersebut.
Gambar 2.7 Proses Cryptography
Selain itu, pada kriptografi pesan disembunyikan dengan “diacak” sehingga pada
kasus-kasus tertentu dapat dengan mudah mengundang kecurigaan seperti terlihat
pasa gambar 2.7, sedangkan pada steganografi pesan “disamarkan” dalam bentuk
yang relatif “aman” sehingga tidak terjadi kecurigaan itu. Steganografi dapat
digunakan pada berbagai macam bentuk data, yaitu image, audio, dan video.
Gambar 2.8SistemSteganografi
fE fE-1
Cover*
emb* Stego
Cover
emb
Gambar 2.8 menunjukkan sebuah sistem steganografi umum dimana
dibagian pengirim pesan (sender), dilakukkan proses embedding (Fe) pesan yang hendak dikirim secara rahasia (emb) ke dalam data cover sebagai tempat
orang yang tahu kunci ini saja yang dapat mengekstrak pesan rahasia tadi. Proses
tadi dapat direpresentasikan secara lebih jelas pada gambar 2.9 di bawah.
Gambar 2.9Versi grafis dari sistem Steganografi
Secara garis besar, teknik penyembunyian data dengan steganografi adalah
dengan cara menyisipkan sepotong demi sepotong informasi asli pada sebuah
media, sehingga informasi tersebut tampak kalah dominan dengan media
pelindungnya
Dalam penulisan ini, penulis membatasi teknik yang digunakan adalah
modifikasi LSB, dan teknik – teknik steganografi lainnya diberikan hanya sebagai
2.5.1 Metode Least-Significant Bit
Penyembunyian data dilakukan dengan mengganti bit-bit data yang tidak terlalu
berpengaruh di dalam segmen citra dengan bit-bit data rahasia (Jonathan
Cummins, 2004), Pada susunan bit di dalam sebuah byte (1 byte = 8 bit), ada bit
yang paling berarti (most significant bit atau MSB) dan bit yang paling kurang
berarti (least significant bit atau LSB). Berikut contoh sebuah susunan bit pada
sebuah byte:
11010010
MSB = Most Siginificant Bit LSB = Least Significant Bit
Bit yang cocok untuk diganti adalah bit LSB, sebab perubahan tersebut
hanya mengubah nilai byte satu lebih tinggi atau satu lebih rendah dari nilai
sebelumnya. Misalkan byte tersebut menyatakan warna merah, maka perubahan
satu bit LSB tidak mengubah warna merah tersebut secara berarti. Lagi pula, mata
manusia tidak dapat membedakan perubahan yang kecil.
Misalkan segmen data citra sebelum perubahan:
00110011 10100010 11100010 10101011 00100110
10010110 11001001 11111001 10001000 10100011
Segmen data citra setelah pesan ‘1110010111‘ disembunyikan:
00110011 10100011 11100011 10101010 00100110
Untuk memperkuat teknik penyembunyian data, bit-bit data rahasia tidak
digunakan mengganti byte-byte yang berurutan, namun dipilih susunan byte secara
acak. Misalnya jika terdapat 50 byte dan 6 bit data yang akan disembunyikan,
maka maka byte yang diganti bit LSB-nya dipilih secara acak, misalkan byte nomor
36, 5, 21, 10, 18, 49.
Gambar 2.10 Proses Penempatan Bit Pesan
Untuk membangkitkan bilangan acak maka digunakan algoritma
pembangkit bilangan acak semu (pseudo-random number generator).
(
aX c)
p Xn+1 = 0 + moddimana Xn+1 , adalah bilangan acak yang dihasilkan.
p adalah jumlah pixel dikali 3 (tiga), dimana tiap pixel citra 24 bit memiliki
tiga komponen warna yaitu red, green dan blue masing-masing 1 byte (8
bit).
a adalah pengali (multiplier)
c adalah penambah (increment)
0
X adalah nilai awal (seed or start value)
Ukuran data yang akan disembunyikan bergantung pada ukuran citra
penampung. Pada citra 24-bit yang berukuran 256 x 256 pixel terdapat 65536
pixel, setiap pixel berukuran 3 byte (komponen RGB), berarti seluruhnya ada
196608/8 = 24576 byte Ukuran data ini harus dikurangi dengan panjang nama
berkas, karena penyembunyian data rahasia tidak hanya menyembunyikan isi data
tersebut, tetapi juga nama berkasnya.
Untuk memperkuat keamanan, data yang akan disembunyikan dapat
dienkripsi terlebih dahulu. Sedangkan untuk memperkecil ukuran data, data
dimampatkan sebelum disembunyikan. Bahkan, pemampatan dan enkripsi dapat
juga dikombinasikan sebelum melakukan penyembunyian data.
2.6 Kriteria Steganografi yang Baik
Steganografi yang dibahas di sini adalah penyembunyian data di dalam citra digital
saja. Meskipun demikian, penyembunyian data dapat juga dilakukan pada wadah
berupa suara digital, teks, ataupun video.
Penyembunyian data rahasia ke dalam citra digital akan mengubah kualitas
citra tersebut (Jonathan Cummins, 2004). Kriteria yang harus diperhatikan dalam
penyembunyian data adalah:
a. Fidelity. 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.
b. Robustness. Data yang disembunyikan harus tahan terhadap manipulasi
yang dilakukan pada citra penampung (seperti pengubahan kontras,
penajaman, pemampatan, rotasi, perbesaran gambar, pemotongan
(cropping), enkripsi, dan sebagainya). Bila pada citra dilakukan operasi
pengolahan citra, maka data yang disembunyikan tidak rusak.
c. Recovery. Data yang disembunyikan harus dapat diungkapkan kembali
(recovery). Karena tujuan steganografi adalah data hiding, maka
sewaktu-waktu data rahasia di dalam citra penampung harus dapat diambil kembali
BAB 3
PERANCANGAN APLIKASI
3.1 Gambaran Umum Program
Secara umum program steganografi ini mempunyai fungsi untuk menyembunyikan
informasi berupa data digital dibalik data digital lainnya dalam hal ini media yang
digunakan adalah citra digital dan harus menjadi perhatian bahwa dalam proses
modifikasi perubahan yang terjadi antara media penampung dengan hasil modifikasi
media penampung tidak boleh terlalu mencolok atau dengan kata lain secara kasat
mata, perubahan pada citra penampung yang telah termodifikasi tidak terlalu terlihat.
Agar suatu kerahasiaan dari informasi yang terkandung dalam objek citra
penampung digital tetap terjaga (integrity), sehingga tidak sembarang orang nantinya
dapat mengambil informasi dari citra penampung, maka dibutuhkan suatu kunci yang
digunakan untuk mengambil pesan rahasia yang terkandung dalam objek citra
penampung yang disebut dengan istilah key. Tanpa key ini orang awam yang tidak
mengetahui kata kuncinya, tidak akan bisa untuk mendapatkan informasi yang
terkandung dalam image penampung tersebut. Untuk lebih jelasnya lihat pada gambar
Gambar 3.1. Metode Steganografi
Setelah menghasilkan citra yang telah disisipi pesan rahasia, file tersebut dapat
disebarkan ke internet atau media elektronik lainnya dan hanya pemilik yang memiliki
key yang dapat mengambil pesan rahasia yang terkandung di dalam citra. Untuk
mengambil label rahasia yang terkandung di dalam citra dibutuhkan proses extraction
berupa algoritma pendeteksi dan key berupa password yang dimiliki oleh penerima
sah.
Citra
Pesan rahasia
Embedding
Key
Citra
Stego Extraction
Pesan Rahasia
3.2 Perancangan Tampilan
Dalam pembuatan program, penulis membuat rancangan antar muka yang terdiri dari
beberapa form, pembagian ke dalam beberapa form ini di maksudkan untuk
mempermudah para pemakai dalam penggunaannya, sehingga pemakai tidak
mengalami kesulitan ataupun kerancuan dalam proses encode maupun decode.
3.2.1 Antarmuka form menu utama
Form menu utama ini merupakan form utama dalam program Steganografi, di
dalamnya terdapat menu dan toolbar yang dapat di akses untuk berbagai fungsi
tertentu, pada bagian pilih foto juga terdapat image preview dan keterangan mengenai
citra yang akan di akan di berilabel rahasia. Pada bagian pilih label Untuk lebih
jelasnya dapat dilihat pada gambar 3.2.
Menu
Toolbar
Pilih foto
Pilih label berupa file
Label teks Image preview
3.2.2 Antarmuka form encode
Form encode ini bertujuan untuk melakukan inisiasi awal dalam proses encode dan
meminta sejumlah informasi yang dibutuhkan dari pemakai sebelum melakukan
proses encode, informasi yang dibutuhkan antara lain : citra digital, dan Pesan rahasia.
Untuk melakukan pemilihan citra digital pemakai harus menekan tombol pilih
gambar, setelah memilih citra digital langkah selanjutnya yang harus dilakukan user
adalah dengan mengisi key (password).
Gambar 3.3 Rancangan tampilan form encode
3.2.3 Antarmuka form decode
Form decode ini bertujuan untuk melakukan inisiasi awal dalam proses decode dan
meminta sejumlah informasi yang dibutuhkan dari pemakai sebelum menjalankan
proses decode, informasi yang dibutuhkan antara lain : citra digital, stego key
(password).
Kemudian di dalam form decode ini terdapat satu tombol navigasi, tombol
tersebut adalah tombol menu utama yang menuju ke form menu utama. Desain form
encode ini dapat dilihat pada gambar 3.4 yang terdapat di bawah ini. kunci
Konfirmasi kata kunci
Gambar 3.4 Rancangan tampilan form decode
3.2.4 Antarmuka form tentang saya
Form tentang saya ini menampilkan ucapan terima kasih penulis kepada semua orang
yang turut membantu pada skripsi ini dan juga semua yang ikut mendukung penulis .
Gambar 3.5 Rancangan tampilan form tentang saya Masukan kunci
Buka Batal
Tentang saya
3.2.5 Antarmuka form Bantuan
Form bantuan ini hanya menampilkan bagaimana cara menggunakan program
steganografi berupa teks tanpa menutup form menu utama. Di dalam form ini terdapat
satu tombol untuk menutup form bantuan, dan terdapat text box untuk menampilkan
informasi tentang penggunaan program ini, dilengkap dengan scroll bar agar
memudahkan pengguna dalam membacanya. Desain form bantuan ini lebih jelasnya
dapat dilihat pada gambar 3.7 yang terdapat di bawah ini.
Gambar 3.6 Rancangan tampilan form bantuan
3.3 Alur Data (flow chart)
Bagan alir adalah urutan-urutan instruksi program tersebut dalam suatu diagram yang
disebut dengan diagram alur atau flowchart. Sedangkan pada definisi lain disebutkan
bahwa bagan alir adalah bagan yang menunjukan alir (flow) didalam program atau
prosedur sistem secara logika. Hal-hal yang perlu diperhatikan pada saat pembuatan
bagan alir adalah: Bantuan
1. Sebaiknya digambarkan dari atas ke bawah dan mulai dari bagian kiri suatu
halaman.
2. Kegiatan didalamnya harus ditunjukan dengan jelas.
3. Harus ditunjukan dari mana kegiatan akan dimulai dan dimana akan berakhir.
4. Masing-masing kegiatan di dalam bagan alir sebaiknya digunakan suatu kata
yang mewakili suatu pekerjaan.
5. Masing-masing kegiatan didalam bagan alir harus didalam urutan yang
semestinya.
6. Kegiatan yang terpotong dan akan disambung ke tempat lain harus ditunjukan
dengan jelas menggunakan simbol penghubung
7. Gunakanlah simbol-simbol bagan alir yang sudah standar.
8. Simbol yang digunakan dalam Bagan Alir adalah sebagai berikut:
Tabel 3.1 Bagan Alir (Flowchart)
Nama Simbol Keterangan
1. Input/ Output Digunakan untuk mewakili
data input/ output.
2. Proses Digunakan untuk mewakili
suatu proses.
3. Keputusan Digunakan untuk suatu
penyeleksian kondisi.
4. Terminal Digunakan untuk
menunjukkan awal dan akhir
dari suatu proses.
5. Garis Digunakan untuk
menunjukkan aliran control
Setelah pada bagian sebelumnya telah dijelaskan rancangan tampilan yang
dibutuhkan untuk membuat program steganografi beserta struktur navigasinya, maka
pada bagian sub bab ini akan di gambarkan dan dijelaskan diagram alur (flowchart)
program yang berhubungan langsung dengan proses encode dan decode secara garis
besar. Berikut adalah diagram alur secara umum dari program steganografi ini.
Mulai
Tampilan Menu Utama
Pilih Citra
Deteksi Pesan Rahasia
Ya
Tidak
Masukan Kunci
Periksa Kunci
Buka Pesan Rahasia
Stop
Pilih Pesan Rahasia yang ingin disembunyikan
Masukan Kunci
Periksa Kunci
Sisipkan Pesan Rahasia
Ya Ya
Tidak Tidak
3.4 Analisis LSB dalam Aplikasi.
Gambar 3.8 Lebaran.bmp
Gambar lebaran ini menggunakan format pewarnaan RGB, artinya tiap pixel dari
gambar ini direpresentasikan dengan nilai sepanjang 24 bit. Pesan Rahasia yang
dicoba untuk dimasukkan adalah “aku#“, yang jika direpresentasikan ke dalam binary
kata “aku#“ini menjadi”
Tabel 3.2 Kode ASCII
character ASCII value (decimal)
a 97
k 107
u 117
# 35
Kode ASCII tersebut untuk selanjutnya diubah menjadi 8 bit kode-kode biner
sehingga di dapat:
Tabel 3.3 Kode Biner
character biner
a 01100001
k 01101011
u 01110101
Konversi citra ke biner citra gambar. 3.8 di atas sebagai berikut;
11000100 00001010 01100000 10110110 01100101 00101000 …
01000011 11001000 01100101 00110010 01011010 00110010 …
00011000 10010110 00101101 11001000 01001011 00011101 …
10110001 00111000 01001100 01100101 00011001 11001000 …
01100101 00100010 11111011 00101001 01100100 00111100 …
00101100 01000010 01100010 01111101 10111110 11001000 …
11000100 00001010 01100001 10110110 01100101 00101001 …
01000010 11001000 01100101 00110011 01011010 00110011 …
00011000 10010110 00101101 11001000 01001011 00011100 …
10110000 00111000 01001101 01100101 00011001 11001000 …
01100101 00100010 11111010 00101000 01100100 00111100 …
00101100 01000010 01100011 01111101 10111110 11001000 …
… … … …
Gambar 3.9 Citra dalam bentuk Biner
Untuk selanjutnya, tiap bit kode biner pesan rahasia digunakan untuk
menggantikan bit terakhir dari kode biner citra lebaran. Proses penggantian dilakukan
dengan memilih byte tertentu secara acak. Proses pengacakan tersebut bergantung
pada kata kunci (password) yang menjadi random seed atau titik awak dilakukannya
pengacakan.
Kata kunci yang coba dimasukkan adalah “IBU” dengan asumsi citra gambar
3.8 berukuran 256 x 256 pixel dengan total byte yang dimiliki adalah 196608 byte.
Tabel 3.4 Tabel Biner
character ASCII value (decimal) biner
I 73 01001001
B 66 01000010
U 85 01010101
(
aX c)
p Xn+1 = 0 + moddimana Xn+1 , adalah bilangan acak yang dihasilkan.
p adalah jumlah pixel dikali 3 (tiga), dimana tiap pixel citra 24 bit memiliki
tiga komponen warna yaitu red, green dan blue masing-masing 1 byte (8 bit).
a adalah nilai karakter kata kunci kedua sebagai pengali (multiplier)
c adalah nilai karakter kata kunci ketiga penambah (increment)
0
X adalah nilai karakter kata kunci pertama nilai awal (seed or start value)
X6 =92892
X7 =(92892 x73+85) mod 196608
X7 =96529
X8 =(96529 x73+85) mod 196608
X8 =165422
X9 =(165422 x73+85) mod 196608
X9 =82803
X10 =(82803 x73+85) mod 196608
X10 =146464
X11 =(146464 x73+85) mod 196608
X11 =75125
X12 =(75125 x73+85) mod 196608
X12 =175794
X13 =(175794 x73+85) mod 196608
X13 =53527
X14 =(53527 x73+85) mod 196608
X14 =172004
X15 =(172004 x73+85) mod 196608
X15 =170033
X16 =(170033 x73+85) mod 196608
X16 =26190
X17 =(26190 x73+85) mod 196608
X17 =142483
X19 =(177728 x73+85) mod 196608
X19 =194709
X20 =(194709 x73+85) mod 196608
X20 =58066
X21 =(58066 x73+85) mod 196608
X21 =110135
X22 =(110135 x73+85) mod 196608
X22 =175620
X23 =(175620 x73+85) mod 196608
X23 =40825
X24 =(40825 x73+85) mod 196608
X24 =31190
X25 =(31190 x73+85) mod 196608
X25 =114267
X26 =(114267 x73+85) mod 196608
X26 =84040
X27 =(84040 x73+85) mod 196608
X27 =40157
X28 =(40157 x73+85) mod 196608
X28 =179034
X29 =(179034 x73+85) mod 196608 X29 =93439
X30 =(93439 x73+85) mod 196608 X30 =136460
X31 =(136460 x73+85) mod 196608 X31 =131265
Berikut merupakan tabel lokasi penyisipan pesan pada byte citra
penampung.
Tabel. 3.5 Lokasi penyisipan pesan
Bit “aku#” Lokasi Byte Penyisipan
Proses penempatan bit citra rahasia pada citra sebagai berikut.
11000100 00001010 01100000 10110110 01100101 00101000 …
01000011 11001000 01100101 00110010 01011010 00110010 …
00011000 10010110 00101101 11001000 01001011 00011101 …
10110001 00111000 01001100 01100101 00011001 11001000 … 01100101 00100010 11111011 00101001 01100100 00111100 …
00101100 01000010 01100010 01111101 10111110 11001000 …
11000100 00001010 01100001 10110110 01100101 00101001 …
01000010 11001000 01100101 00110011 01011010 00110011 … 00011000 10010110 00101101 11001000 01001011 00011100 …
10110000 00111000 01001101 01100101 00011001 11001000 …
01100101 00100010 11111010 00101000 01100100 00111100 …
00101100 01000010 01100011 01111101 10111110 11001000 …
… … … …
Gambar 3.10 Proses Penyisipan Pesan
Citra dalam bentuk biner ini akan dipetakan kembali ke bentuk citra. Ekstraksi
pesan dapat dengan mudah dilakukan dengan mengambil bit terakhir dari kode
biner citra. Jika diperhatikan, penggantian bit terakhir tersebut tidak terlalu
berpengaruh terhadap perubahan warna citra.
Gambar 3.12 Citra sesudah disisipi pesan
pengirim
Pesan rahasia Citra Penampung
Key Berupa Pasword
Biner Biner
Proses enkripsi pesan rahasia
Proses Deskripsi pesan rahasia Key Berupa
Pasword
Biner Biner
Pesan rahasia Citra Penampung
Proses pengiriman pesan rahasia dari pengirim hingga sampai kepada orang
yang menerima sebagai berikut.
a. Tentukan pesan yang akan dikirimkan dan juga kata kunci (password) untuk
melindungi pesan rahasia tersebut.
b.Tentukan citra penampung yang akan digunakan
c. Citra penampung dan pesan rahasia yang akan dikirimkan diubah kedalam
bentuk biner.
d.Lakukan proses penempatan pesan rahasia pada byte citra penampung
secara acak dimana bilangan acak diperoleh dari pembangkitan acak semu
dimana kata kunci berperan sebagai titik awal pengacakan.
e. Proses pegambilan pesan rahasia di mulai dengan memasukan kata kunci
yang digunakan, selanjutnya kata kunci tersebut akan membangkitkan
bilangan acak yang sama dengan sewaktu proses penempatan pesan rahasia,
pembacaan bit-bit pesan rahasia dilkukan sesuai dengan urutan byte yang
telah ditentukan secara acak.
f. Pesan rahasia yang telah berhasil di baca bit-bitnya kemudian akan diubah
BAB 4
IMPLEMENTASI
4.1 Implementasi
Implementasi Pembuatan program pesan rahasia dibuat menggunakan Microsoft
Visual Basic 6.0. Aplikasi terdiri dari beberapa form dan satu form sebagai form
utama.
Gambar 4.1 Menu utama
Menu utama seperti pada gambar 4.1 di buat agar mudah untuk digunakan,
form ini dilengkapi dengan seluruh menu yang dapat diakses langsung ke citra
Pada form utama di sediakan berbagai macam menu yang dapat diakses
untuk keperluan tertentu sehingga pengguna dapat memilih dengan leluasa proses
yang akan di lakukan terlebih dahulu, berikut keterangan beberapa menu yang
terdapat pada menu bar
a. Menu Citra
Menu ini adalah menu pertama sekaligus menu yang paling penting
karena seluruh proses akan di mulai melalui menu ini, menu ini sendiri
terdiri dari dua pilihan yaitu “pilih citra” dan “ keluar”, sesuai dengan
namanya menu ini berguna untuk memilih citra yang akan di jadikan
media penampung yang akan digunakan untuk melekatkan pesan rahasia
yang bisa menjadi titik awal pengamanan pesan rahasia yang nantinya
akan melalui proses pengiriman. Di sisi lain menu tersebut juga dapat
mengakhiri program pesan rahasia ini.
Menu ini berfungsi dalam proses pesan rahasia yang nantinya akan
di sisipkan pada citra menjadi satu kesatuan yang nantinya dapat di
pisahkan kembali dengan cara yang tepat dan orang yang berhak
menerimanya sehingga nantinya diharapkan pesan rahasia tersebut tidak
sampai jatuh ke tangan yang salah. Selain fungsi diatas menu ini juga
berfungsi dalam membersihkan layar dari segala proses yang sebelumnya
telah berlangsung.
c. Menu Tentang Saya
Form berisikan informasi tentang pembuat program dan juga
berisikan informasi tentang program itu sendiri baik manfaat maupun
4.2 Cara Kerja Program
4.2.1 Pemilihan Citra
Citra yang dipilih adalah citra 24 bit dan proses pemilihannya seperti tampak pada
gambar 4.2 dengan memilih menu cira diikuti dengan pilih citra.
Gambar 4.2 Pemilihan Citra
Citra yang terpilih ini merupakan wadah penampung bagi pesan rahasia
yang nantinya akan disisipkan. Citra penampung yang dipilih agar disesuaikan
dapat dimuat ke dalam citra. Ukuran citra penampung sendiri setidaknya minimal
8 kali dari ukuran pesan rahasia yang akan dikirimkan.
Gambar 4.3 Citra yang telah dipilih
Citra yang telah dipilih siap untuk dijadikan wadah atau penampung pesan
rahasia yang akan dikirimkan. Proses berikutnya adalah menentukan pesan rahasia
yang akan dikirimkan.
4.2.2 Pemilihan Pesan Rahasia
Pesan Rahasia dapat di pilih dengan menggunakan menu Pesan Rahasia dan
Gambar 4.4 Pemilihan Pesan Rahasia
Pesan rahasia yang akan dikirimkan harus diketahui ukurannya agar dapat
disesuaikan dengan citra penampungnya sehingga pesan dapat disisipkan di dalam
Gambar 4.5 Citra dan Pesan Rahasia sudah dipilih
Citra dan pesan rahasia yang sebelumnya telah di pilih atau di tentukan
kini siap untuk di gabungkan.. Pesan rahasia juga dapat berupa teks sehingga
pengirim dapat juga mengetikkan langsung pada kolom yang disediakan.
4.2.3 Penulisan Pesan Rahasia
Citra Penampung dan pesan rahasia baik berupa file maupun teks yang
telah dipilih sebelumnya akan di gabungkan pada proses ini. Sehingga nantinya
akan tercipta file baru yang bentuk fisiknya hampir sama sehingga tidak
Gambar 4.6 Proses Penggabungan Pesan rahasia dengan citra
Proses penggabungan pesan rahasia dengan citra seperti pada gambar 4.6
diperlihatkan bahwa dalam penggabungan pesan rahasia dilengkapi dengan
pengaman dimana pesan yang disembunyikan di beri pengaman berupa kata kunci
sehingga keamanan akan lebih terjamin sehingga pesan yang dikirim tidak
Pada tahap ini penulisan pesan rahasia ke dalam citra penampung
dilakukan, sebagai langkah pengamanan dilakukan pemasukan kunci rahasia
minimal 5 karakter untuk memberikan keamanan dan ada proses perulangan untuk
konfirmasi agar tidak terjadi kesalahan dalam pengetikan kunci. Berikut
merupakan hasil dari proses penggabungan pesan rahasia dan citra.
Gambar 4.7 Citra yang telah disisipi pesan rahasia.
4.2.4 Pembacaan (pengungkapan) Pesan Rahasia
Citra yang sudah disisipi pesan rahasia dipilih untuk di pisahkan kembali agar
pesan rahasia dapat dibaca oleh orang yang berhak. Untuk proses ini di perlukan
kunci yang menjadi syarat untuk membuka kembali pesan rahasia yang
Gambar 4.8 Proses pembacaan pesan rahasia
Proses pembacaan pesan rahasia seperti pada gambar 4.8 akan diminta
kata kunci. Kata kunci yang dimasukan harus sesuai dengan kata kunci sewaktu
Gambar 4.9 Pesan Rahasia yang berhasil diambil
Proses pengambilan pesan rahasia seperti gambar 4.9 diperlihatkan bahwa
citra penampung yang pada awalnya hanya terdiri dari satu file namun setelah
proses ekstraksi akan terdapat file lain didalamnya. Hal ini menunjukkan bahwa
Gambar 4.10 Pesan Rahasia yang berhasil diambil
4.3 Uji coba program
Uji coba program dimaksudkan untuk mengetahui sejauh mana tingkat
keberhasilan program steganografi ini dalam memodifikasi citra digital sehingga
program ini dapat berfungsi sesuai dengan tujuan dari pembuatan program ini
yakni dapat efektif dalam menyembunyikan pesan rahasia.
4.3.1 Proses scaling (Penskalaan, memperbesar atau memperkecil citra)
Cara pertama untuk menguji keamanan pesan rahasia yang dikirimkan bersama
image zooming, yaitu pengubahan ukuran citra (memperbesar/zoom out atau
memperkecil zoom in). gambar dibawah menunjukan citra yang telah diperbesar
dan diperkecil.
Gambar 4.11 Citra yang telah diperbesar2x
Untuk pengujian pertama dilakukan perbesaran citra yang telah di sisipi
pesan rahasia. Citra yang telah mengalami perbesaran 2x tersebut kemudian di
coba untuk dibaca pesan rahasianya dengan menggunakan program.
Gambar 4.14 Pesan Rahasia tidak dapat dibuka
Untuk pengujian berikutnya dilakukan perkecilan citra yang telah di sisipi
pesan rahasia. Citra yang telah mengalami perkecilan 2x tersebut kemudian di
coba untuk dibaca pesan rahasianya dengan menggunakan program.
Gambar 4.16 Pesan Rahasia tidak dapat dibuka
4.3.2 Proses Penambahan Noise
Cara lainnya untuk menguji tingkat keamanan pesan rahasia yang dikirimkan
adalah dengan menambahkan noise. Citra yang telah disisipi pesan rahasia di beri
Gambar 4.17 Pesan Rahasia tidak dapat dibuka
Pesan rahasia pada gambar 4.17 tidak dapat dibuka. Hal ini diakibatkan
adanya ganguan berupa noise sehingga mengakibatkan perubahan pada byte citra
penampung sehingga terjadi perubahan pada LSB citra penampung. Gangguan ini
4.3.3 Proses Perputaran (rotasi) Citra
Untuk pengujian berikutnya dilakukan Perputaran (rotasi) Citra yang telah di
sisipi pesan rahasia. Citra yang telah mengalami Perputaran (rotasi) tersebut
kemudian di coba untuk dibaca pesan rahasianya dengan menggunakan program.
Gambar 4.19 Pesan Rahasia tidak dapat dibuka
4.3.4 Proses pemotongan (cropping) Citra
Untuk pengujian berikutnya dilakukan pemotongan (cropping) citra yang telah di
sisipi pesan rahasia. Citra yang telah mengalami pemotongan tersebut kemudian
di coba untuk dibaca pesan rahasianya dengan menggunakan program.
Tabel 4.1 Hasil Uji Coba Program
11. Kartu.bmp Perbesaran 2x
12. Kartu.bmp Perkecilan 2x
13. Kartu.bmp Gausian Noise
14. Kartu.bmp Rotasi 90’ CW
15. Kartu.bmp Cropping
Dari hasil uji program tersebut di atas di peroleh gambaran keamanan
pesan rahasia yang di kirimkan kepada penerima cukup aman, ini dilihat dari
beberapa kali percobaan atau eksperimen untuk melakukan perubahan atau
menambahkan gangguan atau noise pada citra namun tidak dapat mengungkap
BAB 5
KESIMPULAN DAN SARAN
4.1 Kesimpulan
Dari analisis dan hasil implementasi Perlindungan Pesan Rahasia Pada Citra Digital
Menggunakan Metode Least Significant Bit Steganografi dapat disimpulkan bahwa
Metode Least Significant Bit mempunyai sifat Fragile (mudah rusak) oleh gangguan
dari luar seperti perbesaran, rotasi, cropping, dan gangguan noise sehingga pesan
rahasia akan lebih terjamin keamanannya dari orang yang tidak berhak yang berusaha
secara paksa membuka pesan rahasia tersebut.
4.2 Saran
a. Sifat LSB yang fragile membuat pesan rahasia yang mengalami serangan akan
hilang untuk itu metode ini agar dapat kombinasikan kedepannya dengan metode
lain agar pesan yang mengalami serangan tetap dapat di baca oleh penerima.
b. Penelitian ini agar dapat di kembangkan lebih lanjut dengan menggunakan
DAFTAR PUSTAKA
Awcock, G.W. 1996. Applied Image Processing.Singapore. McGraw-Hill Book.
Cancelli, G. 2008. Improved LSB Matching Steganalysis based on amplitude of
Local Extrema. IEEE International Conference on Image Processing.
Chandra, Marvin. 2007. Pengolahan citra digital menggunakan matlab.Bandung. Penerbit Informatika Bandung.
Chang, J .2007. Steganalysis for LSB matching in images with high freqeuncy
noise. IEEE Workshop on Multimedia Signal Processing.
Cummins, Jonathan. 2004. Steganography And Digital Watermarking.
Birmingham. School of Computer Science, The University of Birmingham.
Doerr, G 2007. Image Database for Steganalysis Studies. Adastral Online.
Ker, AD. 2005. Steganalysis of LSB Matching in grayscale images. Vol. 12. No. 6.
New York. IEEE Signal Processing Letter.
Munir, Rinaldi. 2005.Pengolahan Citra Digital. Bandung. Penerbit Informatika Bandung
Pratt, William K. 1991. Digital Image Processing. Singapore. A Wiley Interscience Publication John wiley and Sons, Inc. Singapore.
Rianto, Sigit ST. 2005.Step by Step Pengolahan Citra Digital. Yogyakarta. Penerbit ANDI
Tsun-Li, Chang. 2004 Digital Watermarking for Multimedia Security
Management. United Kingdom.. Department of Computer Science
University of Warwick Coventry.
www.adastral.ucl.ac.uk/gwendoer/steganalysis di akses oktober 2008
www.cs.bham.ac.uk/~mdr/teaching/modules/students/SS5/Steganography.pdf di
akses agustus 2008
www.dcs.warwick.ac.uk/~ctli/papers/Chapter4.pff di akses oktober 2008
LAMPIRAN A [LISTING PROGRAM]
Private Sub chkHide_Click() If Me.chkHide.Value = 1 Then Me.txtKey.PasswordChar = "*" Me.txtConfirm.PasswordChar = "*" Else
Me.txtKey.PasswordChar = "" Me.txtConfirm.PasswordChar = "" End If
If KeyQuality(Me.txtKey.Text) < 20 Then
MsgBox "Kata Kunci terlalu pendek.", vbCritical Exit Sub
End If
If Me.txtConfirm.Text <> Me.txtKey.Text Then
MsgBox "Kata Kunci dan Konfirmasinya tidak cocok.", vbCritical Exit Sub
End If
If gstrImageName = "Unsaved" Then
MsgBox "Pilih Foto untuk menyimpan label.", vbCritical Exit Sub
If gstrActiveKey <> "" Then
Me.txtKey.Text = gstrActiveKey Me.txtConfirm.Text = gstrActiveKey If Me.cmdSave.Enabled = True Then
If Len(Me.txtKey.Text) < 5 Then
Private Sub txtKey_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then KeyAscii = 0: Me.txtConfirm.SetFocus End Sub
Private Sub txtConfirm_GotFocus() Me.txtConfirm.SelStart = 0
Me.txtConfirm.SelLength = Len(Me.txtConfirm.Text) End Sub
Private Sub txtConfirm_KeyPress(KeyAscii As Integer) If KeyAscii = 13 Then
KeyAscii = 0
If Me.cmdSave.Enabled = True Then Me.cmdSave.SetFocus End If
End Sub
Private Sub mnuClearAll_Click() If gblnTextHasChanged = True Then
retVal = MsgBox("Teks yang anda edit belum tersimpan." & vbCrLfLf & "Apakah ingin di hapus?", vbQuestion + vbYesNo)
If retVal = vbNo Then Exit Sub