Anda di halaman 1dari 67

FINGERPRINT SEBAGAI OTENTIKASI VOTER PADA

PENGEMBANGAN SISTEM E-VOTING MENGGUNAKAN


PROTOKOL TWO CENTRAL FACILITIES

MUHAMMAD ILYAS SIKKI

SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2014
PERNYATAAN MENGENAI TESIS DAN
SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA*
Dengan ini saya menyatakan bahwa tesis berjudul Fingerprint sebagai
Otentikasi Voter pada Pengembangan Sistem E-Voting Menggunakan Protokol
Two Central Facilities adalah benar karya saya dengan arahan dari komisi
pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi
mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan
maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan
dicantumkan dalam Daftar Pustaka di bagian akhir tesis ini.
Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut
Pertanian Bogor.

Bogor, Februari 2014

Muhammad Ilyas Sikki


NIM G651100051
RINGKASAN

MUHAMMAD ILYAS SIKKI. Fingerprint sebagai Otentikasi Voter pada


Pengembangan Sistem E-Voting Menggunakan Protokol Two Central Facilities.
Dibimbing oleh SUGI GURITMAN dan HENDRA RAHMAWAN.

Electronic voting (e-voting) merupakan pelaksanaan pemungutan suara


secara elektronik dan dapat memanfaatkan teknologi informasi berbasis web agar
dapat mengimplementasikan sistem pemilihan secara online dalam rangka
menggantikan pemilihan yang dilakukan secara konvensional (berbasis kertas)
dengan tujuan membantu menyelesaikan permasalahan-permasalahan yang ada,
seperti pemilih ganda, pembelian suara, banyaknya suara tidak sah, dan lain-lain.
Sistem e-voting yang dikembangkan menggunakan protokol two central
facilities (TCF) terdiri dari tiga komponen yakni mesin voting sebagai client untuk
interaksi dengan pemilih, central legitimization agency (CLA) sebagai server
untuk otentikasi pemilih, dan central tabulating facility (CTF) sebagai server
untuk hasil rekapitulasi perhitungan suara pemilih. Pada penelitian dalam tesis ini
hanya difokuskan pada proses otentikasi pemilih pada mesin voting terhadap
database pemilih yang disimpan pada Central Legitimazation Agency (CLA)
dengan menggunakan teknologi biometrik sidik jari.
Teknologi biometrik sidik jari digunakan untuk proses pendaftaran, proses
verifikasi, dan otentikasi pemilih yang akan melakukan pemilihan. Proses
pendaftaran untuk memperoleh database citra sidik jari pemilih, proses verifikasi
untuk memastikan database pemilih dapat diverifkasi atau tidak, dan proses
otentikasi untuk mengotorisasi pemilih yang diperbolehkan dan tidak oleh sistem
memberikan suaranya dalam pemilihan. Dalam proses otentikasi pemilih dari
sistem ini, pemilih yang diperbolehkan oleh sistem memberikan suaranya akan
diarahkan ke halaman surat suara hanya kepada pemilih yang citra sidik jarinya
dikenal oleh sistem. Sedangkan pemilih dimana citra sidik jarinya tidak dikenal
oleh sistem, maka sistem tidak akan mengarahkan ke halaman surat suara
sehingga pemilih tersebut tidak bisa memberikan suaranya dalam pemilihan.

Kata kunci: e-voting, two central facilities, central legitimization agency,


otentikasi, sidik jari.
SUMMARY

MUHAMMAD ILYAS SIKKI. Fingerprint as Voter Authentication for


Development of E-Voting System Using Two Central Facilities Protocol.
Supervised by SUGI GURITMAN and HENDRA RAHMAWAN.

Electronic voting (e-voting) is carrying out of balloting in a eletronic


manner and can to utilizing information technology web-based in order that
be able implementation election system in accordance with online in order
to substitute election that be done conventionally (paper based) with a
purpose to help problems solve at hand, such as elector of double, vote
puschasing, the number of vote is illegal, etc.
The e-voting system which developed using two central facilities
protocol consist of three component that is voting machine as client for
interaction with voter, central legitimization agency (CLA) as server voter
authentication, and central tabulating facility (CTF) as server for result
recapitulation voter vote count. Research in this thesis just focused to voter
authentication process on voting machine toward database of voter that
stored in CLA with using fingerprint biometric technology.
Fingerprint biometric technology used for voter registration process,
voter verification process, and voter authentication process who will doing
election. Registration process for acquire voter fingerprint image database,
verification process to be sure voter database can be verificated or not, and
authentication process for voter authorization who can be permitted or not
by system give of vote in election. In the voter authentication from this
system, who voter can be permitted by system give of her/his vote will be
directed to ballot page only voter who her/his fingerprint image
recognizable by system. Whereas voter which her/his fingerprint image
cannot recognized by system, so system will not direction to ballot page
with the result that voter cannot give of her/his vote in election.

Keywords: e-voting, two central facilities, central legitimization agency,


authentication, fingerprint.
© Hak Cipta Milik IPB, Tahun 2014
Hak Cipta Dilindungi Undang-Undang

Dilarang mengutip sebagian atau seluruh karya tulis ini tanpa mencantumkan
atau menyebutkan sumbernya. Pengutipan hanya untuk kepentingan pendidikan,
penelitian, penulisan karya ilmiah, penyusunan laporan, penulisan kritik, atau
tinjauan suatu masalah; dan pengutipan tersebut tidak merugikan kepentingan
IPB

Dilarang mengumumkan dan memperbanyak sebagian atau seluruh karya tulis ini
dalam bentuk apa pun tanpa izin IPB
FINGERPRINT SEBAGAI OTENTIKASI VOTER PADA
PENGEMBANGAN SISTEM E-VOTING MENGGUNAKAN
PROTOKOL TWO CENTRAL FACILITIES

MUHAMMAD ILYAS SIKKI

Tesis
sebagai salah satu syarat untuk memperoleh gelar
Magister Ilmu Komputer
pada
Program Studi Ilmu Komputer

SEKOLAH PASCASARJANA
INSTITUT PERTANIAN BOGOR
BOGOR
2014
Penguji luar Komisi pada Ujian Tesis : Dr Heru Sukoco, SSi MT
Judul Tesis : Fingerprint sebagai Otentikasi Voter pada Pengembangan Sistem
E-Voting Menggunakan Protokol Two Central Facilities
Nama : Muhammad Ilyas Sikki
NIM : G651100051

Disetujui oleh

Komisi Pembimbing

Dr Sugi Guritman Hendra Rahmawan, SKom MT


Ketua Anggota

Diketahui oleh

Ketua Program Studi Dekan Sekolah Pascasarjana


Ilmu Komputer

Dr Wisnu Ananta Kusuma, ST MT Dr Ir Dahrul Syah, MScAgr

Tanggal Ujian: 22 Nopember 2013 Tanggal Lulus:


PRAKATA

Segala Puji dan syukur penulis panjatkan kehadirat Allah subhanahu wa


ta’ala atas segala rahmat dan karunia yang dilimpahkan-Nya sehingga karya
ilmiah ini berhasil diselesaikan. Tema yang dipilih dalam penelitian yang
dilaksanakan sejak bulan Oktober 2012 ini ialah sistem keamanan e-voting,
dengan judul Fingerprint sebagai Otentikasi Voter pada Pengembangan Sistem E-
Voting Menggunakan Protokol Two Central Facilities. Penelitian ini diharapkan
dapat memberikan sumbangan pemikiran bagi penyelenggaraan pemilu yang
nantinya dapat terus dikembangkan secara luas di masa mendatang.
Laporan dari tesis ini tidak akan terselesaikan tanpa bantuan dari berbagai
pihak. Oleh karena itu, penulis ingin menyampaikan ucapan terimah kasih yang
sebesar-besarnya kepada nama-nama yang tercantum di bawah atas bantuan yang
diberikan.
1. Bapak Dr Sugi Guritman selaku ketua komisi pembimbing yang memberikan
pemikiran awal sebagai topik untuk mengerjakan penelitian sistem e-voting
dan membimbing sampai penelitian ini selesai.
2. Bapak Hendra Rahmawan, SKom MT selaku anggota komisi pembimbing
yang telah memberikan arahan, bimbingan serta saran dalam penyelesaian
tesis ini.
3. Bapak Dr Heru Sukoco, SSi MT selaku dosen penguji dan Ibu Dr Yani
Nurhadryani, SSi MT selaku moderator yang telah memberikan masukan,
arahan, dan saran untuk kesempurnaan dalam penulisan laporan tesis ini.
4. Ibu Dr Ir Sri Nurdiati, MSc selaku dekan FMIPA, Bapak Dr Ir Agus Buono,
MSi MKom selaku ketua Departemen Ilmu Komputer, Bapak Dr Wisnu
Ananta Kusuma, ST MT selaku ketua Program Studi Ilmu Komputer yang
telah membekali kami pengetahuan komputer dan senantiasa memberikan
motivasi, dukungan serta arahan dalam penyelesaian studi.
5. Bapak Prof Dr Ir Kudang Boro Seminar, MSc terima kasih atas ilmu yang
telah diberikan, motivasi, spirit, supporting, bimbingan, serta arahan menjadi
seorang yang berpengetahuan dengan memiliki moral yang berkarakter Islam.
6. Bapak Sony H Wijaya, SKom MKom, Bapak Toto Haryanto, SKom MSi,
Bapak Aziz Kustiyo, SSi MKom, Bapak Dr Yandra Arkeman, Bapak Endang
P Giri, SKom MKom, Ibu Ir Sri Wahjuni, MT, Ibu Dr Yeni Herdiyeni, SSi
MKom, Ibu Shelvie Nidya Neyman, SKom MSi, serta seluruh dosen lainnya
yang telah berbagi ilmu, filosofi, dan cerita-cerita menarik sehingga
mempelajari ilmu komputer menjadi menyenangkan. Terima kasih pula atas
dukungan, arahan, motivasi, dan keramahan dalam mengisi hari-hari penulis
di Departemen Ilmu Komputer FMIPA.
7. Bapak Yadi, Ibu Ning serta seluruh staff administrasi, perpustakaan, dan
pendukung Departemen Ilmu komputer FMIPA yang telah memberikan
bantuan selama ini.
8. Kodarsyah dan Asep Taufik Muharram sebagai rekan satu topik pada
penelitian ini yang senantiasa memberikan bantuan, semangat, dan motivasi
untuk penyelesaian tesis.
9. Rekan-rekan lainnya seperjuangan angkatan XII S2 Sekolah Pacasarjana Ilmu
Komputer IPB: Ami, Ana, Dedi, Dian, Fikri, Gibtha, Husna, Imam, Irwan,
Kania, Komar, Mila, Safar, Sari, Vera, Yudhit, Yustin ditambah Mr. Ghani
from Thailand. Persaudaraan, kekompakan, dan team work senantiasa
terjaling dalam mengisi hari-hari selama di Departemen Ilmu komputer
memberikan kesan tersendiri yang akan teringat selalu.
10. Bapak Dr Ir Nandang Najmulmunir, MS sebagai Rektor Unisma Bekasi yang
telah memberikan ijin studi lanjut dan Bapak Dindin Abidin, SPd MSi
sebagai Wakil Rektor III yang ikut merekomendasaikan serta memberikan
dukungan studi lanjut. Seluruh rekan sejawat di Unisma Bekasi, terima kasih
atas dukungan dan do’a yang diberikan dalam penyelesaian studi.
11. Bapak Agus, Mas Yuggo, dan rekan-rekan di Program Studi Teknik
Informatika Fakultas Teknik, UIKA Bogor yang telah memberikan dukungan
dan bantuan agar terselesainya tesis ini.
12. Semua pihak yang tidak bisa disebutkan satu persatu yang telah turut
memberikan do’a, semangat, dan bantuan selama penyelesian studi baik
langsung maupun tidak langsung.
Penulis menyadari sepenuhnya bahwa dalam karya ilmiah ini masih
terdapat kekurangan dan kelemahan dalam berbagai hal karena keterbatasan
kemampuan penulis. Oleh karena itu, dengan segala kerendahan hati penulis
menerima masukan berupa saran atau kritik yang bersifat membangun dari
pembaca demi kesempurnaan karya ilmiah ini. Penulis berharap semoga karya
ilmiah ini dapat memberikan manfaat. Amien.

Bogor, Februari 2014

Muhammad Ilyas Sikki


DAFTAR ISI

Halaman
RINGKASAN ii
SUMMARY iii
PRAKATA v
DAFTAR ISI vii
DAFTAR GAMBAR viii
DAFTAR LAMPIRAN viii
1 PENDAHULUAN 1
Latar Belakang 1
Rumusan Masalah 2
Tujuan Penelitian 2
Manfaat Penelitian 2
Ruang Lingkup Penelitian 3
2 TINJAUAN PUSTAKA 4
Sistem Pemilu di Indonesia 4
Pemungutan Suara 6
Permasalahan Pemilu 6
Keamanan Komputer 7
Kriptografi 8
Protokol Two Central Facilities 9
Central Legitimization Agency (CLA) 10
Skema E-voting 11
Secure Voting Requirement 12
Sidik Jari (fingerprint) 13
3 METODE PENELITIAN 15
Alur Proses Penelitian 15
Identifikasi Masalah dan Studi Pustaka 15
Identifikasi Kebutuhan Sistem 16
Disain Sistem 16
Implementasi Sistem 16
Pengujian Sistem 17
4 HASIL DAN PEMBAHASAN 18
Identifikasi Masalah dan Studi Pustaka 18
Identifikasi Kebutuhan Sistem 19
Disain Sistem 23
Implementasi Sistem 259
Pengujian Sistem 34
5 SIMPULAN DAN SARAN 37
Simpulan 37
Saran 37
DAFTAR PUSTAKA 38
LAMPIRAN 39
RIWAYAT HIDUP 53
DAFTAR GAMBAR

Halaman
1 Pihak yang terkait pemilu (Shalahuddin, 2009) 5
2 Skema pemilihan two central facilities 10
3 Skema e-voting two central facilities 11
4 Contoh sampel sidik jari 13
5 Mesin fingerprint scanner 14
6 Alur proses penelitian 15
7 Ilustrasi pengujian metode blackbox 17
8 Tipe patern sidik jari 20
9 Minutiae sidik jari 20
10 Searching minutiae 21
11 Before match 21
12 Match minutiae 21
13 Matched result 22
14 Diagram alir proses registrasi pemilih 24
15 Diagram alir proses otentikasi pemilih 24
16 Menu utama fingerprint 29
17 Menu registrasi pemilih 30
18 Menu verifikasi pemilih 30
19 Proses registrasi sidik jari pemilih 31
20 Proses verifikasi berhasil 31
21 Proses verifikasi gagal 32
22 Login untuk proses otentikasi pemilih 32
23 Proses otentikasi sidik jari pemilih yang terdaftar di database 33
24 Proses otentikasi sidik jari pemilih yang tidak terdaftar 33
25 Proses otentikasi sidik jari pemilih yang sudah memilih 34

DAFTAR LAMPIRAN

Halaman
1 Source code menu registrasi pemilih 39
2 Source code menu utama fingerprint 39
3 Source code menu verifikasi pemilih 42
4 Source code otentikasi pemilih 46
5 Source code koneksi ke database 51
6 Halaman surat suara 52
7 Halaman pertanyaan keyakinan pemilih terhadap kandidat 52
8 Halaman bukti elektronik telah memilih kandidat 52
1 PENDAHULUAN

