• Tidak ada hasil yang ditemukan

Penerapan CBC-MAC berbasis DES dalam autentik citra

N/A
N/A
Protected

Academic year: 2017

Membagikan "Penerapan CBC-MAC berbasis DES dalam autentik citra"

Copied!
30
0
0

Teks penuh

(1)

PENERAPAN CBC-MAC BERBASIS DES

DALAM AUTENTIKASI CITRA

Oleh :

Sifilia

G64101003

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(2)

PENERAPAN CBC-MAC BERBASIS DES

DALAM AUTENTIKASI CITRA

Skripsi

Sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer

Pada Fakultas Matematika dan Ilmu Pengetahuan Alam

Institut Pertanian Bogor

Oleh :

Sifilia

G64101003

DEPARTEMEN ILMU KOMPUTER

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM

INSTITUT PERTANIAN BOGOR

(3)

Judul

: PENERAPAN CBC-MAC BERBASIS DES DALAM

AUTENTIKASI CITRA

Nama

: Sifilia

NRP

: G64101003

Menyetujui:

Pembimbing I,

Pembimbing II,

Dr. Ir. Sugi Guritman

Wisnu Ananta Kusuma, S. T, M. T.

NIP 131999582

NIP 132311918

Mengetahui:

Dekan Fakultas Matematika dan Ilmu Pengetahuan Alam

Dr. Ir. Yonny Koesmaryono, M.S.

NIP 131473999

(4)

ABSTRAK

SIFILIA. Penerapan Dan Analisis CBC-MAC Berbasis DES Dalam Autentikasi Citra. Dibimbing oleh SUGI GURITMAN dan WISNU ANANTA KUSUMA.

Teknologi yang semakin berkembang menyebabkan citra semakin mudah untuk dimodifikasi. Karena itu sangat sulit unt uk membedakan citra yang asli dan citra yang telah dimodifikasi. Citra yang telah dimodifikasi akan tampak seperti citra asli.

Modifikasi citra yang dilakukan menyebabkan citra dengan mudah dipalsukan. Pemalsuan yang dimaksud adalah citra telah dimodifikas i namun secara fisik nampak sama seperti citra asli. Modifikasi yang dilakukan adalah dengan cara mengubah nilai bit -bit pada citra. Oleh karena itu diperlukan suatu metode untuk membedakan citra asli dan citra yang telah dimodifikasi.

Autentikasi pada cit ra menggunakan algoritma CBC-MAC berbasis DES. Salah satu proses yang dilalui dalam autentikasi citra adalah penyisipan bit. Metode yang digunakan dalam penyisipan bit adalah metode Least Significant Bit (LSB). Pemeriksaan keaslian citra dilakukan dengan m enghitung nilai Mean Square Error (MSE).

Proses autentikasi pada citra merupakan suatu proses di mana citra ditandai pada tiap pixelnya. Proses awal yang terjadi adalah bit-bit citra akan diolah menggunakan algoritma CBC-MAC berbasis DES sehingga menghasilkan output 64 bit dan output ini yang digunakan sebagai tempelan bit pada tiap pixel citra tersebut. Proses penempelan bit ini menggunakan metode LSB. Untuk pemeriksaan keaslian citra menggunakan perhitungan nilai MSE. Perhitungan dilakukan pada citra hasil autentikasi dan pada citra hasil autentikasi yang diautentikasi ulang menggunakan kunci yang sama. Nilai MSE pada penelitian ini diperoleh dengan membandingkan bit hasil tempelan antara kedua citra tersebut.

(5)

RIWAYAT HIDUP

Penulis dilahirkan di Lubuk Linggau pada tanggal 16 Januari 1983 sebagai anak kedua dari dua bersaudara yang dilahirkan oleh pasangan Aisa dan Mansur.

(6)

PRAKATA

Puji dan syukur penulis panjatkan kepada Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan karunia-Nya sehingga penulis dapat menyelesaikan laporan skripsi yang merupakan salah satu syarat kelulusan program sarjana pada Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam, Institut Pert anian Bogor.

Dalam penyelesaian tugas akhir ini, penulis banyak dibantu oleh berbagai pihak. Terima kasih yang tak terkirakan penulis haturkan untuk:

1. Mama dan Papa tercinta atas dukungan, semangat, dan rasa cinta yang begitu besar selama penulis melaksanak an studi di Institut Pertanian Bogor.

2. Bapak Sugi, Bapak Wisnu selaku pembimbing yang telah sabar membimbing dan berbagi ilmu pengetahuannya kepada penulis.

3. Ibu Shelvie selaku penguji dalam karya ilmiah ini.

4. Cece dan Ko In Siung atas semangat yang diberikan.

5. Hendry tersayang yang selalu memberikan dukungan dan semangat.

6. Laura, Yulia, Euis, Kak Widi dan Irfan, yang telah banyak membantu. Terima kasih atas segala yang telah kalian berikan selama ini. Persahabatan yang begitu berarti dan tak akan pernah dilupakan.

7. Terima kasih juga kepada Ci Lingling atas dorongan semangatnya dan petuah -petuah yang bermanfaat serta temen-temen kost yang selalu memberikan nasehat dan dorongan semangat kepada penulis.

8. Khaman yang telah banyak membantu dengan ide -idenya yang cemerlang, ifnu dan acid serta teman-teman ilkomerz 38 yang telah menjadi teman, sahabat, dan guru dalam perjalanan studi penulis.

