BAB 2
LANDASAN TEORI
2.1 Steganografi
Steganografi adalah seni komunikasi dengan menyembunyikan atau menyamarkan keberadaan pesan rahasia dalam suatu media penampungnya sehingga orang lain tidak menyadari adanya pesan di dalam media tersebut. Kata steganografi merupakan istilah yang berasal dari bahasa yunani yang berasal dari kata steganos (tertutup) dan graphein (tulisan). Lebih lengkapnya steganos dan graphein atau graptos memiliki arti menulis tulisan yang tersembunyi atau terselubung (Sutoyo, 2009).
Steganografi sudah digunakan sejak dahulu kala sekitar 2500 tahun yang lalu untuk kepentingan politik, militer, diplomatik, serta untuk kepentingan pribadi. Tehnik steganografi mempelajari tentang bagaimana menyembunyikan suatu pesan rahasia di dalam suatu wadah penampung. Selain steganografi, terdapat salah satu istilah lain yang bernama watermaking. Watermaking merupakan suatu bentuk dari steganografi. Yang membedakan steganografi dengan watermaking, watermaking merupakan cara penyembunyian pesan ke dalam wadah penampung dan wadah penampung mampu menghadapi proses pengolahan sinyal digital namun tidak merusak wadah penampung sehingga seolah-olah tidak ada perbedaan antara wadah penampung sebelum dan sesudah proses penyembunyian. Sedangkan steganografi memiliki prinsip dasar lebih mengkonsentrasikan pada kerahasian pesannya bukan pada keutuhan wadahnya (Munir, 2004).
Ada dua proses utama dalam steganografi digital yaitu penyisipan (insertion/embeding) dan ekstraksi (extraction/decoding) pesan. Pesan (embed) dapat berupa plaintext, ciphertext, citra, atau apapun yang dapat ditempelkan ke dalam bitstream. Embedding merupakan proses menyisipkan embed ke dalam berkas yang
Universitas Sumatera Utara
masih asli yang belum dimodifikasi, yang disebut media cover (cover object). Kemudian media cover dan embed yang ditempelkan membuat media stego (stego object). Extraction adalah proses menguraikan pesan yang tersembunyi dalam media stego. Ringkasnya, steganografi adalah teknik menanamkan embed pada suatu cover object, dimana hasilnya berupa stego object (Pakereng,2010).
Adapun proses steganografi selengkapnya ditunjukkan pada Gambar 2.1. Sandi Khusus
Cover
Cover
Stego
Encoding (penyisipan)
Decoding (penguraian)
Pesan
Sandi Khusus
Pesan
Gambar 2.1 Proses Steganografi
Pihak yang terkait dengan steganografi antara lain embeddor, extractor, dan stegoanalyst. Embeddor adalah pelaku yang melakukan penyisipan (embedding), extractor adalah pelaku yang melakukan ekstraksi pada stego object, dan stegoanalyst adalah pelaku yang melakukan steganalisis. Steganalisis merupakan ilmu dan seni untuk mendeteksi embed yang tersembunyi dalam steganografi (Prihanto, 2010). Jargon Codes S t e g a n o g r a f i
Open Codes Coverd Ciphers
Linguistik Steganografi
Virtual Semagrams
Semagrams
Text Semagrams
Teknik Steganografi
Gambar 2.2 Taksonomi Steganografi
Universitas Sumatera Utara
a. Teknik Steganografi (Technical Steganography)
Merupakan teknik yang menggunakan metode sains untuk menyembunyikan embed. Contohnya adalah penyembunyian embed dalam chip mikro. b. Linguistik Steganografi (Linguistic Steganography)
Merupakan teknik yang menyembunyikan embed dalam cara yang tidak lazim. Teknik ini terbagi menjadi dua bagian yaitu Semagrams dan Open Codes. c. Open Codes
Merupakan tehnik menyembunyikan embed cara yang tidak umum namun tetap tidak mencurigakan. Teknik ini terbagi menjadi dua bagian yaitu Jargon Code dan Covered Ciphers. d. Covered Ciphers
Merupakan tehnik yang menyembunyikan embed dalam media penampung sehingga embed kemudian dapat diekstrak dari media penampung tersebut oleh pihak yang mengetahui bagaimana embed tersembunyi tersebut disembunyikan. (Sumber: Aditya, 2010)
Penilaian sebuah metode steganografi yang baik dapat dinilai dari beberapa faktor yaitu imperceptibility, fidelity, recovery, dan robustness. Karakteristik metode steganografi yang baik adalah memiliki imperceptibility tinggi, fidelity tinggi, recovery maksimum dan robustness tinggi (Putra, 2010). 1. Imperceptibility
Keberadaan embed dalam media penampung tidak dapat dideteksi. 2. Fidelity
Mutu media penampung setelah ditambahkan embed tidak jauh berbeda dengan mutu media penampung sebelum ditambahkan embed. 3. Recovery
Embed yang telah disisipkan dalam media penampung harus dapat diungkap kembali. Hal ini merupakan syarat mutlak dalam sebuah metode steganografi, karena ada banyak cara penyisipan embed yang tidak terdeteksi namun sulit dalam pembacaan kembali. 4. Robustness
Embed yang disembunyikan harus tahan terhadap berbagai operasi manipulasi yang dilakukan pada media penampung. Bila pada media penampung dilakukan operasi-
Universitas Sumatera Utara
operasi manipulasi, maka embed yang disembunyikan seharusnya tidak rusak (embed masih utuh, tetap bisa diekstrak kembali).
2.2 Media Steganografi
Citra penampung (citra cover) merupakan media untuk menampung embed pada steganografi. Suatu embed dapat mempunyai hubungan atau bahkan tidak mempunyai hubungan sama sekali dengan media penampung (untuk kasus komunikasi rahasia) atau embed juga dapat berupa menyediakan info penting tentang media, seperti informasi autentifikasi, judul, tanggal dan waktu pembuatan, hak cipta, nomor seri kamera digital yang digunakan untuk mengambil gambar, informasi mengenai isi dan akses terhadap citra dan lain sebagainya (Prihanto, 2010).
Steganografi digital menggunakan media digital sebagai media penampung, seperti teks, citra, audio dan video. Semua berkas yang ada dalam komputer dapat digunakan sebagai media penampung, asalkan berkas tersebut mempunyai bit-bit data redundan yang dapat dimodifikasi. Hal ini juga berlaku untuk media penyisip (embed). 1. Citra
Format citra atau gambar paling sering digunakan, karena merupakan salah satu format berkas yang sering dipertukarkan dalam dunia internet. Alasan lainnya adalah banyaknya metode steganografi yang tersedia untuk media penampung yang berupa citra. 2. Teks
Dalam metode steganografi yang menggunakan teks sebagai media penampung, teks yang telah disisipi embed tidak boleh mencurigakan untuk orang yang melihatnya. 3. Audio Format audio atau suara juga sering dipilih karena berkas dengan format audio berukuran relatif besar sehingga dapat menampung embed dalam jumlah yang besar pula.
Universitas Sumatera Utara
4. Video
Format video memiliki ukuran berkas yang relatif sangat besar namun jarang digunakan
karena
ukurannya
yang
terlalu
besar
sehingga
mengurangi
kepraktisannya dan juga kurangnya algoritma yang mendukung format ini.
2.3 Pengertian 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 elemen). Citra digital tersusun dalam bentuk raster (grid atau kisi). Setiap kotak yang terbentuk disebut pixel (picture element) dan memiliki koordinat (x,y). Pixel merupakan suatu elemen citra yang memiliki nilai yang menujukkan intensitas warna. Citra digital dapat didefenisikan sebagai fungsi dua variabel f(x,y), dimana x dan y adalah koordinat spasial dan nilai f(x,y) merupakan intensitas citra suatu titik. Piksel (0,0) terletak pada sudut kiri atas pada citra, indeks x begerak ke kanan dan indeks y bergerak ke bawah. Konvensi ini dipakai merujuk pada cara penulisan larik yang digunakan dalam pemrograman komputer.
Titik original (0,0)
Gambar 2.3 Koordinat Pada Citra
Suatu citra digital diperoleh dari penangkapan kekuatan sinar yang dipantulkan oleh objek. Citra digital tersusun atas sejumlah berhingga elemen, masing-masing memiliki lokasi dan nilai/intensitas tertentu. Tingkat ketajaman atau resolusi warna pada citra digital tergantung pada jumlah bit yang digunakan oleh komputer untuk merepresentasikan setiap piksel tersebut. Tipe yang sering digunakan untuk merepresentasikan citra digital adalah 8-bit citra (256 colors (0 untuk hitam - 255
Universitas Sumatera Utara
untuk putih)), tetapi dengan kemajuan teknologi perangkat keras grafik, kemampuan tampilan citra digital di komputer hingga 32 bit (232 warna) (Sutoyo, 2009).
Selain citra digital, juga terdapat jenis citra yang lain yakni citra analog. Citra analog adalah citra yang terdiri dari sinyal – sinyal frekuensi elektromagnetis yang belum dibedakan sehingga pada umumnya tidak dapat ditentukan ukurannya. Analog berhubungan dengan hal yang kontinu dalam satu dimensi, contohnya adalah bunyi diwakili dalam bentuk analog, yaitu suatu getaran gelombang udara yang kontinu dimana kekuatannya diwakili sebagai jarak gelombang. Hampir semua kejadian alam boleh diwakili sebagai perwakilan analog seperti bunyi, cahaya, air, elektrik, angin dan sebagainya (Putra, 2010).
Citra digital dapat dibagi menjadi 4 macam berdasarkan warna-warna penyusunnya : 1. Citra biner (monochrome), atau disebut juga binary image, yaitu citra yang setiap pikselnya hanya memiliki kemungkinan dua warna, yaitu berwarna hitam (0) atau berwarna putih (1). Oleh karena itu, setiap piksel pada citra biner hanya membutuhkan media penyimpanan sebesar 1 bit. 2. Citra greyscale (citra keabuan), citra ini terdiri atas warna abu-abu. Setiap piksel citra greyscale merepresentasikan derajat keabuan atau intensitas warna putih. Untuk pengubahan warna citra menjadi greyscale dapat dilakukan dengan memberikan bobot untuk masing-masing warna dasar red green blue atau dengan membuat nilai rata-rata dari ketiga warna dasar tersebut. 3. Citra berwarna (true color), yaitu citra yang nilai pikselnya merepresentasikan warna tertentu. Setiap piksel pada citra berwarna memiliki warna yang merupakan kombinasi dari tiga warna dasar red green dan blue. Setiap komponen warna memiliki intensitas sendiri dengan nilai minimum 0 dan nilai maksimum 255 (8-bit). Hal ini menyebabkan setiap pixel pada citra RGB membutuhkan media penyimpanan 3 byte. Jumlah kemungkinan kombinasi warna citra RGB adalah 224 = lebih dari 16 juta warna.
Universitas Sumatera Utara
2.3.1 Format File Citra Digital
Citra digital dapat disimpan dalam berbagai format. Sebuah format citra harus dapat menyatukan kualitas citra, ukuran file dan kompatibilitas dengan berbagai aplikasi. Setiap format file citra memiliki kelebihan dan kekurangan masing – masing dalam hal citra yang disimpan. Menyimpan suatu citra harus diperhatikan citra dan format file citra apa yang sesuai. Misalnya format citra GIF sangat tidak cocok untuk citra fotografi karena biasanya citra fotografi kaya akan warna, sedangkan format GIF hanya mendukung sejumlah warna sebanyak 256 (8 bit) saja. Format JPEG merupakan pilihan yang tepat untuk citra – citra fotografi karena JPEG sangat cocok untuk citra dengan perubahan warna yang halus. Saat ini tersedia banyak format grafik dan format baru tersebut yang sudah dikembangkan, diantaranya yang terkenal adalah BMP, JPEG, dan GIF (Prihanto, 2010).
2.3.2
Format Data Bitmap
Pada format bitmap, citra disimpan sebagai suatu matriks di mana masing-masing elemennya digunakan untuk menyimpan informasi warna untuk setiap piksel. Jumlah warna yang dapat disimpan ditentukan dengan satuan bit-per-piksel. Semakin besar ukuran bit-per-piksel dari suatu bitmap, semakin banyak pula jumlah warna yang dapat disimpan. Format bitmap ini cocok digunakan untuk menyimpan citra digital yang memiliki banyak variasi dalam bentuknya maupun warnanya, seperti foto, lukisan, dan frame video. Format file yang menggunakan format bitmap ini antara lain adalah BMP, DIB, PCX, GIF, dan JPG. Format yang menjadi standar dalam system operasi Microsoft Windows adalah format bitmap BMP atau DIB.
Pada citra bitmap jumlah warna yang dapat disimpan ditentukan oleh banyaknya bit yang digunakan untuk menyimpan setiap titik dari bitmap yang menggunakan satuan bpp (bit-per-piksel). Dalam Windows dikenal bitmap dengan 1, 4, 8, 16, dan 24 bit-per-piksel. Jumlah warna maksimum yang dapat disimpan dalam n
suatu bitmap adalah sebanyak 2 , dimana n adalah banyaknya bit yang digunakan untuk menyimpan satu titik dari bitmap (Prasetyo,2011).
Universitas Sumatera Utara
Citra bitmap memiliki kelebihan untuk memanipulasi warna, tetapi untuk mengubah objek lebih sulit. Tampilan bitmap mampu menunjukkan kehalusan gradiasi bayangan dan warna dari sebuah gambar. Oleh karena itu, bitmap merupakan media elektronik yang paling tepat untuk gambar –gambar dengan perpaduan gradiasi warna yang rumit, seperti foto, kamera digital, video capture, dan lain-lain.
2.3.3
Format File Citra BMP
File format BMP bisa disebut juga bitmap atau format file DIB (untuk perangkat independen bitmap), adalah sebuah file gambar format yang digunakan untuk menyimpan gambar digital bitmap, terutama pada sistem operasi Microsoft Windows dan OS/2. Format ini mendukung mode warna dari Bitmap Mode hingga RGB Mode.
File citra bitmap terdiri atas bagian header, palet RGB, dan data bitmap. Pada citra 8 bit, setiap elemen data bitmap menyatakan indeks dari peta warnanya di palet RGB (Munir, 2004). Header merupakan informasi dari struktur daripada sebuah file citra. Header biasanya memberikan informasi tentang nama file, ukuran, dimensi, resolusi (horizontal atau vertikal), format yang digunakan, tehnik kompresi yang digunakan, dan lain-lain.
<palet RGB> R 20 14 12
G 45 13 17
1 2 3 … 256 46 78 2211135…
B 24 16 15 25
Gambar 2.4 Format Citra 8 Bit (256 Warna)
Pada citra 24-bit, tidak terdapat palet RGB, karena nilai RGB langsung diuraikan dalam data bitmap. Setiap elemen data bitmap panjangnya 3 byte, masingmasing byte menyatakan komponen R, G, dan B.
Universitas Sumatera Utara
2211135…
Gambar 2.5 Format Citra 24 Bit (16 Juta Warna) Pada contoh format citra 24-bit di atas, pixel pertama mempunyai R = 2, G = 2, B = 1.
BMP mudah dibuka dan disimpan, tetapi ada beberapa aturan khusus yang harus dicermati, diantaranya: 1. Format file ini menyimpan datanya secara terbalik, yaitu dari bawah ke atas 2. Citra dengan resolusi warna 8 bit, lebar citra harus merupakan kelipatan dari 4, bila tidak maka pada saat penyimpanan akan ditambahkan beberapa byte pada data hingga merupakan kelipatan dari 4. 3. Citra dengan resolusi warna 24 bit, urutan penyimpanan tiga warna dasar adalah biru, hijau, merah (B, G, R). Lebar citra dikalikan dengan 3 harus merupakan kelipatan dari 4, bila tidak maka pada saat penyimpanan akan ditambahkan beberapa byte pada data hingga merupakan kelipatan dari 4.
Tabel 2.1 Struktur File .BMP
Keterangan:
1.
Offset
: byte ke (yang dimulai dari angka 0).
2.
Size
: ukuran dari panjang byte.
a. byte ke-0 ukuran panjang 2 byte dispesifikasikan dengan nama tipe file yang diindikasikan berupa kode ASCII “BM”.
Universitas Sumatera Utara
b. byte ke-2 dengan ukuran panjang 4 byte, nama spesifikasinya bitmap file size yang berupa ukuran dari file dalam bentuk bytes. c. byte ke – 6 dan 8 yang ukurannya 2 byte berupa field cadangan di set 0. d. byte ke – 10 ukurannya 4 byte yang merupakan spesifikasi dari struktur bitmap file header ke bit bitmap, dimana file gambar dimulai pada tahap ini. e. byte ke – 14, panjangnya 4 byte dengan spesifikasi nama bitmap size yang mempunyai ukuran header 40 bytes. f. byte ke – 18 dengan panjang 4 bytes merupakan lebar gambar dalam satuan pixel. g. byte ke 22 dengan panjang 4 bytes merupakan tinggi gambar dalam satuan pixel. h. byte ke-26 dengan panjang 2 bytes merupakan bitmap planes dengan sejumlah planes (umumnya 1). i. byte ke-28 dengan panjang 2 byte merupakan jumlah bit per pixel : 1, 4, 8, atau 24. j. byte ke-30 dengan panjang 4 byte yang merupakan tipe kompresi.
2.4 Mode Warna
Mode warna RGB menghasilkan warna menggunakan kombinasi dari tiga warna primer red (merah), green (hijau), blue (biru). RGB dimulai dengan warna hitam (ketiadaan semua warna) dan menambahkan merah, hijau, biru terang untuk membuat putih. Kuning diproduksi dengan mencampurkan merah, hijau. warna cyan dengan mencampurkan hijau dan biru. warna magenta dari kombinasi merah dan biru. Kombinasi warna RGB dapat dilihat pada Gambar 2.6.
Gambar 2.6 Kombinasi Warna RGB
Universitas Sumatera Utara
Warna campuran (selain dari putih) dihasilkan dengan menambahkan warna komponen RGB individual dengan berbagai tingkat saturasi, dengan tingkatan mulai dari 0.0 hingga 1.0 (0 berarti tidak menggunakan warna tersebut; 1 berarti menggunakan warna tersebut pada saturasi penuh).
Warna didefenisikan dengan memasukkan intensitas untuk setiap komponen dalam matriks. Tiap komponen memiliki matriksnya sendiri-sendiri dan matriks tersebut bisa dijumlahkan. Sebagai contoh, untuk menghasilkan merah saturasi sempurna, masukan (1,0,0) : 100% merah 0% hijau dan 0% biru. Pada saat ketiga komponen warna tersebut dikombinasikan dalam 100% saturasi (1,1,1) hasilnya adalah putih (seperti diperlihatkan berikut): Merah (1,0,0) + hijau (0,1,0) + Biru (0,0,1) = Putih (1,1,1)
2.5 Menghitung Nilai RGB
Cara untuk menghitung nilai RGB citra cover sama dengan menghitung RGB citra embed, dimana setiap pikselnya mengandung 24 bit kandungan warna atau 8 bit untuk masing-masing warna dasar (R, G, dan B), dengan kisaran nilai kandungan antara 0 (00000000) sampai 255 (11111111). Untuk tiap warna yang dapat ditulis sebagai berikut.
Red: RGB (255, 0, 0)……….………….…………..………………............... (2.1) Green: RGB (0, 255, 0)....... .…………………..………………………….... (2.2) Blue: RGB (0, 0, 255)…..……………….…………………………............... (2.3) Dari nilai triplet RGB persamaan (2.1) sampai (2.3) di atas dapat dikonversikan ke dalam nilai desimal seperti dibawah ini: Red: 255*2560 + 0*2561 + 0*2562 = 255 + 0 + 0 = 255 ……………..…..... (2.4) Green: 0*2560 + 255*2561 + 0*2562 = 0 + 65,280 + 0 = 65,280 ………....... (2.5) Blue: 0*2560 + 0*2561 + 255*2562 = 0 + 0 + 16,711,680 = 16,711,680......... (2.6)
Universitas Sumatera Utara
Rumus dasar mencari nilai RGB citra adalah: R = COLOR and RGB(255, 0, 0)….………………………………….…...... (2.7) G = (COLOR and RGB(0, 255, 0)) / 256...……..…………………….…..... (2.8) B = ((COLOR and RGB(0, 0, 255)) / 256) / 256 ….…………………….… (2.9)
Dari persamaan (2.4) sampai (2.6) diatas, rumus RGB pada persamaan (2.7) sampai (2.9) menjadi: Nilai R = c and 255…………………………………...................................... (2.10) Nilai G = (c and 65,280)/256 ..………………...………………………..…... (2.11) Nilai B = ((c and 16,711,680)/256)/256 …………………...……………...... (2.12)
2.6 Ukuran Data yang Disembunyikan
Ukuran data yang akan disembunyikan bergantung pada ukuran citra penampung. Pada citra 24-bit yang berukuran 350 × 250 pixel terdapat 87500 pixel, setiap pixel berukuran 1 byte, berarti terdapat 87500 byte yang siap untuk menampung byte-byte pesan nantinya. Ukuran byte pesan harus kurang dari jumlah byte citra penampung. Karena jika semakin besar jumlah byte pesan yang disembunyikan di dalam citra, semakin besar pula kemungkinan terlihat perubahan pada citra penampung akibat banyaknya byte-byte yang berubah akibat proses penyisipan.
2.7 Metode Least Significant Bit (LSB)
Metode yang digunakan dalam merancang perangkat lunak ini adalah modifikasi dari metode Least Significant Bit (LSB). Oleh karena itu ada baiknya jika kita mengetahui cara kerja metode LSB. Cara kerja metode ini adalah dengan mengganti bit terakhir setiap nilai piksel dengan bit-bit pesan rahasia (embed). Sebelum melakukan penyisipan embed ke dalam citra penampung, terlebih dahulu nilai piksel dari citra penampung dan embed harus diubah ke dalam biner. Pengubahan tiap-tiap piksel menjadi biner bertujuan untuk mendapatkan satu nilai bit pada satu piksel, dimana bit
Universitas Sumatera Utara
terakhir (bit LSB) dari piksel citra penampung digantikan dengan satu bit dari embed (Suryani, 2008). Cara kerja metode LSB dapat dijelaskan melalui contoh di bawah ini.
10 20 30 40
50 60 70 80
90 25 15 35
65 35 45 75
Gambar 2.7 Matriks Citra Penampung Pada Gambar 2.7 di atas nilai tiap-tiap piksel citra penampung adalah 10, 50, 90, 65, 20, 60, 25, 35, 30, 70, 15, 45, 40, 80, 35, 75. Kemudian nilai piksel di atas dilakukan pengubahan ke nilai biner menjadi : 00001010, 00110010, 01011010, 01000001, 00010100, 00111100, 00011001, 100011, 00011110, 01000110, 00001111, 00101101, 00101000, 01010000, 00100011, 01001011.
Diberikan embed berupa teks “IPA” jika di-biner-kan menjadi 01001001, 01010000, 01000001. Penyisipan dengan metode LSB dilakukan dengan mengganti 1 bit terakhir dari piksel citra penampung dengan 1 bit dari bit embed teks ”IPA”.
I
= 01001001
P
= 01010000
A
= 01000001 0
1
0
0
00110010
00001011
00101000
00111100
00101001
00011110
01000110
00100001
00011010
00110011
00001010
00101001
00111100
00101000
00011110
01000110
Gambar 2.8 Penyisipan Metode LSB
Universitas Sumatera Utara
Pada Gambar 2.8 dapat dilihat bit-bit embed yang telah disisipkan pada citra penampung, dapat dilihat dengan huruf tebal, dimana yang berubah adalah nilai bit yang terakhir.
2.8 Metode Modified Least Significant Bit (MLSB)
Penyisipan pesan dengan Metode MLSB dilakukan dengan menyisipkan 5 bit embed ke dalam 5 bit LSB citra penampung (citra cover). Namun sebelum data embed disisipkan, terlebih dahulu dilakukan modifikasi terhadap data embed. Modifikasi pertama kali dilakukan dengan mengubah data embed kedalam heksadesimal dengan menggunakan tabel ASCII sebagai bantuan. Misalnya embed yang akan disisipkan berupa pesan “STEGO with 05 bits” dimana jika embed tersebut diubah ke biner membutuhkan memori sebesar 18 x 8 bit = 144 bit. Pada metode MLSB, pesan di atas diubah menjadi ASCII heksadesimal (5 bit), maka pesan berubah menjadi: 53h, 54h, 45h, 47h, 4fh, 20h,77h, 69h,74h, 68h, 20h, 30h, 35h, 20h, 62h, 69h,74h,73h. 20h menerangkan spasi pada tabel ASCII. Kemudian data embed tersebut ditambahi dengan keterangan control symbol yang sudah ditetapkan (Zaher, 2011). Control symbol dapat dilihat pada tabel 2.2 berikut ini.
Tabel 2.2 Control symbol Hexa 1Bh 1Ch 1Dh 1Eh 1Fh
Operasi Definisi huruf kecil Definisi Huruf Besar Definisi Spasi Definisi nomor Definisi akhir pesan
Kemudian dilakukan pembacaan data embed. Pertama-tama baca data embed (ASCII) sampai tanda spasi (20h) yaitu 53, 54, 45, 47, 4f. Lalu semua nilai dikurangi dengan nilai terendah yaitu 40 menjadi 53-40= 13, 54-40= 14, 45-40= 05, 47-40 = 07, 4f-40 = 0. Jadi data embed kelompok pertama adalah 1ch, 13h, 14h, 05h, 07h, 0f dimana 1ch adalah control symbol untuk huruf besar (capital). Untuk kelompok data
Universitas Sumatera Utara
kedua adalah 77h, 69h,74h, 68h dikurangi dengan nilai terendah (60) menjadi 77-60= 17, 69-60= 09, 74-60= 14, 68-60= 08. Data kelompok kedua ini digabung dengan kelompok pertama dan diberi nilai control symbol 1dh (spasi) dan 1bh (huruf kecil) menjadi 1dh, 1bh, 17h, 09h, 14h, 08h. Data kelompok ketiga adalah: 30h, 35h dikurangi dengan nilai terendah (30) menjadi: 30-30= 0, 35-30= 05. Data tersebut digabung dengan kelompok sebelumnya, ditambah dengan control symbol 1dh (spasi), 1eh (nomor) menjadi 1dh, 1eh, 00h, 05h. Data kelompok keempat adalah: 62h, 69h,74h,73h dikurangi dengan nilai terendah (60) menjadi: 62-60= 02, 69-60= 09, 7460= 14, 73-60= 13. Data tersebut digabung dengan kelompok sebelumnya, ditambah dengan control symbol 1bh (huruf kecil), menjadi 1bh, 02h, 09h, 14h, 13h dan akhir data (1fh).
Maka embed keseluruhannya menjadi: 1ch,13h,14h,05h,07h,0fh,1dh,1bh,17h,09h,14h,08h,1dh,1eh,00h,05h,1bh,02h,09h,14 h,13h,1fh Embed diatas membutuhkan 22 x 5 bit = 110 bit. Embed 1ch, 13h, 14h, 05h, 07h, 0f, 1dh, 1bh, 17h, 09h, 14h, 08h, 1dh, 1eh, 00h, 05h, 1bh, 02h, 09h, 14h, 13h, 1fh, kemudian diubah menjadi biner: 11100, 10011, 10100, 00101, 00111, 00000, 11101, 11011, 10111, 01001, 10100, 01000, 11101, 11110, 00000, 00101, 11011, 00010, 01001, 10100, 10011, 11111. Embed biner disisipkan ke dalam sebuah citra cover yang memiliki matriks seperti pada Gambar 2.9.
188
122
50
12
120
20
14
22
201
24
188
122
50
12
120
20
14
22
201
24
188
122
50
12
120
Gambar 2.9 Matriks Citra Cover Citra cover pada Gambar 2.10 diubah ke dalam bentuk biner seperti pada gambar 2.10 berikut.
Universitas Sumatera Utara
10111100 01111010 00110010 00001100 01111000 00010100 00001110 00010110 11001000 00011000 10111100 01111010 00110010 00001100 01111000 00010100 00001110 00010110 11001000 00011000 10111100 01111010 00110010 00001100 01111000 Gambar 2.10. Citra Cover dalam Biner Penyisipan dilakukan pada setiap piksel citra. 5 bit embed disisipkan kedalam 5 bit LSB piksel citra cover seperti pada Gambar 2.11
10111100 01110011 00110100 00000101 01100111 00000000 00011101 00011011 11010111 00001001 10111100 01101000 00111101 00011110 01100000 00000101 00011011 00000010 11001001 00010100 10110011 01111111 00110010 00001100 01111000 Gambar 2.11 Citra Hasil Penyisipan (Citra Stego) dalam Biner Setelah mengalami proses penyisipan, diperoleh sebuah citra stego seperti gambar 2.12 berikut.
188
115
52
5
103
0
29
27
215
9
188
115
52
5
103
0
29
27
215
9
188
115
52
5
103
Gambar 2.12 Matriks Citra Hasil Penyisipan (Citra Stego)
Universitas Sumatera Utara
2.9 Pengukuran Fidelity
Salah satu kriteria metode steganografi yang baik adalah dengan terpenuhinya fidelity. Pengukuran fidelity salah satunya dapat dihitung dengan menghitung nilai MSE (Mean Squared Error). MSE merupakan nilai rata-rata kuadrat dari error citra (Aditya, 2010).
MSE dapat dihitung dengan persamaan (2.13). Pada persamaan (2.13), I (x,y) adalah nilai grey-level citra asli di posisi (x,y), I’ adalah nilai derajat keabuan citra yang telah diberi watermark atau penyisip di posisi (x,y), X dan Y adalah ukuran panjang dan lebar citra.
MSE =
1
𝑋𝑋𝑋𝑋
∑𝑥𝑥 ∑𝑦𝑦 [𝐼𝐼(𝑥𝑥, 𝑦𝑦) − 𝐼𝐼 ′ (𝑥𝑥, 𝑦𝑦)]2 ........................................................ (2,13)
Nilai MSE menunjukkan perbandingan piksel yang rusak dengan piksel aslinya. Semakin besar nilai MSE, maka semakin besar kerusakan citra hasil pengolahan dan sebaliknya, semakin kecil nilai MSE maka nilai piksel hasil pengolahan makin mendekati citra aslinya (Sutoyo, 2009).
Universitas Sumatera Utara