Latar Belakang
Pemilihan umum (Pemilu) disebut juga dengan “Political Market” (Dr.
Indria Samego), artinya bahwa pemilu adalah pasar politik tempat
individu/masyarakat berinteraksi untuk melakukan kontrak sosial (perjanjian
masyarakat), antara peserta pemilu (partai politik) dengan pemilih (rakyat) yang
memiliki hak pilih setelah terlebih dahulu melakukan serangkaian aktivitas politik
yang meliputi kampanye, iklan politik melalui media massa cetak, audio (radio)
maupun audio visual (televisi) serta media lainnya seperti spanduk, pamflet,
selebaran bahkan komunikasi antar pribadi yang berbentuk face to face (tatap
muka) atau lobi-lobi yang berisi penyampaian pesan mengenai program, platform,
asas, ideologi serta janji-janji politik lainnya, guna meyakinkan pemilih sehingga
pada pencoblosan dapat menentukan pilihannya terhadap salah satu partai politik
yang menjadi peserta pemilu untuk mewakilinya dalam badan legislatif maupun
eksekutif.
Pemilu di Indonesia pada awalnya ditujukan untuk memilih anggota
lembaga perwakilan, yaitu DPR, DPRD Provinsi, dan DPRD Kabupaten/Kota.
Setelah amandemen keempat UUD 1945 pada 2002, pemilihan presiden dan wakil
presiden (pilpres), yang semula dilakukan oleh MPR, disepakati untuk dilakukan
langsung oleh rakyat sehingga pilpres pun dimasukkan ke dalam rezim pemilu.
Pilpres sebagai bagian dari pemilu diadakan pertama kali pada Pemilu 2004.
Pada 2007, berdasarkan Undang-Undang Nomor 22 Tahun 2007, pemilihan
kepala daerah dan wakil kepala daerah (pilkada) juga dimasukkan sebagai bagian
dari rezim pemilu. Di tengah masyarakat, istilah "pemilu" lebih sering merujuk
kepada pemilu legislatif dan pemilu presiden dan wakil presiden yang diadakan
setiap 5 tahun sekali.
Sepanjang sejarah Indonesia, telah diselenggarakan 10 kali pemilu yaitu
pada tahun 1955, 1971, 1977, 1982, 1987, 1992, 1997, 1999, 2004, dan 2009.
Sistem pemilu yang digunakan selama ini menggunakan cara penyoblosan atau
penyontrengan. Cara konvensional seperti ini ternyata dapat menimbulkan
masalah seperti pemilih ganda, penggelembungan suara dan kesalahan lainnya
serta lamanya waktu rakapitulasi suara. Untuk mengatasi hal tersebut, salah satu
solusi yang dapat dilakukan adalah menggunakan electronic voting (e-voting)
dengan mengadakan sistem pemilu secara online yang dibangun menggunakan
suatu protokol yang aman.
Seperti halnya dengan sistem pemilu yang diadakan secara konvensional,
pelaksanaan sistem pemilu secara online pun pasti tidak akan terhindar dari
berbagai ancaman kecurangan yang mungkin terjadi. Oleh karena itu, sistem yang
dibuat harus memenuhi standar secure voting requirements menurut paparan
Bruce Schneier (1996) untuk dapat mengatasi dan menjamin keamanan setiap
ancaman yang akan terjadi. Salah satu protokol yang dapat memenuhi sebagian
standar kriteria secure voting requirements dan memiliki tingkat keamanan yang
cukup baik adalah Two Central Facilities Protocol, dimana terdiri dari Central
Legitimazation Agency (CLA) untuk pengesahan pemilih dan Central Tabulating
Facility (CTF) untuk perhitungan suara (Bruce Schneier, 1996).
Beberapa penelitian terdahulu tentang pengembangan protokol keamanan
untuk online voting diantaranya, DuFeu dan Harris (2001) telah memberikan
2

pemaparan tentang sistem pemilu online. Dalam pemaparan tersebut menjelaskan


persyaratan untuk desain protokol dan asumsi-asumsi dalam implementasi pemilu
secara online, komponen-komponen yang terkait, fungsi dari Central
Legitimazation Agency (CLA) dan Central Tabulating Facility (CTF) serta
mendeskripsikan protokol proses interaksi antara CLA dan CTF.
Sireesha dan Chakchai (2005) yang telah mengembangkan protokol
keamanan pemilihan untuk secure online voting dengan menggunakan protokol
Two Central Facilities yang mengimplementasikan pengembangan Central
Legitimization Agency (CLA) dan Central Tabulating Facility (CTF) untuk
menghasilkan pemilu virtual yang aman. Dengan mengkombinasikan kunci
publik/simetrik dan fungsi hashing. Penelitian yang dilakukan oleh Wardhani,
dkk. (2009) yang mengembangkan sistem online voting pada IPB dengan berbasis
protokol Two Central Facilities (CTF) yang hanya memanfaatkan jaringan
sebatas cakupan satu departemen di IPB, dan penelitian yang dilakukan oleh
Fitrah, dkk. (2012) dengan pengembangan desain e-voting pilkada Kota Bogor
menggunakan protokol Two Central Facilities, dimana sistem otentikasi pada
Voter menggunakan media smart card. Namun, apabila hasil penelitian Fitrah,
dkk. ini diimplementasikan masih memiliki kelemahan misalnya pemilih yang
datang saat pemungutan suara memungkinkan bukan pemilik kartu yang sah
sehingga masih memungkinkan ada masalah dalam proses pemilihan. Oleh karena
itu, penelitian ini merupakan penelitian lanjutan yang difokuskan pada
pengembangan e-voting menggunakan protokol Two Central Facilities
penyelenggaraan sistem pemilu online untuk proses otentikasi voter menggunakan
fingerprint yang disesuaikan dengan kebijakan dan kebutuhan sistem e-voting di
Indonesia. Penggunaan fingerprint ini juga untuk mendukung akan adanya
kebijakan pemerintah dalam pemanfaatan e-ktp untuk segala proses
ketatanegaraan termasuk pada pelaksanaan pemungutan suara dalam
penyelenggaraan pemilu nantinya. Dengan pemanfaatan sidik jari, sudah dapat
dipastikan bahwa yang akan memberikan suaranya adalah pemilih yang sah.

Rumusan Masalah
Bagaimana mengembangkan protokol keamanan data dan informasi yang
dapat digunakan dalam sistem pemilu secara online untuk mengatasi masalah-
masalah kecurangan yang mungkin timbul dalam sistem pemilu secara
konvensional seperti pemilih ganda, penggelembungan suara, kesalahan
perhitungan suara, kesalahan penetapan kandidat terpilih dan lain-lain terkait
rekapitulasi suara pemilu.

Tujuan Penelitian
Penelitian ini bertujuan untuk mengembangankan protokol keamanan
sistem otentikasi voter dengan protokol Two Central Facilities dan otentikasi
voter pada mesin voting menggunakan fingerprint untuk implementasi sistem
pemilu yang diselenggarakan secara online.

Manfaat Penelitian
Manfaat yang diharapkan dari hasil penelitian ini adalah :
1. Menghasilkan prototipe e-voting untuk penyelenggaraan pemilu secara online
pada proses otentikasi pemilih dalam rangka implementasi asas pemilu
LUBER dan JURDIL.
3

2. Memberikan pemikiran baru dan solusi dalam layanan penyelenggaraan


pemilu legislatif dan pilpres secara langsung yang lebih baik, mudah, cepat,
akurat, aman dan akuntabel.

Ruang Lingkup Penelitian


Ruang lingkup dari penelitian ini difokuskan kepada proses identifikasi
pemilih (voter) menggunakan fingerprint untuk otentikasi voter pada Central
Legitimazation Agency (CLA) dari mesin voting. Dengan penggunaan fingerprint
ini, maka hanya pemilih yang sah yang dapat memberikan suaranya pada mesin
voting.
4

2 TINJAUAN PUSTAKA

Sistem Pemilu di Indonesia


Pemilihan umum sudah menjadi bagian yang tidak terpisahkan dari suatu
negara demokrasi, hampir semua negara demokrasi melaksanakan pemilihan
umum. Pemilihan umum adalah proses pemilihan wakil rakyat di parlemen dan
kepala pemerintahan berdasarkan suara terbanyak. Di Indonesia, Pemilu
merupakan bagian yang sangat penting dalam kegiatan bernegara. Peraturan
tertinggi mengenai pemilu secara jelas telah diatur dalam Undang-Undang Dasar
(UUD) 1945 hasil amandemen pada perubahan IV, bab VIIB tentang Pemilihan
Umum, pasal 22E. Berikut ini adalah isi dari pasal tersebut.
1. Pemilihan umum dilaksanakan secara langsung, umum, bebas, rahasia, jujur,
dan adil setiap lima tahun sekali.
2. Pemilihan umum diselenggarakan untuk memilih anggota Dewan Perwakilan
Rakyat, Dewan Perwakilan Daerah, Presiden dan Wakil Presiden dan Dewan
Perwakilan Rakyat Daerah.
3. Peserta pemilihan umum untuk memilih anggota Dewan Perwakilan Rakyat
dan anggota Dewan Perwakilan Rakyat Daerah adalah partai politik.
4. Peserta pemilihan umum untuk memilih anggota Dewan Perwakilan Daerah
adalah perseorangan.
5. Pemilihan umum diselenggarakan oleh suatu komisi pemilihan umum yang
bersifat nasional, tetap, dan mandiri.
6. Ketentuan lebih lanjut tentang pemilihan umum diatur dengan undang-
undang.
Pada Undang-Undang Nomor 8 Tahun 2012 Tentang Pemilihan Umum
Anggota Dewan Perwakilan Rakyat, Dewan Perwakilan Daerah, dan Dewan
Perwakilan Rakyat Daerah dinyatakan pemilihan umum secara langsung oleh
rakyat merupakan sarana perwujudan kedaulatan rakyat guna menghasilkan
pemerintahan negara yang demokratis berdasarkan Pancasila dan UUD 1945.
Pemilu di Indonesia menganut asas langsung, umum, bebas, rahasia, jujur, dan
adil. Pelaksanaan Pemilu diselenggarakan dalam beberapa tahapan sebagai
berikut :
1. Perencanaan program dan anggaran, serta penyusunan peraturan pelaksanaan
penyelanggaraan pemilu.
2. Pemutakhiran data pemilih dan penyusunan daftar pemilih.
3. Pendaftaran dan verifikasi peserta Pemilu.
4. Penetapan peserta Pemilu.
5. Penetapan jumlah kursi dan penetapan daerah pemilihan.
6. Pencalonan anggota DPR, DPD, DPRD Provinsi, dan DPRD Kabupaten/Kota.
7. Masa kampanye.
8. Masa tenang.
9. Pemungutan dan penghitungan suara.
10. Penetapan hasil Pemilu.
11. Pengucapan sumpah/janji anggota DPR, DPD, DPRD Provinsi, dan DPRD
Kabupaten/Kota.
Pelaksanaan pemilihan umum di Indonesia melibatkan beberapa pihak
yang terkait. Gambar 1 menunjukkan pihak-pihak yang terkait dengan
pelaksanaan pemilu sesuai dengan Undang-Undang No. 15 Tahun 2011 Tentang
5

Penyelenggara Pemilihan Umum. Berikut ini adalah penjelasan setiap bagian pada
Gambar 1 terhadap pihak yang terkait pada pemilu.

Gambar 1 Pihak yang terkait pemilu (Shalahuddin, 2009)

1. Komisi Pemilihan Umum (KPU) adalah lembaga penyelenggara Pemilu yang


bersifat nasional, tetap, dan mandiri.
2. KPU Provinsi dan KPU Kabupaten/Kota adalah penyelenggara Pemilu
ditingkat provinsi dan kabupaten/kota.
3. Panitia Pemilihan Kecamatan (PPK) adalah panitia yang dibentuk oleh KPU
Kabupaten/Kota untuk menyelenggarakan Pemilu di tingkat kecamatan.
4. Panitia Pemungutan Suara (PPS) adalah panitia yang dibentuk oleh KPU
Kabupaten/Kota untuk menyelenggarakan Pemilu di tingkat desa/kelurahan.
5. Panitia Pemilihan Luar Negeri (PPLN) adalah panitia yang dibentuk oleh
KPU untuk menyelenggarakan Pemilu di luar negeri.
6. Kelompok Penyelenggara Pemungutan Suara (KPPS) adalah kelompok yang
dibentuk oleh PPS untuk menyelenggarakan pemungutan suara di tempat
pemungutan suara.
7. Kelompok Penyelenggara Pemungutan Suara Luar Negeri (KPPSLN) adalah
kelompok yang dibentuk oleh PPLN untuk menyelenggarakan pemungutan
suara di tempat pemungutan suara di luar negeri.
8. Badan Pengawas Pemilu (Banwaslu) adalah badan yang bertugas mengawasi
penyelenggaraan Pemilu di seluruh Indonesia.
9. Panitia Pengawas Pemilu (Panwaslu) Provinsi dan Panwaslu Kabupaten/Kota
adalah panitia yang dibentuk oleh Banwaslu untuk mengawasi
penyelenggaran Pemilu di tingkat provinsi dan kabupaten/kota.
10. Panwaslu Kecamatan adalah panitia yang dibentuk oleh Panwaslu
Kabupaten/Kota untuk mengawasi penyelenggaraan Pemilu di tingkat
kecamatan.
11. Pengawas Pemilu Lapangan adalah petugas yang dibentuk oleh Panwaslu
Kecamatan untuk mengawasi penyelenggaraan Pemilu di desa/kelurahan.
6

12. Pemilih adalah warga negara Indonesia yang telah berusia 17 tahun atau
telah/sudah pernah menikah dan tidak sedang dicabut hak pilihnya.
13. Peserta Pemilu ada beberapa macam.
a. Pada pemilihan anggota DPR, DPRD Provinsi, dan DPRD
Kabupaten/Kota peserta Pemilu adalah partai politik.
b. Pada Pemilu anggota DPD, peserta Pemilu adalah perorangan.
c. Pada pemilihan presiden/wakil presiden, peserta Pemilu adalah wakil
partai politik.
d. Sedangkan pada pemilihan kepala daerah /wakil kepala daerah, peserta
Pemilu adalah wakil partai politik atau perorangan.

Pemungutan Suara
Pemungutan suara (voting) adalah salah satu tahap pelaksanaan pemilihan
umum. Secara umum, di banyak negara, pemungutan suara dilaksanakan secara
rahasia pada tempat yang khusus dipersiapkan untuk pelaksanaan pemungutan
suara. Proses pemungutan suara di Indonesia masih menggunakan cara
konvensional, yaitu menggunakan kertas suara. Berikut ini adalah urutan proses
pada saat pemungutan suara di Indonesia.
1. Calon pemilih datang ke TPS (Tempat Pemungutan Suara). TPS adalah
tempat melakukan pemungutan suara yang disediakan oleh panitia pemilihan
umum.
2. Calon pemilih memberikan kartu pemilih. Kartu pemilih ini digunakan
sebagai tanda bahwa calon pemilih telah terdaftar sebagai calon pemilih.
3. Calon pemilih mengambil kertas suara dan kemudian melakukan pencoblosan
di dalam bilik suara.
4. Kertas suara dimasukkan ke dalam kotak suara.
5. Salah satu jari pemilih diberi tanda dengan tinta sebagai penanda bahwa
pemilih tersebut telah melakukan pemungutan suara.
6. Setelah waktu untuk memasukkan suara selesai, maka kemudian dilakukan
perhitungan suara.
7. Kertas suara dikeluarkan dari kotak suara dan kemudian dihitung bersama-
sama dengan diawasi oleh saksi dari berbagai pihak antara lain panitia dan
perwakilan partai politik.
8. Hasil perhitungan tersebut kemudian dikirimkan ke kantor KPU untuk
dilakukan rekapitulasi hasil pemungutan suara.