9. Semua pihak yang telah membantu yang tidak dapat disebutkan secara satu persatu.

Akhir kata, semoga tulisan ini dapat memberikan manfaat untuk kita semua. Kritik dan masukan yang membangun sangat penulis harapkan untuk kemajuan tulisan ini. semoga Tuhan senantiasa melimpahkan karunia-Nya kepada kita semua. Amin.

Bogor, Januari 2006

(7)

DAFTAR ISI

Halaman

DAFTAR TABEL.………... v

DAFTAR GAMBAR.……….. v

DAFTAR LAMPIRAN.………... v

PENDAHULUAN Latar Belakang.……….. 1

Tujuan.……… .. 1

Ruang Lingkup.………. 2

TINJAUAN PUSTAKA Kriptografi... 1

Fungsi Hash...……….. 2

Message Authentication Codes (MAC) Berdasar Blok Cipher... 3

Padding……….………... 4

Data Encryption Standart (DES)……….. 4

Least Significant Bit (LSB)……….………. 6

Keamanan Algoritma MAC….………. 6

METODE PENELITIAN Metodologi……… 6

Proses transformasi citra dan autentikasi citra...… 6

Proses tampilkan kembali citra... 7

Proses verifikasi citra... 7

Percobaan...………... 7

Analisis...………... 8

Implementasi………. 8

HASIL DAN PEMBAHASAN Penerapan CBC-MAC Berbasis DES Pada Citra... 8

Keamanan Citra Hasil Autentikasi... 9

Pener apan MSE Dalam Pemeriksaan Citra yang Telah Diautentikasi... 9

KESIMPULAN DAN SARAN Kesimpulan... 10

Saran... 10

DAFTAR PUSTAKA... 10

(8)

DAFTAR TABEL

Halaman

1. PC-1………..……… 4

2. PC-2... 5

3. Permutasi Inisial (IP)... 5

4. Permutasi Ekspansi (E)... ... 5

5. Fungsi Permutasi (P)... 5

DAFTAR GAMBAR Halaman 1. Skema Komunikasi dua Partai ……….……… 1

2. Skema CBC-MAC... 3 3. Citra Asli... 9

4. Citra Terautentikasi... 9

DAFTAR LAMPIRAN Halaman 1. Struktur DES... 12

2. Satu Putaran Pada DES... 13

3. Tabel S-Boxes... 14

4. Bagan Umum Proses 16 5. Bagan Alir Proses Autentikasi Citra... 17

6. Bagan Alir Proses Tampilkan Citra... 18

7. Bagan Alir Proses Verifikasi Citra... 19

8. Bagan Alir Tahapan Penelitian Secara Garis Besar... 20

9. Hasil Percobaan... 21

(9)

9

PENDAHULUAN

Latar Belakang

Perkembangan komputer pada saat ini menyebabkan pemanfaatan data digital semakin meningkat. Beberapa alasan yang membuat data digital banyak digunakan antara lain:

• Mudah untuk diduplikasi dan hasilnya sama dengan yang asli

• Biaya yang dibutuhkan untuk duplikasi sangat murah

• Mudah untuk disimpan

Beberapa contoh data digital antara lain audio, citra , video, dan teks. Pada penelitian kali ini data digital yang akan dibahas lebih lanjut adalah citra.

Perkembangan teknologi yang semakin pesat menyebabkan citra semakin banyak digunakan sebagai media penyimpanan informasi rahasia. Namun, salah satu kelemahan citra adalah mudah dimodifikasi. Hal itu menimbulkan permasalahan dalam membedakan citra yang asli dan citra yang telah dimodifikasi. Penyerang melakukan modifikasi pada saat komunikasi antara dua partai. Bagan komunikasi dapat dilihat pada Gambar 1.

Gambar 1 Skema Komunikasi Dua Partai

Modifikasi yang dilakukan pada citra dapat dikategorikan sebagai pemalsuan citra. Penyerang melakukan pemalsuan citra dengan

tujuan untuk menggagalkan komunikasi antara dua pihak (A dan B). Selain itu penyerang juga bertujuan untuk mendapatkan informasi penting yang terdapat di dalam citra tersebut. Citra dapat saja digunakan sebagai password dan dalam hal ini, penyerang berusaha mendapatkan kode password dalam citra tersebut agar penyerang dapat menggunakannya untuk tujuan tertentu. Apabila penyerang hanya ingin mengetahui informasi yang ada pada suatu data maka ancaman ini termasuk ancaman pasif. Ancaman aktif terjadi apabila penyerang berusaha mengubah isi data baik dengan menghapus data ataupun menambahkan isi data. Serangan seperti ini dapat mengancam integritas data, autentikasi maupun kerahasiaan data.

Oleh karena itu, penting adanya suatu pengamanan pada citra. Salah satu metode pengamanan pada citra adalah autentikasi citra. Autentikasi pada citra ini bertujuan untuk menjamin integritas data.

Berawal dari hal ini maka penelitian ini dilakukan untuk menjamin keamanan citra. Melalui metode ini, citra akan disisipi penanda digital sebagai autentikator untuk mencegah pemalsuan pada citra.

