BAB I PENDAHULUAN 1.1 Latar Belakang Perkembangan suatu informasi pada saat sekarang ini berkembang sangat pesat dan memberikan peran yang sangat penting untuk menjalin pertukaran informasi yang cepat. Data-data yang dipertukarkan bisa berupa text maupun gambar. Gambar mempunyai karakteristik yang tidak dimiliki oleh data teks, yaitu kaya akan informasi. Pada umumnya representasi citra atau gambar memiliki ukuran data yang besar, semakin besar ukuran citra tentu semakin besar pula memori yang dibutuhkannya (Faradisa, Budiono,2012). Gambar lebih sering digunakan oleh orang untuk mengekspresikan diri sehingga memerlukan banyak memori untuk menyimpan gambar, salah satu cara untuk menyimpan file dapat dilakukan secara online, yaitu dengan membuat suatu website untuk penyimpanan file. Website merupakan salah satu tempat penyimpanan data yang populer selain hard disk dalam perangkat komputer maupun flashsidk. Dengan menggunakan website proses untuk pertukaran data menjadi lebih mudah, hanya memerlukan komputer dan akses internet dapat melakukan penyimpanan dan pertukaran data kepada orang lain. Namun mudahnya melakukan penyimpanan dan pertukaran data dapat dimanfaatkan oleh orang yang tidak bertanggung jawab untuk mengambil data tersebut, sehingga diperlukan suatu keamanan untuk menjaga data tersebut salah satunya adalah kriptografi. Kriptografi yaitu suatu ilmu yang digunakan untuk menjaga kerahasian suatu data atau file. Kriptografi dapat diimplementasikan untuk menjaga data, apabila data tersebut diambil orang tidak akan mengetahui atau mengerti artinya karena sudah diubah menjadi data acak yang tidak bisa dimengerti orang lain. Dalam kriptografi terdapat proses enkripsi dan dekripsi. Pada proses enkripsi pesan asli (plaintext) akan diproses sehingga informasi menjadi tidak dimengerti (ciphertext) sedangkan proses dekripsi memproses kembali pesan yang tidak dimengerti (ciphertext) menjadi pesan aslinya (plaintext). Algoritma AES merupakan salah satu kriptografi simetris yang dimana menggunakan satu kunci untuk enkripsi maupun dekripsi dan merupakan algoritma standar untuk enkripsi data menggantikan algoritma DES karena dinilai lebih aman dan efisien dalam 1
pengimplementasiannya. Algoritma AES memiliki panjang kunci yang bervariasi salah satunya panjang kunci 256 bit yang memiliki 14 kali putaran. Selain mengamankan data diperlukan juga suatu teknik untuk memampatkan atau mengurangi ukuran data agar memori yang digunakan untuk penyimpanan menjadi lebih sedikit dan jumlah data yang disimpan menjadi lebih banyak. Hal tersebut memunculkan kebutuhan akan kompresi citra tanpa harus mengurangi informasi yang tersimpan didalam citra tersebut (lossless). Kompresi citra adalah metode yang dapat memampatkan data sehingga dapat mengurangi ukuran data untuk penyimpanan. Salah satu teknik kompresi yang dapat digunakan yaitu algoritma huffman. Algoritma huffman dapat mengkompresi gambar dan dapat mengembalikannya kembali seperti semula. Algoritma ini membuat pohon biner sebagai dasar pembentukan kode. Prinsip kerja dari Algoritma Huffman adalah mengodekan setiap karakter ke dalam representasi bit. Representasi bit untuk setiap karakter akan berbeda dari segi panjangnya. Hal ini disebut sebagai variable length code. Panjang pendek bit yang dihasilkan ditentukan dengan sering atau tidak karakter tersebut muncul, jika sering maka bitnya pendek sedangkan jika jarang maka bitnya makin panjang (Adrisatria, 2006). Menerapkan Algoritma huffman dan AES yang diimplementasikan pada aplikasi berbasis desktop diharapkan berjalan dengan baik dan web dapat digunakan untuk menyimpan dan menampilkan gambar dari hasil enkripsi kompresi yang hasilnya langsung terkirim ke web. Untuk melakukan proses dekripsi dekompresi user mengunduh gambar terlebih dahulu dan gambar tersebut akan di dekompresi dekripsi pada desktop. 1.2 Rumusan Masalah Adapun rumusan masalah yang di angkat dalam proposal ini adalah 1. Bagaimana hasil dari proses enkripsi kompresi dan kompresi enkripsi terhadap gambar yang resolusinya sama dan berbeda? 2. Bagaimana hasil rasio (tingkat pengurangan data) proses enkripsi kompresi dan kompresi enkripsi terhadap terhadap gambar yang memiliki resolusi yang sama dan berbeda? 2
1.3 Tujuan Penelitian Dari pertanyaan masalah yang diberikan dapat diambil tujuan penelitian sebagai berikut: 1. Untuk mengetahui hasil dari proses enkripsi kompresi dan kompresi enkripsi terhadap gambar yang resolusinya sama dan berbeda. 2. Untuk mengetahui hasil rasio (tingkat pengurangan data) proses enkripsi kompresi dan kompresi enkripsi terhadap terhadap gambar yang memiliki resolusi yang sama dan berbeda. 1.4 Batasan Masalah Adapun batasan permasalahan dari penelitian ini yaitu : 1. Proses enkripsi dekripsi menggunakan Algoritma AES 256, proses kompresi dekompresi menggunakan Algoritma Huffman. 2. Citra yang dipakai adalah bmp, karena format bmp masih belum dilakukan proses apa-apa masih dengan ukuran aslinya jadi cocok digunakan untuk pengujian pada proses kompresi dan enkripsi. 3. Bahasa pemrograman yang digunakan adalah java untuk membuat progam enkripsi, dekripsi, kompresi dan dekompresi pada desktop, php untuk membuat webnya dan MySql untuk database. 4. Performa yang akan diukur yaitu hasil dari proses enkripsi dan kompresi, ukuran file gambar sebelum dan sesudah. 5. Parameter yang digunakan dalam pengujian hasil enkripsi kompresi dan dekompresi dekripsi pada penelitian ini adalah message digest, dengan cara menguji perbandingan message digest dari gambar awal, gambar hasil enkripsi kompresi dan hasil dekompresi dekripsi. 1.5 Manfaat Penelitian Adapun manfaat yang diharapkan dari penelitian ini sebagai berikut : 1. Dengan adanya sistem ini dapat mengurangi ruang penyimpanan untuk gambar. 2. Meningkatkan keamanan dalam penyimpanan gambar. 3
1.6 Metodelogi Penelitian 1.6.1 Desain Penelitian Desain penelitian yang akan digunakan dalam penelitian ini adalah menggunakan desain eksperimental. Objek penelitian yang digunakan adalah file gambar berformat bmp (bitmap) dan metode yang digunakan adalah algoritma kompresi huffman dan algoritma kriptografi AES. Pada objek penelitian akan dilakukan perlakuan atau treatment. Perlakukan yang dimaksud adalah dalam proses pemampatan dan enkripsi file yang menggunakan beberapa gambar dengan pixel yang berbeda yaitu 16 x 16, 32 x 32, 64 x 64, 128 x 128, 256 x 256. Jadi, dalam desain eksperimental terdapat hubungan sebab akibat dari suatu percobaan. Hasil dari percobaan tersebut akan dipengaruhi oleh perubahan terhadap objek penelitian, yaitu perbedaan ukuran file gambar yang akan diuji dengan file aslinya Dalam tahapan ini juga merencanakan perancangan prosedur atau konsep eksekusi sistem sebelum melakukan pengkodean. Perancangan prosedur atau konsep eksekusi sistem ini dimodelkan menggunakan Flowchart. 1.6.3 Pengumpulan Data Data penelitian dapat berasal dari berbagai sumber yang dikumpulkan dengan menggunakan observasi dimana data-data yang akan dicari untuk menggunakan algoritma ini didapat dari data-data yang ada di internet, buku-buku referensi dan penelitian yang pernah dilakukan sehingga algoritma yang dipakai layak digunakan dalam penelitian. Dalam penelitian ini jenis data yang digunakan adalah data primer. Data primer adalah data yang diperoleh atau dikumpulkan oleh peneliti secara langsung dari sumber datanya. Data primer disebut juga sebagai data asli. Data dikumpulkan sendiri dengan cara membuat beberapa file gambar sendiri atau dengan mendownload dari internet. 1.6.4 Analisis Kebutuhan Tahapan ini merupakan analisa terhadap kebutuhan sistem. Pengumpulan data dalam tahap ini dilakukan untuk mengetahui kondisi atau kemampuan yang harus dimiliki oleh sistem untuk memenuhi apa yang disyaratkan atau diinginkan pemakai. 4
1. Aplikasi ini dapat berjalan pada setiap browser dan desktop. 2. Aplikasi ini dapat melakukan enkripsi kompresi terhadap gambar yang memiliki resolusi yang sama dan berbeda. 3. Aplikasi ini dapat melakukan dekompresi dekripsi untuk mengembalikan gambar hasil enkripsi kompresi kembali seperti gambar aslinya. 1.6.5 Pengujian Sistem Pengujian sistem yang dilakukan pada tahap ini bertujuan untuk menguji apakah sistem dapat melakukan enkripsi dan kompresi file gambar berformat bmp dan melakukan dekompresi dan dekripsi file gambar agar dapat kembali seperti semula. Selain itu juga akan dilakukan pengukuran terhadap kinerja dari sistem, diantaranya : 1. Integritas data Pengujian dilakukan untuk memastikan tiap bagian pesan tidak mengalami perubahan atau sesuai dengan data asli. Dalam hal ini, file gambar asli harus sama dengan file gambar setelah dilakukan proses kompresi dan kriptografi. Untuk menguji integritas file gambar tersebut digunakan SHA-1 untuk menghasilkan message digest dari setiap file gambar. SHA-1 menggunakan tool yang telah ada, disini tool SHA-1 didapat di http://www.nirsoft.net/utils/hash_my_files.html. 2. Pengujian rasio (tingkat pengurangan data) dan waktu eksekusi Pengujian ini untuk mengetahui seberapa banyak pengurangan ukuran gambar hasil enkripsi kompresi dengan gambar aslinya. Pengujian ini dilakukan pada gambar yang berbeda dengan resolusi yang sama dan gambar yang sama dengan resolusi yang berbeda dan pengujian waktu eksekusi untuk proses enkripi kompresi dan dekompresi dekripsi dengan menggunakan resolusi yang sama dan berbeda. 3. Pengujian dua sistem Pengujian ini dilakukan dengan dua sistem yaitu pertama, gambar bmp akan dilakukan proses enkripsi terlebih dahulu baru selanjutnya dikompresi. Kedua, gambar bmp akan dilakukan proses kompresi terlebih dahulu baru selanjutnya dienkripsi. Pengujian ini dilakukan untuk mengetahui bagaimana hasil gambar 5
jika dilakukan proses yang berbeda, apakah hasilnya akan sesuai kebutuhan atau tidak. 6