IMPLEMENTASI ALGORITMA BAKER MAP UNTUK ENKRIPSI CITRA
PADA PERANGKAT ANDROID
Aida Fitria1, Busro Akramul Umam2, Ary Iswahyudi3 Jurusan Teknik Informatika, Fakultas Teknik, Universitas Islam Madura
Jl.PP. Mifathul Ulum Bettet, Pamekasan 69351, Madura Telp. (0324) 321784, 331084
Email: [email protected], [email protected]
ABSTRAK
Citra digital merupakan salah satu data atau informasi yang sering disalahgunakan, oleh karena itu untuk menjaga keamanan dan kerahasiaan suatu data maupun informasi salah satunya dapat dengan tehnik enkripsi dan dekripsi. Tehnik ini berguna untuk membuat pesan, data, maupun informasi tidak dapat dibaca atau dimengerti oleh orang lain, kecuali untuk penerima yang berhak dan mengetahui teknik dekripsinya. Melihat penting dan bermanfaatnya tehnik enkripsi dan dekripsi, maka akan sangat baik jika metode dalam pemprosesnya menggunakan algoritma dengan tingkat keamanan yang tinggi, salah satunya dengan algoritma Baker Map. Sehingga mampu mengenkripsi dan dekripsi fole citr tanpa mengubah integritas data dari file citra tersebut.
Kata kunci: Algoritma Baker Map, Citra Digital, Enkripsi, Android.
1 PENDAHULUAN
Beberapa tahun terakhir teknologi berkembang dengan pesat, salah satunya adalah telepon selular (ponsel). Mulai dari ponsel yang hanya bisa digunakan untuk bicara dan sms hingga “ponsel cerdas” (smartphone) yang memiliki berbagai fungsi seperti multimedia, multiplayer games, kamera, transfer data, video streaming dan lain-lain. Smartphone saat ini telah menjadi populer diantara para pengguna gadget dan Smartphone juga telah dikenal luas oleh seluruh kalangan masyarakat. Seiring perkembangan Smartphone semakin berkembang pula Operating System yang mendukung kinerja Smartphone. Ada berbagai macam Operating System yang mendukung kinerja Smartphone, antara lain : Android, IOS, Blackberry dan Windows Phone. Dari beberapa Operating System di atas hanya Android lah yang bersifat opensource. Android merupakan Operating System yang dikembangkan oleh Google. Sistem Android berbasis linux sehingga memudahkan programmer untuk mengembangkan berbagai aplikasi. Pada umumnya Smartphone android dilengkapi dengan kamera dengan kualitas yang baik. Kamera ini dapat digunakan untuk mendokumentasikan kejadian atau peristiwa penting dan atau hal-hal lain yang menarik. Dan untuk menampilkan hasil pengambilan citra dengan kamera, android juga telah dilengkapi dengan aplikasi “Gallery”.
Secara default, Gallery akan menampilkan semua file citra yang ada pada smartphone android baik itu citra yang berasal dari hasil pengambilan gambar dengan kamera maupun citra lain yang sengaja disimpan pada perangkat smartphone tersebut. Hal ini memungkinkan semua orang dapat mengetahui semua informasi citra yang bersifat umum maupun yang
penting dan atau rahasia dalam smartphone android hanya dengan membuka aplikasi Gallery.
Sudah menjadi kebiasaan, anak-anak meminjam smartphone / gadget milik orang tuanya untuk bermain game ataupun “selfie” dengan menggunakan aplikasi kamera yang ada pada smartphone tersebut. Dan masalah mulai timbul saat si anak tanpa sengaja membuka file gambar yang tidak layak untuk dilihat karena akan berakibat buruk pada perkembangan fisiologis si anak, seperti yang pernah terjadi pada sebuah keluarga wartawan di lingkungan penulis tinggal. Si anak membuka file gambar yang berisi foto korban pembunuhan yang diambil oleh orang tuanya.
Oleh karena itu, penulis membuat aplikasi enkripsi yang disusun dalam laporan penelitian ini dengan judul “Implementasi Algoritma Baker Map Untuk Enkripsi Citra Pada Perangkat Android”. Untuk melindungi konten di dalam citra dari pengaksesan illegal dan mentransformasikan citra ke dalam bentuk lain yang tidak bermakna sehingga konten di dalam citra tidak dapat dipahami lagi secara visual.
2 LANDASAN TEORI
2.1 Kriptografi
Kriptografi mempunyai sejarah yang sangat panjang. Sejarah kriptografi dimulai pertama sekali dengan menggunakan metode pertukaran posisi untuk mengenkripsi suatu pesan.
2.2 Baker Map
Baker map merupakan sebuah pemetaan bersifat chaos dari unit persegi ke dalam dirinya sendiri. Chaos menunjukkan ketidakberaturan, kekacauan, keacakan atau kebetulan, yaitu: gerakan acak tanpa tujuan, kegunaan atau prinsip tertentu (Yani Kusmarni:3). Walaupun berlangsung acak, system
chaotic dapat ditentukan secara matematis, hal ini disebabkan karena system chaotic mengikuti hukum-hukum yang berlaku di alam.
2.3 Citra
Citra (image) adalah istilah lain untuk gambar. Secara harafiah, citra (image) adalah gambar pada bidang dwimatra (dua dimensi). Ditinjau dari sudut pandang matematis, citra merupakan fungsi menerus (continue) dari intensitas cahaya pada bidang dwimatra.
Gambar 2-1 (a) Citra burung nuri yang agak gelap,
(b) Citra burung yang telah diperbaiki kontrasnya sehingga terlihat jelas dan tajam
2.4 Android
Android merupakan sistem operasi ponsel yang berbasis Linux. Sistem operasi Android ini berada di bawah naungan Google.Inc. Sebagai sistem operasi open source, Android mempunyai ratusan bahkan ribuan aplikasi yang bisa diunduh secara berbayar maupun gratis.
2.4.1 Teori Perancangan Sistem
Perancangan sistem merupakan bagian awal dari pembuatan aplikasi dimana tahap ini bertujuan untuk memberikan ketentuan bentuk dan proses pada perangkat lunak yang dibuat agar pembuatan program tidak menyimpang dari aturan dan hasil analisis yang telah ditetapkan pada perancangan program.
2.5 Bahasa Pemrograman Java
Java adalah bahasa pemograman yang dapat dijalankan di berbagai computer termasuk telepon genggam. Bahasa ini awalnya dibuat olej James Gosling saat masih bergabung di Sun Microsystem saat ini merupakan bagian daro Oracle dan diliris tahun 1995.
2.6 Perangkat Lunak Pendukung
Perangkat lunak pendukung adalah salah satu alat yang digunakan dari proses pengkodingan sampai implementasi, yaitu menggunakan Eclipse, JDK,SDK Android, dan AVD.
3 METODE PENELITIAN
3.1 Observasi dan Pengumpulan Data
Pengumpulan data penelitian yang digunakan dalam penyusunan tugas akhir ini yaitu Studi
Literatur. Studi literatur adalah mencari referensi teori
yang relefan dengan kasus atau permasalahan yang ditemukan.
3.1.1 Metode Penelitian
Adapun metode penelitian yang dilakukan oleh penulis antara lain analisis input, proses dan output.
3.2 Tahapan Penelitian
Adapun tahapan yang di lakukan dalam penelitian adalah sebagai berikut :
Mulai
Studi literatur
Observasi dan Pengumpulan data
Perancangan sistem
Uji coba sistem
Selesai
Gambar 3-1 Proses Tahapan Penelitian
1. Study Literatur
Dalam mempelajari data manual dan referensi yang berhubungan dengan masalah yang dihadapi akan digunakan dalam perencanaan dan perancangan aplikasi yang akan dibuat. Serta mencari dan mempelajari beberapa referensi dari media internet.
2. Observasi dan pengumpulan data
Observasi dan Pengumpulan data penelitian yang digunakan dalam penyusunan tugas akhir ini mengambil dari hasil Studi Literatur. yang relefan dengan kasus atau permasalahan yang ditemukan. 3. Perancangan Sistem
Perancangan sistem berdasarkan dari hasil studi literatur, pemodelan dari sistem tersebut di terjemahkan ke program simulasi dengan software. 4. Uji coba sistem
Uji coba sistem dilakukan setelah pembuatan modul sistem selesai di buat dengan percobaan pada smartphone.
3.3 Perancangan Sistem
a. Flowchat Proses Login
Proses login diawali dengan start, kemudian user menginputkan sandi dan sistem akan memvalidasi sandi user. J.
b. Flowchat proses Enkripsi
Gambar 3-3 Flowchat Proses Enkripsi
Proses enkripsi diawali dengan start kemudian user memilih cara input gambar pada sistem. Input gambar ini bisa dilakukan dengan dua cara yaitu pengambilan gambar di media penyimpanan melalui aplikasi galeri dan pengambilan melalui kamera.
c. Flowchat proses Dekripsi
Gambar 3-4 Flowchat Proses Dekripsi
Proses dekripsi diawali dengan start, kemudian user memilih gambar dari galeri.
3.4 Perancangan User Interface
Perancangan user interface untuk aplikasi enkripsi / dekripsi ini akan dibagi menjadi beberapa bagian, yaitu :
a. Halaman Login
b. Halaman menu penentuan pilihan proses enkripsi atau dekripsi
c. Halaman penentuan key enkripsi d. Halaman penentuan key dekripsi e. Halaman output
4 IMPLEMENTASI DAN HASIL
4.1 Implementasi Program
Proses awal program ini dimulai dari tampilan menu login.
1. Tampilan menu login
Gambar 4-1 Menu login
Tampilan menu login adalah tampilan yang muncul pertama pada saat aplikasi dijalankan. Disini harus memasukkan kata sandi yang benar. 2. Tampilan menu lupa sandi
Gambar 4-2 Menu lupa sandi
Jika user sudah membuat recovery sandi akan keluar tampilan seperti pada gambar 4.2 dimana ada 2 pilihan pertanyaan keamanan yang sudah di sediakan.
3. Tampilan menu utama untuk tab enkripsi Gambar 3-2 Flowchart login
Gambar 4-3 Menu utama tab enkripsi
Menu ini ditampilkan jika user berhasil login ke dalam aplikasi.
4. Tampilan menu utama untuk tab dekripsi
Gambar 4-4 Menu tab dekripsi
Menu ini ditampilkan jika user memilih tab dekripsi.
5. Tampilan hasil enkripsi
Gambar 4-5 tampilan hasil enkripsi
Tampilan ini berfungsi sebagai penanda bahwa proses enkripsi telah berhasil.
6. Tampilan menu proses dekripsi
Gambar 4-6 Tampilan Menu Dekripsi
Menu ini tampil setelah user mengklik tombol get picture di menu tampilan tab dekripsi.
7. Tampilan menu preview hasil dekripsi
Gambar 4-7 tampilan hasil dekripsi
Tampilan ini akan muncul jika proses dekripsi berhasil. Disediakan uraian tentang ukuran gambar dan lokasi tempat penyimpanan hasil dekripsi
8. Tampilan menu input key secara manual
Gambar 4-8 tampilan input key secara manual
Tampilan ini akan muncul jika user memilih untuk menginputkan key secara manual. Disediakan range angka key yang bisa dipakai sebagai kombinasi kunci dan juga penanda jumlah key. Jika jumlah key sama dengan lebar atau tinggi gambar maka key dinyatakan telah lengkap dan tombol OK yang sebelumnya diatur tidak aktif akan menjadi aktif.
4.2 Hasil Uji Coba Sistem
Uji coba sistem pada penelitian ini dengan menggunakan Aplikasi dari Implementasi Algoritma
Baker Map Untuk Enkripsi Citra Pada Perangkat
Android dilakukan beberapa kali dengan kondisi yang berbeda antara uji coba yang satu dengan yang lain. 1. Uji coba sistem dengan ukuran gambar NxN
Berikut adalah hasil dokumentasi uji coba sistem dengan input gambar berukuran NxN :
Tabel 4-1 Uji coba sistem dengan ukuran gambar
NxN Uji coba ke - Gambar Asli Key Gambar Hasil Enkripsi Gambar Hasil Dekripsi 1
Image-14978289 83138 Ukuran : 485x485 px 5-1-1- 1-1-5- 1-97-5- 1-1-1- 97-97- 5-5-97- 1-5-1- 1-5-5- 5-5-1- 1-5-1- 1-1-5- 1-1-1-5-5 Dengan 2 pengula ngan Image-1497828 983138 Ukuran : 485x485 px Image-1497828 983138 Ukuran : 485x485 px 2 Image-1439782 9606888 Ukuran : 160x160 px 4-1-8- 40-20- 5-40- 4-32-1-4-1 Denga n 3 pengul angan Image-143978 296068 88 Ukuran : 160x16 0 px hasil_I mage-143760 258047 2 Ukuran : 330x33 0 px 3 Image-1497835 598251 Ukuran : 480x480 px 240-240 Denga n 1 pengul angan Image-149783 559825 1 Ukuran : 480x48 0 px Image-149783 559825 1 Ukuran : 480x48 0 px 4 Image-1497835 6196982 Ukuran : 485x485 px 97-97-97 Denga n 4 pengul angan Image-149783 561969 82 Ukuran : 485x48 5 px Image-149783 561969 82 Ukuran : 485x48 5 px 5 43-43- 43-1- 1-1-7- 7-7- 43-43- 43-7- Image-1497836 700927 Ukuran : 301x301 px 7-1-1-1-1-1 Denga n 5 pengul angan Image-149783 670092 7 Ukuran : 301x30 1 px Image-149783 670092 7 Ukuran : 301x30 1 px 5 PENUTUP 5.1 Kesimpulan
Setelah Implementasi Algoritma Baker Map Untuk Enkripsi Citra Pada Perangkat Android , maka dapat disimpulkan bahwa :
1. Dengan adanya normalisasi gambar (teknik
cropping dan penambahan padding pixel) sebelum
proses enkripsi, metode baker map dapat menerima input semua ukuran gambar dan tidak terbatas pada ukuran gambar persegi.
2. Semakin acak kombinasi key yang dipakai, maka gambar output dari proses enkripsi akan semakin samar.
3. Dengan dicatatnya informasi secara terperinci dari setiap proses enkripsi/dekripsi dapat memudahkan setiap pengguna yang akan mempelajari ataupun mengembangkan aplikasi ataupun menerapkan algoritma yang sejenis.
5.2 Saran
Adapun saran dari penulis terkait dengan Implementasi Algoritma Baker Map Untuk Enkripsi Citra Pada Perangkat Android sebagai berikut: 1. Dengan teknik kompresi gambar, aplikasi ini dapat
dikembangkan untuk dipakai pada perangkat smartphone android dengan resource yang lebih kecil dari yang dipakai pada penelitian ini.
2. Kelemahan dari aplikasi ini antara lain :
a. semakin besar ukuran gambar, maka proses enkripsi/dekripsi akan semakin lama dan juga dapat mengakibatkan kegagalan proses akibat kehabisan memori (Out of memory).
b. Enkripsi dengan baker map tidak dapat menyamarkan gambar jika ukuran gambar adalah bilangan prima.
c. Dengan satu kali pengulangan, enkripsi dengan menggunakan kombinasi key yang tidak acak/sama ataupun teratur akan menghasilkan gambar yang relatif masih tampak jelas. 3. Teknik penambahan padding pixel pada aplikasi
ini dapat dikembangkan dengan cara memilih
penelitian ini padding pixel berupa pixel tanpa informasi warna/transparan) agar aplikasi ini dapat berfungsi dengan baik pada semua format
file citra.
DAFTAR PUSTAKA
Feng HUANG, Yong FENG. Security analysis of
image encryption based on two dimensional chaotic maps and improved algorithm. Front.
Electr. Electron. Eng. China 2009, 4(1): 5–9 Fridrich J. Symmetric ciphers based on
two-dimensional chaotic maps. International Journal of Bifurcation and Chaos, 1998,
8(6):1259–1284
Google.2011.Android 3.0 User’s Guide
Jeffrey D.R, Lawrence MJ.1984. Perancangan
Analisa Design. Australia : CV. Dinoyo Press
Kusmarni, yani.2008.Teori Chaos.Universitas
Pendidikan Indonesia.Bandung
Suprianto, Dodit dan Rini Agustina. 2012. Pemrograman Aplikasi Android. Sleman : Mediakom
Wahana komputer.2010. The Best Java Application. Jakarta : PT.Elex Media Komputindo