Anda di halaman 1dari 7

1.

BAB I PENDAHULUAN
Pada bab ini dijelaskan mengenai beberapa hal dasar dalam tugas akhir ini yang meliputi latar belakang, perumusan masalah, tujuan dan manfaat pembuatan Tugas Akhir serta metodologi dan sistematika pembuatan buku Tugas Akhir ini. Dari uraian di bawah ini diharapkan gambaran Tugas Akhir secara umum dapat dipahami dengan baik. 1.1 Latar Belakang

Salah satu hal yang penting dalam komunikasi data antar komputer melalui jaringan adalah keamanan data. Keamanan data bisa dijaga dengan berbagai cara, salah satunya adalah dengan cara melakukan enkripsi terhadap data yang dikirimkan. Pada Tugas Akhir ini, data yang dienkripsi adalah gambar pada aplikasi resep masakan di Android. Sistem operasi Android dipilih karena sistem operasi ini bersifat open source, yaitu bisa dikembangkan secara bebas serta cukup mudah untuk membuat aplikasi berbasis Android ini. Aplikasi ini melakukan enkripsi pada gambar resep masakan agar tidak setiap orang bisa melihat gambar resep masakan tersebut. Tentunya tidak ingin ada orangorang tidak berkepentingan yang bisa melihat dan menyimpan gambar resep masakan ini. Orang-orang bisa saja memasak dengan resep ini, namun hanya orang-orang yang bisa mendekripsi dengan benar lah yang bisa melihat hasil akhir dari resep masakan ini. Dengan enkripsi, user lain selain yang diinginkan tidak bisa membaca data yang diberikan. Karena, gambar resep masakan pada aplikasi ini merupakan hak cipta orang yang membuat resep masakan pada aplikasi ini. Secara umum enkripsi bisa dibagi menjadi dua jenis, yaitu enkripsi simetris dan enkripsi asimetris. Enkripsi dikatakan simetris bila hanya menggunakan satu buah kunci yang sama 1

2 untuk melakukan enkripsi dan dekripsi. Sedangkan enkripsi asimetris menggunakan dua buah kunci yang berbeda untuk enkripsi-dekripsi, yaitu kunci publik dan kunci privat. Selain itu berdasarkan cara pengolahan data juga terdapat dua macam enkripsi, yaitu stream cipher dan block cipher. Stream cipher digunakan untuk enkripsi yang simetris. Sedangkan block cipher bisa digunakan untuk enkripsi simetris maupun asimetris. Perbedaan antara stream cipher dan block cipher adalah dalam pemrosesan data, block cipher memproses setiap blok data sedangkan stream cipher memproses per-bit data. Dari berbagai macam enkripsi yang telah dijelaskan di atas, algoritma enkripsi ternyata cukup beragam. Dalam Tugas Akhir ini, akan digunakan tiga buah algoritma enkripsi yang masingmasing mewakili algoritma enkripsi stream cipher, simetris block cipher, dan asimetris block cipher. Perwakilan stream cipher adalah algoritma Grain V1. Grain V1 merupakan algoritma enkripsi yang didesain berdasarkan bit-oriented shift register dengan tambahan yang memungkinkan peningkatan kecepatan yang berbanding lurus dengan kemampuan perangkat keras yang tersedia. Sehingga kompleksitas Grain V1 lebih rendah daripada cipher yang berorientasi pada word. Dengan demikian, implementasi Grain V1 pada perangkat keras akan menjadi lebih efisien, dan implementasi pada perangkat lunak akan sama efisiennya dengan cipher yang berorientasi pada word [4]. Dari kelompok simetris block cipher adalah AES. hampir sama seperti Grain V1, AES juga merupakan cipher yang berorientasi pada bit, sehingga memungkinkan untuk implementasi algoritma yang efisien ke dalam software dan hardware. Selain itu kelebihan AES yang lain adalah algoritma AES memiliki ketahanan terhadap semua jenis serangan yang diketahui. Disamping itu kesederhanaan rancangan, kekompakan kode dan kecepatan pada berbagai platform dimiliki oleh algoritma AES ini. AES terbukti kebal menghadapi serangan konvensional (linear dan diferensial attack) yang menggunakan statistik untuk memecahkan sandi [5]. Yang terakhir dari

3 kelompok asimetris block cipher adalah algoritma ElGamal. Salah satu kelebihan algoritma ElGamal adalah bahwa suatu plaintext yang sama akan dienkripsi menjadi ciphertext yang berbeda-beda. Akan tetapi, walaupun ciphertext yang diperoleh berbeda-beda, tetapi pada proses dekripsi akan diperoleh plaintext yang sama [7]. Dalam menganalisis ketiga algoritma di atas, algoritma enkripsi ini akan digunakan dalam proses transfer gambar pada aplikasi resep masakan di Android. Gambar akan dienkripsi dahulu, lalu dari server dikirim ke client untuk kemudian client akan mendekripsi menjadi gambar semula. Melalui aplikasi ini, akan dianalisis algoritma AES, ElGamal dan Grain V1 dalam hal waktu enkripsi dekripsi serta ukuran data setelah dienkripsi. 1.2 Rumusan Permasalahan Permasalahan yang diangkat dalam menyelesaikan tugas akhir ini adalah: 1. Bagaimana melakukan enkripsi dekripsi dengan menggunakan algoritma AES, ElGamal dan Grain V1? 2. Bagaimana menilai algoritma enkripsi dekripsi AES, ElGamal dan Grain V1 dalam hal waktu enkripsi dekripsi serta ukuran data setelah dienkripsi? 1.3 Batasan Permasalahan