Permasalahan Pemilu
Dalam pelaksanaan pemilu, sering terjadi kesalahan-kesalahan yang
disebabkan oleh human error, atau disebabkan karena sistem pendukung
pelaksanaan voting yang tidak berjalan dengan baik. Berikut ini adalah beberapa
permasalahan yang timbul dalam pelaksanaan pemilu di Indonesia selama ini :
1. Banyak terjadi kesalahan dalam proses pendataan dan pendaftaran pemilih.
Kesalahan ini terjadi karena sistem kependudukan yang masih belum berjalan
dengan baik. Konsep penggunaan banyak kartu identitas menyebabkan
banyaknya pemilih yang memiliki kartu suara lebih dari satu buah. Keadaan
ini bisa dimanfaatkan oleh pihak-pihak tertentu untuk meningkatkan jumlah
suara sehingga dapat memenangkan pemilihan tersebut, misalnya suara
7

pemilih diwakili oleh orang lain atau pemilih dapat melakukan pemilihan
lebih dari satu kali.
2. Kurang akuratnya hasil perhitungan suara. Oleh karena proses pemungutan
suara dilakukan dengan cara pencoblosan atau pencontrengan pada kertas
suara, sehingga sering kali muncul perdebatan mengenai sah atau tidaknya
sebuah kertas suara.
3. Pemilih salah dalam memberi tanda pada kertas suara. Ketentuan keabsahan
pada penandaan kertas suara yang kurang jelas, sehingga banyak kartu suara
yang dinyatakan tidak sah. Pada tahapan verifikasi keabsahan dari kartu suara,
sering terjadi kontroversi peraturan dan menyebabkan konflik di masyarakat.
4. Proses penghitungan suara yang dilakukan di setiap daerah berjalan lambat
karena proses tersebut harus menunggu semua kartu suara terkumpul terlebih
dahulu. Keterlambatan yang terjadi pada proses pengumpulan akan berimbas
kepada proses penghitungan suara. Lebih jauh lagi, pengumuman hasil
perhitungan akan meleset dari perkiraan sebelumnya.
5. Keterlambatan dalam proses tabulasi hasil penghitungan suara dari daerah.
Kendala utama dari proses tabulasi ini adalah kurangnya variasi metode
pengumpulan hasil penghitungan suara. Hal ini disebabkan oleh masih
lemahnya infrastruktur teknologi komunikasi di daerah. Oleh karena itu,
seringkali pusat tabulasi harus menunggu data penghitungan yang dikirimkan
dari daerah dalam jangka waktu yang lama. Akibat dari hal tersebut, maka
pengumuman hasil pemilu akan memakan waktu yang lama.
6. Tidak adanya salinan terhadap kertas suara. Hal ini menyebabkan jika terjadi
kerusakan terhadap kertas suara, panitia pemilihan umum sudah tidak
mempunyai bukti yang lain sehinnga menyulitkan untuk diadakaan
perhitungan kembali jika terjadi ketidakpercayaan terhadap hasil perhitungan
suara.
7. Rawan konflik. Pemilihan umum di Indonesia saat ini sering menimbulkan
konflik. Hal tersebut dipicu adanya ketidakpercayaan terhadap hasil
perhitungan suara. Konflik ini dapat disaksikan sering terjadi pada setiap
pelaksanaan penyelengaraan pemilihan umum kepala daerah.
8. Besarnya anggaran yang dilalukan untuk melakukan proses pemungutan
suara. Berdasarkan data terakhir KPU (Komisi Pemilihan Umum), yaitu
lembaga pemerintah yang bertugas melakukan pelaksanaan pemilihan umum
di Indonesia, pemerintah telah menyetujui anggaran pemilu mencapai Rp 10,4
triliun untuk pelaksanaan pemilihan umum tahun 2009 sampai dengan tahun
2014. Anggaran yang sangat besar tersebut digunakan untuk proses
pencetakan kertas suara, distribusi kertas suara, gaji panitia, pengawas, dan
lain-lain.
9. Kurang terjaminnya kerahasiaan dari pilihan yang dibuat oleh seseorang.
Banyak pemilih mengalami tekanan dan ancaman dari pihak tertentu untuk
memberikan suara mereka kepada pihak tertentu. Lebih buruk lagi, terjadi
“jual-beli suara“ di kalangan masyarakat tertentu, sehingga hasil voting tidak
mewakili kepentingan seluruh golongan masyarakat.

Keamanan Komputer
Bishop (2003) mengemukakan bahwa keamanan komputer mencakup tiga
aspek utama, yaitu kerahasian (confidentiality), integritas (integrity) dan
8

ketersediaan (availability). Interpretasi dari setiap aspek pada lingkungan suatu


organisasi ditentukan oleh kebutuhan dari individu yang terlibat, kebiasaan dan
hukum yang berlaku dalam organisasi tersebut.
Kerahasiaan merupakan suatu usaha untuk menjaga kerahasian informasi
dan pribadi atau sumber daya. Mekanisme kontrol akses dalam penyediaan
informasi dapat memberikan aspek kerahasiaan. Salah satu mekanisme kontrol
akses yang menyediakan kerahasiaan adalah kriptografi, dimana mekanisme
pengacakan data sehingga sulit dipahami oleh pihak yang tidak berwenang.
Mekanisme kontrol akses terkadang lebih mengutamakan kerahasiaan keberadaan
data dari pada isi dari data itu sendiri.
Aspek integritas menekankan pada tingkat kepercayaan kebenaran dengan
penjagaan terhadap perubahan yang dilakukan dengan cara diluar standar atau
oleh pihak yang tidak berwenang. Integritas meliputi data integritas (isi informasi)
dan originalitas integritas (sumber data, sering disebut otentikasi). Mekanisme
integritas terbagi dalam dua kelas, yaitu mekanisme pencegahan (prevention) dan
mekanisme deteksi (detection) dengan tujuan integritas yang berbeda. Mekanisme
pencegahan menghalangi seorang pemakai berusaha mengubah suatu data, dimana
tidak mempunyai wewenang untuk mengubah data tersebut. Mekanisme deteksi
menghalangi seorang pemakai yang mempunyai wewenang untuk mengubah data
diluar cara standar.
Aspek ketersediaan berhubungan dengan ketersediaan informasi atau
sumber daya ketika dibutuhkan. Sistem yang diserang keamanannya dapat
menghambat atau meniadakan akses ke informasi. Usaha untuk menghalangi
ketersediaan informasi disebut denial of service (DoS Attack), contohnya suatu
server menerima permintaan (biasanya palsu) yang bertubi-tubi atau diluar
perkiraan sehingga tidak dapat melayani permintaan lain atau bahkan server
tersebut menjadi down atau crash.
NIST (National Institute of Standards and Technology) Komputer Security
Handbook dalam Stalling (2011) mendefinisikan keamanan komputer sebagai
perlindungan yang diberikan kepada sistem informasi secara otomatis dalam
rangka untuk mencapai yang dapat diaplikasikan untuk menjaga integritas,
ketersediaan, dan kerahasiaan dari sumber daya sistem informasi (termasuk
hardware, software, firmware, informasi/data, dan telekomunikasi).

Kriptografi
Kriptografi berasal dari gabungan kata kripto yang berarti rahasia dan grafi
yang berarti tulisan. Definisi kriptografi merupakan seni dan ilmu untuk menjaga
keamanan pesan (Schneier, 1996). Kriptografi juga dapat didefinisikan sebagai
studi matematik yang berkaitan dengan aspek keamanan informasi seperti
kerahasiaan, integritas data, autentikasi entitas, dan autentikasi asal data
(Guritman, 2003). Terdapat empat tujuan utama dari kriptografi sebagai berikut :
1. Kerahasiaan adalah suatu layanan yang digunakan untuk menjaga isi
informasi dari semua pihak yang tidak berwenang memilikinya. Dengan
demikian informasi hanya akan dapat diakses oleh pihak-pihak yang berhak
saja.
2. Integritas adalah suatu layanan yang berkaitan pengubahan data atau
informasi dari pihak-pihak yang tidak berwenang. Untuk menjamin integritas
data, harus mampu mendeteksi manipulasi data dari pihak-pihak yang tidak
9

berwenang. Manipulasi data yang dimaksud disini diartikan sebagai hal-hal


yang berkaitan dengan penghapusan, penyisipan, dan pergantian data.
3. Otentikasi adalah suatu layanan yang berhubungan dengan identifikasi
entitas dan informasi itu sendiri. Dua pihak yang terlibat dalam komunikasi
seharusnya mengidentikasi dirinya satu sama lain. Informasi yang
disampaikan melalui satu saluran (channel) seharusnya dapat
diidentifikasikan asalnya, isinya, tanggal dan waktunya. Atas dasar ini
otentikasi terbagi menjadi dua kelas besar, yaitu otentikasi entitas dan
otentikasi asal data.
4. Non-repudiasi adalah suatu layanan yang ditujukan untuk mencegah
terjadinya pelanggaran kesepakatan yang telah dibuat sebelumnya oleh
entitas. Apabila sengketa muncul ketika suatu entitas mengelak telah
melakukan komitmen tertentu, maka suatu alat untuk menangai situasi
tersebut diperlukan. Misalnya, suatu entitas mendapatkan wewenang dari
entitas lainnya untuk melakukan aksi tertantu, kemudian mengingkari
wewenang yang diberikan, maka suatu prosedur yang melibatkan pihak
ketiga yang dipercaya untuk menyelesaikan sengketa itu.

Protokol Two Central Facilities


Pemilihan menggunakan protokol Two Central Facilities dilakukan
dengan membagi Central Legitimazation Agency (CLA) dan Central Tabulating
Facility (CTF) menjadi dua bagian yang berbeda. Menurut Sireesha dan Chakchai
(2005) pemilihan dengan Two Central Facilities adalah sebagai berikut :
1. Setiap pemilih mengirim pesan kepada Central Legitimazation Agency (CLA)
dan meminta nomor validasi.
2. Central Legitimazation Agency (CLA) mengirim nomor validasi acak kepada
pemilih dan menyimpan daftar setiap nomor validasi. Central Legitimazation
Agency (CLA) juga menyimpan sebuah daftar dari nomor validasi penerima,
untuk mengantisipasi seseorang memilih dua kali.
3. Central Legitimazation Agency (CLA) mengirim daftar nomor validasi
kepada Central Tabulating Facility (CTF).
4. Setiap pemilih memilih nomor identifikasi secara acak lalu membuat pesan
dengan nomor tersebut, yaitu nomor validasi yang diperoleh dari Central
Legitimazation Agency (CLA) dan suaranya. Pesan ini kemudian dikirimkan
kepada Central Tabulating Facility (CTF).
5. Central Tabulating Facility (CTF) memeriksa dan membandingkan nomor
validasi dengan daftar yang diterima dari Central Legitimazation Agency
(CLA). Jika nomor validasi terdapat pada daftar maka nomor tersebut akan
disilang untuk menghindari pemilih memilih dua kali. Central Tabulating
Facility (CTF) menambahkan nomor identifikasi pada daftar pemilih yang
telah memberikan suara pada kandidat tertentu dan menambahkan satu suara
pada kandidat tersebut.
6. Setelah semua suara diterima, Central Tabulating Facility (CTF)
mempublikasikan keluaran seperti daftar nomor identifikasi dan untuk siapa
suara tersebut diberikan.
Skema pemilihan dengan komunikasi Two Central Facilities dapat dilihat
pada Gambar 2. Pada sistem ini setiap pemilih dapat melihat daftar nomor
identifikasi dan mencari nomor miliknya untuk membuktikan bahwa pilihannya
10

telah dihitung. Tentu saja semua pesan yang keluar/masuk telah dienkripsi dan
ditandatangani untuk menghindari peniruan terhadap identitas orang lain atau
menghindari adanya penangkapan transmisi.
Central Tabulating Facility (CTF) tidak dapat memodifikasi suara karena
setiap pemilih akan melihat nomor identifikasi yang dimilikinya. Jika seseorang
pemilih tidak berhasil menemukan nomor identifikasinya, atau ditemukan nomor
identifikasi pada kandidat yang tidak dipilih, pemilih akan menyadari bahwa telah
terjadi kecurangan. Central Tabulating Facility (CTF) tidak dapat memanipulasi
kotak perhitungan suara karena kegiatan tersebut berada dalam pengawasan
Central Legitimazation Agency (CLA). Central Legitimazation Agency (CLA)
mengetahui berapa banyak pemilih yang telah terdaftar dan nomor validasinya,
dan akan mendeteksi jika terdapat modifikasi.

Gambar 2 Skema pemilihan two central facilities


Central Legitimazation Agency (CLA) dapat menyatakan pemilih yang tidak
memiliki hak pilih. Central Legitimazation Agency (CLA) juga dapat mengawasi
pemilih yang melakukan kecurangan seperti memilih lebih dari satu kali. Hal ini
dapat diantisipasi dengan cara menerbitkan daftar pemilih yang telah disertifikasi.
Jika nomor pemilih dalam daftar tidak sama dengan jumlah suara, maka dicurigai
telah terjadi kesalahan atau kecurangan. Sebaliknya jika jumlah peserta yang ada
pada daftar lebih banyak dari hasil tabulasi artinya beberapa pemilih tidak
menggunakan hak suaranya (Wardhani, dkk. 2009).

Central Legitimization Agency (CLA)


Central Legitimization Agency (CLA) merupakan bagian yang bertugas
untuk melakukan sertifikasi pemilih. Fungsi utama dari Central Legitimazation
Agency (CLA) adalah untuk melakukan otentikasi dan otorisasi pemilih. Setiap
pemilih akan mengirim sebuah pesan aman kepada Central Legitimazation
Agency (CLA) untuk meminta sebuah ValidationID. Central Legitimazation
Agency (CLA) akan membangkitkan sebuah ValidationID, mendaftarkannya
secara aman kepada Central Tabulating Facility (CTF), dan mengembalikannya
secara aman kepada pemilih. ValidationID bernilai sangat kompleks sehingga
secara komputasi tidak memungkinkan seorang penyerang untuk memproduksi
sebuah ID yang valid. Central Legitimization Agency (CLA) memiliki daftar
sejumlah ValidationID yang valid serta daftar identifikasi pemilih dari setiap
ValidationID dalam rangka untuk mencegah pemilih menerima lebih dari satu
11

ValidationID dan melakukan pemilihan lebih dari satu kali (DuFeu dan Harris,
2001).

