IMPLEMENTASI BLIND WATERMARKING DALAM APLIKASI M-TICKETING BERBASISKAN JAVA Hariesya Ivan B,
[email protected] Suhono H S,
[email protected] Laboratorium Multimedia and Cyberspace Engineering Research Group (MUCER) Sekolah Teknik Elektro dan Informatika Institut Teknologi Bandung ABSTRAK Watermarking digital adalah suatu teknik untuk menanamkan pesan khusus pada suatu content yang menunjukkan pembuat data (hak cipta) atau pengguna data yang berhak. Digunakannya layanan content di dunia bisnis menuntut para provider content memberikan jaminan keamanan yang dapat dipercaya dalam melakukan kegiatan bisnis melalui perangkat mobile. m-Ticketing merupakan salah satu bentuk layanan mobile content dalam dunia bisnis yang membutuhkan jaminan keamanan. Makalah ini menjelaskan teknik implementasi watermarking pada aplikasi m-Ticketing yang dapat digunakan untuk melakukan verifikasi dan otentifikasi tiket digital. Metode yang dipakai dalam teknik watermarking adalah Discret Fourier Transform (DFT) dan diimplementasikan dengan menggunakan bahasa pemrograman Java. Proses otentifikasi dan verifikasi watermark pada tiket digital dilakukan dengan menggunakan Wireless LAN yang menghubungkan perangkat mobile (handphone) dan server. Kata kunci: m-Ticketing,Watermarking,J2ME, DFT, Wireless LAN
1.
PENDAHULUAN
1.1. Pertumbuhan Mobile Content Semakin meningkatnya perkembangan teknologi komunikasi dan informasi yang meliputi perangkat lunak maupun perangkat keras telah banyak memunculkan aplikasi-aplikasi baru yang dapat diimplementasikan pada segala aspek kehidupan terutama di bidang bisnis. Peningkatan kecepatan dan kapasitas jaringan, media penyimpanan, dan perangkat end user seperti telpon genggam memicu pertumbuhan permintaan layanan oleh konsumen. Suksesnya teknologi SMS (Send Message Service) di dunia menunjukkan bahwa permintaan terhadap mobile content sangatlah tinggi meskipun masih terbatas pada teks, logo dan ring tone. Diperkirakan di masa yang akan datang permintaan content juga akan bertambah dengan hadirnya image, musik dan video mengingat perkembangan teknologi komunikasi yang sangat pesat. Mulai digunakannya teknologi 3G (3th Generation) yang menyediakan bandwith lebih besar akan sangat mendukung transmisi data-data dengan ukuran besar. Saat ini dunia industri mulai membangun dan mengembangkan infrastruktur baru pada audio digital, image digital, video player, layanan online, dan electronic commerce maupun mobile commerce.
perangkat mobile mengalami pertumbuhan yang sangat pesat, hal ini dikarenakan java mampu memberikan suatu aplikasi yang lebih responsif, interaktif dan dinamik. Para pelanggan layanan mobile yang menggunakan teknologi java diberikan banyak keuntungan yang meliputi kreativitas dan fleksibilitas dalam memperoleh layanan content. 1.3 Watermarking Digital watermarking merupakan teknik yang digunakan untuk menyembunyikan atau menambahkan data tersembunyi seperti hak cipta atau pesan verivikasi lainnya pada audio digital, video atau image. Digital watermarking masih merupakan salah satu teknik baru di bidang proteksi data-data digital, hingga saat ini teknologi watermarking masih dalam tahap pengembangan karena masih belum ditemukan teknik yang ideal untuk implementasinya, isu-isu yang terkait dengan robustness dan ektraksi masih menjadi permasalahan utama dalam pengimplementasian watermarking. Meskipun saat ini sudah banyak algoritma atau metode yang mampu meningkatkan robustness namun hingga belum ada standar internasional dalam dalam pengimplementasiannya.
2. 1.2 Java pada Mobile Content Java muncul menjadi salah satu pilihan bahasa pemrograman, aplikasi-aplikasi java saat ini menjadi teknologi utama dalam dunia industri nirkabel, pertumbuhan penggunaan teknologi java pada
MOBILE TICKETING (M-TICKETING)
Semakin meningkatnya kebutuhan untuk transmisi data-data digital melalui jaringan nirkabel dan jaminan keamanan terhadap data-data tersebut maka
Prosiding Konferensi Nasional Teknologi Informasi & Komunikasi untuk Indonesia 3-4 Mei 2006, Aula Barat & Timur Institut Teknologi Bandung
271
Digital Right Management (DRM) menjadi sangat penting pada setiap industri mobile. Mulai digunakannya aplikasi content pada dunia bisnis, menuntut akan penggunaan teknologi penyedia layanan content yang aman dan reliable. Teknologi layanan content yang aman akan menciptakan peluang-peluang baru dalam dunia bisnis. Pada makalah ini dibahas suatu bentuk aplikasi content baru dengan memanfaatkan teknologi watermarking pada layanan penjualan tiket digital melalui perangkat mobile atau m-Ticketing. Fokus makalah ini adalah bagaimana suatu content yang berupa image dapat digunakan sebagai proses autentikasi dengan memanfaatkan teknologi watermarking untuk menanamkan kode-kode tertentu. Dengan menggabungkan aplikasi m-payment dan mticketing dalam industri transportasi, bioskop, atau industri lain yang menggunaan tiket, maka layanan content tersebut akan menciptakan suatu gaya hidup baru dalam kehidupan, seseorang yang akan bepergian ke luar kota atau luar negeri, ia dapat melakukan pemesanan tiket melalui telpon genggamnya (Handphone) dengan aplikasi mpayment ia dapat pada saat itu juga melakukan pembayaran secara online, kemudian sebagai bukti ia telah melakukan pembayaran maka ia akan mendapatkan tiket secara online berupa tiket digital (watermarked image) yang dapat digunakan sebagai bukti ia telah melakukan pemesanan tiket. 2.1 Proses Bisnis Proses bisnis aplikasi m-Ticketing dengan menggunakan watermarking terdiri dari dua bagian yaitu : 2.1.1 Pemesanan Tiket
Gb. 1 Proses bisnis pemesanan tiket
Sebelum seorang konsumen melakukan pemesanan tiket, ia harus sudah teregistrasi di server, jika belum maka konsumen tidak dapat melakukan registrasi, Jika telah teregistrasi ia dapat mengirimkan pesan pemesanan tiket melalui perangkat mobile, kemudian setelah diterima oleh server, maka server akan menyiapkan suatu image (tiket) dan dilakukan
watermark pada image tersebut, dan dikirimkan kembali ke konsumen atau pengguna. 2.2.2 Autentikasi Tiket
Gb. 2 Proses bisnis autentifikasi tiket
Konsumen mengirimkan image yang ada watemarknya melalui jaringan nirkabel yang tersedia pada area tertentu, setelah server menerima image yang dikirimkan tersebut kemudian server akan melakukan proses autentikasi terhadap watermark yang ada pada image, proses ini dilakukan dengan melakukan ekstraksi terhadap image digital tersebut. Dan jika autentikasi berhasil maka server akan mengirimkan pesan balasan kepada konsumen bahwa tiketnya valid dan konsumen dapat masuk ke dalam ruang tunggu yang telah ditentukan. 3.
WATERMARKING
Watermarking digital adalah suatu teknik untuk menyembunyikan pesan pada data digital yang meliputi audio, video dan image [5]. Pesan tersembunyi tersebut berupa kumpulan bit yang disisipkan pada bit-bit data digital, hal ini dilakukan untuk menghindari atau mencegah modifikasi data digital atau menjaga keaslian dari suatu data digital. Saat ini telah banyak algoritma watermarking yang digunakan, namun belum ada standar penggunaan watermark dalam implementasinya, hal ini dikarenakan belum adanya metode watemark yang robust terhadap segala serangan atau distorsi. Digital Image Watermarking dapat diklasifikasikan berdasarkan domain menjadi 2 jenis yaitu • Domain spasial (pixel) Watermark ditanamkan pada pixel tertentu pada suatu image. • Domain frekuensi Watermark ditanamkan pada domain frekuensi, domain frekuensi diperoleh dengan melakukan transformasi image, contoh transformasi image adalah Discret Cosine Transform (DCT), Discret Wavelet Transform (DWT), Discret Fourier Transform (DFT), dll.
Prosiding Konferensi Nasional Teknologi Informasi & Komunikasi untuk Indonesia 3-4 Mei 2006, Aula Barat & Timur Institut Teknologi Bandung
272
Fungsi utama watermarking pada makalah ini adalah menyembunyikan kode-kode tertentu pada tiket digital sehingga watermark dapat digunakan pada proses autentikasi, karena proses autentikasi membutuhkan data yang akurat maka watermark yang didapatkan dari ekstraksi data image haruslah tepat, jika tidak maka proses autentikasi gagal. Berdasarkan itulah maka teknik implementasi watermarking yang digunakan adalah fragile. Karena sifat fragilitas itulah maka seorang konsumen atau client tidak dapat melakukan modifikasi image,karena jika dilakukan maka tidak akan didapatkan watermark yang sesuai, dan mengakibatkan proses autentikasi tidak valid. Model watermarking yang digunakan juga bersifat blind, sehingga untuk mendeteksi suatu nilai watermark tidak diperlukan image pembanding namun hanya sebuah kunci untuk mendeteksi nilai watemark.
3.1 Discret Fourier Transform (DFT) Pada makalah ini watermark digunakan untuk melakukan autentikasi content, dalam hal ini adalah image digital atau tiket digital. teknik watermark yang digunakan adalah Discret Fourier Transform (DFT), teknik ini digunakan karena sifatnya yang dapat mendukung ketahanan watermark terhadap suatu distorsi geometrik [7],[8]. DFT 2-D dari citra {u(m, n) } berukuran N×N adalah didefinisikan sbg: N −1 N −1
v(k , l ) = ∑∑ u (m, n)W NkmW Nlm
(1)
m =0 n =0
0 ≤ k, l ≤ N −1
Dan invers transformnya adalah
1 N2
u (m, n) =
N −1 N −1
∑∑ v(k , l )W
− km N
W N−lm
(2)
k =0 l =0
0 ≤ k, l ≤ N −1
Berikut ini adalah representasi hasil perhitungan magnitude DFT: u=0 u=N/2 u=N v=N
v=N/2
v=0 Gb. 3 Magnitude
Seperti yang terlihat pada image diatas, lingkaran ditengah image merupakan area frekuensi rendah, area ini bertanggung jawab terhadap nilai-nilai pixel yang banyak muncul dari suatu image, kemudian di sudut-sudut merupakan area frekuensi tinggi yang bertanggung jawab terhadap detail dari suatu image(smoothing dan blurring). Di bagian antara sudut dan pusat merupakan area frekuensi tengah, pada bagian inilah watermark makalah ini ditanamkan.
3.1.1 Embedding Watermark Watermark ditanamkan pada magnitude hasil perhitungan DFT sehingga operasi shifting pada domain spasial suatu image tidak akan berpengaruh terhadap watermark. Teknik embed message pada makalah ini adalah sebagai berikut : 1. Jika image berwarna (RGB), maka image tersebut diubah terlebih dahulu ke dalam bentuk YUV. 2. Melakukan perhitungan 2-D DFT layer luminance (Y). Formulasi matrix dari DFT 2 dimensi adalah sebagai berikut :
Sifat-sifat DFT : • Rotasi
F (v1 cosθ − v2 sin θ , v1 sin θ + v 2 cos θ ) ↔ f (u1 cosθ − u 2 sin θ , u1 sin θ + u 2 cosθ )
•
v = Wu (3)
W 0 W 0 W0 0 W1 W2 W W = W 0 W 2 W4 ... ... ... W 0 W N −1 W 2 ( N −1)
Dari rumus diatas terlihat bahwa rotasi sebesar θ pada suatu image akan mengakibatkan hasil perhitungan DFT juga akan mengalami rotasi sebesar θ. Scaling
1 v1 v 2 F , ↔ f (λu1 , λu 2 ) λ λ λ
(3)
(4)
Perubahan skala pada image mengakibatkan perubahan invers skala pada hasil perhitungan DFT.
Dan
W =e
... ... ... ... ...
W0 W ( N −1) W 2 ( N −1) ... 2 W ( N −1)
− j 2Π N
Prosiding Konferensi Nasional Teknologi Informasi & Komunikasi untuk Indonesia 3-4 Mei 2006, Aula Barat & Timur Institut Teknologi Bandung
273
4. 3.
4.
Menghitung nilai magnitude dan phase. Kemudian dilakukan translasi periodik pada nilai magnitude. Setelah itu nilai magnitude diubah ke dalam matrix NxN dan membaginya menjadi empat bagian sehingga diperoleh matrix N/2xN/2. Menetapkan parameter-parameter (key) untuk meletakkan message dan menyimpan parameter tersebut(digunakan untuk proses ekstraksi). Message diletakkan berdasarkan koordinat polar. Untuk embed message terlebih dahulu menetapkan dua nilai magnitude yaitu x dan y, kedua nilai tersebut berada pada derajat yang sama namun radius yang berbeda. Misal x = 23, 450 dan y = 28,450. Proses selanjutnya adalah sebagai berikut : m =(nilai x + nilai y)/2 if (message =1) then if ( x > m-p) then x = m-p dan y = m+p if (message =0) then if ( x < m+p) then x = m+p dan y = m-p
5.
Agar message tidak terpengaruh oleh distorsi kompresi maka message di letakkan pada frekuensi tengah dari suatu magnitude. Untuk menjaga image terhadap serangan geometrik, message di embedkan secara circular.[6]. Karena tipe watermarking pada makalah ini adalah blind watermarking maka embed message secara circular perlu suatu penyesuaian yaitu dengan menambahkan algoritma yang mendeteksi perubahan skala image. Sebagai contoh jika suatu image berukuran 128x128 mengalami rotasi sebesar 50 maka ukuran image akan berubah menjadi 139x139, hal ini mengakibatkan hasil perhitungan DFT juga mengalami perubahan akibat perubahan skala sehingga ekstraksi tidak akan mendapatkan data yang valid. Melakukan perhitungan IDFT berdasarkan magnitude (yang telah di embed message) dan nilai phase.
3.1.2 Ekstraksi Watermark 1. Jika image berwarna (RGB), maka image tersebut diubah terlebih dahulu ke dalam bentuk YUV. 2. Melakukan perhitungan 2-D DFT layer luminance (Y). 3. Menghitung nilai magnitude dan phase. Kemudian dilakukan translasi periodik pada nilai magnitude. Setelah itu nilai magnitude diubah ke dalam matrix NxN dan membaginya menjadi empat bagian sehingga diperoleh matrix N/2xN/2. 4. Ekstrak watemark berdasarkan parameter (key) yang digunakan pada proses embeding. Proses deteksi message adalah sebagai berikut :
INTERKONEKSI PERANGKAT MOBILE DAN SERVER (PC)
Dalam melakukan autentikasi tiket digital (image) suatu image tersebut harus dikirimkan ke server dan kemudian server melakukan ekstraksi image untuk mendapatkan kode-kode yang tersembunyi (watermark). Cara yang digunakan dalam melakukan pengiriman image tersebut adalah dengan menggunakan protokol HTTP antara perangkat mobile dengan server. Http menggunakan stream socket untuk transfer data antara client dan web server [1]. Koneksi yang digunakan untuk mengakses protokol tersebut adalah Wireless LAN, Bluetooth. Pada makalah ini percobaan pengiriman image dilakukan dengan menggunakan Wireless LAN. Untuk mencegah terjadinya losses pada image yang dikirimkan maka perlu dilakukan encoding, algoritma encoding yang digunakan adalah Base64. Algoritma ini mengubah data array byte ke dalam bentuk string. Berikut ini adalah diagram alir (flow chart) pengiriman image oleh perangkat mobile (client) dan penerimaan image oleh PC (server) :
Gb. 3 Flow Chart Client
Gb. 4 Flow Chart Server
if (x < y ) then message = 1 if (x > y ) then message = 0
Prosiding Konferensi Nasional Teknologi Informasi & Komunikasi untuk Indonesia 3-4 Mei 2006, Aula Barat & Timur Institut Teknologi Bandung
274
5.
KESIMPULAN
Watermarking sebagai salah satu teknologi proteksi terhadap content digital dalam implementasinya dapat digunakan dalam proses autentifikasi. Dalam kaitannya dengan autentifikasi, implementasi watermarking tidak hanya pada aplikasi m-Ticketing namun juga dapat dikembangkan pada aplikasiaplikasi lain. Dari hasil percobaan yang dilakukan watermarking pada aplikasi ini robust terhadap distorsi geometrik dan kompresi. Tingkat ke-robust-an ini tergantung dari jumlah bit message yang ditanamkan dan ukuran image. Semakin banyak jumlah bit message maka visibilitas image akan mengalami degradasi, selain itu jika jumlah bit besar dan ukuran image kecil maka error rate ekstraksi watermarknya semakin besar, hal ini dipengaruhi faktor presisi penentuan letak message di domain frekuensi.
6.
REFERENSI
[1] Cox Ingemer J, Miller Matthew L, Bloom A Jeffrey. Digital Watermarking. San Francisco : Morgan Kaufman, 2002. [2] Jain K. Fundamental of Digital Image Processing. Singapore : Prentice Hall, 1989. [3] Proakis G John, Manolakis G Dimitris. Digital Signal Processing. New Jersey : Prentice Hall, 1996. [4] Dixit Sudhir, Wu Tao. Content Networking in The Mobile Internet. USA : Wiley-Interscience, 2004. [5] Johnson F Neil, Duric Zoran, Jajodia Sushi. Information Hiding: Steganography and Watermarking-Attack and Countermeasures. USA: Kluwer Academic, 2001. [6] Solachidis V, Pitas I. Self Similar ring shaped watermark embedding in 2-D DFT domain. [7] Emir Ganic, Ahmet M. Eskicioglu. A DFTBased Semi-Blind Multiple Watermarking Scheme For Images. [8] V. Licks, R. Jordan. On Digital Image Watermarking Robust To Geometric Transformations. [9] Ramkumar M, Akansu Ali N, Alatan A. Robust Data Hiding Scheme for Image Using DFT. [10] Riggs R, Taivalsaari A, Patel M, Uotila A. Programming Wireless Devices with the Java 2 Platform. Addison Wesley, 2003. [11] White J, Hemphill D. Java 2 Micro Edition. Greenwich : Manning, 2002.
Prosiding Konferensi Nasional Teknologi Informasi & Komunikasi untuk Indonesia 3-4 Mei 2006, Aula Barat & Timur Institut Teknologi Bandung
275