Pada penelitian ini algoritma yang digunakan dalam autentikasi citra adalah algoritma Message Authentication Code (MAC) berbasis Data Encryption Standard (DES). Salah satu algoritma MAC yang digunakan pada penelitian ini adalah CBC-MAC. Menurut Niel & Schneier (2003), MAC memiliki tingkat efisiensi yang tinggi. Salah satu proses dalam autentikasi adalah penyisipan bit pada citra sebagai autentikator citra. Metode yang digunakan dalam penyisipan bit adalah metode Least Significant Bit (LSB).

Tujuan

Penelitian ini bertujuan untuk:

• Mengimplementasikan algoritma CBC-MAC berbasis DES pada citra.

• Menghasilkan citra autentikasi yang memiliki kemiripan tampilan, ukuran, dan format file dengan citra yang asli.

• Menganalisis penerapan metode MSE dalam pemeriksaan keaslian citra. kunci Cek citra

Citra

autentikasi autentikasi Citra

Citra

asli Tujuan

Musuh

(10)

10

Ruang Lingkup

Ruang lingkup pada penelitian ini adalah:

• Algoritma yang digunakan pada penelitian ini adalah algoritma CBC-MAC berbasis DES.

• Citra yang digunakan berupa citra berwarna dengan format JPEG karena umum digunakan dan berukuran 192x128, 10x10, 30x20, 40x27.

• Metode penyisipan bit yang digunakan adalah metode Least Significant Bit (LSB).

• Pada penelitian ini, kunci yang digunakan telah ditentukan secara pasti dan tidak diketahui publik.

• Pemeriksaan keaslian citra dilakukan dengan menghitung Mean Square Error (MSE) .

• Citra yang telah diautentikasi tidak mengalami perubahan secara fisik misalnya ukuran , warna, tampilan dan format file.

TINJAUAN PUSTAKA

Kriptografi

Kriptografi adalah studi matematis yang mempelajari tentang keamanan pada data (Schneiner 1996). Dari definisi tersebut tersirat bahwa kriptografi tidak hanya sebagai alat yang memberikan ke amanan informasi, melainkan juga seperangkat teknik-teknik atau prosedur-prosedur yang berhubungan dengan keamanan informasi (Menezes et al. 1997). Ada 4 tujuan utama pada kriptografi yaitu:

• Kerahasiaan adalah suatu layanan yang digunakan untuk menjaga isi informasi dari semua yang tidak berwenang memilikinya (Schneiner 1996).

• Integritas data adalah suatu layanan yang berkaitan dengan pengubahan data dari pihak-pihak yang tidak berwenang (Schneiner 1996). Untuk menjamin integritas data, diperlukan suatu kemampuan untuk mendeteksi manipulasi data dari pihak-pihak yang tidak berwenang. Manipulasi data diartikan sebagai hal-hal yang berkaitan dengan penghapusan, penyisipan dan penggantian data.

• Autentikasi adalah suatu layanan yang berhubungan dengan identifikasi entitas dan informasi itu sendiri (Schneiner 1996). Dua pihak terlibat dalam komunikasi seharusnya mengidentifikasi dirinya satu sama lain. Pesan yang disampaikan melalui suatu saluran seharusnya dapat diidentifikasi asalnya, isinya, tanggal dan waktunya. Atas dasar ini autentikasi terbagi menjadi dua kelas besar, yaitu: autentikasi entitas, dan autentikasi asal data. Di sisi lain autentikasi menurut Meyer dan Matyas (1982) merupakan suatu pembuktian pola bit yang disebut kode autentikasi, yang mana kode ini akan disisipkan pada pesan dan pada waktu tertentu kode pada pesan akan diperiksa keasliannya.

• Non-repudiasi adalah suatu layanan yang ditujukan untuk mencegah terjadinya pelanggaran kesepakatan yang telah dibuat sebelumnya oleh entitas (Schneiner 1996).

Fungsi Hash

Fungsi hash memetakan bitstring dengan panjang sembarang ke bitstring dengan panjang tetap. Secara umum fungsi hash dibagi menjadi dua kelas yaitu fungsi hash tak berkunci dan fungsi hash berkunci (Menezes et al. 1997). Fungsi hash tak berkunci mempunyai spesifikasi mengatur parameter input tunggal (pesan). Fungsi hash berkunci mempunyai spesifikasi megatur parameter dua input berbeda (pesan dan kunci). Fungsi hash adalah fungsi h yang memiliki minimal dua sifat berikut (Menezes et al.199 7):

• Kompresi : h memetakan input x dengan sembarang panjang bit yang terhingga, ke output h(x) dengan panjang bit tetap n.

• Kemudahan komputasi : diketahui h dan suatu inputx, h(x) mudah dihitung.

Berdasar kegunaannya, fungsi hash dibedakan atas dua tipe (Menezes et al.1997):

1. Manipulation Detection Code (MDC)

(11)

11

2. Message Authentication Code (MAC)

MAC merupakan subkelas dari fungsi hash berkunci. MAC mempunyai dua parameter berbeda yaitu input pesan dan kunci rahasia. Tujuan MAC adalah menjamin integritas sumber pesan.

Message Authentication Codes (MAC) berdasar blok cipher

Message Authentication Codes (MAC) merupakan sebuah fungsi yang terdiri dari dua argumen yaitu sebuah kunci K dengan ukuran tetap dan pesan m dengan ukuran yang tidak tetap yang mana nilai produk yang dihasilkan mempunyai panjang tetap (Niel & Schneier 2003). Fungsi MAC yang ideal biasanya memetakan semua kemungkinan input ke n bit output secara acak. Fungsi MAC biasanya ditulis MAC(K,m) dengan K adalah kunci dan m adalah pesan yang ingin disampaikan.