Skema E-voting
Sistem protokol e-voting Two Central Facilities termasuk protokol yang
paling memenuhi sebagian besar persyaratan untuk menjalankan secure election
dan memiliki tingkat keamanan yang paling tinggi yang dijelaskan oleh Schneier
(1996). Sireesha dan Chakchai pada tahun 2005 telah melakukan penelitian yang
mengembangkan sistem e-voting dengan protokol Two Central Facilities tersebut
sedemikian rupa sehingga memiliki alur seperti pada Gambar 3 yang telah
dimodifikasi pada penelitian Fitrah, dkk. (2012). Berdasarkan skema e-voting
pada Gambar 3, alur kerja online voting terbagi menjadi empat tahapan dengan
penjelasan sebagai berikut :

Gambar 3 Skema e-voting two central facilities


Tahap 1
1. Pengiriman kunci publik oleh masing-masing mesin voting kepada Central
Legitimization Agency (CLA).
2. Central Legitimization Agency (CLA) mengirimkan kunci simetri yang telah
dienkripsi menggunakan kunci publik yang diterima dari masing-masing
mesin voting dan diberikan kepada masing-masing mesin voting sesuai alamat
IP address masing-masing mesin voting.
Tahap 2
1. Pemilih mengirimkan permintaan untuk memilih melalui mesin voting
dengan cara menempelkan kartu identitasnya.
2. Mesin voting akan mengirimkan data kartu identitas pemilih yang telah
dienkripsi kepada Central Legitimization Agency (CLA).
3. Central Legitimization Agency (CLA) akan melakukan proses dekripsi
terhadap data yang diterima.
4. Central Legitimization Agency (CLA) akan melakukan autentikasi pemilih
dengan database.
5. Apabila pemilih dinyatakan berhak memilih dengan ketentuan pemilih telah
terdaftar di database dan belum memilih sebelumnya, pemilih akan diarahkan
kepada halaman pemilihan dan status pemilih akan diubah menjadi status
12

telah melakukan autentikasi. Namun, apabila pemilih dinyatakan tidak berhak


memilih, pemilih langsung diarahkan ke halaman gagal memilih.
6. Setelah pemilih melakukan pemilihan, pilihan pemilih akan disimpan pada
mesin voting dan status pemilih akan diubah menjadi status telah melakukan
pemilihan. Mesin akan terus menerus melakukan proses yang sama sampai
pada waktu pemilihan selesai.
Tahap 3
1. Pengiriman kunci publik oleh masing masing mesin voting kepada Central
Tabulating Facility (CTF).
2. Central Tabulating Facility (CTF) mengirimkan kunci simetri yang telah
dienkripsi menggunakan kunci publik yang diterima dari tiap-tiap mesin
voting dan dikirimkan kepada masing-masing mesin sesuai alamat IP address
mesin voting.
Tahap 4
1. Mesin voting secara periodik akan melakukan permintaan kepada Central
Legitimization Agency (CLA) untuk mengirimkan data ke Central Tabulating
Facility (CTF) dengan mengirimkan informasi identitas mesin yang
dienkripsi.
2. Central Legitimization Agency (CLA) akan melakukan proses autentikasi dan
mengirimkan suatu random key mesin kepada mesin voting dan Central
Tabulating Facility (CTF) yang dienkripsi.
3. Mesin voting akan mengirimkan identitas mesin, data hasil pemilihan, dan
juga nilai random kepada Central Tabulating Facility (CTF) yang didapatkan
dari Central Legitimization Agency (CLA) yang telah dienkripsi.
4. Central Tabulating Facility (CTF) melakukan pencocokan nilai random key
yang diberikan mesin dengan random key yang diterima dari Central
Legitimization Agency (CLA) untuk mesin tersebut.
5. Jika sah, Central Tabulating Facility (CTF) akan melakukan pengecekan data
yang dikirim dari masing-masing mesin voting.
6. Apabila random key yang dikirimkan mesin dan Central Legitimization
Agency (CLA) sesuai, jumlah suara yang diberikan mesin kepada Central
Tabulating Facility (CTF) akan disimpan ke dalam Central Tabulating
Facility (CTF).
7. Mesin akan terus menerus melakukan proses yang sama sampai pada waktu
pemilihan selesai.

Secure Voting Requirement


Kebijakan yang akan diterapkan dalam membangun sistem e-voting
mengacu pada buku Schneier (1996). Secure voting requirement yang dibangun
secara komputerisasi dapat digunakan jika terdapat protokol yang menjamin dua
hal dibawah ini, yaitu :
1. Privasi individu.
2. Pencegahan terhadap kecurangan.
Suatu protokol yang ideal harus memiliki 6 persyaratan sebagai berikut :
1. Hanya pemilih yang berhak yang dapat memberikan suara (otentikasi).
2. Tidak boleh memberikan lebih dari satu suara.
3. Tidak boleh menentukan orang lain harus memilih untuk siapa.
4. Tidak ada yang bisa menduplikasi suara orang lain.
13

5. Tidak boleh mengubah pilihan orang lain.


6. Setiap pemilih dapat memastikan bahwa suara mereka sudah dikirimkan dan
terhitung dalam penghitungan akhir.

Sidik Jari (fingerprint)


Sidik jari atau fingerprint adalah hasil reproduksi tapak jari baik yang
sengaja diambil maupun bekas yang ditinggalkan pada benda karena pernah
tersentuh kulit telapak tangan atau kaki. Sidik jari merupakan karakteristik alami
manusia yang digunakan dalam identifikasi personal sejak lama. Sidik jari yang
terdiri dari pola alur (ridge) dan lembah (valley), yang unik untuk tiap individu,
bahkan bagi mereka yang kembar sekalipun (Iqbal dan Sigit).

Gambar 4 Contoh sampel sidik jari


Sistem kerja mesin sidik jari terbilang sangat signifikan dan sensitif. Sensor
yang digunakan untuk mendeteksi sidik jari menggunakan sistem optikal, dimana
pendeteksian dilakukan dengan pembacaan kontur atau tinggi rendahnya
permukaan sidik jari dan listrik statis tubuh. Hal ini menghasilkan tingkat
keamanan yang tinggi, karena tidak bisa dipalsukan dengan foto copy sidik jari,
sidik jari tiruan bahkan dengan cetak lilin yang detail dengan guratan-guratan
kontur sidik jari sekalipun.
Sistem kerja absensi sidik jari dengan komputer atau yang lebih dikenal
absensi sidik jari ”online” ini sangat bergantung dengan komputer. Jadi absensi ini
harus bekerja bersama komputer dan tidak dapat berdiri sendiri. Seluruh proses
record verifikasi jari dilakukan di komputer, sedang sensor U.are.U atau sensor
sidik jari yang digunakan hanya untuk mengambil sidik jari saja. Selanjutnya data
akan langsung diinput kedalam database yang sudah terintergrasi dengan sensor.
Pada umumnya absensi sidik jari online atau terhubung dengan komputer
mempunyai minimal konfigurasi sistem komputer sebagai berikut (sidik-
jari.com) :
a. Minimal Pentium 200Mhz
b. 64MB Memory
c. Slot USB untuk sensor sidik jari
d. Windows ME/XP/Vista
14

Gambar 5 Mesin fingerprint scanner


Spesifikasi :
 Type : U are. U4500
 Menggunakan sensor digital personal
 PC Based, memerlukan komputer pada saat operasional
 Kapasitas User : Tidak Terbatas
 Kapasitas Transaksi Log : Tidak Terbatas
 Media Komunikasi ke Komputer : USB Cable
 Waktu respon : <= 1 detik
 Jenis Matching : 1:1 dan 1:N
 Kompatibel dengan semua jenis sistem operasi windows
15

3 METODE PENELITIAN

Alur Proses Penelitian


Metode penelitian yang digunakan adalah model alur proses yang dapat
diperlihatkan pada Gambar 6 berikut.

Identifikasi Masalah dan Studi Pustaka

Identifikasi Kebutuhan Sistem

Disain Sistem

Implementasi Sistem

Pengujian Sistem

Gambar 6 Alur proses penelitian

Identifikasi Masalah dan Studi Pustaka


Pada tahapan ini dilakukan identifikasi masalah yang mungkin timbul
dalam penyelenggaraan pemilu untuk implementasi evoting menggunakan mifare
card reader (smart card) yang telah dikembangkan pada penelitian sebelumnya.
Identifikasi masalah dilakukan melalui :
- Diskusi dan tanya jawab dengan peneliti sebelumnya tentang sistem
evoting yang dikembangkannya terkait kelemahan sistem jika
diimplementasikan yang disesuaikan dengan kondisi di Indonesia.
- Diskusi dan wawancara dengan anggota KPUD Kota Bogor untuk
memperoleh informasi yang jelas tentang sistem pemilu di Indonesia dan
masalah yang timbul selama penyelenggaraan pemilu.
Dalam melakukan identifikasi tersebut diperoleh informasi kemungkinan
masalah yang akan timbul antara lain :
- Pemilih memungkinkan berpura-pura menjadi pemilih yang lain.
- Pemilih yang tidak sah memungkinkan memberikan suaranya.
- Pemilih yang berhak memilih masih memungkinkan menitipkan kartunya
atau mewakilkan kepada orang lain untuk memberikan suaranya.
Pada tahapan ini juga dilakukan studi pustaka atau riset jurnal penelitian
sebelumnya dengan tujuan untuk mengetahui perkembangan informasi penelitian
di bidang ilmu sistem keamanan komputer khususnya protokol keamanan, serta
mempelajari berbagai teori yang mendasari penelitian ini dimana referensi
penelitian ini diperoleh dari jurnal ilmiah, tugas akhir berupa skripsi ataupun tesis,
dan buku literatur.
16

Identifikasi Kebutuhan Sistem


Pada tahapan ini dilakukan identifikasi kebutuhan sistem untuk pemecahan
masalah yang mungkin timbul pada proses pemungutan suara apabila
implementasi sistem evoting menggunakan mifare card reader (smart card)
sebagai otentikasi pemilih yang telah dikembangkan pada penelitian sebelumnya.
Pada penelitian ini, kebutuhan sistem yang digunakan untuk proses otentikasi
pemilih tersebut adalah mesin fingerprint scanner, dimana pemilih yang
bersangkutan yang harus memberikan suaranya dan tidak memungkinkan akan
diwakilkan orang lain dalam proses pemilihan suara. Hal yang perlu diperhatikan
juga disini adalah kebutuhan fungsional dan non fungsional sistem.

Disain Sistem
Pada penelitian ini, langkah awal dalam disain sistem dengan menentukan
protokol kriptografi yang akan digunakan. Protokol kriptografi yang digunakan
adalah protokol Two Central Facilities (TCF) yang terdiri dari tiga komponen,
yaitu :
 Mesin Voting
Client/GUI untuk interaksi dengan pemilih
 Central Legitimization Agency (CLA)
Server untuk otentikasi dan otorisasi pemilih
 Central Tabulating Facility (CTF)
Server untuk hasil rekapitulasi suara pemilih
Pada tahap ini juga, sistem e-voting yang akan dikembangkan dari
penelitian sebelumnya hanya terfokus pada proses otentikasi pemilih yaitu
komunikasi yang terjadi antara Mesin Voting dengan Central Legitimization
Agency (CLA) menggunakan sidik jari melalui pembacaan sensor mesin
fingerprint scanner tipe U are. U4500 dengan spesifikasi sebagaimana yang telah
disebutkan sebelumnya dalam bagian tinjauan pustaka. Adapun tahapan
perancangan pada sistem e-voting yang akan dikembangkan adalah terdiri dari :
 Registrasi dan verifikasi pemilih
Pada tahapan ini, setiap pemilih yang sudah memenuhi persyaratan untuk
memilih terlebih dahulu didaftar untuk mendapatkan database pemilih.
Selanjutnya dilakukan verifikasi untuk menyakinkan pemilih yang
bersangkutan dapat melakukan pemilihan.
 Otentikasi pemilih
Tahapan ini digunakan untuk proses pelaksanaan pemungutan suara dimana
pemilih sebelum diarahkan ke halaman kotak untuk menggunakan hak
pilihnya terlebih harus terotentikasi oleh sistem dengan sidik jari dikenal.

Implementasi Sistem
Tahapan implementasi menghasilkan aplikasi sistem yang sesuai dengan
disain yang diinginkan. Pada tahap ini, disain akan diimplementasikan menjadi
sistem dengan lingkungan implementasi sebagai berikut:
1. Sistem Operasi Microsoft Windows 7.
2. Apache Friends XAMPP sebagai server, MySQL sebagai pangkalan data, dan
PHP sebagai bahasa pemrograman.
3. Google chrome sebagai browser yang digunakan dalam menjalankan sistem.
17

4. Aplikasi Visual Basic 6.0 (VB6) sebagai bahasa pemrograman yang


mendukung mesin fingerprint scanner yang digunakan.
5. Fingerprint scanner U are.U4500 untuk alat registrasi dan otentikasi pemilih.

Pengujian Sistem
Tahap Pengujian dilakukan untuk melihat apakah sistem yang dibangun
memberi hasil keluaran seperti yang diharapkan dan dapat memenuhi standar
secure voting requirements serta standar persyaratan pemilu dari KPU. Pengujian
pada penelitian ini dilakukan dengan metode Blackbox. Ilustrasi dari metode
pengujian blackbox dapat dilihat pada Gambar 9 berikut.
Input yang
Pengujian ini merupakan pendekatan
Input Data
menyebabkan yang dilakukan untuk mengecek
hasil yang
menyimpan
kesalahan-kesalahan performa sistem,
antara lain :
- Fungsional sistem yang mengacu pada
Sistem secure voting requirement oleh Schneier
dan persyaratan KPU.
- Inisialisasi dan terminasi sistem.
- Kemampuan kinerja sistem dalam
Output Hasil
Hasil tes keluaran
otentikasi pemilih.
- Kemampuan sistem dalam akses basis
Gambar 7 Ilustrasi pengujian data pemilih
metode blackbox
18

4 HASIL DAN PEMBAHASAN

Protokol ini memiliki tiga komponen utama dalam implementasi


penyelenggaraan pemilu yakni mesin voting, Central legitimization Agency
(CLA), dan Central Tabulating Facilities (CTF). Mesin voting merupakan
komponen yang berinteraksi langsung dengan pemilih, dimana pemilih dapat
melakukan proses pemberian suara untuk kandidat yang dipilihnya. Central
Legitimization Agency (CLA) adalah server pertama yang merupakan badan
sertifikasi pemilih yang memiliki tugas utama mengotentikasi dan mengotorisasi
pemilih, CLA mempunyai pangkalan data yang menyimpan data. Pangkalan data
ini tidak dapat diperlihatkan pada pihak lain sekalipun Central Tabulating
Facilities (CTF). Setiap proses yang membutuhkan data pemilih, contohnya login
dan verifikasi pilihan, harus melakukan pengecekan langsung dengan Central
legitimization Agency (CLA) melalui mesin voting. Central Tabulating Facilities
(CTF) adalah server kedua yang merupakan badan tabulasi atau penghitungan
suara. Pangkalan data yang terdapat pada Central Tabulating Facilities (CTF)
berisi suara atau pilihan pemilih dan perhitungannya untuk masing-masing
kandidat.

Identifikasi Masalah dan Studi Pustaka


