ANALISIS DAN PENGEMBANGAN SISTEM TABULASI CTF BERBASIS PROTOKOL TWO CENTRAL FACILITIES BOYKE FADHLIY G64050946 Di bawah bimbingan: Dr. Sugi Guritman OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA LATAR BELAKANG Pemilu Sekarang Pemilu konvensional Kelemahan: waktu biaya SDM kecurangan/kesalahan SOLUSI ???? 1 LATAR BELAKANG SOLUSI ???? Pemilu OnLine Secure Voting Requirement Protokol Two Central Facilities 2 TUJUAN Mengembangkan sistem pemilihan online dgn protokol Two Central Facilities Menyempurnakan beberapa kekurangan pd protokol sesuai rekomendasi dari penelitian sebelumnya • Membangun sistem dengan menggunakan Java Web Start • (CLAServerCTF + CLAServer) + CTF Server • Mengimplementasikan kunci RSA 2048 mengkombinasikan nonce dan SHA-1 bersama session key Menganalisa kemungkinan penerapannya di lingkungan kampus IPB 3 RUANG LINGKUP 4 RUANG LINGKUP Cont.. Pengembangan serta penyempurnaan protokol Two Central Facilities Membangun sistem untuk mempublikasikan perhitungan suara hasil pemilihan 5 OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA KRIPTOGRAFI (CRYPTOGRAPHY) Definisi • seni & ilmu utk menjaga kerahasiaan pesan Tujuan • Kerahasiaan (confidentiality) • Keutuhan (integrity) • Otentikasi (authentication) • Non-repudiasi (non-repudiation) (Schneier 1996) 6 PROTOKOL KRIPTOGRAFI Definisi • serangkaian langkah yg melibatkan 2 pihak/lebih & dirancang utk menyelesaikan suatu tugas yg menggunakan kriptografi Tujuan • mencegah/mendeteksi eavesdropping & cheating (Schneier, 1996) 7 PROTOKOL TWO CENTRAL FACILITIES (DuFeu and Harris 2001) 8 CENTRAL LEGITIMIZATION AGENCY (CLA) Definisi • badan yg bertugas melakukan sertifikasi pemilih Fungsi • melakukan otentikasi & otorisasi pemilih (DuFeu and Harris 2001) 9 CENTRAL TABULATING FACILITIES (CTF) Definisi • badan yg bertugas melakukan penghitungan suara Fungsi Mengizinkan pengguna utk meminta sertifikasi daftar kandidat Menerima secure validation ID yg telah disertifikasi & ditandatangani dari CLA Menerima permintaan secure vote dari pemilih yang berwenang (dg validation ID) Secara aman mengembalikan nama kandidat terpilih sebagai verifikasi atas permintaan pemilih Mengizinkan pemilih utk meminta sertifikasi hasil pemilihan (DuFeu and Harris 2001) 10 SECURE VOTING REQUIREMENTS (SVR) Privacy! Fairness! We need two major requirements Schneier (1996) 11 SECURE VOTING REQUIREMENTS (SVR) Hanya pemilih yg berhak yg dpt memberikan suara Tidak boleh memberikan lebih dari satu suara Tidak boleh menentukan orang lain harus memilih untuk siapa Tidak ada yang bisa menduplikasi suara orang lain Tidak boleh mengubah pilihan orang lain Setiap pemilih dpt memastikan bahwa suara mereka sudah dikirimkan & terhitung dlm penghitungan akhir Schneier (1996) 12 JAVA WEB START Menyediakan kekuatan dlm menampilkan fitur lengkap aplikasi Java (1 x klik) Melayani pengguna dgn mengatur versi Java Runtime Environment & scr otomatis melakukan update versi aplikasi (Sun Microsystem 2005) 13 OBJECT RELATIONAL MAP (ORM) Definisi • enkapsulasi pemetaan antara domain obyek & data yg berhubungan dlm 1 komponen. Sebuah obyek/peta hubungan memisahkan kode aplikasi & daerah obyek dari yg mendasari model data & rincian akses data (Addison Wesley 2003) 14 METODE PENGUJIAN BLACKBOX Fokus pada persyaratan fungsional perangkat lunak • Memungkinkan analis mendapatkan kondisi input yg menggunakan semua persyaratan fungsional suatu program Pendekatan komplementer kemungkinan besar mampu menemukan kesalahan fungsi-fungsi yg tidak benar/hilang kesalahan antarmuka kesalahan dlm struktur data/akses basisdata eksternal kesalahan kinerja inisialisasi & kesalahan terminasi (Pressman 2001) 15 OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA METODE PENELITIAN Ancaman (Threat) Pengujian& Operation (Testing) Maintenance Kebijakan (Policy) Security Life Cycle Implementasi (Implementation) Spesifikasi (Specification) Perancangan (Design) (Bishop 2003) 16 OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA ANCAMAN (THREATS) Modifikasi • Hasil pilihan diganti oleh pihak yg tidak berwenang • Perubahan nama/jumlah suara kandidat pada basisdata oleh pihak yg tidak berwenang Penyamaran • Mengumpan korban percaya entitas yg berkomunikasi dengannya adalah pihak yg benar padahal penyerang (attacker) 17 KEBIJAKAN (POLICY) Secure voting requirments •protokol yg menjamin privasi individu & mencegah segala bentuk kecurangan (Schneier 1996) 18 SPESIFIKASI (SPECIFICATION) Hanya pemilih yg sah yg memberikan suara (otentikasi) Tidak boleh menentukan orang lain harus memilih utk siapa Tidak boleh memberikan lebih dari satu suara Tidak ada yg bisa menduplikasi suara orang lain Tidak boleh mengubah pilihan orang lain Setiap pemilih dapat memastikan bahwa suara mereka sudah dikirimkan & terhitung dlm penghitungan akhir Pemilih dapat melihat hasil perhitungan suara terkini dari setiap kandidat 19 PERANCANGAN (DESIGN) Perancangan pemilihan online dgn Java Web Start Perancangan basisdata CTF Perancangan visualisasi hasil perolehan suara 20 IMPLEMENTASI (IMPLEMENTATION) Implementeasi pemilihan online dgn Java Web Start • Platform Windows XP • IDE Netbeans 6.5 Implementasi basisdata CTF • Bahasa pemrograman Java • Web server Apache • Sistem manajemen basisdata MySQL Implementasi visualisasi hasil perolehan suara • Bahasa pemrograman PHP • Visualisasi Adobe Flash Player 21 PENGUJIAN Penggunaan Java Web Start pd sistem IPB Online Voting • Sistem sudah berjalan baik dgn protokol Two Central Facilities? • Cukup stabil digunakan dlm suatu jaringan? Penambahan hasil pilihan setelah pemilih melakukan pemilihan • Jumlah suara pd basisdata CTF & visualisasi hasil pemilihan ikut bertambah setelah pemilih melakukan pemilihan? 22 OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA KESIMPULAN Sistem IPB Online Voting dgn protokol Two Central Facilities • memenuhi kriteria secure voting requirements • meningkatkan efisiensi dan efektifitas perhitungan suara (terkait dg waktu, biaya, SDM) Sistem ini lebih mudah dijalankan dlm suatu jaringan dgn teknologi Java Web Start • pemilih lebih mudah mengakses sistem Visualisasi hasil pemilu memudahkan pemilih utk melihat perkembangan hasil pemilu 23 SARAN Sistem dpt diimplementasikan dlm cakupan lebih luas • jaringan seluruh kampus IPB Visualisasi penambahan hasil pemilu dari waktu ke waktu • pemilih dpt melihat hasil pemilu dari waktu-waktu sebelumnya 24 OUTLINE •PENDAHULUAN •TINJAUAN PUSTAKA •METODE PENELITIAN •HASIL DAN PEMBAHASAN •KESIMPULAN DAN SARAN •DAFTAR PUSTAKA DAFTAR PUSTAKA [SM] Sun Microsystems. 2009. JavaTM Web Start version 1.5.0 - Frequently Asked Questions (FAQ). http://java.sun.com/j2se/1.5.0/docs/guide/javaws/developersguide/faq.html#101 [3 Ags 2009]. Adriana T. 2007. Kriptografi dan Pemanfaatannya Pada RSA dan MD5. Bandung: Sekolah Teknik Elektro dan Informatika, Institut Teknologi Bandung. Bishop M. 2003. Computer Security: Art and Science. Boston: Pearson Education, Inc. DuFeu D, Harris J. 2001. Online Election System: 95.413 Project Report. Carleton University. Kurniawan A. 2008. Konsep dan Implementasi Cryptography dengan .Net. Jakarta: PT. Dian Rakyat. Pressman RS. 2001. Software Engineering: A Practitioner’s Approach. 5th Ed. New York: McGraw-Hill Companies, Inc. Schneier B. 1996. Applied Cryptography, Second Edition: Protocols, Algorithms, and Source Code in C. Wiley Computer Publishing, John Wiley & Sons, Inc. Sireesha J, Chakchai SI. 2005. Secure Virtual Election Booth with Two Central Facilities. St. Louis, USA: Department of Computer Science Washington University. Wesley A. 2003. Data Access Patterns: Database Interactions in Object-Oriented Applications. Boston: Pearson Education, Inc. 25 Demo Terima Kasih Tambahan JAVA WEB START However, in order to make the voting system much more convenience, the voter clients may be ported to Java Web Start so each user can access the web based voting system. Feature: • It's an easy, robust, and secure way to deploy applications directly from the web. Developers can make applications readily available via the web. In addition, Java Web Start provides Java runtime environment (JRE) management capabilities, it's easy to set up, it's browser-independent, and it's an efficient way to deploy web application solutions. • Users can easily access applications much as they would a web page--without a separate installation step. From the desktop, users can access and use Java applications, using a richer and more responsive user interface than is available on a web page. And, once a Java Web Start based application is installed, users simply click to run the application whenever needed. • Users do not need to manually update applications because each time they launch an application, it is transparently updated from the web--so they always use the most recent version available.