BAB 2
TINJAUAN PUSTAKA
2.1. Steganografi
Steganografi berasal dari bahasa Yunani yaitu Steganós yang artinya
menyembunyikan dan Graptos yang artinya tulisan sehingga secara keseluruhan
steganografi ialah tulisan yang disembunyikan (Alatas, 2009). Secara umum
steganografi ialah ilmu dan seni menyembunyikan pesan rahasia agar tidak bisa
dideteksi oleh indera manusia sehingga tidak diketahui oleh orang lain.
Menurut Alatas (2009), steganografi sudah dikenal oleh bangsa Yunani yang
digunakan oleh Herodatus, penguasa Yunani, yang mengirimkan pesan rahasia
melalui prajurit atau kepala budak dengan membotaki kepala budak, lalu menuliskan
pesan dikepalanya. Ketika rambut budak tumbuh, budak tersebut akan diutus untuk
menyampaikan pesan. Pada bangsa romawi, steganografi dikenal dengan tinta
tak-tampak (invisible ink). Tinta tersebut digunakan untuk menuliskan pesan rahasia yang
dituliskan pada kertas. Tinta ini terbuat dari campuran sari buah, sus, dan cuka. Untuk
melihat pesan tersebut, kertas yang berisi pesan harus dipanaskan.
Untuk melakukan steganografi diperlukan data yang mau disembunyikan dan
media untuk penyisipan datanya. Media penyisipannya dapat berupa teks, suara,
gambar dan video (munir, 2004). Pada teks, data disisipkan pada teks menggunakan
salah satu algoritma steganografi sehingga tidak terlihat ada pesan didalamnya.
Pada suara, data disisipkan melalui frekuensi suara mengikuti media suara yang
digunakan dan karena ukuran format pada suara yang relatif besar sehingga
memungkinkan untuk menyembunyikan data dengan ukuran besar juga. Pada gambar,
Media penyisipan ini yang biasanya digunakan oleh pengguna internet untuk
menyembunyikan data dengan algoritma yang berbeda-beda pula. Proses penyisipan
dan ekstraksi pesan pada gambar dapat dilihat pada gambar 2.1.
Data
Media
Penyisipan Data Media yang Telah Disisipi Data
Media yang Telah Disisipi Data Ekstraksi
Data
Media Pengirim
Penerima
Gambar 2.1 Diagram sistem steganografi (munir, 2004)
Hasil gambar yang telah disembunyikan dengan gambar aslinya tidak jauh berbeda
sehingga tidak akan membuat orang menduga ada data yang disembunyikan didalam
gambar tersebut. Begitu juga pada video, data disembunyikan pada video namun
jarang digunakan karena format data yang terlalu besar (Alatas, 2009).
Robustness Transparency
Capacity
Gambar 2.2 Parameter tradeoff steganografi (Gutub et al, 2008)
Berdasarkan pada gambar 2.2 parameter steganografi menurut gutub et al (2008)
1. Capacity (Kapasitas)
Banyaknya data yang dapat disisipkan tanpa mengubah cover medium secara
signifikan.
2. Robustness (Ketahanan)
Daya tahan terhadap modifikasi atau kerusakan pada data yang tidak terlihat (data
yang disisipi).
3. Invisibility (Security or Perceptual Transparency)
Proses penyisipan pesan yang dilakukan tidak boleh menimbulkan kecurigaan dari
orang yang tidak berkepentingan.
2.2 Warna Digital
Menurut Ahmad (2005), warna tidak memiliki bentuk fisik yang nyata. Warna tidak
lebih dari sekedar respon pshyco psychological dari manusia untuk intensitas
penyinaran yang berbeda. Banyak ilmu pengetahuan yang menyatakan bahwa warna
didasarkan pada karakteristik sensor dari mata. Akan tetapi kemampuan mata manusia
terbatas, yaitu hanya mampu menangkap sejumlah cahaya dengan panjang gelombang
tertentu, yang oleh karenanya disebut dengan istilah cahaya atau gelombang tampak.
Menurut Mulyanta (2006), secara garis besar, warna terdiri dari 3 warna aditif,
yaitu merah, hijau dan biru. Ketiga warna dapat membentuk warna lain yang disebut
warna subtraktif, yaitu warna cyan, magenta, dan kuning.
1. Warna Aditif (RGB)
Warna Aditif adalah suatu warna yang dibentuk dengan mengkombinasikan 3 warna
pokok yaitu merah (red), hijau (green) dan biru (blue). Layar monitor komputer
biasanya menggunakan sistem warna aditif. Monitor terdiri dari warna piksel-piksel
yang muncul dari kombinasi ketiga warna pokok tersebut dengan berbagai variasi
kecerahan, sehingga menghasilkan warna saat ditangkap oleh mata manusia. Warna
aditif ini juga yang diterapkan pada televisi/video.
2. Warna Subtraktif (CMYK)
Warna subtraktif adalah pembentukan suatu warna yang dihasilkan dari pantulan
cahaya dari tinta atau pigmen yang digunakan pada sistem. Warna subtraktif ini terdiri
dari warna cyan, magenta, yellow dan black yang biasanya digunakan pada mesin
2.3 Format Penyimpanan File Gambar
Format gambar yang digunakan untuk menyisipkan pesan Bitmap (BMP), Joint
Photographic Experts Group (JPEG) dan Portable Network Graphics (PNG).
2.3.1 Bitmap (BMP)
Bitmap merupakan format baku citra pada sistem operasi windows dan IBM OS/2. Citra berformat BMP merupakan citra yang tidak terkompresi, sehingga pada
umumnya citra berformat BMP mempunyai ukuran yang relatif lebih besar
dibandingkan dengan format citra lainnya. Intensitas pixel dari citra berformat BMP
dipetakan ke sejumlah bit tertentu. Panjang setiap pixel pada bitmap yaitu 4 bit, 8 bit,
sampai 24 bit yang merepresentasikan nilai intensitas pixel. Dengan demikian ada
sebanyak 28 = 256 derajat keabuan, mulai dari 0 sampai 255.
2.3.2 Joint Photographic Experts Group (JPEG)
Joint Photographic Experts Group (JPEG) adalah sebuah format gambar yang berguna membuat gambar jenis fotografi berkualitas tinggi dengan ukuran gambar
yang kecil. JPEG dikembangkan oleh Joint Photographic Expert Group pada tahun
1980. Ukuran gambar yang dihasilkan bisa dalam ukuran kecil karena gambarnyanya
telah terkompresi (dimampatkan). Oleh karena itu, gambar berformat JPEG ukurannya
lebih kecil dari gambar berformat bitmap. Kompresi gambar JPEG sangat efisien dan
selalu menyimpan gambar dalam kategori warna 24 bit namun bersifat lossy,
maksudnya kualitas gambar akan berkurang bila tingkat kompresi semakin tinggi.
2.3.3 Portable Network Graphics (PNG)
PNG atau Portable Network Graphics adalah salah satu format penyimpanan citra
yang menggunakan kompresi lossless, yaitu kompresi yang tidak menghilangkan
informasi citra digital. PNG dimaksudkan untuk menggantikan Graphic Interchange
Format (GIF) untuk diimplementasikan pada website. File PNG terbagi atas PNG-8 dan PNG-24. PNG-8 dapat mengkompresi gambar dengan ukuran file lebih kecil
daripada GIF. Sementara PNG-24 menyimpan file dengan ukuran yang lebih besar.
PNG-24 biasa digunakan untuk gambar foto ataupun bergradasi, karena gambar yang
dihasilkan akan lebih tajam. Kelebihan lainnya, PNG mendukung gambar
2.4. Add-ons pada Email ClientMozilla Thunderbird
Add-ons merupakan fitur yang digunakan untuk meningkatkan dan menyesuaikan
aplikasi berbasis Mozilla. Add-ons bisa digunakan oleh seluruh user mozilla. Add-ons
merupakan bagian dari browser extention yang dapat memodifikasi tampilan web
browser. Dalam hal ini, add-ons dibuat pada email client mozilla thunderbird. Mozilla thunderbird merupakan email client yang dikembangkan oleh mozilla foundation dan
bersifat open sources (Barus, 2012).
Sistem penyembunyian pesan pada gambar dengan Pixel Indicator Technique
(PIT) dan Pseudo Random Number Generator (PRNG) dibuat dalam bentuk add-ons.
Add-ons tersebut diinstal didalam email client mozilla thunderbird agar pesan rahasia
yang mau dikirim melalui email ini bisa disisipkan terlebih dahulu. Pihak penerima
juga bisa mengekstrak pesan yang disisipi dengan menginstal add-ons ini pada mozilla
thunderbird.
2.5. Pseudo Random Number Generator (PRNG)
Pseudo random number generator (PRNG) adalah sebuah fungsi matematika yang menghasilkan bilangan acak (Manchanda, 2010). PRNG digunakan untuk mengacak
channel pada setiap pixel gambar akan disisipi pesan dengan metode PIT. PRNG yang
digunakan adalah linear congruential method. Linear Congruential Method adalah
Metode pembangkit bilangan acak yang dinyatakan dengan rumus dibawah ini :
Xi+1 = f(xi, ,xi-1,..,xi-n+1 )(mod m) = (a1xi + a2xi-1 + … + anxi-n+1 + c) (mod m)
Sehingga :
Xi+1 = (a1xi + c) (mod m) (2.1)
Dimana :
m = modulus, 0<m a = multiplier, 0 < a < m c = increment,0 ≤ c < m
Xi = start value atau seed, 0 ≤ Xi< m
Proses kerja linear congruential method dengan menentukan bilangan modulo (m)
pesan yang telah di XOR. Bilangan biner terdiri dari 8 bit sedangkan ada 3 variabel
yang harus diberi nilai pada persamaan 2.1. Agar setiap variable memiliki banyak bit
yang sama untuk nilainya, maka ditambahkan bit ‘0’ pada bilangan biner tersebut. Jadi
masing-masing nilai variable terdiri dari 3 bit dari bilangan biner tersebut. Bit tersebut
dikonversikan ke bilangan desimal.
2.6. Pixel Indicator Technique (PIT)
Pixel Indicator Technique adalah teknik steganografi berdasarkan gambar yang
menggunakan dua bit tidak signifikan dari salah satu channel warna tertentu yang
digunakan untuk mendeteksi keberadaan data yang disembunyikan pada gambar. PIT
merupakan pengembangan dari metode Least Significant Bit (LSB) dan Stego Color
Cycle (SCC).
LSB adalah pendekatan umum dan sederhana untuk menanamkan informasi dalam
file gambar (Joshi et al, 2013). Cara kerja teknik steganografi ini adalah mengganti bit
paling tidak signifikan atau bit akhir dengan bit pesan (informasi) yang akan
disisipkan pada gambar sebanyak 1 bit. Karena hanya bit yang tidak signifikan yang
disisipi pesan, maka perubahan pada gambar stego tidak kelihatan. Dengan kata lain,
secara kasat mata tidak tampak perbedaan gambar asli (cover) dengan gambar stego.
Menurut joshi (2013), tipe terbaik dari file gambar untuk disisipkan pesan kedalamnya
adalah 24 bit gambar bitmap. Sebuah gambar dengan kualitas dan resolusi yang tinggi
lebih mudah untuk disisipkan pesan ke dalam gambar. Pada 24 bit bisa disisipkan 3 bit
pada 1 pixel dengan menyisipkan 1 bit pada setiap channel warna Red, Green dan
Blue.
Teknik SCC merupakan pengembangan lebih lanjut, dengan menggunakan saluran
warna sebagai tempat penyimpan pesan rahasia. Saluran warna tersebut dirotasikan
secara berkala untuk setiap bit berdasarkan suatu pola yang telah ditentukan (Cahyo,
2009). Maksudnya jika bit pertama pesan disisip kedalam saluran warna merah, maka
bit berikutnya disisp ke dalam saluran warna hijau dan bit selanjutnya disisip kedalam
saluran warna biru. Saluran warna yang digunakan sifatnya rotasi. Jika saluran warna
dimulai dari merah, maka selanjutnya hijau dan biru.
Teknik indikator pixel ini diusulkan digunakan pada gambar format RGB (Red,
satu channel merah, hijau atau biru untuk disisipkan pesan dimana channel tersebut terpilih berdasarkan bit akhir indikator. Bit indikator ditetapkan secara acak
(berdasarkan sifat gambar) dalam channel. Warna indikator dipilih dari panjang pesan.
Gambar 2.3 merupakan flowchart penyisipan dari Pixel Indicator Technique.
Start Gambar yang
akan disisipi pesan Panjang pesan
yang akan disisipi Simpan panjang pesan ke
dalam 8 byte pada baris pertama gambar dan dalam variabel ukuran gambar yang
tersisa (RMS)
Cek 2 bit akhir dari
channel indikator
Gambar 2.3. Flowchart penyembunyian pesan PIT (Gutub et al, 2008)
Tabel 2.1 menunjukkan hubungan antara indikator dan data yang tersembunyi di
Tabel 2.1 Indicator value based
Indicator Channel Channel 1 Channel 2
00 No hidden data No hidden data
01 No hidden data 2 bits of hidden data
10 2 bits of hidden data No hidden data
11 2 bits of hidden data 2 bits of hidden data
Untuk meningkatkan keamanan, channel indikator tidak tetap. Indikator-indikator
yang dipilih berdasarkan urutan. Pixel pertama Merah adalah indikator, sedangkan
Hijau adalah channel 1 dan Biru adalah channel 2. Dalam pixel kedua, Hijau adalah
indikator, sedangkan Merah adalah channel 1 dan Biru adalah channel 2. Dalam pixel
ketiga Biru adalah indikator, sementara Merah adalah channel 1 dan Hijau adalah
channel 2 (Gutub et al, 2008).
Kriteria penentuan indikator didasarkan pada panjang pesan yang akan
disembunyikan. Apabila panjang pesan menghasilkan nilai bilangan prima maka
indikator yang digunakan Blue (B), apabila bilangan genap maka indikatornya warna
Red (R), selain itu indikatornya menggunakan warna Green (G). Hal tersebut dapat
dilihat pada tabel 2.2.
Tabel 2.2 Indicator channel selection criteria
Type of Length (N) of secret message
I Level Selection Select Indicator Channel, First element of sequence
II Level Selection Binary N Parity-Bit
Odd Parity Even Parity
Even R GB BG
Prime B RG GR
Else G RB BR
Kelebihan algoritma ini adalah perubahan warna yang terjadi tidak terlalu
signifikan dan lebih sulit ditentukan di pixel mana terdapat pesan yang disembunyikan
karena tidak seperti Least Signiifikan Bit (LSB) dimana setiap pixel pada gambar pasti
disembunyikan 1 bit dari pesan yang disembunyikan. Orang lain yang ingin
mengetahui isi pesan tersebut juga harus mengetahui warna indikator apa yang
digunakan di setiap pixel yang terdapat bit yang berasal dari pesan yang
Kekurangan algoritma ini adalah tidak semua pixel bisa disisipkan pesan karena apabila nilai indicatornya bernilai 0 maka tidak ada pesan yang bisa disisipkan
didalam pixel gambar sesuai dengan tabel 2.1.
2.7. Peak Signal to Noise Ratio (PSNR)
Peak Signal to Noise Ratio (PSNR) adalah perbandingan antara nilai maksimum dari sinyal yang diukur dengan besarnya derau yang berpengaruh pada sinyal tersebut
dengan satuan desibel. PSNR digunakan untuk mengetahui perbandingan kualitas citra
sebelum dan sesudah disisipkan pesan. Untuk menentukan PSNR, tentukan nilai
rata-rata kuadrat dari error (MSE - Mean Square Error) terlebih dahulu. Perhitungan MSE
adalah sebagai berikut :
𝑀𝑆𝐸 = √3𝑀𝑁1 ∑𝑀𝑦=1∑𝑁𝑥=1∑ [𝐼′(𝑥, 𝑦)3𝑖=1 𝑖 – 𝐼(𝑥, 𝑦)𝑖]2 (2.2)
Dimana :
MSE = Nilai Mean Square Error dari citra tersebut
M = panjang citra tersebut (dalam pixel)
N = lebar citra tersebut (dalam pixel)
(x,y) = koordinat masing-masing pixel
I = nilai bit citra pada koordinat x,y pada gambar asli
I’ = nilai bit citra pada koordinat x,y pada gambar stego
i = index matrix (Red = 1, Green = 2, Blue = 3)
Sementara nilai PSNR dihitung dari kuadrat nilai maksimum sinyal dibagi dengan
MSE. Apabila diinginkan PSNR dalam desibel, maka nilai PSNR akan menjadi
sebagai berikut :
𝑃𝑆𝑁𝑅 = 10 𝑥 log (
𝑀𝐴𝑋𝑖2
𝑀𝑆𝐸
) = 20 𝑥 𝑙𝑜𝑔 (
𝑀𝐴𝑋𝑖
𝑀𝑆𝐸
)
(2.3)
Dimana :
𝑀𝐴𝑋𝑖 = nilai maksimum pixel
MSE = nilai MSE
2.8. Penelitian Terdahulu
Penelitian mengenai metode PIT dan fungsi acak sudah dilakukan oleh beberapa
peneliti sebelumnya. Beberapa penelitian tersebut dapat dilihat pada table 2.3 berikut :
Tabel 2.3 Penelitian terdahulu
No Judul Peneliti Kelebihan Kekurangan
1 Pixel Indicator hasil kapasitas lebih besar dari teknik lama
dan keamanan
menjanjikan karena
perubahan yang tidak tampak kapasitas yang lebih besar untuk tingkat
data membuat channel
Tabel 2.3 Penelitian Terdahulu (Lanjutan)
No Judul Peneliti Kelebihan Kekurangan
4 Pengembangan
didapatkan bahwa
algoritma pembangkitan
untuk berbagai kriteria
keacakan. Digunakan
sumber luar video
dan suara sebagai seed dan sumber keacakan.
Pada
ada keadaan dimana bit-bit dari suara
Pembangkit kunci Linear Congruential Generator, Kompresi data Lempel Ziv Welch (LZW) dan
menghasilkan rasio
kompresi terkecil 47.212