Penelitian yang telah dilakukan oleh Fitrah, dkk. (2012) mencoba
mengembangkan sistem e-voting (online voting) untuk memberikan alternatif
solusi pemecahan atas permasalahn-permasalan yang mungkin timbul dalam
penyelenggaraan pemilu secara konvensional di Indonesia selama ini. Dalam
penelitiannya, mengembangkan protokol e-voting Two Central Facilities untuk
proses otentikasi pemilih menggunakan mifare card reader (smart card) sebagai
media Personal Identity (ID) bagi pemilih yang akan melakukan proses
pemberian suara atau pemilihan pada penyelenggaraan pemilu. Berdasarkan data
informasi dari pakar pemilu bahwa hasil dari penelitian Fitrah, dkk. (2012) apabila
diterapkan dalam proses pemungutan suara, maka masih memungkinkan adanya
kecurangan atau memungkinkan timbul permasalahan dilapangan pada saat
pelaksanaan pemilihan (pemungutan suara). Permasalan-permasalahan yang
mungkin timbul tersebut adalah :
o Kurang terjaminnya keabsahan pemilih yang akan memberikan suara.
Dengan media kartu :
 Pemilih yang datang saat pemungutan suara yang akan memberikan
suaranya tidak bisa dijamin bahwa pemilih yang sah dan sudah terdaftar
sebagai pemilih karena masih menggunakan kartu sebagai media
identifikasi.
 Pemilih yang akan memberikan suaranya apabila kartu yang dimiliki
terotentikasi oleh sistem e-voting maka bisa dipastikan dapat
memberikan suaranya.
Dengan media sidik jari :
 Hanya pemilih yang sudah terdaftar dalam database yang dapat
memberikan suaranya.
o Pemilih yang akan memberikan suaranya masih memungkinkan berpura-pura
menjadi pemilih yang lain.
19

Dengan media kartu :


 Pemegang kartu saat akan melakukan pemilihan memungkinkan bukan
pemilik yang sebenarnya, tetapi dapat digunakan orang lain.
Dengan media sidik jari :
 Setiap orang memiliki sidik jari yang unik dan tidak sama untuk semua
orang walaupun kembar.
o Pemilih yang tidak sah dan belum memenuhi persyaratan sebagai warga
negara yang memiliki hak untuk memilih masih memungkinkan memberikan
suaranya.
Dengan media kartu :
 Persyaratan setiap warga negara untuk berhak memilih telah ditetapkan
dalam undang-undang, tetapi warga negara yang belum memenuhi masih
memungkinkan memberikan suaranya dalam pemilihan.
Dengan media sidik jari :
 Setiap warga negara yang sah dan memenuhi persyaratan saja yang boleh
memilih dalam pemilihan.
 Warga negara yang sah dan memenuhi persyaratan untuk memilih saja
yang disimpan ke dalam database pemilih.
o Pemilih yang berhak memilih masih memungkinkan menitipkan kartunya
atau mewakilkan kepada orang lain untuk memberikan suaranya.
Dengan media kartu :
 Pada saat pemungutan suara, pemilih yang memegang kartu memungkin
bukan miliknya tetapi milik orang lain yang digunakan karena pemilik
kartu yang sah berhalangan.
 Pemegang kartu dapat menjual suaranya dengan mewakilkan hak
suaranya kepada orang lain.
Dengan sidik jari :
 Sistem hanya memperbolehkan pemilih yang sah untuk memberikan
suaranya sesuai dengan sidik jari yang terdaftar.

Identifikasi Kebutuhan Sistem


Sistem ini terdiri dari tiga entitas yaitu mesin voting, server Central
legitimization Agency (CLA), dan server Central Tabulating Facilities (CTF).
Pemilihan dilakukan pada mesin voting, pengecekan hak pemilih dilakukan pada
server Central legitimization Agency (CLA), dan proses penghitungan suara
dilakukan pada server Central Tabulating Facilities (CTF). Sistem hanya dapat
bekerja melalui entitas yang telah ditetapkan sebelumnya. Central Tabulating
Facilities (CTF) maupun Central legitimization Agency (CLA) harus dapat
diakses oleh tiap-tiap mesin voting sehingga pemakaian databasenya dapat
dilakukan secara terpusat.
Kebutuhan sistem untuk proses otentikasi pemilih menggunakan mesin
fingerprint scanner, dimana proses otentikasi ini berlangsung pada komunikasi
antara mesin voting dengan server Central legitimization Agency (CLA) sehingga
pemilih yang bersangkutan yang harus memberikan suaranya. Cara kerja mesin
fingerprint scanner dapat dijelaskan sebagai berikut :
20

Pattern
Secara umum, sidik jari dapat dibedakan menjadi beberapa tipe
menurut Henry Classification System, yaitu:

Gambar 8 Tipe patern sidik jari


Dimana hampir 2/3 manusia memiliki sidik jari dengan Loop Pattern, hampir 1/3
lainnya memiliki sidik jari dengan Whorl Pattern, dan hanya 5-10% yang
memiliki sidik jari dengan Arch Pattern. Pola-pola seperti ini digunakan untuk
membedakan sidik jari secara umum, namun untuk mesin sidik jari, pembedaan
seperti ini tidaklah cukup. Karena itulah mesin sidik jari diperlengkapi dengan
metode pengenalan Minutiae.

Minutiae
Minutiae merupakan rincian sidik jari yang tidak penting bagi manusia,
tetapi bagi sebuah mesin sidik jari itu adalah detail yang sangat diperhatikan.

Gambar 9 Minutiae sidik jari

Minutiae pada sidik jari adalah titik-titik yang mengacu kepada :


 Crossover : persilangan dua garis.
 Core : putar-balikan (U turn) sebuah garis.u
 Bifurcation : percabangan sebuah garis.
 Ridge ending : berhentinya sebuah garis.
 Island : sebuah garis yang sangat pendek.
 Delta : pertemuan dari tiga buah garis yang membentuk sudut.
 Pore : percabangan sebuah garis yang langsung diikuti dengan menyatunya
kembali percabangan tersebut sehingga membentuk sebuah lingkaran kecil.
Mesin sidik jari akan mencari titik-titik ini dan membuat pola dengan
menghubung-hubungkan titik-titik ini. Pola yang didapat dengan menghubungkan
titik-titik inilah yang nantinya akan digunakan untuk melakukan pencocokan bila
ada jari yang menempel pada mesin sidik jari. Jadi, sebenarnya mesin sidik jari
tidak mencocokkan Gambar, tetapi mencocokkan pola yang di dapat dari
minutiae-minutiae ini. Untuk lebih jelasnya, dapat diilustrasikan di bawah ini :
21

Gambar 10 Searching minutiae


Searching Minutiae
Pada Gambar 10 di atas, Gambar di sebelah kiri adalah Gambar sidik jari yang
telah tersimpan pada mesin sidik jari, sedangkan Gambar di sebelah kanan adalah
hasil scan jari yang akan dicocokkan. Pertama-tama sistem akan mencari titik-titik
minutiae pada keduanya.

Gambar 11 Before match

Before Match
Setelah itu, mesin sidik jari akan mengumpulkan titi-titik minutiae tersebut untuk
dicocokkan.

Gambar 12 Match minutiae

Match Minutiae
Langkah berikutnya, mesin sidik jari akan mencari kecocokan pola pada minutiae-
minutiae yang telah terkumpul tersebut. Pada Gambar 12 dapat dilihat bahwa
tidak semua minutiae harus digunakan atau memiliki kesamaan baik pada Gambar
kiri maupun kanan.
22

Gambar 13 Matched result

Matched Result
Jika mesin sidik jari mendapatkan pola yang sama (dalam contoh Gambar 13 di
atas terdapat ada kesamaan), maka proses identifikasi sudah berhasil (dapat dilihat
pada Gambar 13 bahwa letak pola tersebut tidak harus sama).
Dari ilustrasi di atas, bisa mendapatkan Gambaran yang jelas mengenai
bagaimana mesin sidik jari bekerja. Oleh karena tidak semua minutiae harus
digunakan dan juga karena letak pola yang ditemukan tidak harus sama, maka
dapat disimpulkan bahwa posisi jari pada saat identifikasi pada mesin sidik jari
tidak harus persis sama dengan pada saat menyimpan data sidik jari pertama kali
pada mesin tersebut. (Ibnu Fajar, 2011).
Hal yang perlu juga diperhatikan dalam pengembangan sistem e-voting
adalah spesifikasi dari kebutuhan sistem. Secara umum sistem otentikasi voter
yang terajadi pada komunikasi antara mesin voting dengan server Central
legitimization Agency (CLA) menggunakan media fingerprint scanner yang
dibangun dapat memenuhi spesifikasi umum sebagai berikut :
1. Sistem mampu memfasilitasi proses pemilu yang disesuaikan dengan kondisi
di Indonesia.
 Pemilu di Indonesia dilaksanakan untuk pemilihan anggota legislatif
(DPR Pusat, DPRD Provinsi, DPRD Kabupaten/Kota, dan DPD) dan
pemilihan kepala negara (pasangan Presiden dan wakil Presiden) atau
kepala daerah (pasangan Gubernur dan Wakil Gubernur, pasangan Bupati
dan Wakil Bupati, atau Walikota dan Wakil Walikota).
 Sistem yang dikembangkan merupakan prototype untuk pilkada, dimana
dalam sistem ini tersedia halaman untuk memilih salah satu kandidat.
2. Sistem mampu melakukan verifikasi data pemilih (voter) dan mencatat status
pemilih apakah telah melakukan proses pemungutan suara atau belum.
 Verifikasi pemilih dapat dilakukan setelah pemilih terdaftar dengan
hanya menggunakan sidik jari sehingga dapat meyakinkan bahwa
pemilih yang berhak saja yang dapat melakukan proses pemungutan
suara.
 Sistem mampu membuktikan apakah pemilih yang bersangkutan benar-
benar telah melakukan proses pemilihan atau belum.
 Pemilih yang sudah melakukan pemilihan akan diubah statusnya oleh
sistem telah melakukan pemilihan.
3. Hanya sidik jari pemilih yang terdaftar pada sistem yang diizinkan melakukan
pemilihan.
 Terdapat Kode yang berisi NIK, Nama sebagai identitas pemilih dengan
enkripsi sidik jari pemilih yang bersifat unique
23

 Hanya Kode dan Nama yang terdapat pada Central legitimization


Agency (CLA) yang dapat melakukan proses pemilihan.
4. Pemilih dapat memasukkan pilihannya ke dalam sistem, dimana seorang
pemilih hanya berhak melakukan pemungutan suara sebanyak satu kali.
 Pemilih dapat melakukan pemilihan sesuai kandidat yang diinginkan,
karena terdapat halaman kotak suara pada sistem.
 Pemilih yang telah melakukan pemilihan, status pemilih berubah menjadi
telah melakukan pemilihan sehingga apabila akan melakukan kembali
pemilihan maka sistem akan menampilkan pesan dimana pemilih tidak
bisa lagi melakukan pemilihan karena sistem tidak mengarahkan lagi ke
halaman surat suara
5. Setiap pemilih yang telah melakukan pemilihan tidak dapat melakukan
pemilihan lagi.
 Sidik jari dari pemilih yang terbaca oleh mesin fingerprint scanner yang
telah melakukan pemilihan dicatat pada Central legitimization Agency
(CLA).
 Proses otentikasi tidak akan dilakukan oleh CLA untuk sidik jari yang
telah berstatus “2” yang berarti sudah melakukan pemilihan sehingga
setiap pemilih hanya dapat memberikan satu suara.
6. Tidak boleh memberikan lebih dari satu kali suara.
 Jika pemilih yang telah melakukan pemilihan akan memberikan suara
untuk pemilihan kembali pada periode pemilu yang sama, maka mesin
voting akan mengembalikan pesan ke layar bahwa “ID voter sudah
melakukan pemilihan” dan tidak lagi diarahkan ke halaman surat suara
oleh sistem.
7. Tidak ada yang bisa mengubah pilihan orang lain.
 Sebelum memilih, setiap mesin voting akan membaca sidik jari pemilih
yang bersifat unique dari mesin fingerprint scanner yang digunakan.
Identitas pemilih akan diotentikasi dan dilakukan proses check terhadap
status pemilihanya apakah sudah memilih atau belum. Setiap pemilih,
mesin voting, dan Central legitimization Agency (CLA) tidak dapat
mengetahui dan mengganti pilihan setiap pemilih.
8. Setiap pemilih dapat memastikan bahwa suara mereka sudah dikirimkan dan
terhitung dalam penghitungan akhir.
 Setiap kali pemilih memberikan suara kepada salah seorang kandidat,
mesin voting akan mencatat sementara hasil voting dan menampilkan
pesan “ Anda telah memilih kandidat nomor 1, 2 atau 3”. Apabila pesan
konfirmasi pemilihan telah muncul ke layar, protokol menjamin bahwa
hasil pemilihan telah tercatat di database kandidat.

Disain Sistem
Perancangan yang dikembangkan dari sistem e-voting ini dengan protokol
Two Central Facilities menggunakan fingerprint (sidik jari) dimana difokuskan
pada komunikasi antara mesin voter dan server Central legitimization Agency
(CLA) meliputi proses registrasi database pemilih dan proses otentikasi pemilih.
Diagram alir proses registrasi database sidik jari pemilih dapat dilihat pada
Gambar 14. Pada proses ini, data masukan sidik jari yang didapat dari hasil
akuisisi oleh mesin sensor sidik jari, akan melalui tahapan verifikasi yang
24

selanjutnya saat data telah dikenali dilanjutkan meregistrasi data tersebut ke


database.
Mulai

Memasukkan Kode dan Nama


pemilih

Mengambil citra sidik jari pemilih

Sidik jari dalam


kondisi bagus?

Ya

Membaca citra sidik jari pemilih

Menyimpan sidik jari pemilih


ke database

Selesai

Gambar 14 Diagram alir proses registrasi pemilih

Mulai

Meletakkan sidik jari pemilih


pada sensor fingerprint

Menangkap citra sidik jari


pemilih

Mencocokkan sidik jari


masukan dengan sidik jari
database CLA

Ya Tidak
Sidik jari cocok?

Proses otentikasi berhasil Proses otentikaasi gagal

Diperbolehkan melakukan Tidak diperbolehkan


pemilihan melakukan pemilihan

Selesai

Gambar 15 Diagram alir proses otentikasi pemilih


25

Proses otentikasi pemilih merupakan proses membandingkan sidik jari


yang dicocokkan satu-satu dimana setiap sidik jari masukan dibandingkan dengan
satu template sidik jari tertentu yang tersimpan dalam database Central
legitimization Agency (CLA). Keluaran dari program ini adalah keputusan apakah
proses otentikasi pemilih berhasil atau gagal. Jika proses otentikasi berhasil maka
sistem memperbolehkan pemilih untuk memilih kandidat yang diinginkan. Jika
proses otentikasi gagal maka sistem tidak memperbolehkan pemilih melakukan
pemilihan. Diagram alir proses otentikasi pemilih dapat dilihat pada Gambar 15.
Adapun daftar tabel database yang berhubungan dengan pengembangan
sistem e-voting ini dapat dilihat pada Tabel 1 dengan menggunakan database
MySQL.
Tabel 1 Daftar tabel database

Nama Tabel Jumlah Kolom Tipe Data Keterangan