MAC merupakan subkelas dari fungsi hash berkunci yang bertujuan menjamin integritas sumber pesan (Schneier 1996). Beberapa sifat MAC antara lain:

• Kemudahan komputasi

Misalkan diketahui fungsi hk, diberikan

nilai k dan input x, maka hk (x) mudah dihitung. Hasil fungsi ini disebut nilai-MAC atau nilai-MAC saja.

• Kompresi

Misal hx memetakan input x dengan sembarang panjang bit berhingga, ke output hx (x) dengan bit panjang tetap n.

• Ketahanan komputasi

Misalkan diberikan nol atau lebih pasangan teks-M A C (xi, hx (xi)), secara komputasi tak-layak menghitung sembarang pasangan (x, hx (x)) untuk sembarang input baru x xi (termasuk mungkin hk (x) = hk (xi) untuk suatu i).

Jika ketahanan komputasi tidak dipenuhi, algoritma M A C disebut pemalsuan-MAC. Pemalsuan pada MAC ada 2 yaitu pemalsuan selektif dan pemalsuan eksistensial. Pemalsuan selektif terjadi bila penyerang berusaha mendapatkan pasangan teks MAC baru untuk sebuah teks yang dipilihnya sedangkan pemalsuan eksistensial terjadi bila penyerang berusaha untuk mendapatkan pasangan teks MAC baru tanpa pengontrolan nilai pada teks tersebut.

Ketahanan komputasi mengakibatkan secara perhitungan tak layak menentukan kunci k jika diketahui satu atau lebih pasangan teks-MAC (xi, hx (xi)). Sebaliknya, ketahanan kunci tidak harus mengakibatkan ketahanan komputasi (Menezes et al.1997).

Misalkan diketahui pesan m1, ... , mi maka menurut Schneier (1996) MAC didefinisikan sebagai berikut:

H0:=IV ( InitializationVektor ),

Hi:= Ek (m1⊕ Hi-1),

MAC:= Hk.

Untuk lebih jelasnya, cara kerja CBC -MAC dapat dilihat pada Gambar 2 berikut:

DES DES DES

Algoritma CBC -MAC didefinisikan sebagai berikut:

INPUT: data x,spesifikasi sandi blok DES, kunci rahasia MAC k untuk DES.

OUTPUT: n-bit MAC pada x (n adalah panjang blok dari DES).

1. Proses penambahan bit ekstra (padding) dan blocking. Proses penambahan bit ekstra dilakukan dengan menggunakan algoritma padding. Padded teks dipecah menjadi blok-blok dengan ukuran n-bit dinotasikan dengan x1,x2,x3,...,xt.

2. Proses CBC. Misalkan Ek merupakan notasi enkripsi menggunakan E dengan kunci k, hitung blok Htdengan:

H1 Ek(x1),

Hi Ek( Hi- 1⊕xi), 2 i t.

(Ini merupakan standard CBC, IV=0,mengabaikan blok siferteks Ci= Hi).

(12)

12

4. Penyelesaian. M AC adalah n-bit blok Ht.

Algoritma M A C dapat diterapkan pada berbagai algoritma enkripsi antara lain DES, Triple DES, AES dan lain sebagainya.

Padding

Metode padding digunakan bila panjang suatu bitstring x bukan merupakan kelipatan dari panjang bitstrin g tiap blok x. Misalkan panjang bitstring x = 68 dan panjang bitstring tiap blok x = 8, maka perlu dilakukan padding karena 68 bukan kelipatan dari 8. Ada 2 metode yang dapat digunakan dalam padding (Menezes et al.1997). Metode yang digunakan yaitu:

• Metode padding 1

Langkah yang dilakukan dalam metode ini yaitu merangkaikan pada X dengan string bit 0 sehingga menjadi bitstring X’ dengan panjang kelipatan dari r. Metode ini menimbulkan kerancuan karena batasan antara bitstring sebelum dan sesudah padding tidak bisa dibedakan kecuali kalau bitstring sebelum padding diketahui panjangnya.

• Metode padding 2

Langkah-langkah yang dilakukan pada metode ini yaitu:

1. Rangkaikan X pada sebuah satu bit -1.

2. Rangkaikan X dengan string bit -0 sehingga menjadi bitstring X’ dengan panjang kelipatan dari r.

Dalam penelitian ini, metode padding yang digunakan adalah metode padding 2 dan nilai r yang digunakan adalah 64.

Data Encryption Standard (DES)

Data Encryption Standard (DES) merupakan sandi blok dengan panjang blok 64 bit dan panjang kunci efektif 56 bit (Schneier 1996). Di dalam operasinya, panjang kunci dibuat 64 bit dengan menambahkan 8 bit paritas yang ditempatkan pada posisi 8, 16, 24, 32, 40, 48, 56, dan 64. Struktur algoritma DES menggunakan dua konsep umum yaitu sandi produk dan sandi feistel (Menezes et al.1997).

Komponen penyusun sandi produk berupa transposisi, substitusi, transformasi

