BAB V PROTOKOL PEMILIHAN ELEKTRONIK DENGAN MENGGUNAKAN PASANGAN BILINEAR Dalam Protokol ini ada 3 user yang terlibat, yaitu : 1. π: Pollster. Pollster atau pengumpul suara adalah satu set perangkat keras dan perangkat lunak yang melaluinya pemilih dapat βmencoblosβ kartu suara. 2. π: Validator. Sebuah server yang bertugas untuk, pertama, mencek keabsahan dari pemilih π dan kemudian memvalidasi kartu suara yang telah βdicoblosβ. 3. π: Tallier. Sebuah server yang bertugas menghitung semua surat suara yang sah.
4.1.
Tahap Awal Pada tahap ini Key Generator Center (KGC) mempublikasikan pasangan kunci
public dan kunci private dari setiap user, yaitu : ππΌπ· dan ππΌπ· = π ππΌπ· , dimana π adalah rahasia dari KGC. Lalu KGC mengirimkan ππΌπ· dan ππΌπ· kepada masing-masing user dengan menggunakan jalur yang aman. Dengan demikian P akan mendapat ππ dan ππ , π akan mendapatkan ππ dan ππ , lalu π mendapatkan ππ dan ππ . Kemudian, π menghitung : πππ = π(ππ , ππ ) dan πππ = π(ππ , ππ ), π menghitung : πππ = π(ππ , ππ ) dan πππ = π(ππ , ππ ), π menghitung : π ππ = π(ππ , ππ ) dan π ππ = π(ππ , ππ ). karena sifat bilinear dari pasangan bilinear dimana : π ππ, ππ = π(π, π)ππ , untuk sebarang π, π β β€ dan π, π β πΊ1 maka, πππ = π ππ , ππ = π π ππ , ππ = π(ππ , ππ )π = π ππ , π ππ = π ππ , ππ = πππ , πππ = π ππ dan
33
πππ = π ππ . KGC juga mengumumkan kepada publik fungsi kurva eliptik yang dipakai dalam perhitungan pasangan bilinear, beserta fungsi hash π» yang dipakai dalam protokol.
4.2.
Protokol
4.2.1. Langkah Satu : Persiapan Pada langkah ini, pemilih mengisi Surat suara, βmembungkusβ surat suara, lalu menguncinya untuk kemudian mendapatkan tanda tangan dari validator. Lalu mengirimnya ke validator. Secara rinci adalah sebagai berikut : -
P menghitung πππΆπΆ = π»(π(π1 π, π2 π)), dengan π» adalah fungsi hash yang dipakai dalam protokol dan π1 , π2 dipilih secara acak oleh π. π adalah pembangun πΊ1 .
-
Lalu π mengirimkan π΅ + πππΆπΆ + πππ dan π»(πππΆπΆ ) ke validator π.
Keterangan
Terima
Hitung
Kirim ke π½
Kartu suara dicoblos
-
π΅
-
Pilih random
-
π1 . π2
-
Hitung πππΆπΆ
-
πππΆπΆ = π(π1 π, π2 π)
-
Tanda tangan
-
π΅ + πππΆπΆ
-
Kunci dengan πππ
-
π΅ + πππΆπΆ + πππ
π΅ + πππΆπΆ + πππ
Hash πππΆπΆ
-
π»(πππΆπΆ )
π»(πππΆπΆ )
Tabel 4.1 Tabel transaksi data pada langkah satu.
34
4.2.2. Langkah Dua : Administrasi Pada tahap ini validator menandatangani pesan yang didalamnya tersembunyi surat suara yang telah dipilih oleh pemilih, lalu mengembalikannya kepada pemilih. Secara rinci : -
Setelah menerima π΅ + πππΆπΆ + πππ dan π»(πππΆπΆ ) dari π lalu membuka π΅ + πππΆπΆ + πππ dengan menambahkannya πππ sehingga menjadi π΅ + πππΆπΆ .
-
Lalu π menandatanganinya dengan memilih secara acak ππ dan menambahkan π»(ππ ) ke (π΅ + πππΆπΆ ) sehingga menjadi π΅ + πππΆπΆ + π»(ππ ) lalu menguncinya dengan πππ menjadi (π΅ + πππΆπΆ + π» ππ + πππ ). Lalu mengirimkan : π΅ + πππΆπΆ + π» ππ + πππ , ππ + πππ dan π» πππΆπΆ + πππ ke π.
Terima dari π½
Hitung
Kirim ke π·
π΅ + πππΆπΆ + πππ
-
-
π»(πππΆπΆ )
-
-
-
π΅ + πππΆπΆ + πππ + πππ
-
-
π΅ + πππΆπΆ
-
Pilih sebarang integer ππ
-
ππ
-
Digest ππ
-
π»(ππ )
-
Tanda tangan
-
π΅ + πππΆπΆ + π»(ππ )
-
Kunci dengan πππ
-
π΅ + πππΆπΆ + π» ππ + πππ
π΅ + πππΆπΆ + π» ππ + πππ
Kunci ππ dengan πππ
-
ππ + πππ
ππ + πππ
-
π»(πππΆπΆ ) + πππ
π»(πππΆπΆ ) + πππ
Keterangan
Buka kunci πππ
Kunci digest πππΆπΆ dengan πππ
Tabel 4.2 Tabel transaksi data pada langkah dua.
35
4.2.3. Langkah Tiga : Pemilihan Pemilih membuka kunci dari validator untuk kemudian mengirimkan ke tallier. Dimana Tallier tidak boleh mengetahui identitas pemilih. Secara rinci : -
Setelah menerima (π΅ + πππΆπΆ + π» ππ + πππ ), (ππ + πππ ) dan (π» πππΆπΆ + πππ ) dari π. π lalu membuka (π΅ + πππΆπΆ + π» ππ + πππ ) dengan πππ mendapatkan (π΅ + πππΆπΆ + π» ππ ).
-
π menghitung (π΅ + πππΆπΆ + πππ ) lalu mengirimkan : ππ + πππ , π»(πππΆπΆ ) + πππ , π΅ + πππΆπΆ + π» ππ dan π΅ + πππΆπΆ + πππ ke π.
Terima dari π½
Keterangan
Hitung
Kirim ke π»
-
-
ππ + πππ
-
ππ + πππ
π»(πππΆπΆ ) + πππ
-
π»(πππΆπΆ ) + πππ
π΅ + πππΆπΆ + π» ππ + πππ
Buka π΅ + πππΆπΆ + π» ππ + πππ dengan
-
π΅ + πππΆπΆ + π» ππ + πππ + πππ
-
menggunakan πππ -
π΅ + πππΆπΆ + π» ππ
π΅ + πππΆπΆ + π» ππ
-
π΅ + πππΆπΆ + πππ
π΅ + πππΆπΆ + πππ
Tabel 4.3 Tabel transaksi data pada langkah tiga.
4.2.4. Langkah Empat : Pengumpulan Tallier menerbitkan nomor record yang unik bagi Pemilih. Dimana nomor itu unik dan berkorespondensi satu-satu dengan surat suara yang telah dikunci oleh pemilih dan ditandatangani oleh validator. Secara rinci :
36
-
π menerima (ππ + πππ ), (π»(πππΆπΆ ) + πππ ), (π΅ + πππΆπΆ + π» ππ ) dan (π΅ + πππΆπΆ + πππ ) dari π.
-
π membuka (ππ + πππ ) dengan menambahkan π ππ dan mendapatkan ππ .
-
π menghitung π΅ + πππΆπΆ + π» ππ
+ π» ππ + π ππ dan memberi nama π1 pada
hasilnya, yaitu (π΅ + πππΆπΆ + π ππ ). -
Lalu
π
juga
menambah
π΅ + πππΆπΆ + πππ yang diterima dari π dengan
(π ππ + π ππ ) dan memberi hasilnya nama π2 . -
π membandingkan nilai π1 dan π2 , jika nilainya sama berarti tidak ada serangan yang terjadi maka π menerbitkan sebuah nomor πππ# yang berkorespondensi secara unik dengan nilai π΅ + πππΆπΆ + πππ yang dikirim π ke π pada langkah tiga.
-
π mengirim πππ# dan π΅ + πππΆπΆ + π ππ ke π
Keterangan
Terima dari π·
Hitung
Kirim ke π·
ππ + πππ π»(πππΆπΆ ) + πππ π΅ + πππΆπΆ + π» ππ π΅ + πππΆπΆ + πππ π»(π΅ + πππΆπΆ + π» ππ ), π»(π΅ + πππΆπΆ + πππ ) Membuka ππ + πππ dengan πππ
ππ + πππ + πππ ππ π»(ππ )
Memeriksa apakah π΅ + πππΆπΆ + π» ππ + π» ππ + πππ sama dengan π΅ + πππΆπΆ +
37
πππ + πππ + πππ Jika sama, π menerbitkan nomor
π
ππ#
π
ππ#
rec π΅ + πππΆπΆ + πππ
Tabel 4.4 Tabel transaksi data pada langkah empat.
4.2.5. Langkah Lima : Membuka Kartu Suara Pemilih membuka surat suara dengan cara mengirimkan kunci yang dipakainya untuk mengunci surat suara di tahap awal. Secara rinci : -
Setelah menerima πππ#, π΅ + πππΆπΆ + π ππ dari π, π memeriksa apakah nilai π΅ + πππΆπΆ + π ππ + πππ dengan (π΅ + πππΆπΆ ). Jika sama, maka
-
π mengirim : πππ# dan πππΆπΆ + πππ ke π.
Terima dari π»
Keterangan
Hitung
π
ππ#
Kirim ke π» π
ππ#
π΅ + πππΆπΆ + πππ π»(π΅ + πππΆπΆ + πππ ) Cek apakah π΅ + πππΆπΆ + πππ + πππ sama dengan π΅ + πππΆπΆ πππΆπΆ + πππ
Jika sama,
πππΆπΆ + πππ
Tabel 4.5 Tabel transaksi data pada langkah lima.
4.2.6. Langkah Enam : Penghitungan Tallier membuka surat suara dan memasukkannya ke penampungan suara. Secara rinci : 38
-
π menerima πππ# dan πππΆπΆ + πππ dari π.
-
π membuka πππΆπΆ + πππ yang didapatkannya dari langkah lima dengan menggunakan π ππ dan mendapatkan πππΆπΆ .
-
π kemudian membuka π» πππΆπΆ + πππ dari langkah tiga dengan menggunakan π ππ dan mendapatkan π»(πππΆπΆ ).
-
π kemudian membandingkan hash dari πππΆπΆ dengan π»(πππΆπΆ ).
-
Jika sama, π menggunakan πππΆπΆ yang didapatkannya dari langkah di atas untuk membuka (π΅ + πππΆπΆ + π ππ ) yang dikirimkannya ke π pada langkah lima. Dengan cara menambahkannya dengan (πππΆπΆ + π ππ ). Maka π mendapatkan π΅ yang murni.
-
π menambahkan suara π΅ ke tempat penampungan suara.
Terima dari π»
Keterangan
Hitung
Kirim ke π»
π
ππ# πππΆπΆ + πππ π»(πππΆπΆ + πππ ) Membuka πππΆπΆ + πππ dengan
πππΆπΆ + πππ + πππ
πππ πππΆπΆ π»(πππΆπΆ ) Ambil π» πππΆπΆ + πππ dari langkah tiga, kemudian
π» πππΆπΆ + πππ + πππ
buka dengan πππ Cek apakah digest dari πππΆπΆ sama dengan π» πππΆπΆ + πππ + πππ Jika sama
π΅ + πππΆπΆ + πππ + πππΆπΆ + πππ π΅
Tabel 4.6 Tabel transaksi data pada langkah enam.
39
4.3.
Simulasi Protokol Simulasi Protokol ini memiliki batasan-batasan sebagai berikut :
1. Jalur yang digunakan aman dan tidak memiliki gangguan. Data yang dikirim sama dengan data yang diterima. 2. Simulasi pengiriman data tidak dilakukan
melalui jaringan tapi merupakan
contoh aliran data antar user saja yang diberikan dalam bentuk tabel. 3. Simulasi dilakukan untuk 10 orang penduduk saja.
4.3.1. Tahap Awal Pada tahap ini KGC mengirimkan pasangan kunci publik dan kunci pribadi masing masing user. Lalu masing-masing user menghitung kunci terhadap user yang lain. Adapun kunci-kunci itu adalah : πππ = πππ = 29ab0d7da05ffc3f1b3f97ac10e2092694aadbb7d, πππ = π ππ = 3f0eba16286a2d57ea0991168d4994637e8343e36, π ππ = πππ = 34d2aa5b4745556568ff2416fcafadf5080f0fb0b. Pada tahap ini KGC juga mengumumkan fungsi kurva eliptik yang dipakai dan juga fungsi hash yang dipakai. Dalam tugas akhir ini penulis memilih : 1. Fungsi kurva eliptik. ο·
Persamaan
kurva
eliptik
πΈ: π¦ 2 + π₯π¦ = π₯ 3 + π₯ 2 + π,
atas
lapangan
πΊπΉ(2163 ), dengan π = 20a601907b8c953ca1481eb10512f78744a3205fd. Kurva di atas adalah kurva yang dikeluarkan oleh NIST, sebuah lembaga standar Amerika Serikat. Penulis memilih kurva atas lapangan πΊπΉ(2163 ) dengan alasan kemudahan perhitungan. Karena kurva tersebut adalah kurva yang paling sederhana. ο·
Generator yang digunakan : πΊπ₯ = 3f0eba16286a2d57ea0991168d4994637e8343e36 πΊπ¦ = 0d51fbc6c71a0094fa2cdd545b11c5c0c797324f1.
40
2. Fungsi hash yang dipakai adalah SHA1
4.3.2. Antarmuka 1. Anton mendatangi Pollster lalu memasukkan nomer ID uniknya, dalam hal ini nomor KTP beserta passwordnya. Pemilih yang sah adalah pemilih yang sudah melakukan pendaftaran sebelum pemilihan umum diadakan. Jadi penduduk yang belum mendaftar tidak akan bisa melakukan pemilihan.
Gambar 4.1. Halaman muka, dimana Pemilih memasukkan nomor ID dan password.
Setelah memasukkan ID dan password, Anton mengklik tombol masuk.
2. Setelah Anton berhasil masuk, sistem akan membuka kartu suara tempat Anton melakukan pemilihan.
41
Gambar 4.2. Kartu suara.
Anton lalu memilih dengan cara mengklik salah satu foto gambar calon. Misalkan Anton memilih calon dengan nomor urut 2, tampilannya adalah sebagai berikut :
Gambar 4.3. Kartu suara yang telah diklik.
42
Jikalau Anton sudah yakin maka ia harus mengklik tombol Pilih.
3. Setelah Anton mengklik tombol Pilih, maka ia akan mendapatkan nomor record yang dapat digunakan untuk membuktikan pilihannya.
Gambar 4.4. Konfirmasi telah memilih dan pemberitahuan nomor rec#. Dalam hal ini nomor rec Anton adalah P000001. Setelah konfirmasi, antarmuka akan kembali ke halaman untuk memasukkan nomor ID dan password. Untuk membuktikan suaranya Anton kembali memasukkan ID dan passwordnya. Karena ia sudah memilih maka Anton akan masuk ke halaman berikut :
Gambar 4.5. Memasukkan nomor record. Antom memasukkan nomor recordnya yaitu P00001, lalu mengklik tombol Tampilkan. Maka akan muncul halaman yang menyatakan hasil pilihan Anton.
43
Gambar 4.6. Bukti Suara.
4.3.3. Transaksi Data Protokol yang diusulkan di Tugas Akhir ini terdapat di antara langkah dua dan tiga antar muka di atas. Setelah Anton mengklik tombol Pilih pada langkah dua, maka Protokol pun dimulai.
1. Langkah Satu : Persiapan Karena Anton memilih calon nomor dua maka π΅ = 00000000000000000000000000000000000000002, lalu π menghitung πππΆπΆ = adeeefff000111122233344455556667777888999 kemudian π mengirimkan π΅ + πππΆπΆ + πππ = 8445e282a05eed2d390ca3e845b76f41e3d2532e6 π» πππΆπΆ = 02b1c0063aa674d150fa5aa7f70e3906c53f735bb ke validator π.
2. Langkah Dua : Administrasi π menerima (π΅ + πππΆπΆ + πππ ) dan π»(πππΆπΆ ) dari π. π lalu memilih bilangan bulat random ππ = 0122233344455566667778889999aaabbbccccddd. menghitung π» ππ = 0a2d808f4721d6cd116dbf40026c2d2e92dec5c24. dan mengirimkan
44
π΅ + πππΆπΆ + π» ππ + πππ = 8e68620de77f3be028611ca847db426f710c96ec2 ππ + πππ = 34d2aa5b4745556568ff2416fcafadf5080f0fb0b dan π» πππΆπΆ + πππ = 36636π5π7ππ321π438057ππ10ππ194π3ππ307πππ0. ke π.
3. Langkah Tiga : Pemilihan Setelah mendapatkan (π΅ + πππΆπΆ + π» ππ + πππ ), (ππ + πππ ) dan (π» πππΆπΆ + πππ ). π kemudian mengirim : ππ + πππ = 34d2aa5b4745556568ff2416fcafadf5080f0fb0b, π» πππΆπΆ + πππ = 36636π5π7ππ321π438057ππ10ππ194π3ππ307πππ0, π΅ + πππΆπΆ + π» ππ = a7c36f704720c7df335e8b0457394b49e5a64d5bf dan π΅ + πππΆπΆ + πππ = 92e055e9286b3c45c83aa552d81cf20409fbcb7ad. ke π.
4. Langkah 4 : Pengumpulan π menerima (ππ + πππ ), (π»(πππΆπΆ ) + πππ ), (π΅ + πππΆπΆ + π» ππ ) dan (π΅ + πππΆπΆ + πππ ) dari π. π lalu membuka (ππ + πππ ) mendapatkan ππ = 0122233344455566667778889999aaabbbccccddd. Kemudian π memeriksa apakah nilai π1 = π΅ + πππΆπΆ + π» ππ π ππ )
sama.
Jika
sama
+ π» ππ + π ππ dan π2 = (π΅ + πππΆπΆ + πππ + π ππ + π menerbitkan
nomor
πππ# = P000001
dan
memasangkan πππ# = P000001 dan π΅ + πππΆπΆ + π ππ = 92e055e9286b3c45c83aa552d81cf20409fbcb7ad ke dalam data base. sehingga nantinya untuk setiap πππ# berpasangan dengan π΅ + πππΆπΆ + π ππ tertentu. Lalu mengirim πππ# = P000001 dan π΅ + πππΆπΆ + π ππ ke π.
45
5. Langkah Lima : Membuka Kartu Suara Setelah menerima πππ#, π΅ + πππΆπΆ + π ππ dari π, π memeriksa apakah nilai π΅ + πππΆπΆ + π ππ + πππ dengan (π΅ + πππΆπΆ ). Jika sama, maka π mengirim : πππ# dan πππΆπΆ + πππ = 92e055e9286b3c45c83aa552d81cf20409fbcb7af ke π.
6. Langkah Enam : Penghitungan π menerima πππ# dan πππΆπΆ + πππ dari π. π membuka πππΆπΆ + πππ yang didapatkannya dari langkah lima dengan menggunakan π ππ dan mendapatkan πππΆπΆ . π kemudian membuka π» πππΆπΆ + πππ dari langkah tiga dengan menggunakan π ππ dan mendapatkan π»(πππΆπΆ ). π kemudian membandingkan hash dari πππΆπΆ dengan π»(πππΆπΆ ). Jika sama, π menggunakan πππΆπΆ yang didapatkannya dari langkah di atas untuk membuka (π΅ + πππΆπΆ + π ππ ) yang dikirimkannya ke π pada langkah lima. Dengan cara menambahkannya dengan (πππΆπΆ + π ππ ). π΅ + πππΆπΆ + π ππ + πππΆπΆ + π ππ = π΅ = 00000000000000000000000000000000000000002. Maka π mendapatkan π΅ yang murni yang menyatakan pilihan Anton adalah calon nomer dua. Tetapi π tidak mengetahui yang memilih adalah Anton karena ia tidak mendapatkan informasi apa-apa mengenai itu. Demikian juga dengan π yang tidak mengetahui pilihan Anton, ia hanya mengetahui Anton sudah memilih. π lalu menambahkan suara π΅ ke tempat penampungan suara. Seketika itu juga langka tiga pada antarmuka muncul.
46
4.4.
Serangan-serangan Yang Dapat Diatasi Dalam Protokol Ini.
1. Jika pemilih yang sah dan terdaftar tidak memilih atau abstain, dapatkah validator menggantikan surat suaranya? Jawab : Walaupun validator dapat menghitung πππ = πππ , tetapi ia tidak dapat menhitung πππ . Karena ia tidak memiliki kunci pribadi pemilih, ππ . Oleh karena itu validator tidak bisa menghitung (π΅ + πππΆπΆ + πππ + π» ππ + πππ ) yang kemudian akan diteruskan ke tallier.
2. Dapatkah validator menggantikan surat suara yang sah? Jawab : Berdasarkan ID Based Cryptosystem, ππΌπ· = π ππΌπ· , jika validator ingin mengganti surat suara yang sah, ia harus mendapatkan ππΌπ· milik pemilih, walaupun validator mengetahui ππΌπ· milik pemilih tapi ia tidak mengetahui ππΌπ· nya. Untuk menghitung ππΌπ· ia harus mengetahui π . Tapi itu tidak mungkin terjadi karena π adalah rahasia dari KGC.
3. Dapatkah seseorang menggantikan validator dengan sukses? Jika seseorang ingin menggantikan validator untuk menggantikan tugasnya memvalidasi kartu suara, ia harus mendapatkan kunci pribadi validator ππ agar ia dapat menghitung πππ dan πππ , agar pada saat data dikirim data terebut benar saat dibuka, jika tidak maka data itu tidak akan diterima. Karena ππ rahasia dan hanya diketahui oleh validator maka hal ini mustahil dilakukan.
4. Dapatkah seseorang menggantikan tallier dengan sukses? Jawab : Sama halnya dengan validator di atas, penyerang akan mengalami kesulitan mendapatkan kunci pribadi dari tallier melalui jalur publik. Oleh karena itu serangan ini dapat disimpulkan gagal.
47
5. Jika pemilih tidak jujur, dan dia ingin mengklaim bahwa surat suara yang telah dipilih bukanlah surat suara yang telah dipilihnya. Dapatkah ia melakukan maksud yang tidak baik ini? Jawab : Hal ini tidak bisa dilakukan. Karena, jika pemilih ingin mengganti π΅, surat suara yang sah, dengan π΅π (surat suara palsu), maka pada saat yang sama ia harus bisa membuat π΅π dan πππΆπΆ π (kunci πππΆπΆ palsu) untuk memenuhi π΅π + πππΆπΆ π = π΅ + πππΆπΆ . Hal ini dilakukan karena tallier memeriksa kesamaan dari π΅ + πππΆπΆ + π» ππ
+ π ππ + π»(ππ )
dan π΅ + πππΆπΆ + π ππ , dan ia juga akan memeriksa apakan nilai hash dari πππΆπΆ yang didapat dengan menambahkan π ππ ke (πππΆπΆ + πππ ) yang didapat pada langkah 5 sama dengan nilai π»(πππΆπΆ ) yang didapat dari (π» πππΆπΆ + πππ ) yang ditambahkan dengan π ππ . Ini menyatakan bahwa untuk nilai πππΆπΆ tertentu, terdapat nilai π΅ tertentu yang sudah fix. Oleh karena itu surat suara yang telah βdicoblosβ tidak bisa terganti dan serangan ini tidak akan berhasil. 6. Dapatkah tallier tidak jujur? Dengan kata lain, dia menggantikan surat suara π΅, menjadi π΅π (π΅ yang palsu) ke perhitungan akhir? Jawab : Tidak bisa. Karena ketika tallier menambahkan surat suara yang telah βdicoblosβ ke perhitungan akhir, berdasarkan langkah ke empat pada protokol, ia harus menerbitkan sebuah nomor πππ# dan memasangkannya dengan nilai (π΅ + πππΆπΆ + π ππ ) serta menyimpannya di data base. Oleh karena itu, pemilih pemilih dapat memperlihatkan (π΅ + πππΆπΆ + π ππ ) yang telah disimpan itu sebagai pembuktian
jika
tallier
telah
menggantikan
π΅
menjadi
π΅π
dengan
membandingkan apakah nilai π΅ yang didapat dengan menambahkan (π΅ + πππΆπΆ + π ππ ) dengan πππ + πππΆπΆ sama dengan π΅ yang telah dipilih oleh pemilih.
48
BAB V KESIMPULAN DAN SARAN 5.2.
Kesimpulan Keberhasilan dari protokol ini adalah apakah protokol ini memenuhi syarat-
syarat dari pemilihan elektronik itu sendiri. Jadi ada baiknya penulis mencoba mambahas masing-masing syarat dan apakah protokol ini memenuhi syarat-syarat tersebut. Adapun syarat-syarat itu adalah : 1. Privacy (Kerahasiaan) Kerahasiaan dalam protokol ini terjamin karena dalam protokol ini masingmasing user tidak mengetahui siapa memilih siapa. Karena validator hanya mengetahui bahwa pemilih sudah memilih tanpa mengetahui pilihannya. Sedangkan tallier mengetahui bahwa ada surat suara yang masuk tanpa mengetahui siapa yang memilihnya. 2. Eligiblity (Keabsahan). Eligiblity juga terakomodasi dengan baik dalam protokol ini karena pemilih yang tidak terdaftar akan ditolak sewaktu ia login ke sistem. Karena validator akan memeriksa ke data base apakah ia terdaftar atau tidak. 3. Uniqueness (Keunikan) Hal ini juga terakomodasi dengan baik, karena pada data base pemilih, validator akan segera membuat tanda pada pemilih yang sudah memilih. Jadi di saat dia masuk kembali dia akan terdeteksi sudah memilih. Hal ini dapat dianalogikan sebagai tinta yang dicelupkan di jari pemilih setelah melakukan pemilihan pada sistem konvensional. 4. Uncoercibility (Tanpa Paksaan) Dalam hal ini, sistem tidak bisa menjamin adanya paksaan atau tidak pada saat pemilih melakukan pemilihan. Jadi ini tergantung dari pemilih. 5. Receipt-freeness (Tidak ada tanda terima) Syarat ini juga terpenuhi. Dalam Protokol ini, sesaat setelah pemilih selesai memilih. Dia akan mendapatkan sebuah nomor rec# yang dapat dipakainya untuk membuktikan suaranya. Tapi ia tidak menerima suatu tanda terima yang 49
menunjukkan bahwa ia dengan nomor KTP dan nama tertentu telah memilih calon terntentu. Walaupun ia mencetak antarmuka saat dia menerima no rec#, itu tidak akan bisa dipakai sebagai bukti karena pada antarmuka itu tidak ditunjukkan bahwa seseorang dengan nomor KTP tertentu mendapatkan nomor rec# tertentu. 6. Fairness (Keadilan) Tidak terakomodasi dengan baik, karena dalam protokol ini tallier pasti mengetahui hasil perhitungan sementara. Tapi fairness dapat dijaga dengan cara menjaga admin dari server tallier agar menjaga integritasnya untuk tidak membocorkan hasil pemilihan umum selama pemilihan umum berlangsung. 7. Transparency (Transparan) Terjamin, karena pada saat pemilu berakhir semua pihak bisa melihat database yang ada pada Tallier dimana data base tersebut memiliki daftar nomor rec# dengan kartu suara yang terkunci. 8. Accuracy (Ketepatan) Berhasil dengan baik. Sesuai dengan yang telah dibahas dalam seranganserangan yang mungkin terjadi atas protokol ini, dapat dilihat bahwa untuk mengganti kartu suara adalah hal yang mustahil dilakukan. Demikian juga halnya untuk membatalkan kartu suara, karena untuk setiap kartu suara yang telah βdicoblosβ terdapat nomor rec# yang unik. 9. Robustness (Kekokohan) Untuk menghalangi dan mempengaruhi jalannya pemilu seseorang haruslah bisa memecahkan kunci-kunci pribadi masing-masing user yang seperti sudah dibahas pada bab sebelumnya bahwa hal itu mustahil dilakukan.
Berdasarkan syarat-syarat tersebut di atas, hanya 1 syarat yang tidak bisa dijamin oleh protokol ini, dan itupun lebih bersifat sosial daripada teknis oleh karena itu protokol ini dapat dinyatakan layak untuk diaplikasikan ke pemilihan umum yang sebenarnya.
50
5.2.
Saran Dalam Kriptografi, disimpulkan bahwa semakin rumit suatu protokol maka
semakin besar pula tingkat keamanan dari protokol tersebut. Sebagai analogi, dalam fungsi pasangan bilinear, semakin besar lapangan hingga tempat kita bekerja maka semakin sulit untuk memecahkan sistem kriptografinya, tapi di saat yang sama kita membutuhkan hardware yang semakin canggih dan ini berarti biaya yang besar. Oleh karena itu efektivitas haruslah juga tetap acuan dalam melakukan penelitaian mengenai hal ini di waktu yang akan datang karena dengan bertambahnya efektivitas maka biaya yang dikeluarkan untuk hardware juga relatif tidak banyak. Dengan kata lain kalau bisa lebih cepat, lebih murah dan juga lebih aman, kenapa tidak?
51