Voterlist Code Varchar Database pemilih yang
Name Varchar digunakan untuk proses
Status Integer otentikasi pemilih.
Fingerprint Boolean Primary key: code
Kandidat No_urut Integer Database untuk memilih
Nama_kandidat Varchar kandidat yang dinginkan.
Foto Varchar Pilihan terekam dihasil.
Hasil Integer Primary key: nama_kandidat
Waktu Start_time Datetime Menunjukkan waktu mulai
End_time Datetime dan akhir dari voting.

Masalah keamanan (security) database di MySQL merupakan hal yang juga


harus diperhatikan, tidak boleh dianggap sepele apalagi dikesampinkan. MySQL
merupakan software database yang bersifat client-server, yang memungkinkan
beberapa user dapat mengakses server MySQL dari manapun. Untuk itu, server
MySQL harus benar-benar aman dari akses (serangan) orang-orang yang tidak
berhak. Berikut beberapa hal yang harus diperhatikan dalam menggunakan server
MySQL :
a. Jangan pernah memberi akses ke semua user kecuali user root untuk dapat
mengakses database MySQL. Jika seseorang dapat mengakses database ini,
maka maka dapat melihat informasi user (termasuk user, password dan host)
MySQL dan dapat menambah atau mengubah informasi tersebut.
b. Membatasi mengenai hak akses database di MySQL. Perintah GRANT dan
REVOKE digunakan untuk mengatur hak akses di MySQL.
c. Jangan pernah menyimpan password dalam bentuk teks biasa di MySQL
(gunakan fungsi enkripsi).
d. Hati-hati dalam memilih password. Menggunakan password yang mudah
diingat tetapi sulit ditebak orang lain, menggunakan kombinasi huruf dan
angka.
e. Memasang firewall di server untuk mencegah penyusup.
MySQL pada dasarnya merupakan sistem database yang aman. Untuk
keamanan pada MySQL, harus mengatur hak akses (privilege) dari setiap user
26

terhadap data di database karena tidak semua user diperbolehkan mengakses data
yang ada. MySQL memungkinkan mengatur hak akses user sampai pada tingkat
kolom, artinya dapat mengatur kolom tertentu yang boleh diakses oleh user siapa
saja.
Semua pengaturan hak akses (privilege) tersimpan di database MySQL
yang secara default sudah ada di sistem MySQL. Cara kerja sistem privilege (Ihya,
2011) :
1. Sistem privilege MySQL memastikan bahwa user dapat melakukan hanya
hal-hal yang diperbolehkan. Ketika connect ke server MySQL, identitas user
ditentukan oleh host tempat melakukan koneksi dan username yang ingin
digunakan. Sistem memberikan privilege sesuai dengan identitas user dan apa
yang ingin dilakukan.
2. MySQL mempertimbangkan baik hostname dan username dalam
mengidentifikasi karena mungkin ada alasan untuk menganggap bahwa
username yang diberikan adalah milik orang yang sama dimanapun di
internet. Sebagai contoh, user Bill yang connect dari whitehouse.gov tidak
harus orang yang sama denga user Bill yang connect dari microsoft.com.
MySQL menangani hal ini dengan mengijinkan untuk menentukan user dari
host yang berbeda yang mungkin namanya sama.
Kendali akses MySQL melibatkan dua tingkat :
- Tingkat 1: server mengecek apakah user diijinkan untuk connect ke server.
- Tingkat 2: dianggap user dapat connect, server mengecek tiap permintaan
yang user jalankan untuk melihat apakah privilege user cukup untuk
menjalankannya. Contohnya, jika user mencoba untuk memilih baris dari
tabel dalam database atau menghapus sebuah tabel dari database, server
memastikan bahwa user memiliki privilege select untuk tabel tersebut atau
privilege drop untuk database.
Dalam database MySQL terdapat lima buah tabel yang dapat digunakan untuk
mengatur user dan izin akses masing-masing user-user privileges yaitu:
a. Tabel user
Tabel user merupakan tabel grant utama dalam database MySQL. Tabel
ini mengontral siapa yang dapat terhubung ke MySQL, dari host mana
mereka dapat terhubung, dan hak akses global (global privileges)apa yang
mereka punyai. Berisi data user yang mendapatkan izin akses MySQL,
asal koneksi dan izin koneksi kepada user. Tingkatan akses : Global.

b. Tabel db
Tujuan dari tabel db adalah memberikan hak akses database secara spesifik
pada user. Hak-hak akses yang diterapkan pada tabel db juga secara spesifik
pada database tertentu. Mengatur database apa saja yang dapat diakses oleh
seorang user dan jenis izin aksesnya. Tingkatan akses : Database.

c. Tabel host
Tabel host berkaitan dengan tabel db dan diperiksa hanya ketika seseorang
user terdaftar dalam tabel db namun kolom host kosong. Kombinasi dari dua
27

tabel ini mengijinkan untuk menerapkan hak akses ke user yang terkoneksi
dari banyak host. Mengatur asal host yang diperkenankan bagi user untuk
mengakses MySQL, jika lebih dari satu host. Tingkatan akses : Database.

d. Tabel tables_priv
Tabel ini lebih spesifik ke hak akses tingkat tabel. Hak-hak akses yang
terdapat di tabel ini diterapkan hanya pada tabel yang dispesifikkan pada
tables_priv. Mengatur tabel apa saja yang dapat diakses oleh seorang user
dan jenis izin aksesnya. Tingkatan akses : Tabel.

e. Tabel columns_priv
Tabel ini menunjukkan hak-hak akses yang berhubungan dengan kolom-
kolom secara individu. Mengatur kolom (field) apa saja yang dapat diakses
oleh seorang user dan jenis izin aksesnya. Tingkatan akses : kolom.

Izin akses bagi user (user privileges) terdiri dari tiga bagian, yaitu :
1. Tingkatan akses user biasa, mencakup izin akses kedalam database atau
kolom, yaitu :
 ALTER : Untuk mengubah tabel dan indeks yang sudah ada,
misalnya menambah kolom baru atau menghapus
kolom (pada tabel).
 CREATE : Untuk membuat database atau tabel yang baru.
 DELETE : Untuk menghapus record.
 DROP : Untuk menghapus tabel dan database.
 INDEX : Untuk membuat indeks baru atau menghapus sebuah
indeks
 INSERT : Untuk menambah record pada tabel.
 SELECT : Untuk menampilkan data dari suatu tabel (beberapa
tabel sekaligus).
 UPDATE : Untuk peremajaan data (updating) pada tabel,

2. Tingkatan akses administrator (Global administrative), hanya digunakan oleh


user setingkat root atau administrator dan tidak diberikan kepada user biasa,
yaitu :
 FILE : Untuk membaca dan menulis file di
dalam server MySQL.
 PROCESS : Untuk menampilkan dan
menghentikan suatu proses yang
sedang dilakukan user.
 SHUTDOWN : Untuk mematikan srver MySQL.
 CREATE : Untuk membuat tabel temporer.
TEMPORARY TABLE
 RELOAD : Untuk membaca ulang tabel izin
28

akses (grant tables), melakukan


proses flush pada file log, dan
sebagainya.
 EXECUTE : Untuk menjalankan perintah.
 LOCK TABLES : Untuk mengunci tabel.
 REPLICATION : Untuk proses replikasi database pada
CLIENT klien.
 REPLICATION SLAVE : Untuk proses replikasi database
sebagai database sekunder (slave).
 SHOW DATABASES : Untuk menampilkan seluruh database
yang ada di server MySQL.
3. Tingkatan akses khusus (special privileges), dapat diterapkan pada setiap user
dengan izin akses sebagai berikut :
 ALL : Untuk memberikan semua izin akses sehingga user
tersebut memiliki hak seperti layaknya seorang
root.
 USAGE : Untuk membuat user saja tetapi tidak memberikan
