• Tidak ada hasil yang ditemukan

APLIKASI VALIDASI CITRA DOKUMEN MENGGUNAKAN CHAOS DAN STEGANOGRAFI

N/A
N/A
Protected

Academic year: 2021

Membagikan "APLIKASI VALIDASI CITRA DOKUMEN MENGGUNAKAN CHAOS DAN STEGANOGRAFI"

Copied!
6
0
0

Teks penuh

(1)

APLIKASI VALIDASI CITRA DOKUMEN MENGGUNAKAN CHAOS DAN STEGANOGRAFI

Riyandika Andhi Saputra, Suhartono, Priyo Sidik Sasongko

Jurusan Ilmu Komputer/Informatika, FSM, Universitas Diponegoro

[email protected], [email protected], [email protected]

ABSTRAK

Perkembangan teknologi yang pesat memberikan pengaruh pada pengiriman dokumen dari yang semula secara fisik menjadi dalam format citra digital. Namun citra digital tersebut dapat dengan mudah dimodifikasi atau dimanipulasi, serta belum tersedianya aplikasi yang dapat memastikan keaslian citra tersebut. Chaos memiliki sifat yang berharga untuk keamanan data, yaitu kepekaan terhadap perubahan kecil pada kondisi awal sistem. Steganografi digunakan untuk menyembunyikan keberadaan tanda keaslian citra dokumen. Dengan menggabungkan kedua metode di atas dibuatlah sebuah aplikasi yang dapat memberikan tanda dan membaca tanda tersebut untuk mengetahui keaslian citra dokumen. Beberapa percobaan yang dilakukan pada aplikasi validasi citra menggunakan Chaos dan steganografi berhasil mengenali citra asli dan citra yang sudah dimanipulasi. Didapatkan juga bahwa aplikasi mampu menghasilkan citra dengan PSNR terendah 82,615 dB.

Kata kunci : Chaos, steganografi, validasi citra dokumen

I. PENDAHULUAN

Citra digital memiliki banyak kelebihan dibandingkan berbentuk fisik, salah satunya yaitu mudah diduplikasi dan dikirimkan dengan waktu yang singkat. Hal ini kemudian dimanfaatkan untuk pengiriman dokumen berbentuk citra digital sebagai keperluan registrasi pengajuan seperti beasiswa online berupa dokumen ijazah atau sertifikat.

Namun sayangnya citra digital tersebut dapat dengan mudah dimodifikasi atau dimanipulasi. Di sisi lain, belum ada layanan yang tersedia untuk memastikan dokumen tersebut asli atau sudah dimanipulasi. Manipulasi tersebut dapat berupa penggantian nama, memalsukan tanda tangan, atau mengubah nilai huruf pada transkrip nilai. Oleh karena itu diperlukan aplikasi validasi citra yang sensitif terhadap perubahan kecil sekalipun. Agar memiliki sifat sensitif dipilihlah Chaos karena memiliki sifat peka terhadap nilai awal sebagai pembangkit kunci acak pada proses penyandian tanda citra asli.

Setelah tanda tersandikan, diperlukan suatu cara untuk menyampaikannya beserta dengan gambar yang akan divalidasi keasliannya, untuk itu diperlukan steganografi yang merupakan suatu ilmu yang mempelajari

tentang penyembunyian pesan di dalam suatu media yang disebut carrier atau cover object sehingga keberadaan pesan tersebut tersembunyi [11].

Proses memastikan keaslian dari citra digital dokumen dilakukan dengan masukan berupa citra digital yang telah diolah menggunakan Chaos dan steganografi. Pesan yang berupa sandi dalam citra tersebut diambil. Kemudian dengan menggunakan Chaos sebagai pembangkit kunci acak pesan tersebut diubah menjadi tanda untuk mengenali citra tersebut asli atau sudah dimanipulasi.

II. KRIPTOGRAFI

Kriptografi adalah ilmu penulisan rahasia dengan tujuan menyembunyikan arti dari pesan [6]. Kriptografi terdiri dari dua buah proses, yaitu enkripsi dan dekripsi yang keduanya membutuhkan kunci untuk prosesnya.

Suatu algoritma dikatakan aman, apabila belum ada cara untuk menemukan plaintext-nya. Sampai saat ini, hanya algoritma One Time Pad (OTP) yang dinyatakan sebagai unbreakable cipher karena panjang kunci yang berupa barisan bilangan acak sama dengan panjang plaintext [6].

(2)

Jika karakter yang digunakan adalah anggota himpunan 256 karakter (seperti karakter dengan pengkodean ASCII), maka enkripsi dapat dinyatakan sebagai penjumlahan modulo 256 dari satu karakter plainteks dengan satu karakter kunci one time pad:

ci = (pi + ki) mod 256 (1)

Penerima pesan menggunakan pad yang sama untuk mendekripsikan cipherteks menjadi plainteks dengan persamaan:

pi = (ci + ki) mod 256 (2)

Fungsi hash adalah fungsi yang menerima masukan string yang panjangnya sembarang, lalu mentransformasikannya menjadi string keluaran yang panjangnya tetap (fixed). Penggunaan fungsi hash biasanya terdapat pada tanda tangan digital dan otentikasi pesan [9]. III. CHAOS

Teori Chaos berasal dari teori sistem yang memperlihatkan kemunculan yang tidak teratur, meskipun sebenarnya teori ini digunakan untuk menjelaskan kemunculan data acak [6].

Fenomena yang umum di dalam teori Chaos adalah peka terhadap perubahan nilai awal, yang juga dikenal sebagai ketergantungan yang peka pada nilai awal (sensitive dependence on initial condition).

Salah satu fungsi Chaos sederhana adalah persamaan logistik di dalam ekologi yang digunakan untuk mensimulasikan pertumbuhan populasi spesies [6], yaitu

f(x) = r x (1 - x) (3)

Fungsi ini dapat dinyatakan dalam bentuk iteratif.

xi+1 = r xi (1 – xi) (4)

Di dalam persamaan (3) dan (4) di atas x adalah populasi spesies pada interval waktu yang ditentukan dengan x0 adalah nilai awal iterasi. Daerah asal x adalah dari 0 sampai 1, yang dalam hal ini 1 menyatakan populasi maksimum

dan 0 yang menyatakan kepunahan, sedangkan 0 ≤ r ≤ 4. Konstanta r menyatakan laju pertumbuhan.

IV. STEGANOGRAFI

Steganografi berasal dari bahasa Yunani “Steganos” yang berarti tulisan tersembunyi. Dengan kata lain, steganografi adalah ilmu dan seni menyembunyikan informasi dengan cara menyisipkan (embedding) pesan di dalam pesan lain [9].

Metode steganografi dapat diklasifikasikan menjadi spatial domain embedding dan frequency domain embedding. Frequency domain embedding penyisipan pesan dilakukan pada koefisien transformasi. Spatial domain embedding bekerja dengan memodifikasi langsung nilai byte dari cover-object yang merepresentasikan intensitas atau warna pixel. Agar metode spatial domain embedding ini tidak terlihat secara kasat mata maka bit yang dirubah adalah bit paling akhir atau biasa disebut least significant bit (LSB) karena kemudahannya maka metode ini dipilih untuk aplikasi validasi citra dokumen menggunakan Chaos dan steganografi.

V. APLIKASI VALIDASI CITRA

DOKUMEN MENGGUNAKAN CHAOS DAN STEGANOGRAFI

Kemudahan penggunaan format digital diiringi dengan semakin mudahnya untuk dimodifikasi maupun dimanipulasi, sehingga tidak jelas lagi mana dokumen yang asli dengan yang sudah mengalami perubahan. Untuk itu aplikasi ini dibuat dengan harapan mampu mengenali mana citra dokumen yang asli atau tidak.

Aplikasi validasi citra dokumen menggunakan chaos dan steganografi terbagi menjadi dua proses, yaitu enkoding dan dekoding. Proses enkoding dilakukan oleh pengurus aplikasi yaitu dengan memasukkan citra yang akan diberi tanda berupa hash citra dan teks. Secara umum proses enkoding terdiri dari:

(3)

Bagian ini berfungsi untuk mengambil pengaturan aplikasi yang telah disimpan dalam basis data. Pengaturan ini digunakan sebagai parameter aplikasi. Pengaturan yang terdapat pada basis data:

1) Nilai r : digunakan untuk parameter pada chaos.

2) Jumlah iterasi : digunakan untuk parameter pada chaos, yaitu berapa banyak iterasi yang dibutuhkan dalam pembangkitan kunci.

3) Algoritma hash : untuk menentukan algoritma hash apa yang digunakan.

4) Kunci aplikasi : untuk mencegah duplikasi aplikasi, dan membedakan aplikasi satu dengan lainnya.

b. Pembuatan hash citra

Proses pembuatan hash citra diawali dengan membuat string citra, yaitu:

FOR jumlah kolom Citra DO FOR jumlah baris Citra DO

Ambil nilai RGB

Ubah nilai RGB menjadi genap Stream ß Stream + konversi nilai

RGB menjadi karakter

Pada algoritma di atas string citra disusun oleh nilai RGB yang diubah menjadi genap karena pada steganografi LSB bekerja pada bit paling akhir, sehingga string citra tidak menyertakan bit paling akhir. Setelah string citra terbentuk kemudian diubah menjadi hash citra sesuai dengan algoritma yang dipilih.

