Upload
phamthien
View
223
Download
0
Embed Size (px)
Citation preview
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
1
Abstrak— Pemilihan umum adalah suatu cara untuk memilih
opini atau kandidat dalam suatu organisasi maupun kelompok.
Setelah bertahun-tahun pemilihan menggunakan kertas, e-voting
mulai digunakan dengan menggunakan bermacam-macam
teknologi. Salah satu teknologi yang digunakan yaitu (Near Field
Technology) NFC. Teknologi NFC saat ini semakin berkembang
pada telepon pintar dan dapat dibacanya E-KTP oleh perangkat
berteknologi NFC dapat dilihat sebagai kesempatan untuk
memanfaatkannya sebagai metode autentikasi pemilih pada
sistem e-voting. Dalam e-voting data pemilih dapat disimpan
secara terpusat di basis data server. Disisi lain NFC memiliki
kemampuan lebih cepat dan lebih aman dibanding beberapa
teknologi lain seperti Bluetooth yang mana NFC memiliki
kemungkinan terintrusi cukup kecil.
Aplikasi e-voting ini memanfaatkan telepon pintar Android
dan E-KTP sebagai alat kepemilikan pemilih. IMEI dan
password digunakan untuk mencegah pemilihan ganda; dan
untuk melakukan verifikasi pemilih dengan syarat identitas
mereka telah terdaftar pada basis data. Aplikasi e-voting ini juga
menggunakan kriptografi dalam pengimplementasian sistemnya.
Dengan algoritma enkripsi Paillier dan RSA diharapkan dapat
meningkatkan keamanan informasi datanya.
Uji coba aplikasi ini dilakukan melalui beberapa skenario. Uji
coba ini berhasil mengimplementasikan pemilihan skala kecil
dengan menggunakan teknologi NFC pada telepon pintar dan E-
KTP. Sistem ini menciptakan proses pemilihan umum menjadi
lebih cepat dibandingkan pemilihan tradisional dengan rata-rata
waktu 21.76 detik. Meskipun dalam sistem NFC voting ini faktor
konektivitas dan spesifikasi perangkat keras cukup berpengaruh.
Selain itu pengecekan IMEI dan password pada telepon pintar
pengguna berguna dalam metode pencegahan adanya pemilihan
ganda.
Kata Kunci— Android, E-KTP, e-voting, NFC, Paillier, RSA
I. PENDAHULUAN
ECARA tradisional sistem pemilihan umum pada suatu
organisasi maupun kelompok dilakukan dengan cara
memberikan suara pada tempat yang telah ditentukan dan juga
menggunakan kertas. Selain itu biasanya perhitungan suara
pada sistem pemilihan tradisional membutuhkan waktu yang
cukup lama karena dihitung secara manual.
Maka dari itu perlu adanya pemanfaatan teknologi dalam
mendukung sistem pemilihan umum. E-voting merupakan
jenis sistem yang menggunakan komputer dan internet untuk
mendukung proses pemungutan suara. Seiring dengan
perkembangan zaman saat ini mulai banyak penelitian
mengenai e-voting bahkan telah dilakukan pada instansi atau
kelompok–kelompok tertentu. Salah satunya e-voting yang
memanfaatkan Near Field Communication (NFC).
NFC merupakan teknologi yang digunakan untuk transfer
data dari satu perangkat ke perangkat lainnya. Perangkat
bergerak yang sudah mendukung teknologi NFC juga dapat
menjadi kartu pintar yang sangat pribadi, suatu identitas
rahasia dan aman yang menjadi milik pengguna [1].
NFC dapat dikembangkan menjadi alternatif baru dalam
verifikasi e-voting. Karena pada e-voting data pemilih dapat
disimpan secara terpusat di basis data server, selain itu NFC
memiliki kemampuan lebih cepat dan lebih aman karena
kemungkinan terintrusi oleh pihak lain cukup kecil jika
dibanding Bluetooth [2].
Teknologi NFC ini memungkinkan pengguna menggunakan
perangkat mereka sebagai alat untuk melakukan verifikasi
pemilih dengan syarat identitas mereka telah terdaftar pada
basis data. Sedangkan platform Android adalah sistem
operasi terbuka yang memiliki dukungan terhadap teknologi
NFC dengan menawarkan library untuk melakukan
komunikasi antara perangkat lunak dengan perangkat NFC
yang ada di telepon selular berikut.
Pada paper ini, kami mengembangkan sistem e-voting
dengan memanfaatkan NFC pada proses verifikasi pemilihnya.
Berikut merupakan struktur pada paper ini. Bab 2
menggambarkan kerangka kerja pada penelitian sebelumnya.
Bab 3 menggambarkan metode dalam implementasi sistem e-
voting ini. Bab 4 merupakan penjelasan hasil uji coba yang
telah dilakukan dan diakhiri bab 5 yang merupakan
kesimpulan dari keseluruhan paper ini.
II. URAIAN PENELITIAN
A. E-voting
Elektronik voting yang biasa disebut e-voting adalah salah
satu bentuk pemilihan suara dari sejumlah option kandidat
dengan memanfaatkan teknologi elektronisasi untuk membuat
pekerjaan lebih cepat elektronisasi untuk membuat pekerjaan
VERIFIKASI PEMILIH PADA SISTEM E-
VOTING MEMANFAATKAN FITUR NEAR
FIELD COMMUNICATION (NFC) PADA
SMARTPHONE Afrian Wicaksono, Tohari Ahmad, dan Royyana Muslim Ijtihadie
Jurusan Teknik Informatika, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember
(ITS)
Jl. Arief Rahman Hakim, Surabaya 60111 Indonesia
e-mail: [email protected]
S
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
2
lebih cepat selesai. Pada tugas akhir ini jenis e-voting yang
diterapkan merupakan poll-site e-voting karena merupakan
sistem e-voting yang lebih aman ketimbang jenis e-voting
yang lainnya.
B. NFC
Near Field Communication (NFC) adalah teknologi baru
yang merupakan pengembangan dari teknologi Radio
Frequency Identification (RFID). Menurut Nfc-forum.org,
Near Field Communication (NFC) adalah suatu set dari
standar untuk seluler pintar dan perangkat serupa untuk
melakukan komunikasi radio antara satu dan lainnya dengan
menyentuhkan kedua perangkat bersamaan atau
mendekatkan kedua perangkat dalam jarak dekat tertentu,
biasanya tidak lebih dari beberapa sentimeter [3].
Dalam sistem ini NFC mengirim dan menerima data dalam
bentuk pesan NDEF (NFC Data Exchange Format). Ada dua
kasus kegunaan utama ketika bekerja dengan NDEF data dan
Android:
1. Membaca NDEF data dari sebuah NFC tag.
2. Transfer pesan NDEF dari satu perangkat ke perangkat
lainnya dengan Android beam. sebagai pemenuhan syarat
kelulusan.
C. E-KTP
E-KTP adalah KTP yang dilengkapi dengan contactless
chip berisi biodata, tanda tangan, pas photo, sidik jari telunjuk
kanan dan kiri penduduk yang bersangkutan. E-KTeknologi
yang digunakan berbasis smart card bertipe contactless card,
yaitu chip smart card yang mampu berkomunikasi dengan
pembaca (reader) tanpa kontak langsung secara fisik
melainkan menggunakan gelombang radio dengan frekuensi
13,56 MHz. Memang bisa dikatakan sebagai bagian dari
keluarga RFID yaitu kartu identitas yang menggunakan
frekuensi radio. Walaupun ada sebagian pemahaman bahwa
yang lazim disebut dengan RFID card biasanya adalah RFID
tag yaitu yang tidak dilengkapi dengan kemampuan prosesor
lengkap sebagaimana layaknya sebuah mini komputer di
dalam kartu.
Pada sistem NFC voting ini E-KTP digunakan sebagai
perangkat yang berisi identitas pemilih guna selanjutnya
diverifikasi dan otentikasi oleh sistem. Selain dengan E-KTP
pemilih juga dapat menggunakan telepon pintarnya.
D. RSA
RSA adalah sebuah algoritma dalam enkripsi asimetris yang
menggunakan kunci bersifat publik dan privat. RSA masih
digunakan secara luas dalam protokol electronic commerce,
dan dipercaya dalam mengamankan dengan menggunakan
kunci yang cukup panjang [4].
Alur dari operasi RSA terbagi menjadi tiga proses yaitu
proses pembuatan kunci publik dan kunci privat, proses
enkripsi, dan proses dekripisi Persamaan untuk enkripsi dan
dekripsi dapat dilihat pada persamaan 1 dan persamaan 2.
Pada aplikasi ini proses enkripsi RSA ini digunakan untuk
mengenkripsi nilai hash dari klien sehingga pada
perjalanannya kemungkinan terintrusi menjadi lebih kecil.
Enkripsi
(1)
Dekripsi
(2)
E. Hash
Hash adalah transformasi aritmatik sebuah string dari
karakter menjadi nilai yang merepresentasikan string
aslinya. Menurut bahasanya, hash berarti memenggal dan
kemudian menggabungkan. Hashing digunakan sebagai
metode untuk menyimpan data dalam sebuah array agar
penyimpanan data, pencarian data, penambahan data,
mempercepat pencarian dalam tabel data, pembandingan data
pada basis data, mencari duplikasi, atau kesamaan data dan
penghapusan data. Ide dasarnya adalah menghitung posisi
record yang dicari dalam array, bukan membandingkan
record dengan isi pada array. Fungsi yang mengembalikan
nilai atau kunci disebut fungsi hash dan array yang
digunakan disebut hash table. Hash menggunakan struktur
data array asosiatif yang mengasosiasikan record dengan
sebuah field kunci unik berupa bilangan (hash) yang
merupakan representasi dari record tersebut. Pada aplikasi ini
juga nilai hash berguna untuk melindungi data password dan
IMEI yang dikirim, karena jika terjadi perubahan nilai hash
maka data yang dikirim menjadi tidak valid.
F. SHA
SHA adalah fungsi hash satu arah yang dibuat oleh NIST
dan digunakan bersama DSS (Digital Signature Standard).
Oleh NSA, SHA dinyatakan sebagai standard fungsi hash satu
arah. Algoritma SHA menerima masukan berupa pesan
dengan ukuran maksimum 264
bit (2147483648 gigabyte) dan
menghasilkan message digest yang panjangnya 160 bit, lebih
panjang dari message digest yang dihasilkan oleh MD5.
Langkah-langkah pemuatan message digest dengan SHA-1
1. Penambahan bit-bit pengganjal (padding bits).
2. Penambahan nilai panjang pesan semula.
3. Inisialisasi penyangga (buffer) MD.
4. Pengolahan pesan dalam blok berukuran 512 bit.
G. Paillier
Kriptografi Paillier ditemukan oleh Pascal Paillier pada
tahun 1999 [4]. Paillier adalah sebuah sistem kriptografi yang
berbasis algoritma asimetris probabilistik. Maksudnya disini
Paillier menggunakan dua kunci yang berbeda untuk proses
enkripsi dan dekripsi. Untuk enkripsi yang digunakan adalah
sebuah algoritma kriptografi kunci publik.
Pada sistem ini paillier digunakan sebagai penghitung suara.
Sistem Paillier ini memiliki properti-properti seperti random
self reducibility, additive homomorphic property, dan self
blinding. Properti-properti inilah yang menyebabkan Paillier
ini dapat digunakan untuk berbagai keperluan, seperti
pemungutan suara elektronik dan uang elektronik [5].
Properti homomorfisme pada Paillier ini memungkinkan
penjumlahan nilai yang dienkripsi dengan nilai yang
dienkripsi lainnya tanpa melalui proses dekripsi satu-persatu
terlebih dahulu, tetapi hasil penjumlahannya dapat didekripsi
tanpa mengetahui nilai–nilai yang membentuknya. Dengan
maksud agar suara hasil pilihan voter tetap terjaga
kerahasiaannya. Sebuah fungsi enkripsi F(M) dikatakan
homomorphic jika memiliki persamaan seperti persamaan 3
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
3
yaitu jika perkalian dua pesan yang terenkripsi adalah sama
dengan penjumlahan dua pesan yang terenkripsi.
(3)
III. DESAIN DAN IMPLEMENTASI
Bab ini menjelaskan mengenai metode dalam membangun
sistem. Pada paper ini dibangun sistem e-voting dengan
menggunakan E-KTP, telepon pintar dan menggunakan
Internet dalam proses pemilihannya. Sistem e-voting ini hanya
dapat diakses oleh semua pemilih yang telah terdaftar
sebelumnya.
Gambar 1. Arsitektur Sistem
Arsitektur sistem pada umumnya dijelaskan pada Gambar
1. Berikut ini adalah langkah-langkah jalannya sistem:
1. Password dan IMEI dibentuk menjadi hash, kemudian nilai
hash dienkripsi dengan menggunakan RSA.
2. Serial number E-KTP dibaca oleh reader.
3. Reader akan meneruskan chipper teks yang diterima yang
kemudian chipper teks didekripsi di server yang kemudian
query select data pemilih yang terdapat di basis data sesuai
nilai hash atau id_tag.
4. Setelah nilai hash dibandingkan pada basis data, server
kemudian mengirim nilai true atau false ke reader. Jika true
maka akan dilakukan proses selanjutnya dan jika false
proses berakhir.
5. Kemudian reader mengirim permintaan untuk menampilkan
kandidat.
6. Server mengirimkan data kandidat.
7. Setelah kandidat dipilih maka data akan dienkripsi pada
reader dengan menggunakan Paillier terlebih dahulu
kemudian disimpan di basis data.
8. Ketika ingin melihat hasil pemilihan reader mengirim
permintaan hasil pemilihan.
9. Server mengirimkan hasil pemilihan berupa chipper teks
yang kemudian didekripsi dengan Paillier dan ditampilkan
pada reader.
Secara umum terdapat tiga proses penting pada sistem e-
voting ini yaitu proses autentikasi pemilih, memilih kandidat,
dan perhitungan hasil. Proses tersebut akan dijelaskan pada
subbab selanjutnya.
A. Proses Verifikasi
Sebelum masuk ke dalam sistem, pemilih harus
memasukkan password. Kemudian password dan IMEI yang
otomatis didapat dari perangkat akan diubah ke dalam bentuk
hash yang selanjutnya akan dienkripsi dengan menggunakan
algoritma RSA. Setelah itu pengguna harus mendekatkan
telepon pintar atau E-KTP-nya kepada reader kemudian
perpindahan data akan terjadi.
Ketika data telah sampai di server maka data akan langsung
di dekripsi dengan menggunakan kunci publik pengguna yang
kemudian hasil dekripsi berupa hash akan dibandingkan
apakah ada di basis data atau tidak. Jika tidak maka pengguna
harus kembali ke proses awal namun jika ada maka pengguna
dapat melanjutkan ke proses selanjutnya. Diagram alir pemilih
dapat dilihat pada Gambar 2.
B. Proses Pemilihan Kandidat
Proses pemilihan kandidat ini terjadi di server dimana yang
dilakukan pertama kali ialah mengecek status pengguna
apakah telah memilih atau belum kemudian jika belum
memilih pengguna akan dipersilahkan untuk memilih kandidat
yang setelah itu data tersebut akan langsung terenkripsi dan
disimpan di basis data. Diagram alir pemilihan kandidat dapat
dilihat pada Gambar 3.
C. Perhitungan Hasil
Proses perhitungan suara dimulai dari pengambilan data
yang telah terenkripsi sebelumnya di basis data yang
kemudian akan dihitung jumlahnya dengan memanfaatkan
sifat homomorpik dari kriptografi Paillier. Dari hasil
perhitungan tersebut akan di dekripsi sehingga total hasil
perhitungan suara dapat diketahui namun hasil pilihan tiap
individu tidak dapat diketahui sehingga hasil pilihan harus
terjamin kerahasiaannya. Diagram alir perhitungan suara dapat
dilihat pada Gambar 4.
Gambar 2. Diagram Alir Proses Verifikasi
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
4
Gambar 3. Diagram Alir Pemilihan
Gambar 4. Diagram Alir Perhitungan Suara
IV. EVALUASI DAN PENGUJIAN
Pada bagian ini dilakukan uji coba performa untuk
mengetahui perilaku dari sistem ketika dilakukan uji coba
pada keadaan yang sebenarnya.
A. Uji Coba Kecepatan Proses Verifikasi dengan Telepon
Pintar dan E-KTP
Uji coba pertama yaitu uji coba membandingkan proses
autentikasi dengan perangkat yang berbeda-beda. Dalam uji
coba ini kami juga melihat waktu yang diperlukan untuk
transfer data menggunakan NFC tidak stabil karena belum
terbiasanya pengguna dalam mendekatkan perangkatnya,
perbedaan spesifikasi perangkat keras, dan konektivitas
jaringan ke server. Penjelasan lebih lanjut dapat dilihat pada
Tabel 1.
Tabel 1. Perbandingan Waktu Verifikasi Pemilih
No.
Waktu (detik)
Galaxy Nexus
I515
Sony Xperia M2
D2305
E-KTP
1 12.04 3.32 1.02
2 5.92 5.12 0.80
3 2.81 2.90 0.81
4 4.10 3.21 0.77
Berdasarkan Tabel 1 dapat disimpulkan bahwa waktu yang
dibutuhkan dalam memautentikasi pemilih dengan
menggunakan E-KTP jauh lebih cepat dibandingkan dengan
menggunakan telepon pintar
B. Uji Coba Waktu Proses Verifikasi dengan Waktu yang
Bersamaan
Uji coba selanjutnya yaitu uji coba perbandingan waktu
pemilih dengan sejumlah perangkat secara bersamaan. Uji
coba ini dilakukan dengan cara beberapa E-KTP yang sudah
terdaftar sebelumnya diautentikasi secara bersamaan dengan
menggunakan reader kemudian melakukan pemilihan dengan
beberapa perangkat juga secara bersamaan. Hasil
perbandingan waktu autentikasi pemilih dapat dilihat pada Gambar 5
C. Uji Coba Waktu Proses Pemilihan dengan Waktu yang
Bersamaan
Uji coba selanjutnya yaitu untuk menghitung kecepatan
perhitungan data di server, uji coba dilakukan dengan
mencatat waktu yang dibutuhkan saat menerima data vote dari
beberapa pemilih. Waktu dihitung ketika pengguna menekan
tombol lihat hasil sampai data tersebut ditampilkan. Hasil
perbandingan waktu autentikasi pemilih dapat dilihat pada
Gambar 5.
D. Uji Coba Kecepatan Perhitungan Suara
Selanjutnya yaitu uji coba waktu perhitungan hasil
pemilihan. Untuk menghitung kecepatan perhitungan data di
server, uji coba dilakukan dengan mencatat waktu yang
dibutuhkan saat menerima data vote dari beberapa pemilih.
Pada uji coba ini data voters yang digunakan yaitu hingga
1000 voters dengan kandidat bervariasi mulai dari 2, 5, 25,
dan 50. Waktu dihitung ketika pengguna menekan tombol
lihat hasil sampai data tersebut ditampilkan.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
5
Data hasil uji coba perhitungan suara dapat dilihat pada
Tabel 2. Berdasarkan data pada Tabel 2 dan Gambar 6 dapat dilihat
bahwa waktu yang diperlukan ketika semakin banyaknya
perangkat yang digunakan bersamaan akan semakin
bertambah. Faktor konektivitas dan spesifikasi perangkat juga
sangat berpengaruh dalam kasus ini.
Gambar 5. Grafik Waktu Verifikasi dan Pemilihan Secara Bersamaan
Tabel 2. Uji Coba Hasil Perhitungan Suara
No Pemil
ih
Waktu (detik) Rata-
rata 2
Kandid
at
5
Kandid
at
25
Kandid
at
50
Kandid
at
1 50 0.27 0.28 0.28 0.42 0.3125
2 100 0.29 0.30 0.31 0.44 0.335
3 150 0.41 0.41 0.39 0.51 0.43
4 200 0.33 0.42 0.50 0.55 0.45
5 250 0.44 0.31 0.48 0.50 0.4325
6 300 0.45 0.46 0.51 1.04 0.615
7 350 0.52 0.51 0.56 1.10 0.6725
8 400 0.53 0.56 0.58 1.19 0.715
9 450 0.55 0.49 0.57 1.18 0.6975
10 500 1.01 1.01 1.21 1.30 1.1325
11 550 0.54 1.0 1.11 1.29 0.985
12 600 0.58 1.0 1.14 1.33 1.0125
13 650 1.21 1.04 1.18 1.35 1.195
14 700 1.01 1.05 1.20 1.36 1.155
15 750 1.03 1.09 1.09 1.40 1.1525
16 800 1.09 1.11 1.24 1.44 1.22
17 850 1.32 1.21 1.30 1.49 1.33
18 900 1.11 1.14 1.34 1.52 1.2775
19 950 1.09 1.31 1.34 1.55 1.3225
20 1000 1.14 1.22 1.28 1.50 1.285
Rata-rata 0.746 0.796 0.8805 1.123
Gambar 6. Grafik Kecepatan Perhitungan Suara
E. Uji Coba Keseluruhan Waktu E-voting
Uji coba ini dilakukan dengan simulasi seolah-olah sedang
diadakan pemilihan umum. Pada uji coba ini diasumsikan
tidak ada antrian pemilih. Tabel perbandingan waktu
pemilihan dapat dilihat pada Tabel 3.
Tabel 3. Perbandingan Waktu E-Voting dengan Pemilihan Tradisional
Pemilih ke E-voting
dengan Telepon
Pintar
E-voting
dengan E-
KTP
Pemilihan
Tradisional
1 24.50 detik 20.04 detik 60.12 detik
2 22.52 detik 21.11 detik 65.45 detik
3 23.12 detik 19.32 detik 54.31 detik
Berdasarkan hasil uji coba didapatkan hasil bahwa
pemilihan e-voting dengan menggunakan NFC mampu
mempercepat sistem pemilihan umum karena pada sistem
pemilihan tradisional panitia membutuhkan waktu yang cukup
lama ketika memverifikasi pemilih, selain itu pemilih juga
harus membuka lipatan kertas suara dan kembali melipatnya
lagi ketika berada di bilik suara.
V. KESIMPULAN DAN SARAN
Dari hasil pengamatan selama perancangan,
pengimplementasian, dan proses uji coba sistem didapatkan
kesimpulan sebagai berikut:
1. Teknologi NFC dapat dimanfaatkan untuk sistem e-voting
baik menggunakan telepon pintar maupun E-KTP.
2. Pemanfaatan teknologi NFC mampu membuat proses
pemilihan umum menjadi lebih cepat dengan rata-rata waktu
21.76 detik.
3. Dalam sistem NFC voting ini faktor konektivitas dan
spesifikasi perangkat keras cukup berpengaruh.
4. Pengecekan IMEI dan password pada telepon pintar
pengguna berguna dalam metode pencegahan adanya double
login user dan pemilih.
JURNAL TEKNIK POMITS Vol. 2, No. 1, (2013) ISSN: 2337-3539 (2301-9271 Print)
6
UCAPAN TERIMAKASIH
Penulis mengucapkan terimakasih kepada pihak-pihak yang
telah banyak membantu penulis. Selesainya Tugas Akhir ini
tidak lepas dari bantuan dan dukungan beberapa pihak mulai
dari keluarga, dosen, karyawan serta rekan-rekan di teknik
informatika ITS.
DAFTAR PUSTAKA
[1] A. S. Ashour, NFC Mobile Phones and Future of Privacy,
RFID Journal, 2011.
[2] HIS iSuppli, "Comparasion of NFC and Bluetooth 4.0,"
2011.
[3] Anonim, "NFC Forum," [Online]. Available:
http://www.nfc-forum.org/aboutnfc.
[4] G. Cazalais, RSA Cryptography, 2007.
[5] A. Gunawan, "Sistem Kriptografi Paillier," 2006. [Online].
Available: http://www.informatika.org/~rinaldi/Kriptografi
/2006-2007/Makalah2/Makalah-020.pdf.
[6] P. Paillier, in Public-Key Cryptosystems Based on
Composite Degree Residuosity Classes, Springer, 1999,
pp. 223-238.