biner dan operasi aritmatik modular. Sandi feistel merupakan sandi teriterasi yang mentransformasi blok plainteks [L0,R0] berukuran 2w bit dengan masing- masing L0 dan R0berukuran w bit ke blok siferteks [Ln, Rn] melalui proses sebanyak n-putaran dengan n 1. Untuk 1 i n, ronde ke-i memetakan [Li-1, Ri-1] Ki [Li, Ri] sebagai

Li= Ri-1dan Ri = Li-1 F(Ri-1, Ki).

Dengan melibatkan sub-kunci Ki yang diturunkan dari kunci sandi K. Untuk lebih jelasnya dapat cara kerja DES dapat dilihat pada Lampiran 1 dan proses tiap putaran DES dapat dilihat pada Lampiran 2.

Ada beberapa tahap dalam algoritma DES antara lain :

1. Derivasi sub-kunci

2. Enkripsi DES

3. Dekripsi DES

Pada penelitian kali ini, algoritma DES hanya sampai pada tahap enkripsi DES dengan output dari enkripsi DES ini yang digunakan sebagai penanda citra (autentikasi citra). Adapun langkah-langkah dalam algoritma DES pada penelitian ini yaitu:

1. Derivasi sub-kunci

a. Definisikan vi, untuk 1 i 16, sebagai vi = 1 jika i å {1, 2, 9, 16} dan vi = 2 jika selainnya.

(13)

13

i. Ci ( Ci- 1 vi). Disini “ ” menotasikan “ge ser kiri putar melingkar”.

ii. Di (Di-1 vi).

iii. Ki PC2 (Ci, Di).

Nilai Ki dinyatakan dengan menggunakan Tabel 2 PC-2.

Tabel 2 PC-2

2. Enkripsi DES

a. (L0, R0) IP(m1m2...m64), menggunakan Tabel 3 Permutasi Inisial ( I P) untuk memperoleh L0 =

b. Penggunaan sandi Fiestel 16 putaran dengan input (L0, R0), output (L1 6, R16), dan melibatkan sub-kunci Ki, 1 i 16, melalui fungsi Permutasi Ekspansi (E) sehingga diperoleh T = r3 2r1r2...r32r1

berukuran 48 bit.

Tabel 4 Permutasi Ekspansi (E) masing-masing berukuran 6 bit. T’ = (B1, B2, ..., B8).

iii. T’’ (S1(B1),S2(B2),..., S8(B8)).

Untuk i=1 s.d. 8, Si memetakan Bi= b1b2b3b4b5b6 menjadi string 4 bit Ai = a1a2a3a4 dengan

proses:

a) Hitung b sebagai representasi des imal dari string b1b6.

b) Hitung k sebagai representasi des imal dari string b2b3b4b5.

(14)

14

c. c = c1c2… c64 IP

- 1

. Gunakan tabel IP-1 untuk permutasi IP-1 sehingga diperoleh c = h4 0h8…h25.

Least Significant Bit (LSB)

Least Significant Bit (LSB) merupakan metod e penyisipan bit pada bit terakhir. Nilai bit akan berubah namun perubahan ini tidak akan berpengaruh secara nyata terhadap kombinasi warna yang dihasilkan oleh tiga komponen warna Red Green Blue (RGB). Misalkan ada sebuah byte (8 bit) sembarang akan disis ipi oleh bit 1, maka metode LSB yang tampak adalah sebagai berikut:

Awal: 1 1 0 0 0 1 1 0

Akan disisipi 1, maka hasil yang diperoleh yaitu:

Hasil: 1 1 0 0 0 1 1 1

Pada contoh kasus ini 0 pada bit terakhir akan digantikan nilainya oleh bit 1.

Keamanan algoritma MAC

Jika diketahui suatu k dengan k merupakan kumpulan jumlah bit yang tidak diketahui oleh penyerang, maka penyerang memiliki peluang sebesar 2k untuk mengetahui kunci K yang digunakan dalam algoritma MAC (Niel & Schneier 2003). Dengan kata lain, sebuah fungsi MAC merupakan pemetaan acak dengan level keamanan yang tergantung pada jumlah bit k. Pada pemetaan secara acak, penyerang mengetahui segala sesuatu, sedangkan pada MAC, penyerang memiliki ketidakpastian terhadap nilai K. Hal inilah yang menyebabkan MAC lebih efisien dari pada fungsi hash (Niel & Schneier 2003).

METODE PENELITIAN

Metodologi

Gambaran umum proses pada penelitian ini secara keseluruhan dapat dilihat pada Lampiran 4.

Pada penelitian ini citra akan diautentikasi menggunakan kunci sehingga diperoleh suatu citra baru beserta penanda bit. Untuk mendapatkan citra baru beserta

penanda bit ini diperlukan beberapa tahapan proses.

Tahapan yang dilakukan pada penelitian ini secara garis besar yaitu:

1. Proses transformasi citra dalam bentuk bit

Pada proses ini dilakukan transformasi citra ke dalam bentuk bit.

2. Proses autentikasi citra

Pada tahap ini, bit – bit citra akan di- autentikasi sehingga dapat terjamin keamanannya. Bagan alir proses dapat dilihat pada Lampiran 5.

3. Proses tampilkan kembali citra yang telah ditandai

Pada proses ini, citra akan dikembalikan nilainya ke bentuk semula sehingga citra yang telah ditandai akan kembali menjadi citra seperti yang asli. Bagan alir proses dapat dilihat pada Lampiran 6.