izin akses apapun kepada user tersebut (user bisa
masuk ke dalam MySQL server dengan password
yang ditentukan, tetapi tidak bisa melakuklan hal
lain.
Memberikan password untuk root dapat dilakukan dengan menggunakan
perintah UPDATE :
update user set password : password(‘xxxxxxxxxxxxx’)
where user = ‘root’;
Kemudian lanjutkan dengan perintah FLUSH :
Flush privileges
Fungsi flush : MySQL membaca grant tables hanya satu kali pada saat server
pertama kali dijalankan, perintah flush akan memerintahkan kepada sistem untuk
membaca ulang kelima grant tables tanpa harus merestart server MySQL.
Perintah GRANT merupakan perintah untuk memberikan hak akses bagi
user di MySQL agar dapat mengakses database, tabel dan kolom. Selain itu juga
dapat menambahkan user baru dengan perintah grant ini. Hal yang perlu
diperhatikan apabila melakukan perubahan izin akses pada user MySQL yang
masih aktif bekerja tidak langsung bisa menerapkan perubahan meskipun sudah
melaukan flush privileges. Konfigurasi ini berlaku ketika user sudah menutup
koneksi kemudian melakukan koneksi kembali. Izin akses penuh ini digunakan
untuk mengakses seluruh database dalam server.
Bentuk umum :
GRANT jenis_akses (nama_kolom) ON nama_database
TO nama_user IDENTIFIED BY “nama_password”
[WITH GRANT pilihan_akses]
Perintah tersebut di atas memberikan hak izin akses setara dengan root. Klausa
GRANT menetukan tipe dari hak akses yang harus diberikan pada akun user.
Klausa ON menspesifikasikan ke tabel atau database mana yang pernyataan grant
diterapkan. Klausa TO menspesifikasikan hak akses kepada user yang diinginkan.
Option Identified By nama_password akan menerapkan user tersebut agar tetap
memasukkan password saat mengakses darabase. Jika tidak memberikan option
29

password maka user tersebut dapat mengakses dapat mengakses database tanpa
password. Penyertaan With Grant Option akan memberikan hak penuh kepada
user sehingga user tersebut juga mampu melakukan perintah Grant tertentu pada
user lainnya.
Untuk menghapus atau mencabut kembali izin akses user MySQL yang
sebelumnya diberikan menggunakan perintah REVOKE. Tingkat pilihan yang
dapat digunakan juga sama dengan perintah GRANT sehinga semua izin akses
dengan grant dapat dicabut kembali.
Bentuk umum :
REVOKE jenis_akses ON nama_database
FROM nama_user
Perintah ini membuat salah satu user tidak mempunyai izin akses lagi. Meski
sudah sudah dicabut aksesnya, user tersebut masih dapat login ke database
MySQL tetapi tidak perlu kuatir karena user tersebut tidak bisa lagi berbuat apa-
apa lagi terhadap database.

Implementasi Sistem
Aplikasi yang digunakan dalam implementasi sistem untuk proses
registrasi dan proses otentikasi pemilih yang mendukung mesin fingerprint
scanner menggunakan bahasa pemograman visual basic 6.0 (VB6) dan
diintegrasikan dengan sistem e-voting yang telah dikembangkan oleh Fitrah, dkk
(2012) yang berbasis web menggunakan bahasa pemrograman PHP serta MySQL
sebagai pangkalan database.

1. Proses Registrasi Pemilih


Proses registrasi ini diakukan dengan pengambilan citra sidik jari dari
pemilih yang telah memenuhi persyaratan untuk berhak memilih dalam pemilu
sesuai dengan undang-undang yang berlaku. Pengambilan citra sidik jari
dilakukan dengan menempelkan sidik jari pada sensor mesin fingerprint scanner
U are. U4500. Menu utama fingerprint untuk proses awal ke menu registrasi
pemilih dan verifikasi data citra sidik jari pemilih yang telah diambil diperlihatkan
pada Gambar 17. Sedangkan Gambar 18 dan Gambar 19 memperlihatkan menu
registrasi pemilih untuk proses pengambilan citra sidik jari pemilih yang akan
disimpan ke database dan menu verifikasi pemilih untuk proses verifikasi pemilih
yang telah diambil (direkam) citra sidik jarinya sebagai pengaktifan sidik jari
pemilih agar dapat digunakan dalam proses otentikasi saat akan dilakukan
pemilihan.

Gambar 16 Menu utama fingerprint


30

Gambar 17 Menu registrasi pemilih

Gambar 18 Menu verifikasi pemilih


Pada proses registrasi sidik jari pemilih, sebelum pengambilan citra sidik
jari pemilih diawali dengan memasukkan Kode dan Nama pemilih sebagai
identitas pemilih. Terdapat 4 tahap proses pengambilan citra sidik jari dimana
setiap tahap mesin fingerprint scanner membaca sidik jari pemilih, secara
otomatis aplikasi dari mesin akan mengaktifkan sensor pembaca. Setelah data
berhasil didapat maka sensor pembaca dari mesin fingerprint scanner U
are.U4500 akan tidak aktif lagi, data yang diperoleh pada ke empat tahap
pembacaan tersebut akan dicocokkan satu sama lain dan hasil akuisisi data dalam
kondisi bagus, tahap selanjutnya akan disimpan kedalam database. Proses
pengambilan registrasi citra sidik jari pemilih ditunjukkan pada Gambar 20.
31

Gambar 19 Proses registrasi sidik jari pemilih


Gambar 21 memperlihatkan proses verifikasi data sidik jari pemilih yang
telah diambil (terekam ke dalam database) untuk memastikan apakah sidik jari
tersebut dapat diaktifkan dan digunakan dalam proses otentikasi pemilih pada
proses pemilihan. Sedangkan Gambar 22 memperlihatkan bahwa proses verifikasi
pemilih yang gagal karena data sidik jari pemilih yang bersangkutan tidak
terdaftar.

Gambar 20 Proses verifikasi berhasil


32

Gambar 21 Proses verifikasi gagal


2. Proses Otentikasi Pemilih
Proses otentikasi ini dilakukan sebagai langkah awal sebelum pemilih yang
memenuhi peryaratan dan berhak melakukan pemilihan suara diperkenankan
memberikan pilihannya. Pada proses ini juga dilakukan untuk memastikan bahwa
hanya pemilih yang sudah terdaftar pada database sistem yang diperbolehkan
memberikan suaranya. Halaman antarmuka untuk login proses otentikasi pemilih
dapat ditunjukkan pada Gambar 23.
Setiap pemilih agar dapat masuk ke halaman surat suara pada sistem evoting
untuk memberikan pilihannya terlebih dahulu harus melakukan login pada menu
halaman voting client sebagaimana diperlihatkan pada Gambar 23. Tahap awal
untuk proses otentikasi pemilih dimana pemilih yang akan melakukan pemilihan
meletakkan sidik jarinya pada sensor mesin fingerprint yang sudah terkoneksi
dengan mesin voting yang digunakan.

Gambar 22 Login untuk proses otentikasi pemilih


33

Setelah pemilih menempelkan sidik jarinya pada mesin fingerprint scanner,


maka aplikasi dari mesin fingerprint scanner akan mengaktifkan sensor secara
otomatis untuk membaca dan menangkap citra sidik jari pemilih yang
bersangkutan. Selanjutnya citra sidik jari tersebut sebagai masukan oleh sistem
yang akan dicocokkan dengan sidik jari pada database CLA yang telah diambil
dan disimpan saat proses registrasi pemilih untuk proses otentikasi pemilih.
Proses selanjutnya, sistem melakukan proses otentikasi pemilih dan apabila sidik
jari pemilih dikenal oleh sistem maka sistem akan membuka halaman surat suara
sehingga pemilih diperbolehkan melakukan pemilihan. Sebaliknya, apabila sistem
tidak mengenal sidik jari yang sedang diotentikasi maka sistem tidak membuka
halaman surat suara sehingga pemilih tidak bisa melakukan pemilihan. Proses
otentikasi terhadap sidik jari pemilih yang dikenal dan tidak dikenal oleh sistem
ditunjukkan pada Gambar 24 dan Gambar 25.

Gambar 23 Proses otentikasi sidik jari pemilih


yang terdaftar di database

Gambar 24 Proses otentikasi sidik jari pemilih


yang tidak terdaftar di database
34

Sedangkan pada Gambar 26 berikut, sistem memperlihatkan proses


otentikasi terhadap pemilih yang terdaftar pada database CLA dan telah
melakukan proses pemilihan sebelumnya. Namun pemilih yang bersangkutan
akan melakukan pemilihan kembali pada periode yang sama, tetapi sistem juga
tidak membuka halaman surat suara sehingga tidak dapat melakukan pemilihan
lebih dari satu kali.

Gambar 25 Proses otentikasi sidik jari pemilih


yang akan memilih kembali

Pengujian Sistem
Pengujian terhadap sistem e-voting ini yang difokuskan pada pemanfaatan
sidik jari untuk otentikasi pemilih dalam pemilu dilakukan menggunakan
blackbox testing. Pengujian yang dilakukan meliputi tahapan sebagai berikut :
1. Tahap pengujian pada proses registrasi pemilih dengan menggunakan mesin
fingerprint scanner yang sebelumnya telah dikonfigurasikan dengan sistem
yang dikembangkan oleh Fitrah, dkk (2012) untuk memperoleh citra databese
sidik jari dari pemilih yang akan melakukan pemilihan. Pada tahap ini akan
dilihat apakah sensor dari mesin fingerprint scanner yang digunakan dapat
mengakuisisi sidik jari pemilih yang diregister dengan kondisi bagus melalui
empat tahap mengambilan. Pada tahap ini juga akan dilihat apakah sistem
dapat menyimpan identitas pemilih yang berupa Kode dan Nama yang
dimasukkan saat registrasi pemilih untuk pengambilan data sidik jari.
2. Tahap pengujian pada proses verifikasi pemilih untuk menguji apakah sistem
dapat menangkap dan membaca citra sidik jari pemilih yang akan melakukan
pemilihan melalui sensor dari mesin fingerprint scanner yang digunakan.
Pada tahap ini akan dilihat sistem akan menampilkan Nama dari pemilih yang
dapat diverifikasi sesuai dengan Nama yang tersimpan dari database sidik
jari pemilih yang bersangkutan. Pada tahap ini juga akan dilihat apakah
sistem gagal menverifikasi pemilih yang tidak sesuai dengan database sidik
jari pemilih atau sidik jari pemilih yang tidak terdaftar.
35

3. Tahap pengujian pada proses otentikasi pemilih dimana saat pemilih akan
melakukan pemilihan melalui sistem e-voting yang dikembangkan untuk
memberikan suaranya. Pada tahap ini dilakukan pengujian terhadap sistem
untuk menunjukkan apakan sistem dapat bekerja dengan baik sesuai performa
sistem yang diharapkan untuk melakukan otentikasi kepada pemilih yang
akan menggunakan hak pilihnya dalam pemilu. Dalam pengujian ini, sistem
dapat memperlihatkan bahwa otentikasi bisa dilakukan terhadap pemilih yang
sudah terdaftar sidik jarinya dalam database pemilih, sehingga pemilih yang
terotentikasi dapat diperbolehkan untuk memberikan suaranya oleh sistem
dengan diarahkannya pemilih ke halaman surat suara. Dalam pengujian ini
pula sistem dapat memperlihatkan bahwa pemilih yang sidik jarinya tidak
terdaftar dalam database pemilih, maka sistem tidak mengenal sidik jari
pemilih tersebut sehingga tidak dapat melakukan pemilihan karena sistem
tidak mengarahkannya ke halaman surat suara. Sedangkan pemilih yang akan
melakukan pemilihan lebih dari satu kali pada periode yang sama, sistem juga
tidak mengarahkannya ke halaman surat suara dan sistem memberikan
informasi kepada pemilih tersebut bahwa sudah melakukan pemilihan. Proses
otentikasi juga tidak bisa dilakukan terhadap orang yang akan menggunakan
sidik jari palsu dengan memanfaatkan hasil foto copy sidik jari atau sidik jari
yang telah diambil menggunakan lakban dari pemilih yang sah dan terdaftar
dalam database untuk tujuan berbuat curang demi kepentingan pribadi atau
golongan (untuk memenangkan salah satu kandidat atau parpol).

Hasil pengujian terhadap tahapan proses registrasi pemilih, proses verifikasi


pemilih, dan proses otentikasi pemilih tersebut di atas dapat diperlihatkan pada
Tabel 2.
Tabel 2 Hasil pengujian
N
Hasil yang Hasil
No. Deskripsi Uji Kondisi Awal Skenario Uji
diharapkan Uji
1. Mengambil citra Jari pemilih Pemilih Sistem merekam Berhasil
sidik jari pemilih, belum diletakan meletakkan dan menyimpan
memasukkan Kode pada sensor dari jarinya pada citra sidik jari
dan Nama dari mesin fingerprint sensor mesin pemilih, Kode dan
pemilih scanner yang fingerprint Nama ke dalam
menggunakan digunakan scanner database
mesin fingerprint
scanner
2. Menangkap dan Jari pemilih Pemilih Sistem Berhasil
membaca citra belum diletakan meletakkan mencocokkan citra sidik jari
sidik jari dari pada sensor dari jarinya pada sidik jari pemilih diverifika
pemilih yang telah mesin fingerprint sensor mesin dengan database si
terdaftar dalam scanner yang fingerprint yang ada untuk
database digunakan scanner diverifikasi
3. Menangkap dan Jari pemilih Pemilih Sistem Berhasil
membaca citra belum diletakan meletakkan mencocokkan citra sidik jari
sidik jari dari pada sensor dari jarinya pada sidik jari pemilih gagal
pemilih yang mesin fingerprint sensor mesin dengan database diverifi
belum terdaftar scanner yang fingerprint yang ada untuk kasi
dalam database digunakan scanner diverifikasi
36

4. Menangkap dan Jari pemilih Pemilih Sistem Berhasil


membaca citra belum diletakan meletakkan mencocokkan citra sidik jari
sidik jari dari pada sensor dari jarinya pada sidik jari pemilih diotentika
pemilih yang telah mesin fingerprint sensor mesin dengan database si
terdaftar dalam scanner yang fingerprint yang ada untuk
database yang akan digunakan scanner diotentikasi
melakukan
pemilihan
5. Menangkap dan Jari pemilih Pemilih Sistem Berhasil
membaca citra belum diletakan meletakkan mencocokkan citra sidik jari
sidik jari dari pada sensor dari jarinya pada sidik jari pemilih tidak
pemilih yang tidak mesin fingerprint sensor mesin dengan database dikenal
terdaftar dalam scanner yang fingerprint yang ada untuk
database yang akan digunakan scanner diotentikasi
melakukan
pemilihan
6. Menangkap dan Jari pemilih Pemilih Sistem Berhasil
membaca citra belum diletakan meletakkan mencocokkan citra sidik jari
sidik jari dari pada sensor dari jarinya pada sidik jari pemilih dikenal
pemilih yang telah mesin fingerprint sensor mesin dengan database dan tidak
terdaftar dalam scanner yang fingerprint yang ada untuk boleh
database yang akan digunakan scanner diotentikasi memilih
melakukan kembali
pemilihan kembali
7. Menangkap dan Sidik jari palsu Pemilih Sistem membaca Berhasil
membaca citra pemilih belum meletakkan dan mencocokkan sidik jari
sidik jari palsu dari diletakan pada foto copy sidik citra sidik jari palsu
pemilih yang akan sensor dari mesin jari pada sensor pemilih dengan tidak
melakukan fingerprint mesin database yang ada dibaca
pemilihan scanner yang fingerprint untuk diotentikasi
digunakan scanner

8. Menangkap dan Sidik jari palsu Pemilih Sistem membaca Berhasil


membaca citra pemilih belum meletakkan dan mencocokkan sidik jari
sidik jari palsu dari diletakan pada bekas sidik jari citra sidik jari palsu
pemilih yang akan sensor dari mesin yang telah pemilih dengan tidak
melakukan fingerprint diambil dari database yang ada dikenal
pemilihan scanner yang lakban pada untuk diotentikasi
digunakan sensor mesin
fingerprint
scanner
37

5 SIMPULAN DAN SARAN

Simpulan
Pengembangan sistem e-voting dengan protokol two central facilities yang
telah ada dapat dikembangkan dan disesuaikan dengan sistem implementasikan
penyelenggaraan pemilihan di wilayah Indonesia dan juga dapat memenuhi
spesifikasi persyaratan dari secure voting.
Sistem e-voting yang dikembangkan ini merupakan prototype yang apabila
akan diimplementasikan untuk menggantikan sistem penyelenggaraan pemilihan
secara konvensional (paper based) dapat mengeliminir permasalahan-
permasalahan yang mungkin timbul dalam pelaksanaan pemungutan suara selama
ini dengan adanya pemanfaatan teknologi biometric untuk verifikasi dan
otentikasi pemilih.
Penggunakan sidik jari untuk proses otentikasi pemilih yang akan
melakukan proses pemilihan dalam penyelengaraan pemilu akan memastikan
bahwa pemilih yang bersangkutan yang diperbolehkan memberikan suaranya
tanpa bisa diwakili atau ditipkan ke orang lain sehingga dapat membantu
meningkatkan keabsahan dari pemungutan suara yang dilakukan.

Saran
Pada penelitian ini sistem yang dikembangkan belum sempurna masih
memiliki kelemahan dan kekurangan sehingga diharapkan dapat terus
dikembangkan dan diperbaiki pada penelitian selanjutnya. Beberapa rekomendasi
saran yang bisa dijadikan acuan untuk penelitian ke depan diantaranya adalah :
1. Penggunaan teknologi biometric retina mata untuk proses otentikasi pemilih
dalam pemungutan suara pada penyelenggaraan pemilu. Ataupun dapat juga
digunakan kedua teknologi biometric sidik jari dan retina mata dalam proses
otentikasi pemilih untuk meningkatkan protokol keamanan terhadap pemilih
yang akan memberikan suaranya.
2. Dilakukan penelitian lebih mendalam pengembangan dan penerapan sistem
e-voting ini yang dapat ditinjau dari aspek ekonomi, sosial, hukum, dan
politik untuk mendukung reliabilitas sistem jika akan diimplementasikan.
3. Diperlukan pengembangan protokol pemilu yang didisain sendiri dan diuji
disesuaikan dengan undang-undang tentang pemilu dan tahapan-tahapan
proses pelaksanaan pemilu sehingga memudahkan apabila akan
diimplementasikan di lapangan.
4. Apabila pemerintah akan mengimplemetasikan sistem e-voting dengan
otentikasi fingerprint, sebaiknya database penduduk yang sudah memenuhi
syarat berhak memilih yang telah direkam sebelumnya dapat dimigrasi
kedalam sistem sehingga tidak diperlukan lagi untuk perekaman data baru
bagi pemilih yang sudah terdaftar.
38

DAFTAR PUSTAKA

Bishop M. 2003. Computer Security : Art and Science, Boston : Addison-Wesley,


Pearson Educaation, Inc.
D. Ashok K, T, Ummal SB. 2011. A Novel Design of Electronic Voting System
Using Fingerprint, Department of Computer Science, V.S.S. Government
Art College, India.
DuFeu D, Harris J. 2001. Online Election System, 95.413 Project Report,
Carleton University.
Fajar, Ibnu. 2011. Cara Kerja Mesin Scanner Fingerprint. Tersedia dari :
http://forinsight.wordpress.com/2011/12/19/cara-kerja-mesin-scanner-
fingerprint.
Fitrah. 2012. Disain Evoting pada Pilkada Kota Bogor Menggunakan Protokol
two Central Facilities yang Termodifikasi, Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian Bogor, Bogor.
Iqbal, Sigit. Implementasi dan Analisis Performansi Autentikasi Sistem Biometrik
Sidik Jari, Departemen Teknik Telemomunikasi, ITB Bandung.
Prayanta. 2012. Pengembangan Sistem Otentikasi Voter pada Central
Legitimization Agency Menggunakan Media Mifare Smart Card, Fakultas
Matematika dan Ilmu Pengetahuan Alam, Institut Pertanian Bogor, Bogor.
Schneier B. 1996. Applied Cryptography, second edition : Protocols, Algorithms,
and Source Code in C, John Wiley & Sons, Inc.
Shalahuddin, Muhammad.2009. Pembuatan Model E-Voting Berbasis Web. Studi
Kasus Pemilu Legislatif dan Preside Indonesia. Sekolah Teknik Elektro dan
Informatik, Institut Teknologi Bandung, Bandung.
Sireesha J, Chakchai SI. 2005. Secure Virtual Election Both with Two Central
Facilities, Department of Komputer Science Washington University in St.
Louis, USA.
Stallings W. 2011. Network Security Essentials : Applicatiuons and Standard,
Fourth Edition, Prentice Hall, Pearson Education, Inc.
Wardhani, dkk. 2009. Analisis dan Pengembangan IPB Online Voting Berbasis
Protokol Two Central Facilities, Fakultas Matematika dan Ilmu
Pengetahuan Alam, Institut Pertanian Bogor, Bogor.
39

LAMPIRAN

Lampiran 1 Source code menu utama fingerprint


Private Sub Command1_Click()
Form4.Show
End Sub

Private Sub Command3_Click()


Form3.Show
End Sub

Private Sub Form_Load()


Set myDevices = New FPDevices
Open_DB
End Sub

Private Sub Form_Unload(Cancel As Integer)


Close_DB
Set myDevices = Nothing
End Sub

Lampiran 2 Source code menu registrasi pemilih

Private Sub Command1_Click()


If ScanOke = False Then
MsgBox "Lengkapi 4 Tahap Scan Sidik Jari !!!", vbInformation,
"Informasi"
Exit Sub
End If

Set register = New FPRegister


register.NewRegistration Rt_Verify

For a = 0 To 3
register.Add Template(a), bDone
Next a

If bDone = False Then


MsgBox "Sidik Jari pada Tiap Tahap Tidak Sama !!!" & Chr(13) &
"Scan Ulang Dari Awal ....", vbInformation, "Informasi"
Siap2x
Exit Sub
End If
40

Lampiran 2 Lanjutan

Set regTemplate = register.RegistrationTemplate

regTemplate.Export blob
blobarray = blob

Conn.Execute "Insert into users values('" & Text1.Text & "','" & Text2.Text
& "','" & ArrayToHex(blobarray) & "')"

MsgBox "Data Users Sudah Disimpan !!!", vbInformation, "Information"


Siap2x
Text1.Text = ""
Text2.Text = ""
Text1.SetFocus
Exit Sub

www:
If Err.Number = -2147467259 Then
MsgBox "Nama Users Telah Ada !!!", vbInformation, "Peringatan"
Text2.SetFocus
Else
MsgBox Err.Description, vbInformation, Err.Number
End If
End Sub

Private Sub Form_Load()


If myDevices.Count = 0 Then
MsgBox "FingerPrint Tidak Ditemukan !!!"
End
Else
For Each x In myDevices
Set dev = x
Next
dev.SubScribe Dp_StdPriority, Me.hWnd
End If

Me.Move (Screen.Width - Me.Width) / 2, (Screen.Height - Me.Height) / 3


Set Rec = New ADODB.Recordset
Sta.Caption = "Letakkan Jari Anda Pada FingerPrint"
N=0
ScanOke = False
End Sub

Private Sub Form_Unload(Cancel As Integer)


Set Rec = Nothing
Set dev = Nothing
End Sub
41

Lampiran 2 Lanjutan

Private Sub dev_FingerLeaving()


Sta.Caption = "Letakan Jari Anda Pada FingerPrint"
End Sub

Private Sub dev_FingerTouching()


Sta.Caption = "Sidik Jari di-Process"
End Sub

Private Sub dev_SampleAcquired(ByVal pRawSample As Object)

If ScanOke = False Then

Set smpPro = New FPRawSamplePro


smpPro.Convert pRawSample, Sample

Sample.PictureOrientation = Or_Portrait
Sample.PictureWidth = Picture1.Width / Screen.TwipsPerPixelX
Sample.PictureHeight = Picture1.Height / Screen.TwipsPerPixelY
Picture1.Picture = Sample.Picture

Set ftrex = New FPFtrEx


ftrex.Process Sample, Tt_PreRegistration, Template(N), qt

Text10(N).Text = Kualitas(qt)
If qt = 0 Then
N=N+1
Konfir.Caption = ""
If N = 4 Then
ftrex.Process Sample, Tt_Verification, verTemplate, qt
If qt = 0 Then
ScanOke = True
Konfir.Caption = "Semua Tahap Sudah Lengkap !!!"
Sta.Visible = False
Else
N=N-1
Text10(N).Text = Kualitas(qt)
Konfir.Caption = "Scan Tahap " & (N + 1) & " diulangi, Letakkan
Jari Anda dg Benar !!!"
End If
End If
42

Lampiran 2 Lanjutan

Else
Konfir.Caption = "Scan Tahap " & (N + 1) & " di-ulangi, Letakkan Jari
Anda dg Benar !!!"
End If
Sta.Caption = "Process Selesai"
End If
End Sub

Private Sub Siap2x()


N=0
ScanOke = False
Sta.Visible = True
Konfir.Caption = ""
Picture1.Picture = LoadPicture("")
For a = 0 To 3
Text10(a).Text = ""
Next a
End Sub

Lampiran 3 Source code verifikasi pemilih


Private Sub Cek()
Set verify = New FPVerify

Label3.ForeColor = vbBlack
Rec.Open "select * from users", Conn
Do Until Rec.EOF
blob = Rec.Fields("finger")
HexToArray blob, blobarray
Set regTemplate = New FPTemplate
regTemplate.Import blobarray
verify.Compare regTemplate, verTemplate, result, score, threshold, learn,
sec

If result = True Then


Kode = Rec.Fields("code")
Nama = Rec.Fields("name")
LogOke = True
Exit Do
End If
Set regTemplate = Nothing
Rec.MoveNext
Loop
Rec.Close
43

Lampiran 3 Lanjutan

If LogOke = True Then


Label3.ForeColor = vbBlue
Label3.Caption = Nama & " Berhasil Diidentifikasi !!!"
Else
Label3.Caption = "Identifikasi Gagal, Ulangi !!!"
Label3.ForeColor = vbRed
End If
C=0
Timer1.Enabled = True
Lbl_Kode.Caption = ""
Label7.Caption = ""
End Sub

Private Sub Form_KeyPress(KeyAscii As Integer)


On Error Resume Next
If KeyAscii = 13 Or KeyAscii = 27 Then
Text1.SetFocus
End If
End Sub

Private Sub Form_Load()


Mulai = False

Label1.Caption = "FingerPrint Sedang Diaktifkan ...."


On Error GoTo Keluar

Set myDevices = New FPDevices


If myDevices.Count <> 0 Then
For Each x In myDevices
Set dev = x
Next
dev.SubScribe Dp_StdPriority, Me.hWnd
Label1.Caption = "Letakan Jari Anda pada FingerPrint"
Else
Label1.Caption = "FingerPrint Belum Terpasang !!!"
End If

Mulai = True
Exit Sub
Keluar:
MsgBox Err.Description, vbInformation + vbSystemModal, "Informasi"
End Sub
44

Lampiran 3 Lanjutan

Private Sub Form_Unload(Cancel As Integer)


On Error Resume Next
Set dev = Nothing
Set myDevices = Nothing
Set Rec2 = Nothing
Set Rec = Nothing
End Sub

Private Sub dev_FingerLeaving()


Label1.Caption = "Letakan Jari Anda pada FingerPrint"
End Sub

Private Sub dev_FingerTouching()


Label1.Caption = "Sidik Jari diproses"
End Sub

Private Sub dev_SampleAcquired(ByVal pRawSample As Object)


If Mulai = False Then Exit Sub

On Error Resume Next

Set smpPro = New FPRawSamplePro


smpPro.Convert pRawSample, Sample

Sample.PictureOrientation = Or_Portrait
Sample.PictureWidth = Picture1.Width / Screen.TwipsPerPixelX
Sample.PictureHeight = Picture1.Height / Screen.TwipsPerPixelY
Picture1.Picture = Sample.Picture
DoEvents

Set ftrex = New FPFtrEx


ftrex.Process Sample, Tt_Verification, verTemplate, qt

Label1.Caption = "Proses Selesai !!!"


If qt = Sq_Good Then
Cek

Else
C=0
Timer1.Enabled = True
Label3.Caption = "Hasil Scan Tidak Bagus, Letakan Jari Anda Dengan
Benar"
End If
Text1.SetFocus
End Sub
45

Lampiran 3 Lanjutan

Private Sub myDevices_DeviceConnected(ByVal serNum As String)


If myDevices.Count <> 0 Then
Set dev = Nothing
For Each x In myDevices
Set dev = x
dev.SubScribe Dp_StdPriority, Me.hWnd
Next
Label1.Caption = "Letakan Jari Anda pada FingerPrint"
End If
End Sub

Private Sub myDevices_DeviceDisconnected(ByVal serNum As String)

Label1.Caption = "FingerPrint Belum Terpasang !!!"


On Error Resume Next
For Each x In myDevices
Set dev = x
dev.UnSubScribe
Next
Set dev = Nothing
End Sub

Private Sub Timer1_Timer()


Label3.Visible = True
C=C+1
If C = 10 Then
Timer1.Enabled = False
Label3.Visible = False
End If
End Sub
46

Lampiran 4 Source code otentikasi pemilih


Set verify = New FPVerify

Label3.ForeColor = vbBlack
Rec.Open "select * from users", Conn
Do Until Rec.EOF
blob = Rec.Fields("finger")
HexToArray blob, blobarray
Set regTemplate = New FPTemplate
regTemplate.Import blobarray
verify.Compare regTemplate, verTemplate, result, score, threshold, learn,
sec

Kode = ""
Nama = ""
LogOke = False
If result = True Then
Kode = Rec.Fields("code")
Nama = Rec.Fields("name")
LogOke = True
Exit Do
End If
Set regTemplate = Nothing
Rec.MoveNext
Loop
Rec.Close

If Kode <> "" Then


If Not CekSudahMemilih(Kode) Then
Label3.ForeColor = vbBlue
Label3.Caption = "Selamat datang " & Nama & "!"
LogOke = True
Else
Label3.ForeColor = vbRed
Label3.Caption = "Anda sudah melakukan pemilihan!"
End If
Else
Label3.Caption = "Sidik jari tidak dikenal"
Label3.ForeColor = vbRed
End If
C=0
Timer1.Enabled = True
Lbl_Kode.Caption = ""
Label7.Caption = ""
End Sub
47

Lampiran 4 Lanjutan

Private Function CekSudahMemilih(ByVal Kode As String) As Boolean


Dim rs As New ADODB.Recordset
Dim SQL As String

SQL = "SELECT `status` FROM voterlist WHERE code='" & Kode & "'"
rs.Open SQL, Conn, adOpenStatic
If Not rs.EOF Then
If rs!Status = 2 Then
CekSudahMemilih = True
Else
CekSudahMemilih = False
End If
End If
End Function

Private Sub cmdSelesai_Click()


browser1.Visible = False
fraLogin.Visible = True
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)