c. Menyusun hash dan teks

Hash citra yang sudah diperoleh tadi kemudian disusun sebagai string dengan teks. Untuk mengetahui batas antara hash citra dan teks, di-generate suatu boundary yang membatasinya. Sehingga akan tercipta suatu string yang terdiri dari:

boundary + hash citra + boundary + teks + boundary

d. Ubah hash menjadi kunci awal

Proses ini berfungsi untuk menyiapkan kunci awal bagi chaos yang berupa nilai antara 0 dan 1. Kunci ini berasal dari hash citra yang tadi sudah dibuat dan dikombinasikan dengan hash kunci yang terdapat pada pengaturan aplikasi.

Masing-masing hash dipotong menjadi 7 karakter dikarenakan batasan dari aplikasi yang hanya bekerja dalam 32-bit. Pada bagian akhir algoritma baru kemudian diubah menjadi nilai desimal.

Potong1 ß ubah HashCitra menjadi array string dengan panjang 7 karakter per elemennya

Potong2 ß ubah HashKunci menjadi array string dengan panjang 7 karakter per elemennya

Hasil ß 0

FOR iß0 TO Jumlah elemen Potong1 DO Irisan ß nilai integer Potong1 XOR nilai integer Potong2

IF i MOD 3 = 0 THEN Temp ß Irisan

IF (i+1) = Jumlah elemen Potong1 THEN

Hasil ß Hasil XOR Temp ELSE IF i MOD 3 = 1

Temp ß Temp + Irisan

IF (i+1) = Jumlah elemen Potong1 THEN

Hasil ß Hasil XOR Temp ELSE

Hasil ß Hasil XOR Temp Hasil ß Hasil / (10 Pangkat 9)

à Hasil

e. Enkripsi OTP dengan chaos sebagai pembangkit kunci acak

String plaintext yang didapat dari susunan hash dan teks dienkripsi menggunakan OTP dengan menggunakan chaos dan menghasilkan ciphertext.

f. Steganografi LSB ke dalam citra

Bagian akhir pada proses dekoding, yaitu menyisipkan ciphertext ke dalam citra dengan menggunakan steganografi LSB.

Sebaliknya pada proses dekoding, dilakukan oleh pengunjung aplikasi untuk memastikan keaslian citra yang dimilikinya dengan memasukkan citra yang akan diperiksa keasliannya. Proses dekoding ini terdiri dari beberapa bagian, yaitu:

a. Pengaturan aplikasi b. Pembuatan hash citra

(4)

d. Ambil ciphertext, dekripsi OTP dengan chaos, dan perbandingan hash

Pada bagian awal proses dekoding yaitu poin a hingga c sama dengan yang terdapat pada proses enkoding, yaitu untuk mendapatkan pengaturan awal proses.

Pada poin d, terdiri dari beberapa fungsi, yaitu:

1) Pengambilan ciphertext yang disisipkan menggunakan steganografi

2) Dekripsi OTP dan pembangkitan kunci menggunakan chaos

3) Perbandingan hash

Ketiga proses tersebut berjalan berulang-ulang dalam satu kesatuan blok iterasi. Hal ini bertujuan untuk menghemat penggunaan memori, sehingga aplikasi tidak perlu membaca keseluruhan pixel citra hingga akhir, namun cukup hingga ditemukan boundary ketiga atau ketika terjadi ketidakcocokan hash citra dengan hash pada plainteks maka iterasi dapat diakhiri.

VI. PEMBAHASAN

Pengujian dilakukan dengan pengaturan aplikasi: Nilai r = 3.99, jumlah iterasi = 120, algoritma hash = md5, dan kunci aplikasi = “selamat”. Gambar yang digunakan berupa hasil scan citra dokumen. Dari pengaturan di atas diperoleh hasil seperti pada Gambar 1.

Pengujian dilakukan dengan menggunakan citra asli pada Gambar 1 dan yang telah dimanipulasi pada Gambar 2. Pengukuran PSNR menggunakan rumus

Hasil dari pengujian ini terdapat pada Tabel 1.

No Citra Keterangan Hasil PSNR

1 Gambar 1a Citra ijazah Asli 85.928

2 Gambar 1b Citra halaman pengesahan Asli 82.615

3 Gambar 1c Citra transkrip nilai Asli 85.899

4 Gambar 2a Citra ijazah, manipulasi nama Tidak asli - 5 Gambar 2b Citra ijazah, manipulasi tanda tangan dengan

penambahan titik

Tidak asli - 6 Gambar 2c Citra halaman pengesahan, manipulasi nama Tidak asli - 7 Gambar 2d Citra halaman pengesahan, manipulasi tanda tangan

dengan penambahan titik