4. Proses verifikasi citra

Tahap ini dilakukan untuk memeriksa apakah citra yang telah diautentikasi telah mengalami modifikasi atau belum. Bagan alir proses dapat dilihat pada Lampiran 7.

Tahapan-tahapan tersebut dibagi menjadi tiga bagian. Bagian pertama merupakan tahapan untuk melakukan autentikasi pada citra. Bagian kedua merupakan tahapan untuk membandingkan hasil citra yang telah diautentikasi, apakah masih sama tampilannya dengan sebelum diautentikasi. Pada tahap ini, citra yang telah diautentikasi dikembalikan ke bentuk JPEG -nya. Bagian ketiga merupakan tahapan untuk melakukan pemeriksaan bit-bit citra agar citra tetap terjaga keamanannya. Pemeriksaan ini dilakukan dengan membandingkan nilai-nilai bit tempelannya. Bagan alir dari empat proses tahapan penelitian di atas dapat dilihat pada Lampiran 8.

Proses transformasi citra dan autentikasi citra

Pada proses ini ada beberapa tahapan yang harus dilalui yaitu:

(15)

15

yang digunakan untuk melakukan transformasi ini adalah:

P=image_original; image _bin=dec2bin(P); [a,b]=size(image _bin);

2. Tahap selanjutnya kemudian dilakukan pemeriksaan terhadap jumlah bit -bit citra. Pemeriksaan dilakukan untuk melihat perlu tidaknya dilakukan padding. Pada penelitian ini, dilakukan padding bit bila jumlah bit citra bukan merupakan kelipatan 64.

3. Bit – bit citra yang diperoleh kemudian diproses menggunakan algoritma DES menggunakan kunci yang telah ditentukan. Bit citra yang diproses merupakan 4 bit pertama pada tiap pixel. Pemrosesan bit citra ini dilakukan perblok di mana tiap blok terdiri dari 64 bit. Blok pertama akan diproses bersama kunci yang telah ditentukan hingga menghasilkan output yang berukuran 64 bit. Output ini kemudian akan diproses lagi bersama blok citra berikutnya. Hal ini dilakukan secara berulang terus menerus hingga blok terakhir selesai diproses. Proses perulangan ini merupakan cara kerja algoritma MAC.

4. Proses terakhir yang dilakukan pada tahap autentikasi adalah menempelkan output yang diperoleh pada langkah ke -3 pada bit-bit citra yang asli. Proses penempelan bit ini menggunakan metode LSB. Tiap pixel citra akan ditransformasi dalam bentuk 8 bit. Penempelan dilakukan pada tiap pixel akan dilakukan pada bit terakhir yaitu bit kedelapan. Tiap satu bit output pada tahap 3 akan ditempelkan pada tiap pixel citra pada bit terakhir. Hal ini dilakukan terus menerus hingga semua pixel pada citra telah ditandai. Algoritma yang digunakan adalah:

Proses tampilkan kembali citra

Pada proses ini, citra yang telah ditempeli tanda akan ditransformasi balik. Hasil dari proses ini merupakan citra yang telah diautentikasi. Citra yang telah diautentikasi memiliki tampilan yang sama seperti citra yang asli. Algoritma yang digunakan dalam proses ini adalah:

f=1;

Proses verifikasi citra

Tahapan yang dilakukan pada proses ini terdiri dari dua tahapan yaitu:

1. Melakukan proses autentikasi ulang pada citra yang telah diautentikasi. Tahapan-tahapan yang ada pada proses ini masih sama seperti proses autentikasi pada citra asli dan tetap menggunakan kunci yang sama. Proses autentikasi tetap memproses 4 bit pertama tiap pixel pada citra hasil autentikasi dan proses dilakukan tiap blok yang terdiri dari 64 bit. Hal ini bertujuan untuk mendapatkan tempelan bit yang digunakan sebagai penandaan bit pada citra. Citra hasil transformasi ini disimbolkan sebagai citra autentikasi ulang.

2. Langkah selanjutnya menghitung nilai MSE dengan cara melakukan perbandingan nilai tiap bit tempelan pada citra hasil autentikasi dan citra terautentikasi yang diautentikasi ulang. Citra autentikasi yang diautentikasi ulang ini bertujuan untuk mendapatkan bit tempelan pada citra tersebut. Apabila nilai MSE sama dengan nol maka citra belum mengalami modifikasi sedangkan bila nilai MSE tidak sama dengan nol maka citra telah dimodifikasi.

Percobaan

(16)

16

40x27, 192x128. Pada data citra dilakukan proses autentikasi dengan menggunakan kunci yang sama yaitu ‘Stempell’.

Analisis

Percobaan yang telah dirancang selanjutnya diujicobakan dan dilakukan analisis terhadap citra autentikasi. Analisis yang dilakukan adalah menghitung MSE.

MSE biasanya digunakan untuk menghitung error. MSE yang rendah berarti error yang terjadi sedikit. Pada penelitian ini, MSE digunakan untuk menghitung jumlah error pada citra terautentikasi. Hal ini bertujuan untuk melihat apakah terjadi modifikasi pada citra autentikasi. Nilai MSE diperoleh dengan melakukan perbandingan nilai tiap bit tempelan pada citra autentikasi dan citra terautentikasi yang diautentikasi ulang.

Implementasi

Perangkat keras yang digunakan dalam membangun sistem ini adalah komputer pribadi dengan spesifikasi:

