BAB I PENDAHULUAN I.1. Latar Belakang Voting merupakan suatu metode untuk menentukan hasil suatu keputusan dalam kehidupan manusia agar dapat menyelesaikan permasalahan. Di negara yang menganut sistem demokrasi seperti Indonesia, voting sering digunakan untuk menentukan pemimpin contohnya seperti ketua BEM, kepala pemerintahan, atau memilih artis favorit seperti ajang pencarian bakat. Pada kenyataannya masih banyak yang melaksanakan voting secara manual dan tentunya memerlukan biaya yang tidak sedikit. Berdasarkan situs Kementerian Keuangan Republik Indonesia, anggaran Pemilu 2014 adalah 16 triliun rupiah. Kegiatan voting yang dilakukan secara konvensional memiliki kekurangan seperti proses yang lambat karena banyak persiapan yang harus dikerjakan sedangkan pengerjaannya dilakukan secara manual, besarnya anggaran yang dibutuhkan untuk membiayai seluruh keperluan untuk melaksanakan voting, kurang akuratnya proses perhitungan suara dan pemilih dituntut hadir secara langsung untuk memberikan hak suaranya (Raditya Prananda, et al. 2017). Kita tidak dapat menutup mata dengan kenyataan tersebut, maka dari itu E-Voting adalah suatu solusi untuk mengatasi masalah tersebut. Sama dengan voting, E-Voting merupakan suatu pemilihan yang bertujuan untuk menentukan hasil keputusan, tetapi proses pemilihan dilakukan secara elektronik. E-Voting merupakan suatu pemilihan yang datanya dicatat, disimpan dan diproses dalam 1
2 bentuk informasi digital. Aplikasi E-Voting ini nantinya dibuat berbasis smartphone android. Keamanan data dan kerahasiaan data merupakan hal terpenting dalam menerapkan E-Voting. Untuk menjamin keamanan dan kerahasiaan tersebut, maka diperlukan algoritma enkripsi kunci publik yaitu Public Key Cryptograph. Dimana nantinya penelitian ini bertujuan membangun sistem dengan menggunakan algoritma enkripsi RSA. Sehingga adanya keamanan layanan integritas di dalamnya. Dengan melihat permasalahan di atas, maka penulis tertarik untuk mengambil judul skripsi Implementasi Public Key Cryptograph Untuk Aplikasi E-Voting Pada Smartphone Berbasis Android. I.2. Ruang Lingkup Permasalahan I.2.1. Identifikasi Masalah Berdasarkan latar belakang di atas, penulis mengidentifikasikan masalah sebagai berikut : 1. Masih banyaknya pelaksanaan sistem voting yang dilakukan secara manual sehingga biaya yang diperlukan dan waktu yang dibutuhkan menjadi tidak efisien. 2. Tidak amannya proses pengiriman data antar perangkat sehingga rentannya proses pemilihan umum untuk dimanipulasi.
3 I.2.2. Rumusan Masalah Berikut rumusan masalah yang akan dicari pemecahannya melalui penulisan skripsi ini, antara lain : 1. Bagaimana merancang dan membangun sebuah aplikasi E-Voting untuk mengelola data calon pemilih, calon pemimpin yang akan dipilih, pemungutan suara, dan penghitungan suara berbasis android? 2. Bagaimana merancang dan mengimplementasi sistem keamanan data pada aplikasi E-Voting dengan menggunakan skema Public Key Cryptograph? I.2.3. Batasan Masalah Agar pembahasan ini tidak menyimpang dari tujuan, maka dilakukan pembatasan masalah sebagai berikut : 1. Membahas tentang proses pemilihan kandidat. 2. Menggunakan perangkat komputer sebagai server dan perangkat android sebagai client. 3. Pada server, digunakan interface berbasis web dengan bahasa pemrograman PHP. 4. Sistem keamanan Public Key Cryptograph terdiri dari beberapa jenis algoritma enkripsi, untuk itu penulis memilih menggunakan algoritma enkripsi RSA. 5. Sistem operasi minimum pada perangkat mobile yang dibutuhkan untuk menjalankan aplikasi ini adalah menggunakan Android versi 2.2 ke atas.
4 6. Aplikasi yang dibuat adalah aplikasi berbasis android. Jika tidak memiliki perangkat android, dapat menginstal emulator untuk dapat menjalankan aplikasi ini. I.3. Tujuan dan Manfaat I.3.1. Tujuan Adapun tujuan dari penulisan skripsi ini adalah sebagai berikut : 1. Menghasilkan sebuah aplikasi berbasis android untuk mengolah data E- Voting seperti data calon pemilih, calon pemimpin yang akan dipilih, pemungutan suara, dan penghitungan suara. 2. Mengimplementasikan sistem keamanan enkripsi Public Key Cryptograph dengan menggunakan algoritma RSA pada aplikasi E-Voting. I.3.2. Manfaat Manfaat yang diharapkan dari penulisan skripsi ini adalah : 1. Proses pemilihan kandidat dapat dilakukan dengan hemat biaya dan waktu. 2. Terjaminnya keamanan data baik dari sisi server maupun dari sisi client selama proses pemilihan kandidat berlangsung. I.4. Metodologi Penelitian Metodologi merupakan suatu cara atau teknik yang sistematika untuk mengerjakan suatu kasus. Untuk itu penulis menggunakan beberapa cara, berikut diantaranya :
5 1.4.1. Metode Pengumpulan Data Sistem yang dirancang tentunya memerlukan pengumpulan data, dalam proses pengumpulan data terdapat beberapa cara yaitu, berikut diantaranya : 1. Studi Literatur, dengan cara mempelajari buku-buku acuan dan literatur yang berhubungan dengan materi dalam penulisan skripsi. 2. Pengamatan, yaitu pengumpulan data dan informasi yang dilakukan dengan cara pengamatan langsung aplikasi E-Voting yang sudah ada. 3. Web Browsing, yaitu penulis mencari data-data yang mendukung penulisan skripsi melalui internet. 1.4.2. Metode Perancangan Sistem Dalam merancang sistem dilakukan tahap-tahap sebagai berikut : 1. Prosedur Perancangan Langkah langkah yang diperlukan untuk mencapai tujuan perancangan dapat dilihat pada gambar I.1. dibawah ini :
6 Target : Aplikasi E-Voting Dengan Sistem Keamanan Enkripsi Public Key Cryptograph Berbasis Android Analisis Kebutuhan : Android Studio, PHP, MySQL, XAMPP Spesifikasi Minimal: Laptop Core I3 Ram 6GB, HDD 500GB, Smartphone Android OS 4.4 (Kitkat) Desain & Implementasi Gagal Verifikasi Validasi Berhasil Finalisasi Gambar I.1. Prosedur Perancangan 2. Analisis Kebutuhan Sesuai penyelesaian yang akan dilakukan, kebutuhan pokok yang harus ada pada perancangan aplikasi ini adalah : a. Mengimplementasi penggunaan bahasa pemrograman Java dalam membuat aplikasi dalam sisi client yaitu android dan bahasa pemrograman PHP pada sisi server (web). b. Database sebagai media penyimpanan data informasi dari aplikasi E- Voting. Perangkat Keras (Hardware) Perangkat keras yang digunakan antara lain :
7 1) Laptop : Core i3 Processor. 2) Hard disk : 500 GB. 3) RAM 2 GB. Perangkat lunak (Software) Software yang digunakan untuk membuat skripsi ini antara lain : 1) Sistem operasi Windows 10. 2) Android Studio. 3) XAMPP. 3. Desain dan Implementasi Pada tahap ini aplikasi dibangun dan didesain dengan menggunakan Android Studio dengan bahasa pemrograman Java pada perangkat mobile, PHP, dan MySQL. Untuk menguji apakah aplikasi ini berjalan dengan baik, digunakan XAMPP sebagai web server dengan MySQL sebagai database-nya dan perangkat mobile android. Setelah aplikasi E-Voting selesai dibangun, kemudian ditambahkan sistem enkripsi pada aplikasi E-Voting yaitu enkripsi Public Key Cryptograph dengan algoritma RSA. 4. Verifikasi Verifikasi dilakukan untuk memeriksa ulang apakah aplikasi telah dibuat sesuai dengan apa yang direncanakan dalam perancangan yang akan digunakan dalam pembuatan aplikasi ini. Apakah desain dan sistem enkripsi yang dirancang
8 dapat diimplementasikan ke dalam bahasa pemrograman dan dapat berjalan dengan baik. Jika tidak, maka kesalahan harus diperbaiki terlebih dahulu. 5. Validasi Selanjutnya dilakukan pengujian aplikasi secara menyeluruh. Setelah melewati tahap validasi dan sistem telah berjalan dengan baik sesuai dengan kebutuhan target dari aplikasi yang dirancang. 6. Finalisasi Pada tahap ini aplikasi telah menjadi menjadi aplikasi yang diharapkan dari tujuan dan manfaat yang ingin dicapai, dan aplikasi dapat digunakan. I.5. Keaslian Penelitian Terdapat beberapa penelitian sebelumnya yang berhubungan dengan penelitian yang akan penulis lakukan yaitu : Tabel I.1. Tabel Perbandingan Penelitian No. Peneliti Judul Hasil 1. Muhammad Ridwan, dkk, 2016 Rancang Bangun E-Voting Dengan Menggunakan Keamanan Rivest Shamir Adleman (RSA) Berbasis Web Penelitian ini membahas tentang bagaimana cara membuat aplikasi e-voting berbasis web dengan menggunakan algoritma RSA tetapi aplikasi ini tidak
9 2. Raditya Prananda, dkk, 2017 3. Rikie P. Warouw, dkk, 2014 (Studi Kasus : Pemilihan Ketua BEM FMIPA) Rancang Bangun Aplikasi E-Voting Berbasis Android (Studi Kasus : Pemilihan Ketua Organisasi di Lingkungan Fakultas Teknik Universitas Tanjungpura) Perancangan Aplikasi Voter Berbasis Android Studi Kasus Pemilihan Ketua Himpunan Mahasiswa Jurusan Teknik Elektro Universitas Sam Ratulagi menggunakan client smartphone berbasis android. Pengujian ini menjelaskan tentang cara membuat aplikasi E-Voting berbasis android tetapi aplikasi ini menggunakan algoritma yang berbeda yaitu algoritma SHA-256. Penelitian ini menjelaskan tentang bagaimana cara membuat aplikasi E-Voting berbasis android namun pada penelitian ini, aplikasi tidak dilengkapi dengan sistem keamanan enkripsi sehingga hasil pemilihan rentan keamanan datanya.
10 I.6. Sistematika Penulisan Sistematika dalam penulisan skripsi ini memuat lima bab utama. Berikut sistematika penulisan skripsi secara rinci : BAB I : PENDAHULUAN Bab ini menjelaskan tentang latar belakang, ruang lingkup permasalahan, tujuan, manfaat, metodologi penelitian dan sistematika penulisan. BAB II : TINJAUAN PUSTAKA Bab ini menjelaskan teori dasar tentang android, E-Voting, algoritma enkripsi RSA, aplikasi yang digunakan dalam perancangan aplikasi serta teori-teori yang digunakan untuk mendukung perancangan aplikasi E-Voting berbasis android. BAB III: ANALISIS DAN DESAIN SISTEM Bab ini menjelaskan tentang analisa masalah, usulan yang akan digunakan untuk pemecahan masalah dan analisa kebutuhan dari sistem yang akan dibangun. BAB IV : HASIL DAN UJI COBA Bab ini menjelaskan hasil uji coba dari aplikasi yang telah dirancang, spesifikasi perangkat yang dibutuhkan, analisis perancangan, serta pembahasan kekurangan dan kelebihan sistem yang telah dibangun. BAB V : KESIMPULAN DAN SARAN Bab ini berisi kesimpulan dan saran secara menyeluruh dari pemaparan Bab I sampai Bab IV beserta saran penelitian.