PENERAPAN TEKNIK PENANDAAN DIGITAL DAN WATERMARKING UNTUK LAYANAN AUTENTIKASI DATA PADA CITRA DIGITAL
JAKA PRAWIRA SURIAMIHARJA
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
PENERAPAN TEKNIK PENANDAAN DIGITAL DAN WATERMARKING UNTUK LAYANAN AUTENTIKASI DATA PADA CITRA DIGITAL
JAKA PRAWIRA SURIAMIHARJA
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Program Studi Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2012
ABSTRACT JAKA PRAWIRA SURIAMIHARJA. The Application of Watermarking and Digital Signature Techniques for Data Authentication Service of Digital Image. Supervised by SHELVIE NIDYA NEYMAN. In this research the process of watermarking and digital signatures are used in the same system. There are three steps to make digital signatures. First step is generating a 128-bit hash value of a digital image using MD5 hashing techniques from a cover image. Second step is modifying the 128-bit hash value using Gray code encoding so that adjacent numbers have a single digit differing by one. Third step is encrypting the modified 128-bit hash value to get a digital signature value using techniques of public key cryptography (asymmetric encryption). The digital signature is used for making a watermark image by transforming every single value of digital signature into binary numbers (two-bit color image). In the process of watermarking, watermark image is inserted into cover image using Cox method and it generates a watermarked image in a grayscale. The reversal process is used for getting back the value of digital signature from a watermarked image. There are two steps in reversal process. First step is watermark extraction. The watermark image is extracted from watermarked image using Cox method and filtered using one of two filtering methods to get the filtered watermark that free from distortion. Second step is verifying digital signatures. The filtered watermark image (two-bit color image) is transformed back into digital signatures value and decrypted using techniques of public key cryptography (asymmetric encryption) to get the modified 128-bit hash value. Gray code decoder is used for changing the modified 128-bit hash value into its original value of 128-bit hash. After that, verify the 128-bit hash value that is generated from reversal process with the 128-bit hash value that is generated from cover image. If the value is similar then the image is valid. This research successfully applied the techniques of digital signature generation, watermark insertion, watermark extraction, and digital signature verification, with note the experiments were performed under normal circumstances (without giving attacks). This application of digital signature and watermarking techniques with additional security service has resistance against JPEG compression attack, but it has no resistance against rotation, cropping, and resizing attacks. Keywords: Cox, digital signature, Gray code, watermarking
Penguji:
1 Endang Purnama Giri S.Kom., M.Si. 2 Ir. Sri Wahjuni, M.T.
Judul Skripsi
: Penerapan Teknik Penandaan Digital dan Watermarking untuk Layanan Autentikasi Data pada Citra Digital
Nama
: Jaka Prawira Suriamiharja
NRP
: G64076035
Disetujui: Pembimbing
Shelvie Nidya Neyman, S.Kom., M.Si. NIP. 19770206 200501 2 002
Diketahui: Ketua Departemen Ilmu Komputer
Dr. Ir. Agus Buono, M.Si., M.Kom. NIP. 19660702 199302 1 001
Tanggal Lulus:
PRAKATA Puji dan syukur penulis panjatkan kepada Allah Subhanahu Wa Ta’ala atas segala karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Shalawat dan salam semoga Allah limpahkan kepada Nabi Muhammad Shalallahu ‘Alaihi Wasallam, keluarganya, sahabatnya, serta umatnya. Judul yang dipilih dalam penelitian yang dilaksanakan sejak bulan Mei 2010 hingga November 2011 ialah Penerapan Teknik Fragile Watermarking untuk Layanan Integritas Data pada Citra Digital. Terima kasih penulis ucapkan kepada: 1 Orang tua dan keluarga tercinta, atas segala doa, kasih sayang, perhatian, semangat, dan dukungannya. 2 Ibu Shelvie Nidya Neyman, S.Kom., M.Si., selaku dosen pembimbing yang telah membantu memberikan bimbingan, saran, dan motivasi. 3 Bapak Endang Purnama Giri S.Kom., M.Si. dan Ir. Sri Wahjuni, M.T., selaku dosen penguji. 4 Seluruh staf pengajar dan karyawan Departemen Ilmu Komputer FMIPA IPB. 5 Rangga Perbawadirja, Rosenitha Dewi, Azaningtyas, Ayi Dianitasari, Debby Puspa Bahri, Ferraro S.O. Ginting, Imam Prasetyo, Dinanta Maulana, Boy Herman, Mawar Agustina H., dan seluruh teman yang tidak dapat disebutkan satu persatu. Terima kasih atas kebersamaan dan dukungannya selama ini. 6 Rekan seperjuangan dalam usaha, M. Reva Stegobiona. Semoga yang kita lakukan menjadi berkah. 7 Cynthia Eka Susanti, atas hari-hari baru yang telah diberikan. Semoga karya ilmiah ini bermanfaat.
Bogor, Juni 2012
Jaka Prawira Suriamiharja
RIWAYAT HIDUP Penulis dilahirkan di Kupang pada tanggal 20 Agustus 1986. Penulis merupakan putra keempat dari empat bersaudara, pasangan Ir. Sutaryo Suriamiharja, MM dan Ika Sartika, SPd. Tahun 2004 penulis lulus dari SMA Negeri 5 Bogor dan pada tahun yang sama lulus seleksi masuk IPB melalui jalur reguler. Penulis memilih Program Studi Diploma 3 Informatika, Jurusan Teknik Informatika, Fakultas Matematika dan Ilmu Pengetahuan Alam, dan lulus pada tahun 2007. Penulis pernah menjadi pengurus aktif di Departemen Sosial BEM FMIPA IPB dan bekerja sebagai instruktur bahasa Inggris di sebuah lembaga pendidikan swasta.
DAFTAR ISI Halaman DAFTAR TABEL ...............................................................................................................................vi DAFTAR GAMBAR ..........................................................................................................................vi DAFTAR LAMPIRAN .......................................................................................................................vi PENDAHULUAN ................................................................................................................................ 1 Latar Belakang ................................................................................................................................ 1 Tujuan Penelitian ............................................................................................................................ 1 Ruang Lingkup Penelitian .............................................................................................................. 1 Manfaat Penelitian .......................................................................................................................... 1 TINJAUAN PUSTAKA....................................................................................................................... 2 Kriptografi ...................................................................................................................................... 2 Tanda Tangan Digital (Digital Signature) ..................................................................................... 2 Algoritme Tanda Tangan Digital ................................................................................................... 2 Integritas Data................................................................................................................................. 3 Kriptografi Fungsi Hash ................................................................................................................. 3 Algoritme MD5 .............................................................................................................................. 3 Kriptografi Kunci Publik ................................................................................................................ 4 Algoritme RSA ............................................................................................................................... 5 Digital Watermarking..................................................................................................................... 5 Metode Cox .................................................................................................................................... 6 Pengodean Gray Code .................................................................................................................... 6 Peak Signal to Noise Ratio (PSNR) ............................................................................................... 7 METODOLOGI PENELITIAN........................................................................................................... 7 Pembangkitan Tanda Tangan Digital ............................................................................................. 7 Penyisipan Watermark ................................................................................................................... 8 Ekstraksi Watermark ...................................................................................................................... 8 Verifikasi Tanda Tangan Digital .................................................................................................... 8 Implementasi................................................................................................................................... 9 Analisis Kualitas dan Ketahanan ................................................................................................... 9 Penarikan Kesimpulan .................................................................................................................. 10 HASIL DAN PEMBAHASAN..........................................................................................................10 Implementasi Pembangkitan Tanda Tangan Digital.................................................................... 10 Implementasi Penyisipan Watermark .......................................................................................... 10 Implementasi Ekstraksi Watermark ............................................................................................. 10 Implementasi Verifikasi Tanda Tangan Digital........................................................................... 10 Analisis Kualitas Watermarked Image dan Extracted Watermark ............................................. 11 Analisis Ketahanan ....................................................................................................................... 11 Uji Ketahanan Watermarked Image melalui Serangan Rotasi .................................................... 11 Uji Ketahanan Watermarked Image melalui Serangan Kompresi JPEG .................................... 11 Uji Ketahanan Watermarked Image melalui Serangan Cropping ............................................... 12 Uji Ketahanan Watermarked Image melalui Serangan Resizing................................................. 12 KESIMPULAN DAN SARAN..........................................................................................................12 Kesimpulan ................................................................................................................................... 12 Saran ............................................................................................................................................. 12 DAFTAR PUSTAKA ........................................................................................................................ 13
v
DAFTAR TABEL Halaman 1 Berkas citra yang digunakan dalam percobaan. ............................................................................... 9 2 Citra watermark dalam ukuran sebenarnya. ................................................................................... 10 3 Hasil perhitungan PSNR dari watermarked image ........................................................................ 11 4 Hasil perhitungan PSNR dari extracted watermark. ...................................................................... 11
DAFTAR GAMBAR Halaman 1 Proses pembangkitan tanda tangan digital (NIST 2009). ................................................................. 3 2 Proses verifikasi tanda tangan digital (NIST 2009). ........................................................................ 3 3 Alur metode penelitian. ..................................................................................................................... 7 4 Alur pembangkitan tanda tangan digital dan penyisipan watermark............................................... 8 5 Alur ekstraksi watermark dan verifikasi tanda tangan digital. ........................................................ 9
DAFTAR LAMPIRAN Halaman 1 Nilai dari message digest dan manipulated message digest.......................................................... 15 2 Hasil pembangkitan tanda tangan digital ........................................................................................ 16 3 Citra watermark hasil pembesaran ................................................................................................. 18 4 Hasil penyisipan watermark............................................................................................................ 20 5 Ringkasan hasil ekstraksi ................................................................................................................ 22 6 Hasil uji ketahanan terhadap serangan rotasi ................................................................................. 24 7 Hasil uji ketahanan terhadap serangan kompresi JPEG ................................................................. 25 8 Hasil uji ketahanan terhadap serangan cropping ............................................................................ 27 9 Hasil uji ketahanan terhadap serangan resizing .............................................................................. 29
vi
1
PENDAHULUAN Latar Belakang Perkembangan teknologi digital serta Internet saat ini memberi kemudahan bagi manusia untuk melakukan akses serta mendistribusikan berbagai informasi dalam format digital. Hal ini karena format digital memiliki keunggulan dibandingkan format non-digital dalam hal penduplikasian, penyimpanan, dan pendistribusian. Format digital, salah satunya citra digital dapat dengan mudah diduplikasi dengan hasil yang sama persis dengan aslinya, dapat disimpan untuk digunakan di kemudian hari tanpa harus menggunakan tempat penyimpanan yang besar secara fisik, dan dapat didistribusikan dengan mudah dan murah melalui mediamedia yang mendukung format digital. Keunggulan tersebut akan memberikan kemudahan kepada orang-orang yang tidak bertanggungjawab untuk menggunakan citra digital dengan sewenang-wenang dan tanpa izin dari pemiliknya. Salah satu cara yang dapat digunakan untuk mengamankan citra digital ialah dengan menerapkan teknik watermarking, yaitu dengan menyisipkan suatu sinyal atau pattern ke dalam citra digital asli. Metode yang bisa digunakan dalam penerapan watermarking ialah metode Cox yang telah diteliti oleh Jemi (2007). Dari penelitian tersebut, didapatkan hasil bahwa metode Cox memiliki ketahanan terhadap proses rotasi citra, namun tidak tahan terhadap serangan berupa kompresi JPEG, cropping, dan resizing. Cara lain yang dapat digunakan untuk mengamankan citra digital ialah dengan menerapkan teknik penandaan digital yang dapat digunakan untuk melakukan pengesahan terhadap citra digital. Pihak pemberi tanda tangan yang sah mengeluarkan tanda tangan yang sah pula sehingga pihak penerima dapat mengetahui bahwa citra digital yang diterima benar-benar ditandatangani oleh pihak pemberi tanda tangan yang sah. Salah satu penelitian yang berkaitan dengan penandaan digital telah dilakukan oleh Ansorry (2011). Dalam penelitian ini proses penandaan digital dan watermarking akan digunakan dalam satu sistem yang sama. Nilai hasil penandaan digital dari suatu citra digital yang dihasilkan dari teknik hashing dan teknik kriptografi kunci publik (enkripsi asimetris) akan digunakan sebagai watermark yang kemudian disisipkan ke dalam citra digital
tersebut. Diharapkan penelitian yang dilakukan dengan menggabungkan beberapa teknik layanan integritas data ini dapat menghasilkan suatu layanan integritas data yang lebih baik. Tujuan Penelitian Tujuan dari penelitian ini ialah: 1 Menerapkan teknik penandaan digital dan watermarking untuk layanan autentikasi data pada citra digital dalam sebuah aplikasi. 2 Menganalisis kualitas citra sebelum dan sesudah diberi watermark dengan menghitung nilai PSNR dari masingmasing citra dan kesamaan watermark hasil ekstraksi dengan watermark asli. 3 Menganalisis ketahanan dan keamanan berkas citra yang telah diberikan watermark terhadap beberapa jenis serangan. Ruang Lingkup Penelitian Penelitian ini melingkupi: 1 Metode watermarking yang digunakan ialah metode Cox. 2 Penandaan digital menggunakan teknik hashing MD5 (bagian dari integritas data) dan menggunakan teknik enkripsi asimetris RSA (bagian dari autentikasi kepemilikan). 3 Penggunaan pengodean gray code untuk memanipulasi nilai hash. 4 Penggunaan citra dengan format bitmap (BMP) untuk cover image, watermark, watermarked image, dan extracted watermark. Watermark yang digunakan merupakan nilai dari hasil penandaan digital yang diubah menjadi citra dengan dua bit warna (hitam dan putih). 5 Jenis serangan berupa rotasi citra, kompresi JPEG, cropping, dan resizing. Manfaat Penelitian Manfaat penelitian ini ialah: 1 Memberikan metode alternatif untuk layanan autentikasi data pada citra digital. 2 Mengetahui pengaruh penggunaan layanan autentikasi data yang dibuat terhadap kualitas citra digital.
2
TINJAUAN PUSTAKA Kriptografi Kriptografi berasal dari bahasa Yunani, crypto dan graphia. Crypto berarti secret (rahasia) dan graphia berarti writing (tulisan). Menurut terminologinya kriptografi ialah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu tempat ke tempat lain. Kriptografi merupakan studi teknik matematika yang berhubungan dengan aspek-aspek keamanan informasi seperti kerahasiaan, integritas data, autentikasi entitas, dan autentikasi data asal (Menezes et al. 1996). Tujuan dari kriptografi ialah (Menezes et al. 1996): 1 Kerahasiaan (confidentiality), menjaga informasi dari pihak-pihak yang tidak berhak. 2 Integritas data (data integrity), menjaga data atau informasi dari perubahan oleh pihak-pihak yang tidak berhak. 3 Autentikasi (authentication), identifikasi baik pihak-pihak yang terlibat dalam pertukaran informasi maupun informasi itu sendiri. 4 Non-repudiation, mencegah pihak-pihak yang telah bersepakat melanggar kesepakatan yang dibuat. Kriptografi mempunyai dua bagian yang penting, yaitu enkripsi dan dekripsi. Enkripsi ialah proses dari penyandian pesan asli menjadi pesan yang tidak dapat diartikan seperti aslinya. Dekripsi sendiri berarti mengubah pesan yang sudah disandikan menjadi pesan aslinya. Pesan asli disebut plaintext, sedangkan pesan yang sudah disandikan disebut ciphertext (Sofwan et al. 2006). Teknik kriptografi secara umum dibagi menjadi dua jenis, yaitu kriptografi kunci privat (enkripsi simetris) dan kriptografi kunci publik (enkripsi asimetris). Kriptografi kunci privat menggunakan kunci yang sama dalam melakukan enkripsi dan dekripsi, sedangkan pada kriptografi kunci publik menggunakan kunci yang berbeda antara proses enkripsi dan dekripsi. Tanda Tangan Digital (Digital Signature) Tanda tangan digital ialah bentuk kriptografi sederhana yang mendasar dalam authentication, authorization, dan non-
repudiation. Tujuan dari tanda tangan digital ialah menyediakan sarana untuk suatu entitas dalam hal penyertaan identitas terhadap suatu informasi (Menezes et al. 1996). Tanda tangan digital dalam komputer diwakili oleh deretan bilangan biner yang dihitung menggunakan sekumpulan aturan dan parameter sehingga identitas dari signatory dan integritas datanya dapat diverifikasi (NIST 2000). Sifat yang dimiliki oleh tanda tangan digital ialah (Stiawan 2005): 1 Autentik, tidak bisa atau sulit ditulis atau ditiru oleh orang lain. Pesan dan tanda tangan pesan tersebut juga dapat menjadi barang bukti sehingga penanda tangan tidak bisa melakukan penyangkalan. 2 Hanya sah untuk dokumen (pesan) itu saja atau salinannya yang sama persis. Tanda tangan itu tidak bisa dipindahkan ke dokumen lainnya meskipun dokumen lain itu hanya berbeda sedikit. Ini juga berarti bahwa jika dokumen itu diubah, tanda tangan dari pesan tersebut tidak lagi sah. 3 Dapat diperiksa dengan mudah, termasuk oleh pihak-pihak yang belum pernah bertatap muka langsung dengan penandatangan. Algoritme Tanda Tangan Digital Algoritme tanda tangan digital mencakup dua proses, yaitu proses pembangkitan dan proses verifikasi tanda tangan. Pada proses pembangkitan tanda tangan digital, algoritme tanda tangan digital menggunakan kunci privat dan fungsi hash. Fungsi hash digunakan untuk mendapatkan versi ringkas dari suatu data atau pesan yang akan ditandatangani, disebut dengan message digest yang digunakan sebagai input untuk algoritme tersebut. Pada proses verifikasi tanda tangan digital, algoritme tanda tangan digital menggunakan kunci publik untuk mendapatkan kembali nilai message digest yang sebelumnya digunakan sebagai input pada proses pembangkitan tanda tangan digital. Message digest tersebut diverifikasi dengan cara dibandingkan dengan message digest dari data atau pesan asli (NIST 2009). Jika nilai kedua message digest sama, data atau pesan terjaga integritasnya.
3
Proses pembangkitan tanda tangan digital dapat dilihat pada Gambar 1, sedangkan proses verifikasi tanda tangan digital dapat dilihat pada Gambar 2.
menjaga integritas data (Menezes et al. 1996). Salah satu bentuk kriptografi yang berkaitan dengan integritas data adalah kriptografi fungsi hash. Kriptografi Fungsi Hash Kriptografi fungsi hash merupakan salah satu hal yang mendasar dalam kriptografi modern, biasa disebut juga sebagai fungsi hash satu arah. Fungsi hash efektif secara perhitungan memetakan deretan bit dengan ukuran panjang bebas ke deretan bit dengan ukuran panjang tetap, disebut dengan nilai hash atau message digest (Menezes et al. 1996).
Gambar 1 Proses pembangkitan tanda tangan digital (NIST 2009).
Fungsi hash H adalah sebuah transformasi yang mengambil masukan m dan mengembalikan deretan nilai yang tetap atau disebut juga nilai hash h (h = H(m)) (RSAL 1991b). Kebutuhan dasar dari kriptografi fungsi hash ialah sebagai berikut: 1 Ukuran panjang masukan.
bebas
untuk
setiap
2 Keluaran mempunyai ukuran yang tetap. 3 H(x) relatif mudah dihitung untuk apapun x yang diberikan. 4 H(x) bersifat satu arah. Gambar 2 Proses verifikasi tanda tangan digital (NIST 2009). Terdapat beberapa algoritme yang digunakan untuk tanda tangan digital, di antaranya ialah Digital Signature Algorithm (DSA), RSA, dan ECDSA. Algoritme tanda tangan digital digunakan oleh signatory untuk membangkitkan tanda tangan digital pada suatu data dan verifier yang bertugas memeriksa keaslian tanda tangan. Setiap signatory mempunyai kunci publik dan privat. Kunci privat digunakan pada proses pembangkitan tanda tangan, sedangkan kunci publik digunakan pada proses verifikasi tanda tangan. Kunci publik diasumsikan diketahui secara umum, sedangkan kunci privat hanya diketahui oleh signatory (NIST 2009). Integritas Data Integritas data adalah keadaan saat data belum diubah secara tidak sah sejak dibuat, dikirim, dan disimpan oleh pihak yang berwenang. Kemampuan untuk mendeteksi manipulasi data (penyisipan, penghapusan, dan substitusi) mutlak diperlukan untuk
5 H(x) bebas dari collision. Fungsi hash dikatakan satu arah jika tidak mudah dibalikkan, dalam artian secara perhitungan tidak mudah mendapatkan nilai masukan x dengan menggunakan nilai hash h dengan H(x) = h. Algoritme MD5 MD5 merupakan fungsi hash satu arah yang diciptakan oleh Ron Rivest. MD5 ialah salah satu aplikasi yang digunakan untuk mengetahui bahwa pesan yang dikirim tidak mengalami perubahan sewaktu berada di jaringan. Algoritme MD5 secara garis besar ialah pengambilan pesan yang mempunyai panjang tidak tetap diubah menjadi ‘sidik jari’ atau ‘intisari pesan’ yang mempunyai panjang tetap yaitu 128 bit. ‘Sidik jari’ ini tidak dapat dibalik untuk mendapatkan pesan, dengan kata lain tidak ada orang yang dapat melihat pesan dari ‘sidik jari’ MD5 (Sofwan et al. 2006). Dalam MD5, terdapat lima langkah yang dibutuhkan untuk menghitung intisari pesan (Schneier 1996), yaitu:
4
1 Penambahan bit-bit pengganjal
T[i]
= elemen tabel T ke-i
Pesan ditambah dengan sejumlah bit pengganjal sedemikian sehingga panjang pesan (dalam satuan bit) kongruen dengan modulo 512 = 448. Jika panjang 448 bit, pesan tersebut ditambah 512 bit menjadi 960 bit. Bit-bit pengganjal terdiri atas sebuah bit 1 diikuti dengan sisanya bit 0.
+
= operasi penjumlahan modulo 232
2 Penambahan nilai panjang pesan semula
d←c
Pesan yang telah diberi bit-bit pengganjal selanjutnya ditambah lagi dengan 64 bit yang menyatakan panjang pesan semula. Jika panjang pesan lebih dari 264 bit, yang diambil ialah panjangnya dalam modulo 264. Setelah ditambah 64 bit, panjang pesan sekarang menjadi kelipatan 512 bit.
c←b
fF → F(b,c,d) → (b
c)
(~b
d)
3 Inisialisasi penyangga MD
fG → G(b,c,d) → (b
d)
(c
~d)
MD5 membutuhkan empat buah penyangga yang masing-masing penyangga panjangnya 32 bit. Keempat penyangga tersebut menampung hasil antara dan hasil akhir. Keempat penyangga tersebut ialah:
fH → H(b,c,d) → b
c
d
fI → I(b,c,d) → b
(b
~d)
Setiap kali selesai melakukan satu operasi dasar, penyangga-penyangga itu digeser secara sirkuler dengan cara pertukaran sebagai berikut: temp ← d
b←a a ← temp Fungsi-fungsi dasar MD5 ialah:
C = FEDCBA98
Setelah putaran keempat, a, b, c, dan d ditambahkan ke A, B, C, dan D. Selanjutnya algoritme memproses untuk blok data berikutnya. Keluaran akhir dari algoritme MD5 ialah hasil penyambungan bit-bit di A, B, C, dan D.
D = 76543210
Kriptografi Kunci Publik
4 Pengolahan pesan dalam blok berukuran 512 bit
Konsep kriptografi diperkenalkan oleh Whitfield Diffie dan Martin Hellman pada tahun 1976. Sistem kriptografi kunci publik mempunyai dua fungsi utama, yaitu enkripsi dan tanda tangan digital. Setiap entitas akan mendapatkan sepasang kunci, yaitu kunci publik (bersifat umum) dan kunci privat (bersifat rahasia). Kebutuhan pengirim dan penerima akan informasi rahasia dihilangkan, dikarenakan semua komunikasi hanya melibatkan kunci publik saja dan tanpa harus mengirimkan atau berbagi kunci privat (RSAL 1991a).
A = 01234567 B = 89ABCDEF
Pesan dibagi menjadi blok-blok yang masing-masing panjangnya 512 bit. Setiap blok 512 bit diproses bersama dengan penyangga MD. Proses ini terdiri atas empat buah putaran dengan menggunakan fungsi fF, fG, fH, dan fI. Masing-masing fungsi terdiri atas 16 kali operasi dasar. Pada MD5 terdapat sebuah tabel T, dengan setiap operasi dasar menggunakan satu elemen dari tabel T. Operasi dasar MD5 ialah: a ← b + CLSs(a + g(b,c,d) + X[k] + T[i]) dengan, a,b,c,d = empat buah peubah penyangga 32 bit (nilai a = A, b = B, c = C, d = D) g
= salah satu fungsi fF, fG, fH, atau fI
CLSs
= circular left shift sebanyak s bit
X[k]
= kelompok 32 bit ke-k dari blok 512 bit message ke-q. Nilai k = 0 sampai 15
Kriptografi kunci asimetri beberapa keuntungan, yaitu : 1 Hanya kunci kerahasiaannya.
privat
yang
memiliki dijaga
2 Tidak ada kebutuhan untuk mengirim kunci privat, tidak seperti pada sistem kunci simetri. 3 Pasangan kunci publik/privat tidak perlu diubah dalam periode waktu yang lama. 4 Dapat digunakan dalam pengiriman kunci simetri.
5
5 Beberapa algoritme kunci publik dapat digunakan dalam pemberian tanda tangan digital.
Langkah-langkah yang dilakukan untuk membangkitkan tanda tangan dari sebuah pesan m ialah sebagai berikut:
Adapun kelemahan yang kriptografi kunci asimetri ialah:
a Hitung = R(m), sebuah bilangan bulat dalam jangkauan [0, n – 1].
dimiliki
1 Enkripsi dan dekripsi membutukan waktu yang lama karena menggunakan bilangan yang sangat besar.
b Hitung s =
2 Ukuran ciphertext lebih besar daripada plaintext.
3 Verifikasi tanda tangan
mod n.
c Tanda tangan untuk m ialah s.
besar
Langkah-langkah yang dilakukan untuk melakukan verifikasi tanda tangan s dan mendapatkan kembali pesan m ialah:
4 Ciphertext tidak memberikan informasi mengenai autentikasi pengirim.
a Dapatkan kunci publik (n, e) dari pihak pembuat tanda tangan.
Beberapa algoritme kriptografi kunci publik yang biasa digunakan dalam tanda tangan digital ialah RSA, ElGamal, Schnorr, dan DSA.
b Hitung
3 Ukuran kunci biasanya lebih daripada ukuran kunci simetri.
Algoritme RSA Algoritme RSA adalah algoritme yang dikembangkan oleh Rivest, Shamir, dan Adelman. Algoritme RSA digunakan untuk pembangkitan dan verifikasi tanda tangan digital. Tanda tangan digital yang dibuat menggunakan algoritme RSA terdiri atas kunci privat yang digunakan untuk menghitung tanda tangan digital dan kunci publik yang digunakan untuk melakukan verifikasi tanda tangan digital (NIST 2009). Skema signature (penandaan) RSA ialah sebagai berikut (Menezes et al. 1996):
mod n.
c Lakukan verifikasi bahwa tidak, tolak tanda tangan. d Dapatkan kembali m =
; jika .
Keterangan variabel-variabel dalam skema penandaan RSA ialah: n = modulus = fungsi Euler phi e = eksponen kunci publik d = kunci privat m = pesan R = fungsi redundansi s = tanda tangan Digital Watermarking
1 Pembangkitan kunci Setiap entitas membuat sebuah kunci publik dan kunci privat. Langkah-langkah yang dilakukan dalam pembuatan kedua kunci tersebut ialah: a Pembangkitan secara acak dua bilangan prima p dan q yang bernilai besar dan berbeda. b Hitung n = pq dan
=
= (p – 1)*(q – 1).
c Pilih sebuah bilangan bulat e, 1 < e < sedemikian sehingga gcd(e, ) = 1.
,
d Gunakan algoritme extended Euclidean untuk menghitung bilangan bulat d, 1 < d < , sedemikian sehingga ed ≡ 1 (mod ). e Didapatkan hasil berupa kunci publik (n, e); kunci privat d. 2 Pembangkitan tanda tangan
Digital watermarking ialah proses menanamkan informasi ke dalam materi digital sedemikian rupa sehingga informasi tersebut tidak dapat dilihat oleh manusia tapi dapat dengan mudah dideteksi oleh algoritme komputer (Seitz 2005). Watermarking terkait erat dengan bidang penyembunyian rahasia dan steganografi. Menurut Kipper (2004), berdasarkan persepsi manusia, watermarking dapat dibedakan menjadi: 1 Visible watermarking, watermark pada berkas digital terlihat dengan jelas. 2 Invisible watermarking, watermark pada berkas digital tidak terlihat. Menurut Thuong & Tuan (2005), watermarking memiliki persyaratan umum berikut:
6
1 Imperceptibility, perubahan yang disebabkan oleh penanaman watermark harus berada di bawah ambang batas yang dapat dilihat. 2 Robustness, data yang telah disisipkan tahan terhadap serangan. 3 Pemulihan watermark baik dengan atau tanpa data asli. 4 Ekstraksi watermark terhadap watermark.
atau
verifikasi
5 Keamanan dan kunci watermark. Watermarking sebagai suatu teknik penyembunyian data pada data digital lain dapat dimanfaatkan untuk berbagai tujuan (Supangkat et al. 2000) seperti: 1 Tamper-proofing; watermarking digunakan sebagai alat untuk mengidentifikasi atau alat indikator yang menunjukkan data digital (host) telah mengalami perubahan dari aslinya. 2 Feature location; menggunakan metode watermarking sebagai alat untuk mengidentifikasi isi dari data digital pada lokasi-lokasi tertentu, seperti contohnya penamaan objek tertentu dari beberapa objek yang lain pada suatu citra digital. 3 Annotation/caption; watermarking hanya digunakan sebagai keterangan tentang data digital itu sendiri. 4 Copyright-Labeling; watermarking dapat digunakan sebagai metode untuk penyembunyikan label hak cipta pada data digital sebagai bukti autentik kepemilikan karya digital tersebut. Semua aplikasi dari watermarking tersebut, menuntut hal-hal (parameter) yang berbeda dari penerapan metode watermarking. Parameter-parameter yang perlu diperhatikan dalam penerapan metode watermarking: 1 Jumlah data (bitrate) disembunyikan.
yang
akan
2 Ketahanan (robustness) terhadap proses pengolahan sinyal. Terdapat suatu hubungan pertukaran di antara kedua parameter (bitrate dan robustness) tersebut dengan invisibility (tidak tampak). Bila diinginkan robustness yang tinggi maka bitrate akan menjadi rendah, sedangkan watermark akan semakin visible. Sebaliknya, bila watermark semakin invisible maka robustness akan menurun.
Metode Cox Metode Cox ialah salah satu metode penyisipan watermark yang bekerja dalam domain perubahan bentuk (Alomari & AlJaber 2004). Metode ini mendukung ketahanan terhadap operasi-operasi sinyal (seperti lossy compression, filtering, konversi digital-analog dan analog-digital, requantization, dan lainnya), ketahanan terhadap operasi-operasi geometris umum (seperti cropping, scaling, rotasi, translasi, dan lainnya. (Cox et al. 1997). Metode ini bekerja pada domain DCT (Discrete Cosine Transform), bekerja dengan menanamkan sejumlah urutan bilangan real sepanjang n pada citra N N. Cover image ditransformasikan terlebih dahulu menjadi koefisien DCT N N, kemudian bilangan real tersebut ditanamkan pada n koefisien DCT yang paling besar, tidak termasuk komponen DC-nya. Verifikasi dilakukan dengan menggunakan citra asli dikurangi citra yang sudah disisipi watermark. Proses penyisipan watermark ke dalam cover image dilakukan dengan mengubah nilai DCT pada komponen DCT terpilih dapat dilihat pada Persamaan 1 berikut (Jemi 2007): watermarked_image(i,j) = dct_cover(i,j) + α * dct_watermark(i,j)
(1)
Nilai α berupa rentang 0<α≤1, merupakan tingkat kejelasan watermark yang akan disisipkan ke dalam cover image. Pengodean Gray Code Gray code, juga dikenal sebagai reflected binary code, dinamakan atas penemunya yaitu Frank Gray. Gray code ialah pengodean angka sehingga angka-angka yang berdekatan memiliki satu digit yang berbeda (Weisstein 2003). Pengubahan bilangan biner d1 d2 ... dn-1 dn menjadi bilangan biner Gray code dimulai dari digit paling kanan atau LSB dn. Jika dn-1 bernilai 1, maka ubah nilai dn dengan 1-dn. Jika tidak, biarkan saja. Kemudian, proses dilanjutkan ke dn-1, lakukan hal yang sama sampai dengan d1 maka akan didapatkan bilangan biner Gray code g1 g2 ... gn-1 gn. Untuk mengubah Gray code g1 g2 ... gn-1 gn menjadi bilangan biner awal, lakukan perhitungan dimulai dari digit ke-n, dengan nilai digit paling kiri selalu bernilai tetap.
7
Lakukan perhitungan seperti pada Persamaan 2. 2
∑
(2)
Jika ∑ bernilai 1, ubah dengan 1 . Selanjutnya lakukan perhitungan seperti pada Persamaan 3 sampai pada paling kiri. ∑
2
(3)
METODOLOGI PENELITIAN Penelitian ini dilakukan melalui 10 tahapan yang dapat dilihat pada Gambar 3. Tahapan utama dari penelitian ini merupakan bagian dari proses penerapan integritas dan autentikasi data terhadap citra yang terdiri atas 4 (empat) tahapan, yaitu pembangkitan tanda tangan digital, penyisipan watermark, ekstraksi watermark, dan verifikasi tanda tangan digital.
Peak Signal to Noise Ratio (PSNR) Signal to Noise Ratio (SNR) digunakan pada matriks distorsi pixel based visual dan digunakan untuk mengukur distorsi antara citra asli dengan citra setelah dilakukan proses terhadapnya (Katzenbeisser et al. 2000, diacu dalam Rosanja 2011). Sedangkan PSNR merupakan sebuah istilah dalam engineering yang digunakan untuk mengukur rasio antara kekuatan kemungkinan maksimum dari sebuah sinyal dan kekuatan pengorupsian noise yang dapat mempengaruhi kemurnian representasi aslinya. Hasil penghitungan ini memiliki satuan dB (desibel). Nilai PSNR yang rendah menunjukkan bahwa citra telah mengalami distorsi yang cukup besar. Jika nilai PSNR lebih besar dari 30 dB, hasil dekripsi mempunyai kualitas yang bagus (Rosanja 2011). Nilai PSNR dapat dihitung dengan menggunakan Persamaan 4: PSNR = 10 log10
MAX
(4)
MSE
Nilai MSE dapat dihitung menggunakan Persamaan 4: MSE
∑
∑
|||I(i,j) – K(i,j)||2
Keterangan variabel-variabel Persamaan 4 dan 5 ialah: I
= citra cover
K
= citra watermarked image
dengan (5) dalam Gambar 3 Alur metode penelitian. Pembangkitan Tanda Tangan Digital
MAXI = nilai piksel maksimum pada citra I MSE
= Mean Squared Error, yang menunjukkan rata-rata noise yang terjadi antara citra I dan citra K
m
= jumlah baris dari citra I
n
= jumlah kolom dari citra I
Langkah-langkah yang dilakukan dalam pembangkitan tanda tangan digital ialah: 1 Penghitungan nilai hash (message digest) dari citra yang dijadikan sebagai cover menggunakan teknik hashing MD5. 2 Pengodean message digest menggunakan teknik pengodean Gray code untuk memanipulasi nilai message digest yang asli (manipulated MD). Tujuan dari penggunaan Gray code dalam manipulasi nilai message digest ialah mempersulit
8
kriptanalis dalam melakukan kriptanalisis. Salah satu serangan yang dapat dilakukan terhadap teknik hashing ialah pencarian collision yang tidak dapat dilakukan selama kriptanalis tidak mengetahui bahwa representasi bit pada nilai hash menggunakan Gray code.
3 Enkripsi nilai message digest hasil manipulasi menggunakan teknik enkripsi asimetris RSA. Secara acak, akan dihasilkan kunci privat yang akan digunakan untuk enkripsi, kunci publik untuk dekripsi, modulus, dan digital signature berupa angka desimal. Penyisipan Watermark Langkah-langkah yang dilakukan dalam penyisipan watermark ialah: 1 Pengubahan digital signature menjadi citra berformat BMP yang akan dijadikan sebagai watermark, dengan cara mengubah nilai dari tiap angka desimalnya menjadi bilangan biner (0 dan 1), maka akan dihasilkan citra dengan dua bit warna (hitam dan putih).
2 Penyisipan watermark ke dalam cover menggunakan metode Cox, maka akan dihasilkan citra yang sudah tersisipi watermark (watermarked image). Alur pembangkitan tanda tangan digital dan penyisipan watermark dapat dilihat pada Gambar 4.
Gambar 4 Alur pembangkitan tanda tangan digital dan penyisipan watermark.
Ekstraksi Watermark
Verifikasi Tanda Tangan Digital
Langkah-langkah yang dilakukan dalam ekstraksi watermark ialah:
Langkah-langkah yang dilakukan dalam verifikasi tanda tangan digital ialah:
1 Ekstraksi watermark dari citra yang telah diberi watermark (watermarked image) menggunakan metode Cox.
1 Dekripsi extracted watermark yang sudah disaring menggunakan kunci publik yang dihasilkan pada tahap penyisipan watermark untuk mendapatkan manipulated MD.
2 Penyaringan extracted watermark untuk menghilangkan distorsi sehingga akan didapatkan kembali nilai dari watermark yang sebenarnya. Terdapat dua metode penyaringan, yaitu metode A dan metode B. Metode A menggunakan bantuan watermark asli dalam proses penyaringan sedangkan metode B menggunakan pengklasifikasian nilai dari grayscale (0255) per piksel, jika piksel bernilai 128255 maka nilai piksel tersebut diubah menjadi 1 (warna putih), jika piksel bernilai 0-127 maka nilai piksel tersebut diubah menjadi 0 (warna hitam).
2 Dekode manipulated MD untuk mendapatkan message digest yang asli. 3 Pengecekan kesamaan nilai message digest yang didapat dari tahap penyisipan watermark dengan message digest asli yang didapat pada tahap ekstraksi watermark. Jika nilainya sama, citra tersebut sah. Jika tidak, citra tersebut tidak sah.
9
Alur ekstraksi watermark dan verifikasi tanda tangan digital dapat dilihat pada Gambar 5.
Tabel 1 Berkas citra yang digunakan dalam percobaan. Nama Berkas
Ukuran (KB)
Model Warna
1-Gray (640x480)
301
Grayscale
1-RGB (640x480)
900
RGB
2-Gray (800x600)
469
Grayscale
2-RGB (800x600)
1370
RGB
3-Gray (1024x768)
769
Grayscale
3-RGB (1024x768)
2250
RGB
Perangkat keras yang digunakan pada saat implementasi berupa notebook dengan spesifikasi berikut: Prosesor Intel® Core™2 Duo CPU, T6660 @ 2.20 GHz. RAM dengan kapasitas 2 GB. Hard-disk dengan kapasitas 132 GB. Perangkat lunak yang digunakan memiliki spesifikasi berikut: Sistem operasi Premium.
Windows
7
Home
Bahasa pemrograman MATLAB R2008b. Adobe Photoshop CS3. Microsoft Office 2007 Picture Manager. Percobaan untuk masing-masing gambar dilakukan sebanyak satu kali percobaan. Total ada enam kali percobaan. Gambar 5 Alur ekstraksi watermark dan verifikasi tanda tangan digital. Implementasi Berkas citra yang digunakan pada penelitian ini terdiri atas beberapa berkas citra berformat BMP. Tiap gambar terdiri atas dua jenis model warna, yaitu RGB dan grayscale. Daftar berkas citra yang digunakan dapat dilihat pada Tabel 1.
Analisis Kualitas dan Ketahanan Analisis kualitas yang dilakukan ialah pengukuran kualitas watermarked image dan extracted watermark dibandingkan dengan citra asli menggunakan fungsi PSNR. Kualitas watermarked image dan extracted watermark dinyatakan baik jika nilainya di atas 30 dB. Analisis ketahanan yang dilakukan ialah verifikasi nilai message digest hasil ektraksi dengan message digest asli setelah watermarked image diberikan serangan berupa operasi rotasi citra (90o, 180o, 270o), kompresi JPEG, cropping, dan resizing.
10
Penarikan Kesimpulan Setelah didapatkan hasil dari analisis kualitas dan ketahanan, maka dapat ditarik kesimpulan mengenai kualitas hasil teknik watermarking menggunakan metode Cox terhadap citra dan ketahanan tambahan layanan keamanan dan kerahasiaan yang dibuat terhadap serangan yang diberikan.
HASIL DAN PEMBAHASAN Penelitian ini berhasil mengimplementasikan teknik pembangkitan tanda tangan digital, penyisipan watermark, ekstraksi watermark, dan verifikasi tanda tangan digital yang diusulkan di awal penelitian, dengan catatan percobaan dilakukan dalam keadaan normal (tanpa pemberian serangan). Implementasi Pembangkitan Tanda Tangan Digital Pembangkitan tanda tangan digital dimulai dengan penghitungan nilai hash atau message digest dari setiap cover image dengan menggunakan fungsi hash MD5. Selanjutnya message digest dikodekan menggunakan Gray code untuk menghasilkan message digest yang telah dimanipulasi (manipulated message digest). Nilai message digest dan manipulated message digest dari lima berkas citra percobaan memiliki panjang yang sama, yaitu sebanyak 32 karakter atau 128 bit, tetapi memiliki nilai yang berbeda seperti yang terdapat pada Lampiran 1. Nilai manipulated message digest setiap file dienkripsi menggunakan teknik enkripsi asimetris RSA. Teknik enkripsi asimetris RSA yang digunakan bersifat acak sehingga setiap kali proses enkripsi dijalankan akan dihasilkan kunci privat, kunci publik, modulus, dan tanda tangan digital yang berbeda-beda. Nilai dari kunci privat, kunci publik, modulus, dan tanda tangan digital dari setiap berkas dapat dilihat pada Lampiran 2. Implementasi Penyisipan Watermark Hasil dari pembangkitan tanda tangan digital setiap cover image diubah menjadi citra dengan dua bit warna (0 dan 1) yang akan digunakan sebagai watermark. Watermark dalam ukuran sebenarnya dari setiap tanda tangan digital berkas citra dapat dilihat pada Tabel 2. Hasil pembesaran citra watermark dapat dilihat pada Lampiran 3.
Watermark disisipkan ke dalam berkas citra asalnya menggunakan metode Cox dengan nilai alpha yang digunakan ialah 0.5. Nilai alpha yang digunakan berdasarkan penelitian yang telah dilakukan oleh Jemi (2007). Hasil yang didapat dari proses ini berupa watermarked image dan nilai PSNR sebagai petunjuk kualitas dari watermarked image. Proses ini menghasilkan lima berkas watermarked image dengan nilai PSNR di atas 30 dB yang berarti watermarked image berkualitas baik (Lampiran 4). Tabel 2 Citra watermark dalam ukuran sebenarnya. Nama Berkas (.bmp)
Citra Watermark
1-Gray (640x480) 1-RGB (640x480) 2-Gray (800x600) 2-RGB (800x600) 3-Gray (1024x768) 3-RGB (1024x768) Implementasi Ekstraksi Watermark Ekstraksi dilakukan dengan menggunakan metode Cox. Hasil ekstraksi watermark dari watermarked image atau disebut dengan extracted watermark akan mengalami distorsi sehingga kualitasnya tidak sebaik watermark asli. Kualitas dari extracted watermark dapat diperbaiki dengan menggunakan metode filtering sehingga nilai dari extracted watermark sama dengan nilai watermark asli. Hasil dari filtering kemudian dibaca sebagai bilangan biner yang merupakan tanda tangan digital. Implementasi Verifikasi Tanda Tangan Digital Tanda tangan digital hasil filtering didekripsi menggunakan kunci publik dan modulus yang dihasilkan pada tahap pembangkitan tanda tangan digital untuk mendapatkan nilai manipulated message digest. Selanjutnya, manipulated message digest didekodekan menggunakan Gray code
11
untuk mendapatkan nilai message digest yang asli. Verifikasi terhadap message digest dilakukan dengan cara membandingkan message digest hasil ekstraksi dengan message digest dari cover image. Apabila nilai message digest sama, cover image yang telah disisipi watermark masih dalam kondisi aslinya. Sebaliknya, jika nilai message digest tidak sama, citra cover yang telah disisipi watermark telah mengalami perubahan atau serangan. Ringkasan hasil dari ekstraksi watermark ini dapat dilihat pada Lampiran 5. Analisis Kualitas Watermarked Image dan Extracted Watermark Hasil yang diperoleh dari proses penyisipan watermark ialah watermarked image, sedangkan hasil dari ekstraksi watermarked image ialah berkas citra extracted watermark. Setelah penyisipan watermark, berkas watermarked image akan dihitung kualitasnya melalui perhitungan PSNR dengan menggunakan Persamaan 3. Hasil perhitungan PSNR dapat dilihat pada Tabel 3. Tabel 3 Hasil perhitungan PSNR dari watermarked image Nama Berkas
PSNR (dB)
1-Gray (640x480)
37.83
1-RGB (640x480)
81.14
2-Gray (800x600)
38.03
2-RGB (800x600)
82.98
3-Gray (1024x768)
41.02
3-RGB (1024x768)
85.02
Berdasarkan Tabel 3, nilai PSNR dari setiap watermarked image di atas 30 dB sehingga dapat disimpulkan bahwa kualitas dari watermarked image tersebut masih baik. Selanjutnya, dilakukan perhitungan PSNR terhadap extracted watermark. Hasil perhitungan PSNR dapat dilihat pada Tabel 4. Berdasarkan hasil perhitungan, tidak semua extracted watermark yang diekstrak dari setiap watermarked image memiliki kualitas yang baik, maka diperlukan proses filtering untuk mendapatkan citra watermark yang bernilai sama dengan citra aslinya.
Tabel 4 Hasil perhitungan PSNR dari extracted watermark. Nama Berkas (.bmp)
Extracted Watermark
PSNR (dB)
1-Gray (640x480)
28.0
1-RGB (640x480)
26.3
2-Gray (800x600)
40.2
2-RGB (800x600)
38.2
3-Gray (1024x768)
28.0
3-RGB (1024x768)
26.3
Analisis Ketahanan Pengujian ketahanan watermark dilakukan dengan cara mengekstraksikan watermark dari watermarked image setelah diberikan beberapa jenis serangan, yaitu rotasi citra, kompresi JPEG, cropping, dan resizing. Aplikasi bantuan Microsoft Office 2007 Picture Manager digunakan pada pengujian ketahanan terhadap serangan kompresi JPEG dan Adobe Photoshop CS3 digunakan pada pengujian ketahanan terhadap serangan cropping dan resizing. Uji Ketahanan Watermarked Image melalui Serangan Rotasi Uji ketahanan terhadap serangan rotasi dilakukan terhadap watermarked image dengan melakukan rotasi dengan tiga jenis sudut rotasi, yaitu 90o, 180o, dan 270o. Pada saat rotasi dilakukan, nilai watermark akan berubah secara drastis sehingga tidak dapat dilanjutkan ke proses berikutnya. Burukmya hasil uji ketahanan watermarked image terhadap serangan rotasi terlihat dari nilai rata-rata PSNR extracted watermark yaitu sebesar 2.89 dB (Lampiran 6). Dari pengujian tersebut dapat disimpulkan bahwa teknik fragile watermarking dan penandaan digital yang diterapkan tidak tahan terhadap serangan rotasi. Uji Ketahanan Watermarked Image melalui Serangan Kompresi JPEG Uji ketahanan terhadap serangan kompresi JPEG dilakukan terhadap watermarked image
12
yang berformat BMP dikompresi menjadi format JPEG. Hasil pengujian menunjukkan bahwa citra watermark tetap dapat diekstraksi dari watermarked image yang telah mengalami serangan kompresi JPEG. Extracted watermark berhasil divalidasi sesudah melalui tahap filtering walaupun tidak semua extracted watermark memiliki kualitas yang baik. Hal ini terlihat dari nilai PSNR masing-masing extracted watermark (Lampiran 7). Dari pengujian tersebut dapat disimpulkan bahwa teknik fragile watermarking dan penandaan digital yang diterapkan tahan terhadap serangan kompresi JPEG, namun diperlukan proses filtering terhadap extracted watermark untuk mendapatkan citra watermark yang bernilai sama dengan citra aslinya. Uji Ketahanan Watermarked Image melalui Serangan Cropping Uji ketahanan terhadap serangan cropping dilakukan terhadap watermarked image dengan cara membuang sebagian atau bagian tertentu dari watermarked image. Pengkestraksian watermark berhasil dilakukan dengan hasil semua watermark rusak atau tidak dapat dikenali lagi. Hal ini dikarenakan tidak dapat dilakukannya perbandingan nilainilai DCT pada setiap piksel akibat adanya perubahan ukuran dan posisi piksel pada watermarked image. Burukmya hasil uji ketahanan watermarked image terhadap serangan cropping terlihat dari nilai rata-rata PSNR extracted watermark yaitu sebesar 3.17 dB (Lampiran 8). Dari pengujian tersebut dapat disimpulkan bahwa teknik fragile watermarking dan penandaan digital yang diterapkan tidak tahan terhadap serangan cropping. Uji Ketahanan Watermarked Image melalui Serangan Resizing Uji ketahanan terhadap serangan resizing dilakukan terhadap watermarked image dengan cara melakukan pembesaran ukurannya 50% lebih besar dan pengecilan ukurannya 50% lebih kecil dari ukuran watermarked image sebenarnya, setelah itu dilakukan ekstraksi watermark. Hasil dari ekstraksi menunjukkan bahwa watermark rusak atau sudah tidak dapat dikenali lagi. Hal ini disebabkan operasi resizing bekerja dengan mengubah ukuran citra yang mengakibatkan perubahan jumlah piksel sehingga tidak dapat dilakukan perbandingan nilai-nilai DCT pada
setiap piksel ketika proses ekstraksi dilakukan. Burukmya hasil uji ketahanan watermarked image terhadap serangan resizing terlihat dari nilai rata-rata PSNR extracted watermark yaitu sebesar 3.63 dB untuk pembesaran ukuran 50% dan 2.89 dB untuk pengecilan ukuran 50% (Lampiran 9). Dari pengujian tersebut dapat disimpulkan bahwa teknik fragile watermarking dan penandaan digital yang diterapkan tidak tahan terhadap serangan resizing.
KESIMPULAN DAN SARAN Kesimpulan Berdasarkan hasil analisis yang dilakukan pada penelitian ini, kesimpulan yang diperoleh sebagai berikut: 1 Penerapan teknik penandaan digital dan watermarking dengan tambahan layanan keamanan yang dibuat dapat menghasilkan kualitas yang baik pada berkas watermarked imaged karena nilai PSNR masing-masing watermarked image tersebut di atas 30 dB. 2 Penerapan teknik penandaan digital dan watermarking dengan tambahan layanan keamanan yang dibuat berhasil mengekstrak watermark yang terkandung di dalam watermarked image. 3 Penerapan teknik penandaan digital dan watermarking dengan tambahan layanan keamanan yang dibuat memiliki ketahanan terhadap serangan kompresi JPEG, tetapi tidak tahan terhadap serangan rotasi, cropping, dan resizing. Saran 1 Pengujian ketahanan dengan serangan lain.
dapat
diujikan
2 Teknik fragile watermarking dapat menggunakan berkas citra yang digunakan sebagai cover dan watermark yang dihasilkan dengan format yang berbeda. 3 Pengujian metode filtering lebih lanjut, untuk mengetahui kekurangan dan kelebihan masing-masing metode.
13
DAFTAR PUSTAKA Alomari RS, Al-Jaber A. 2004. A fragile watermarking algorithm for content authentication. International Journal of Computing & Information Sciences. 2(1):27-37. Ansorry IF. 2011. Protokol legalisasi digital menggunakan algoritme MD5 dan RSA [skripsi]. Bogor: Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor. Cox IJ, Kilian J, Leighton T, Shamoon T. 1997. Secure spread spectrum watermarking for multimedia. IEEE Trans on Image Processing. 6(12):1673-1687. [NIST]. 2009. Federal Information Processing Standards. Digital Signature Standard (DSS) 186(3). Gaithersburg (US): NIST. Jemi A. 2007. Penerapan watermarking untuk penyisipan hak cipta pada citra digital dengan metode Cox [skripsi]. Bogor: Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor. Katzenbeisser S, Petitcolas FAP. 2000. Information Hiding Techniques for Steganography and Digital Watermarking. London: Artech House. Kipper G. 2004. Investigator’s Guide to Steganography. Washington: Auerbach Publications. Menezes A, van Oorschot P, Vanstone S. 1996. Handbook of Applied Cryptography. London: CRC Press. Rosanja HT. 2011. Penggabungan teknik kompresi data dan enkripsi sandi alir untuk keamanan citra digital [skripsi]. Bogor: Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor.
Schneier B. 1996. Applied Cryptography. Ed ke-2. New York: John Wiley & Sons. Seitz J. 2005. Digital Watermarking for Digital Media. Hershey: Information Science. Stiawan D. 2005. Sistem Keamanan Komputer. Jakarta: Elex Media Komputindo. Sofwan A, Budi PA, Susanto T. 2006. Aplikasi kriptografi dengan algoritme Message Digest 5 (MD5). Transmisi. 1:2227.doi:Juni2006. Supangkat SH, Kuspriyanto, Juanda. 2000. Watermarking sebagai teknik penyembunyian label hak cipta pada data digital. Majalah Ilmiah Teknik Elektro. 6(3):19-27.doi:Agustus2000. Le-Tien T, Nguyen TT. 2005. Copyright Protection for Digital Image. Di dalam: International Symposium on Electrical & Electronics Engineering 2005; 11-12 Okt 2005. Ho Chi Minh. Weisstein EW. 2003. Gray Code. http://mathworld.wolfram.com/GrayCode. html. [23 Sep 2011]. [RSAL] RSA Laboratories. 1991a. The Public-Key Cryptography Standards (PKCS). http://www.rsa.com/rsalabs/node.asp?id=2 165. [25 Sep 2011]. [RSAL] RSA Laboratories. 1991b. The Public-Key Cryptography Standards (PKCS). http://www.rsa.com/rsalabs/node.asp?id=2 176. [25 Sep 2011].
LAMPIRAN
15
Lampiran 1 Nilai dari message digest dan manipulated message digest Nama Berkas
Ukuran (KB)
Model Warna
Message Digest
1-Gray (640x480)
301
Grayscale
a5017d85f360d806886bd c7b4fcb88bd
Manipulated Message Digest f7014bc78250bc05cc5eb a4e68aecceb
1-RGB (640x480)
900
RGB
b4b6b7fe3544e034e1e385 9f0c5df9de
e6e5e489276690269192 c7d80a7b8db9
2-Gray (800x600)
469
Grayscale
a08a336da297fc62225ee4 1b749fe677
f0cf225bf3d48a5333799 61e46d89544
2-RGB (800x600)
1370
RGB
5cfce43c11ce87a4e56dd7 56426a8746
7a8a962a11a9c4f6975bb 475635fc465
3-Gray (1024x768)
769
Grayscale
f80c078d88a4d188e79f47 b07a5c6464
8c0a04cbccf6b1cc94d86 4e04f7a5656
3-RGB (1024x768)
2250
RGB
7fde6771c64ac3b14fee49 97509d1735
48b95441a56fa2e168996 dd470db1427
16
Lampiran 2 Hasil pembangkitan tanda tangan digital Nama Berkas
Kunci Privat
Kunci Publik
Modulus
Tanda Tangan Digital Baris 1-16 Baris 17-32 96330 14254 92937 14254 0 17811 1 62796 9240 34448 34448 77938 14254 9240 92937 62796 200 77520 104102 200 17811 77938 0 62796 34448 14254 14254 14254 0 62796 17811 34448
1-Gray (640x480)
83573
151637
161393
1-RGB (640x480)
279507
39887
520669
12258 29915 12258 43139 12258 40223 18267 38115 42576 21334 29915 29915 38115 0 42576 29915
38115 1 38115 42576 14155 21334 19024 18267 0 16069 21334 24591 18267 19024 24591 38115
2-Gray (800x600)
450085
87037
550339
63644 0 259065 63644 480835 480835 17393 14048 63644 514841 125354 480613 501009 211711 17393 514841
514841 514841 239544 382033 382033 83255 1 139591 480613 83255 125354 501009 382033 17393 480613 480613
17
Lampiran 2 (Lanjutan) Nama Berkas
Kunci Privat
Kunci Publik
Modulus
Tanda Tangan Digital Baris 1-16 Baris 17-32 70389 35209 82070 70389 83695 108419 82070 41204 35209 41204 36420 93160 86208 70389 82070 108419 1 36420 1 107346 82070 108419 35209 56422 127580 127580 93160 93160 56422 36420 36420 108419
2-RGB (800x600)
123671
100391
163349
3-Gray (1024x768)
381989
113357
467231
57371 282107 0 374064 0 427937 282107 19637 282107 282107 47644 403560 19637 1 282107 282107
35153 427937 99502 57371 403560 427937 73004 0 427937 47644 165164 374064 92250 403560 92250 403560
3-RGB (1024x768)
136559
51539
383017
371648 252479 379407 272175 326820 371648 371648 1 203627 326820 90552 377053 203627 286811 338767 1
90552 252479 272175 272175 90552 11312 11312 371648 137026 0 11312 379407 1 371648 286811 137026
18
Lampiran 3 Citra watermark hasil pembesaran Nama Berkas 1-Gray (640x480)
1-RGB (640x480)
2-Gray (800x600)
Citra Watermark
19
Lampiran 3 (lanjutan) Nama Berkas 2-RGB (800x600)
3-Gray (1024x768)
3-RGB (1024x768)
Citra Watermark
20
Lampiran 4 Hasil penyisipan watermark Nama Berkas
Watermarked Image
PSNR (dB)
1-Gray (640x480)
37.83
1-RGB (640x480)
81.14
2-Gray (800x600)
38.03
21
Lampiran 4 (Lanjutan) Nama Berkas
Watermarked Image
PSNR (dB)
2-RGB (800x600)
82.98
3-Gray (1024x768)
41.02
3-RGB (1024x768)
85.02
22
Lampiran 5 Ringkasan hasil ekstraksi Nama Berkas
Extracted Watermark Citra
PSNR (dB)
Filtered Watermark Metode A
Metode B
Verifikasi Metode A
Metode B
1-Gray (640x480)
28.0
Sah
Sah
1-RGB (640x480)
26.3
Sah
Sah
2-Gray (800x600)
40.2
Sah
Sah
2-RGB (800x600)
38.2
Sah
Sah
23
Lampiran 5 (lanjutan) Nama Berkas
Extracted Watermark Citra
PSNR (dB)
Filtered Watermark Metode A
Metode B
Verifikasi Metode A
Metode B
3-Gray (1024x768)
38.2
Sah
Sah
3-RGB (1024x768)
28.6
Sah
Sah
24
Lampiran 6 Hasil uji ketahanan terhadap serangan rotasi Nama Berkas
90o Extracted PSNR (dB) Watermark
Rotasi 180o Extracted PSNR (dB) Watermark
270o Extracted PSNR (dB) Watermark
1-Gray (640x480)
2.65
3.31
2.83
1-RGB (640x480)
2.97
3.05
2.78
2-Gray (800x600)
2.8
2.6
2.64
2-RGB (800x600)
2.58
3.10
2.7
3-Gray (1024x768)
2.86
2.65
3.13
3-RGB (1024x768)
3.01
2.86
3.05
25
Lampiran 7 Hasil uji ketahanan terhadap serangan kompresi JPEG Nama Berkas
Extracted Watermark Citra
PSNR (dB)
Filtered Watermark Metode A
Metode B
Verifikasi Metode A
Metode B
1-Gray (640x480)
23.6
Sah
Sah
1-RGB (640x480)
16.7
Sah
Sah
2-Gray (800x600)
37.6
Sah
Sah
2-RGB (800x600)
24.9
Sah
Sah
26
Lampiran 7 (lanjutan) Nama Berkas
Extracted Watermark Citra
PSNR (dB)
Filtered Watermark Metode A
Metode B
Verifikasi Metode A
Metode B
3-Gray (1024x768)
31.7
Sah
Sah
3-RGB (1024x768)
18.7
Sah
Sah
27
Lampiran 8 Hasil uji ketahanan terhadap serangan cropping Nama Berkas
Cropped - Watermarked Image
Extracted Watermark
PSNR (dB)
1-Gray (640x480)
3.13
1-RGB (640x480)
3.44
2-Gray (800x600)
3.21
28
Lampiran 8 (lanjutan) Nama Berkas
Cropped - Watermarked Image
Extracted Watermark
PSNR (dB)
2-RGB (800x600)
2.74
3-Gray (1024x768)
2.91
3-RGB (1024x768)
3.44
29
Lampiran 9 Hasil uji ketahanan terhadap serangan resizing Nama Berkas
Pembesaran 50%
PSNR (dB)
Pengecilan 50%
PSNR (dB)
1-Gray (640x480)
3.98
3.03
1-RGB (640x480)
3.43
2.95
2-Gray (800x600)
4.01
2.54
30
Lampiran 9 (lanjutan) Nama Berkas
Pembesaran 50%
PSNR (dB)
Pengecilan 50%
PSNR (dB)
2-RGB (800x600)
4.03
2.6
3-Gray (1024x768)
3.65
2.94
3-RGB (1024x768)
2.69
3.23