If KeyCode = 27 Then
End
End If
End Sub

Private Sub Form_Load()

WindowState = vbMaximized
DoEvents
fraLogin.Left = (Screen.Width - fraLogin.Width) / 2
lblJudul.Left = (Screen.Width - lblJudul.Width) / 2
cmdSelesai.Left = Screen.Width - cmdSelesai.Width - 120
browser1.Left = 0
browser1.Top = Picture2.Height
browser1.Width = Screen.Width
browser1.Height = Screen.Height - Picture2.Height
browser1.Silent = True

Mulai = False

Label1.Caption = "FingerPrint sedang diaktifkan..."


On Error GoTo Keluar
48

Lampiran 4 Lanjutan

Open_DB
Set myDevices = New FPDevices
If myDevices.Count <> 0 Then
For Each x In myDevices
Set dev = x
Next
dev.SubScribe Dp_StdPriority, Me.hWnd
Label1.Caption = "Letakkan jari anda pada fingerprint"
Else
Label1.Caption = "FingerPrint belum terpasang!"
End If

Mulai = True
Exit Sub
Keluar:
MsgBox Err.Description, vbInformation + vbSystemModal, "Informasi"
End Sub

Private Sub Form_Unload(Cancel As Integer)


On Error Resume Next
Close_DB
Set dev = Nothing
Set myDevices = Nothing
Set Rec2 = Nothing
Set Rec = Nothing
End Sub

Private Sub dev_FingerLeaving()


Label1.Caption = "Letakkan jari anda pada fingerprint"
End Sub

Private Sub dev_FingerTouching()


Label1.Caption = "Sidik jari sedang diproses..."
End Sub

Private Sub dev_SampleAcquired(ByVal pRawSample As Object)


If Mulai = False Then Exit Sub
On Error Resume Next
Set smpPro = New FPRawSamplePro
smpPro.Convert pRawSample, Sample
Sample.PictureOrientation = Or_Portrait
Sample.PictureWidth = Picture1.Width / Screen.TwipsPerPixelX
Sample.PictureHeight = Picture1.Height / Screen.TwipsPerPixelY
Picture1.Picture = Sample.Picture
DoEvents
49

Lampiran 4 Lanjutan

Set ftrex = New FPFtrEx


ftrex.Process Sample, Tt_Verification, verTemplate, qt

Label1.Caption = "Proses Selesai !!!"


If qt = Sq_Good Then
Cek
Else
C=0
Timer1.Enabled = True
Label3.Caption = "Hasil scan tidak bagus, letakkan jari anda dengan
benar!"
End If
Text1.SetFocus
End Sub

Private Sub myDevices_DeviceConnected(ByVal serNum As String)


If myDevices.Count <> 0 Then
Set dev = Nothing
For Each x In myDevices
Set dev = x
dev.SubScribe Dp_StdPriority, Me.hWnd
Next
Label1.Caption = "Letakkan jari anda pada fingerprint"
End If
End Sub

Private Sub myDevices_DeviceDisconnected(ByVal serNum As String)


Label1.Caption = "FingerPrint belum terpasang!"
On Error Resume Next
For Each x In myDevices
Set dev = x
dev.UnSubScribe
Next
Set dev = Nothing
End Sub
50

Lampiran 4 Lanjutan

Private Sub Timer1_Timer()

Label3.Visible = True
C=C+1
If C = 5 Then
Timer1.Enabled = False
Label3.Visible = False
If LogOke Then
UpdateStatus Nama, 2
DoEvents
fraLogin.Visible = False
DoEvents
browser1.Visible = True
browser1.Navigate2 "http://localhost/skrip/suratsuara?kode=" & Kode
cmdSelesai.Visible = True
End If
End If
End Sub

Private Sub UpdateStatus(ByVal NIK As String, ByVal Status As Integer)

SQL = "UPDATE voterlist SET status=" & Status & " WHERE name='" &
fingerprint & "'"
Conn.Execute SQL
End Sub
51

Lampiran 5 Source code koneksi ke database

Public myDevices As FPDevices


Public Conn As ADODB.Connection
Public Sub Open_DB()
Dim strConnect As String
Set Conn = New ADODB.Connection
strConnect = "DRIVER={MySQL ODBC 5.2a Driver};" _
& "SERVER=localhost;" _
& "DATABASE=skrip;" _
& "UID=root;" _
& "PWD=;"""
Conn.Open strConnect
End Sub

Public Sub Close_DB()


Conn.Close
Set Conn = Nothing
End Sub

Function ArrayToHex(arr() As Byte) As String


templatestr = ""
For i = LBound(arr) To UBound(arr)
tempstr = Hex$(arr(i))
If Len(tempstr) = 1 Then tempstr = "0" + tempstr
templatestr = templatestr + tempstr
Next i
ArrayToHex = templatestr
End Function

Public Sub HexToArray(inphex As String, outarray() As Byte)


ReDim outarray(0 To Len(inphex) / 2) As Byte
Dim i As Integer
For i = 1 To Len(inphex) Step 2
outarray(((i + 1) / 2) - 1) = Val("&H" + Mid$(inphex, i, 2))
Next i
End Sub

Function Kualitas(x As AISampleQuality)


If x = Sq_Good Then
Kualitas = "Hasil Bagus"
Else
Kualitas = "Hasil Jelek"
End If
End Function
52

Lampiran 3 Halaman surat suara

Lampiran 4 Halaman pertanyaan keyakinan pemilih terhadap kandidat

Lampiran 5 Halaman bukti elektronik telah memilih kandidat


53

RIWAYAT HIDUP

Muhammad Ilyas Sikki, dilahirkan di Makassar pada tanggal 9 Januari


1971 sebagai anak kelima dari delapan bersaudara, penulis dilahirkan dari
pasangan Bapak Tanni Sikki (Alm) dan Ibu Sitti Aisyah (Almh).
Tahun 1990 penulis lulus dari SMAN 7 Makassar dan pada tahun yang
sama melanjutkan pendidikan ke jenjang Strata Satu (S1) di Universitas
Hasanuddin (UNHAS) Makassar melalui jalur Ujian Masuk Perguruan Tinggi
Negeri (UMPTN) pada Jurusan Teknik Elektro Fakultas Teknik. Pada tahun 2010
penulis melanjutkan pendidikan ke jenjang Strata Dua (S2) di Sekolah
Pascasarjana Program Studi Magister Ilmu Komputer Institut Pertanian Bogor.
Penulis saat ini sebagai dosen pada Program Studi Teknik Elektronika,
Fakultas Teknik, Universitas Islam “45” (UNISMA) Kota Bekasi jenjang
pendidikan Diploma III (D3). Jabatan yang pernah diamanahkan oleh lembaga
adalah Kepala Laboratorium Elektronika, Manajer Kemahasiswaan, dan Direktur
Direktorat Kemahasiswaan dan Alumni UNISMA Bekasi.

Anda mungkin juga menyukai