Tidak asli - 8 Gambar 2e Citra transkrip nilai, manipulasi nama Tidak asli - 9 Gambar 2f Citra transkrip nilai, manipulasi nilai B menjadi A Tidak asli - 10 Gambar 2g Citra transkrip nilai, manipulasi IPK 3,61 menjadi 3,81 Tidak asli

a b c

(5)

a b

c d

e F g

Gambar 2 Citra Manipulasi VII. KESIMPULAN

Aplikasi validasi citra dokumen menggunakan chaos dan steganografi merupakan aplikasi berbasis web yang dapat memastikan keaslian dari citra dokumen. Dari hasil pengujian nampak bahwa aplikasi mampu mengenali citra asli dan yang sudah dimanipulasi. Berdasarkan hasil pengujian, citra dokumen yang dihasilkan memiliki PSNR terendah sebesar 82.615dB, hal ini menunjukkan bahwa citra yang dihasilkan tidak nampak perbedaannya secara kasat mata. Sedangkan dari 10 pengujian berbagai citra, aplikasi mengenali semuanya dengan tepat. Bahkan aplikasi dapat mengenali perubahan kecil berupa penambahan titik seperti pada pengujian 7 dan 8.

DAFTAR PUSTAKA

[1] Arlow, Jim, et all., 2002, “UML and The Unified Process”, Boston : Addison

[2] Booch, Grady, et all., 2005, “The Unified Modelling Language User Guide Second Edition”, Boston : Addison Wesley.

[3] Chen C., 1998, “On The Selection of Image Compression Algorithms”, NSC Grant Departement of Computer Science National Tsing Hua University, Taiwan.

[4] Fowler, Martin, 2003, “UML Distilled: A Brief Guide to the Standard Object Modelling Language, Third Edition”, Boston : Addison Wesley.

[5] Jacobson, Ivar, et all., 1999, “The Unified Software Development Process”, Boston : Addison Wesley.

[6] Munir R., Riyanto B., dan Sutikno S., 2006, “Perancangan Algoritma Kriptografi Stream Cipher dengan Chaos”, Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung.

[7] Paar C. dan Pelzl J, 2010, “Understanding Cryptography A Textbook for Students and Practitioners” , Springer, New York.

(6)

[8] Pressman, Roger S, 2001, ”Software Engineering : A Practitioner’s Approach Fifth Edition”, New York , McGraw - Hill Companies, Inc.

[9] Silman, Joshua, 2001, “Steganography and steganalysis: an overview”, Tech. Rep., SANS Institute.

[10] Stallings, William, 2005, “Cryptography and Network Security Principles and Practices, Fourth Edition”,Prentice Hall. [11] Yu L., Zhao Y., Ni R., dan Li T., 2010,

“Improved Adaptive LSB Steganography Based on Chaos and Genetic Algorithm”, Hindawi Publishing Corporation, EURASIP Journal on Advances in Signal Processing.

Gambar

Gambar 1 Citra asli
Gambar 2 Citra Manipulasi  VII. KESIMPULAN

Referensi

Dokumen terkait

Telah dilaksanakan kegiatan Evaluasi Dokumen Penawaran Pengadaan Meubelair Kantor Pengadilan Agama Nunukan sejak tanggal 18 Juni 2015 sampai dengan tanggal 20 Juni 2015;

Berdasarkan kajian sebenar yang dijalankan oleh penyelidik mendapati persepsi sikap, minat dan persekitaran pembelajaran yang positif sebelum menjalani latihan mengajar guru-guru

Botol kaca yang bersih direndam di dalam air yang mengandung kaporit 5-10 ppm (5 sampai 10 gram kaporit per 1m3 air) selama 30 menit di dalam wadah tahan karat. Botol disusun di

Pengujian kemampuan interpolasi sirkular dilakukan dengan menginputkan program NC- Code untuk membentuk suatu pola yang terdiri dari busur-busur lingkaran.Kemudian, NC-Code

Tujuan sertifikasi adalah memastikan bahwa mahasiswa Universitas Islam Indonesia memiliki kompetensi untuk melakukan validasi metode pengujian kromatografi yang mengacu pada

Untuk semua pihak yang telah membantu penulis baik dari segi moril maupun materil dalam penyusunan skripsi ini, penulis mengucapkan banyak terima kasih, mohon maaf jika saya

Alat penepung kulit buah manggis ini adalah sebuah alat untuk membantu dalam proses penepungan dalam jumlah banyak yang menggunakan tenaga motor listrik sebagai penggerak dalam

6ementara %a arb#nat untuk membebaskan pir#'en (depir#'enasi) dan disin9ektan. 6ementara %a arb#nat 0, ber9un'si untuk menetralkan sisa asam akibat l encer. &r#sedur