Asumsi dan ruang lingkup permasalahan yang dibahas dalam Tugas Akhir ini adalah: 1. Pembuatan aplikasi resep masakan dibuat dengan teknologi Android pada smartphone berbasis Android. 2. Untuk pengembangan aplikasi server menggunakan bahasa pemrograman PHP, database MySQL dan menggunakan teknologi web service untuk berkomunikasi dengan client.

4 3. Komunikasi antara client dan server terjadi satu arah. Jadi tidak ada sinkronisasi antara client dan server sehingga client tidak bisa memperbarui data yang ada pada server. 4. Aplikasi resep masakan ini hanya dapat berjalan pada OS Android. 5. Hal yang dianalisis pada algoritma enkripsi adalah dalam hal waktu enkripsi-dekripsi serta ukuran data setelah dienkripsi. 1.4 Tujuan

Tujuan pembuatan tugas akhir ini adalah untuk menganalisis algoritma enkripsi dekripsi AES, ElGamal dan Grain V1 pada gambar resep masakan dalam hal waktu enkripsi dekripsi serta ukuran data setelah dienkripsi. Proses enkripsi dilakukan pada server, sedangkan proses dekripsi dilakukan pada client. 1.5 Metodologi

Metodologi yang akan dilakukan dalam Tugas Akhir ini memiliki beberapa tahapan, di antaranya sebagai berikut: a. Studi Kepustakaan Tahap ini merupakan tahap pengumpulan informasi yang diperlukan untuk pengerjaan tugas akhir sekaligus mempelajarinya. Mulai dari pengumpulan literatur, diskusi, serta pemahaman topik tugas akhir di antaranya tentang: Algoritma enkripsi dekripsi AES, ElGamal dan Grain V1. Database SQLite pada Android. IDE Eclipse with Android Development Tools (ADT) Plugin. DroidDraw.

5 b. Desain Sistem Tahap ini meliputi perancangan sistem dengan menggunakan studi literatur dan mempelajari konsep teknologi dari software dan hardware yang ada. Tahap ini merupakan tahap yang paling penting dimana bentuk awal atau prototype aplikasi yang akan diimplementasikan didefinisikan. Pada tahapan ini dilakukan desain sistem dan desain proses-proses yang ada. c. Implementasi Pada tahap implementasi ini, server dibangun dengan membuat database resep masakan serta dilengkapi suatu web service. Gambar yang tersimpan di database server merupakan gambar belum ternkripsi. Sedangkan client dibangun dengan database pada Android beserta teknologi IDE Eclipse dan dilengkapi dengan library untuk menangani web service. User Interface pada client dibuat dengan DroidDraw untuk memudahkan pemakaian dari sisi user. Aplikasi diimplementasikan menggunakan bahasa pemrograman Java dengan menggunakan package SDK (Standard Development Kit) Android sebagai library utama. Sedangkan untuk algoritma AES, ElGamal, dan Grain V1 diimplementasikan dengan menggunakan library Bouncy Castle 1.45. Aplikasi ini terhubung dengan database yang ada pada smartphone. Awalnya client akan memperbarui daftar resep masakan di server. Proses ini memanfaatkan salah satu metode web service. Saat user memutuskan untuk mengunduh suatu resep masakan ke smartphone, maka akan dilakukan proses pengunduhan gambar tersebut lalu disimpan ke memori pada smartphone. Saat user membuka gambar ini, dilakukan proses dekripsi agar gambar bisa ditampilkan.

6 d. Uji Coba dan Evaluasi Pengujian enkripsi pada server dilakukan dengan cara memberikan beberapa data lalu mencoba proses enkripsi pada gambar. Pada tahap awal di client, aplikasi ini akan dijalankan pada sebuah smartphone Android atau sebuah device emulator. Setelah itu menguji proses update data atau sinkronisasi data pada server ke Android. Selanjutnya, dilakukan proses pengunduhan content resep masakan yang kemudian langsung disimpan pada memori di smartphone. Terakhir, menguji proses dekripsi gambar dengan cara membuka salah satu resep yang sudah diunduh. e. Penyusunan Laporan Tugas Akhir Tahap ini dilakukan untuk membuat laporan dari semua dasar teori dan metode yang digunakan serta hasil-hasil yang diperoleh selama pengerjaan Tugas Akhir. 1.6 Sistematika Penulisan

Laporan Tugas Akhir ini akan dibagi menjadi beberapa bab sebagai berikut: BAB I. PENDAHULUAN Bab ini berisi latar belakang masalah, tujuan dan manfaat pembuatan Tugas Akhir, permasalahan, batasan masalah, metodologi yang digunakan dan sistematika penyusunan tugas akhir. BAB II. TINJAUAN PUSTAKA Bab ini membahas beberapa teori penunjang yang berhubungan dengan pokok pembahasan dan mendasari pembuatan Tugas Akhir ini.

7 BAB III. PERANCANGAN PERANGKAT LUNAK Bab ini membahas desain dari sistem yang akan dibuat meliputi aplikasi sisi server layanan xml rpc, client berupa aplikasi berbasis Android, dan proses enkripsi dan dekripsi. BAB IV. IMPLEMENTASI PERANGKAT LUNAK Bab ini membahas implementasi dari desain sistem yang dilakukan pada tahap desain, disertai dengan pseudocode sistem yang penting dan screenshot implementasi antarmuka dalam perangkat lunak. BAB V. UJI COBA DAN EVALUASI Bab ini membahas uji coba dari perangkat lunak yang dibuat dengan melihat keluaran yang dihasilkan oleh perangkat lunak dan evaluasi untuk mengetahui kemampuan perangkat lunak. BAB VI. PENUTUP Bab ini berisi kesimpulan dari hasil uji coba yang dilakukan serta saran untuk pengembangan perangkat lunak selanjutnya.