Perangkat keras

• Processor AMD Duron 650 Mhz

• SDRAM 384 MB

• Harddisk 20 GB

• VGA Card SavageIV 8 MB Perangkat lunak

• Sistem operasi menggunakan Windows XP service pack 2.

• Matlab 7.0 sebagai bahasa pemograman yang digunakan pada penelitian ini.

HASIL DAN PEMBAHASAN

Proses autentikasi pada penelitian ini dilakukan terhadap citra format JPEG yang berukuran 192x128, 10x10, 30x20, dan 40x27. Pada masing-masing citra tersebut dilakukan proses autentikasi dengan menggunakan kunci yang sama yaitu

‘Stempell’. Citra yang dihasilkan melalui proses ini akan mengalami per ubahan pada tiap nilai pixel-nya karena terjadi penyisipan bit tempelan. Bit tempelan disisipkan pada bit

terakhir atau bit ke-8 tiap pixel (nilai pixelnya telah diubah dalam bentuk bit). Perubahan pada bit yang menyebabkan perubahan pada nilai tiap pixel tidak menyebabkan perubahan secara nyata pada tampilan citra. Citra hasil autentikasi secara fisik sama dengan citra asli yang belum diautentikasi.

Hasil yang diperoleh dari proses autentikasi berupa citra autentikasi. Pemeriksaan keamanan pada citra dilakukan dengan menghitung nilai MSE.

Hasil yang diperoleh dari percobaan terhadap Gambar 4 Citra Asli format JPEG yang berukuran 10x10, 30x20, 40x27 dan 192x128, dapat dilihat pada Lampiran 9.

Penerapan CBC-MAC berbasis DES pada citra

(17)

17

0010110110000010010110100111000111010 010011111011010010110001110 dengan jumlah iterasi sebanyak 4608 iterasi dan waktu yang dibutuhkan adalah 5826.80 detik. Output yang dihasilkan ini merupakan penandaan bit pada citra yang akan diautentikasi. Selain itu, output ini digunakan lagi pada saat pemeriksaan keaslian citra yaitu pada saat perhitungan nilai MSE.

Percobaan yang dilakukan pada beberapa citra dengan menerapkan CBC-MAC berbasis DES menunjukkan bahwa semakin besar ukuran citra maka waktu yang dibutuhkan semakin lama. Hal ini terlihat pada jumlah iterasi dan waktu yang dibutuhkan. Iterasi dan waktu akan semakin meningkat jika ukuran citra semakin besar. Percobaan yang dilakukan pada citra 192x128 membutuhkan iterasi sebanyak 4608 iterasi dan waktu proses 5826.799 detik. Sedangkan ukuran citra yang digunakan pada umumnya jauh lebih besar dibandingkan ukuran citra yang digunakan pada penelitian ini. Dari hasil penelitian ini, dapat dibayangkan jika algoritma ini diterapkan pada citra yang lebih besar lagi misalnya 1024 x 768, tentu waktu yang diperlukan akan lebih lama dan iterasinya bertambah banyak. Jumlah iterasi pada penelitian ini dapat dihitung dengan rumus:

Iterasi = ( pixel x pixel x 3 )/ 16.

Angka 3 merupakan jumlah layer dan angka 16 merupakan jumlah baris yang diproses tiap pemanggilan fungsi DES. Pada citra yang berukuran 1024 x 768 dapat diperkirakan iterasinya sebanyak 147.456 ietrasi.

Keamanan citra hasil autentikasi

Pada percobaan yang dilakukan terhadap Gambar 4 Citra Asli format JPEG berukuran masing-masing 10x10, 30x20, 40x27, 192x128 menghasilkan citra autentikasi yang sama dengan citra asli. Keadaan ini membuat pihak lawan tidak mengetahui perbedaan secara tampilan antara citra asli dan citra hasil autentikasi. Namun, citra dapat dibedakan melalui perbandingan bit -bit yang ada. Pada algoritma CBC -MAC keamanan bergantung pada nilai k yang mana k merupakan kumpulan jumlah bit yang tidak diketahui oleh penyerang, sehingga penyerang memiliki peluang sebesar 2k untuk mengetahui kunci K yang digunakan (Niel & Schneier 2003). Bila kunci diketahui publik maka keamanan pada citra dapat dibongkar. Algoritma CBC-MAC berbasis DES yang

digunakan pada penelitian ini membuat citra hasil autentikasi memiliki ketahanan komputasi yang cukup kuat. Hasil dari penelitian ini dapat dilihat pada Gambar 4 dan Gambar 5.

Gambar 4 Citra Asli

Gambar 5 Citra Terautentikasi

Penerapan MSE dalam pemeriksaan citra yang telah diautentikasi

(18)

18

KESIMPULAN DAN SARAN

Kesimpulan

Dari hasil percobaan yang telah dilakukan pada penelitian ini diperoleh beberapa kesimpulan:

1. Berdasar hasil percobaan, jumlah iterasi dapat dihitung menggunakan rumus :

Iterasi = ( pixel x pixel x 3 )/ 16.

2. Jumlah iterasi dan waktu yang dibutuhkan pada penerapan algoritma CBC-MAC berbasis DES memperlihatkan bahwa algoritma ini tidak efektif bila digunakan pada citra yang berukuran besar.

3. Berdasarkan hasil percobaan, nilai MSE sama dengan nol. Hal ini menunjukkan bahwa citra belum dimodifikasi, sedangkan nilai MSE yang tidak sama dengan nol pada percobaan ini menunjukkan bahwa citra telah dimodifikasi.

Saran

Penelitian ini dapat dilanjutkan dengan menggunakan algoritma hash tak berkunci sehingga lebih efektif untuk ukuran citra yang lebih besar. Selain itu, dapat juga menggunakan kunci yang berbeda pada tiap blok untuk mendapatkan keamanan citra yang lebih baik. Penempelan bit pada tiap pixel (yang telah ditansfor masi dalam bentuk 8 bit) dapat dilakukan secara acak pada 4 bit terakhir.

DAFTAR PUSTAKA

Menezes, A, Oorschot, P. Van and Vanstone, S. 1997. Handbook of Applied Cryptography. CRC Press.

Meyer and Matyas. 1982. A New Dimension in Computer Data Security Cryptography. Canada: John Wiley and Sons, Inc.

Niel, Ferguson and Bruce Schneier. 2003. Practical Cryptography. Canada: Wiley Publishing, Inc.

Schneier, B. 1996. Applied Cryptography: Protocols, Algorithm, and Source Code in C. New York: Wiley.

(19)
(20)

12

Lampiran 1 Struktur DES

L15=R14

f

R16=L15 xor f(R15,K16)

R15=L14 xor f(R14,K15)

L16=R15 K16

IP-1

Cipherteks

Plainteks

IP

K1 R0 L0

f

R1=L0 xor f(R0,K1) L1=R0

f

R2=L1xor f(R1,K2) L2=R1

K2

(21)

13

Lampiran 2 Satu putaran pada DES

Li-1 Ri-1 Key

shif shif

Compression Permutation Expansion Permutation

S-Box Substitution

P-Box Permutation

(22)

14

Lampiran 3Tabel S-Boxes

14 4 13 1 2 15 11 8 3 10 6 12 5 9 0 7

0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0

15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13 S-Boxes 1

15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10 3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5 0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15 13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9 S-Boxes 2

10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8 13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1 13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7 1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12 S-Boxes 3

7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15 13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9 10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4 3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14

S-Boxes 4

2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9

14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6 4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14 11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3 S-Boxes 5

12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11 10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8 9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6 4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13 S-Boxes 6

(23)

15

Lampiran 3Tabel S-Boxes (lanjutan)

(24)

16

Lampiran 4Bagan umum proses

Pengirim Autentikasi Citra Kunci

Citra

Citra terautentikasi

(25)

17

Lampiran 5Bagan alir proses autentikasi citra

tidak

ya

Selama jumlah bit citra asli 0

kunci

Bit Citra asli (X’) mulai

Apakah

kelipatan 64? Lakukan padding

Lakukan proses enkripsi menggunakan DES tiap 64 bit citra asli

Lakukan operasi XOR pada 64 bit citra asli

berikutnya

Bit Tempelan Citra

Tempelkan bit tempelan pada bit citra asli (X’)

Bit Citra Terautentikasi (X’’)

selesai

(26)

18

Lampiran 6Bagan alir proses tampilkan citra

Bit Citra Terautentikasi

(X’’)

Transformasi nilai bit dalam bentuk pixel

Buat sebuah matriks A yang ukurannya sama dengan

matriks citra asli (X)

Simpan setiap pixel citra terautentikasi

dalam matriks A

Citra Terautentikasi

(27)

19

Lampiran 7 Bagan alir proses verifikasi citra

mulai

Melakukan autentikasi ulang pada citra autentikasi menggunakan

kunci yang sama

Nilai MAC Citra Terautentikasi

ulang

Nilai MAC Citra Terautentikasi

melakukan perhitungan MSE

Nilai MSE=0

tidak

ya

Citra telah dimodifikasi

Citra belum

(28)

20

Lampiran 8Bagan alir tahapan penelitian secara garis besar

Citra asli (X)

Transformasi Citra ke bit

Bit Citra asli (X’)

Autentikasi Citra

Bit Citra terautentikasi

(X’’)

Menampilkan Citra

Citra Terautentikasi

dalam JPEG

Kunci

Verifikasi citra Nilai MSE

Autentikasi Citra

Citra autentikasi ulang dalam

JPEG

(29)

21

Lampiran 9 Hasil percobaan

Citra_autentikas i10x10.JPEG Citra_autentikasi30x20.JPEG

(30)

22

Lampiran 10 Hasil verifikasi citra

Ukuran

Citra Citra_autentikasi dan nama file

Citra autentikasi yang diautentiksi ulang dan nama file

Nilai MSE

10x10

Citra_autentikasi10x10.JPEG Citra2_autentikasi10x10.JPEG

0

10x10

Citra_autentikasi10x10.JPEG 605kecil.JPEG

27

30x20

Citra_autentikasi30x20.JPEG Citra2_autentikasi30x20.JPEG

0

40x27

Citra_autentikasi40x27.JPEG Citra2_autentikasi40x27.JPEG

0

192x128

Citra_autentikasi.JPEG Citra2_autentikasi.JPEG

Gambar

Gambar 1.  algoritma Message Authentication Code (MAC) berbasis Data Encryption Standard
tabel S-Boxes
Gambar 4  Citra Asli

Referensi

Dokumen terkait