Perancangan Keamanan Informasi Sistem Pemungutan Suara Elektronik (E-Voting) Menggunakan Kombinasi Algoritma AES Dan RSA

  PERANCANGAN KEAMANAN INFORMASI SISTEM PEMUNGUTAN SUARA ELEKTRONIK (E-VOTING) MENGGUNAKAN KOMBINASI

  ALGORITMA AES DAN RSA SKRIPSI FAHRY ROZY SIREGAR 101402045

  PROGRAM STUDI S1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN 2014 PERANCANGAN KEAMANAN INFORMASI SISTEM PEMUNGUTAN SUARA ELEKTRONIK (E-VOTING) MENGGUNAKAN KOMBINASI

  ALGORITMA AES DAN RSA SKRIPSI Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah

  Sarjana Teknologi Informasi FAHRY ROZY SIREGAR

  101402045 PROGRAM STUDI S1 TEKNOLOGI INFORMASI FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA MEDAN

  2014 PERSETUJUAN Judul : PERANCANGAN KEAMANAN INFORMASI

  SISTEM PEMUNGUTAN SUARA ELEKTRONIK (E-VOTING) MENGGUNAKAN KOMBINASI

  ALGORITMA AES DAN RSA Kategori : SKRIPSI Nama : FAHRY ROZY SIREGAR Nomor Induk Mahasiswa : 101402045 Program Studi : S1 TEKNOLOGI INFORMASI Departemen : TEKNOLOGI INFORMASI Fakultas : ILMU KOMPUTER DAN TEKNOLOGI

  INFORMASI UNIVERSITAS SUMATERA UTARA Komisi Pembimbing : Pembimbing 2 Pembimbing 1 Dr. Erna Budhiarti Nababan, M.IT M. Andri Budiman, ST., M.Comp.Sc., M.E.M.

  NIP. 19751008 200801 1 011 Diketahui/disetujui oleh Program Studi S1 Teknologi Informasi Ketua, Muhammad Anggia Muchtar, ST., MM.IT NIP. 19800110 200801 1 010

  

PERNYATAAN

  PERANCANGAN KEAMANAN INFORMASI SISTEM PEMUNGUTAN SUARA ELEKTRONIK (E-VOTING) MENGGUNAKAN KOMBINASI

  ALGORITMA AES DAN RSA SKRIPSI Saya mengakui bahwa skripsi ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

  Medan, Fahry Rozy Siregar 101402045

  

PENGHARGAAN

  Puji dan syukur penulis panjatkan kehadirat Tuhan Yang Maha Kuasa yang telah melimpahkan berkat dan rahmatNya sehingga penulis dapat menyelesaikan skripsi ini. Penulis sangat menyadari bahwa Tuhanlah yang sangat berperan membantu dan mengingatkan disaat penulis jatuh ataupun terlena selama mengerjakan skripsi ini.

  Dalam menyelesaikan skripsi ini penulis menyadari banyak mendapatkan bantuan dari berbagai pihak baik bantuan secara materi maupun moril. Pada kesempatan ini dengan segala kerendahan hati, penulis ingin mengucapkan terima kasih yang sedalam-dalamnya kepada:

  1. Kedua orang tua penulis, yaitu ayahanda Alm. M. Yusuf Shirot Siregar dan ibunda tercinta Nurhayati, karena berkat dukungan dan kesabarannya baik secara moril maupun materil sehingga penulis dapat menyelesaikan skripsi ini. Kepada saudara kandung, Herry M Siregar dan Irfan Abdillah Siregar yang juga memberikan dukungan kepada penulis.

  2. Kepada Bapak M. Andri Budiman S.T., M.Comp.Sc., M.E.M. dan Ibu Dr.

  Erna Budhiarti, M.IT selaku dosen pembimbing penulis yang telah memberikan saran dan masukan serta bersedia meluangkan waktu, tenaga dan pikiran untuk membantu penulis dalam menyelesaikan skripsi ini.

  3. Kepada dosen penguji saya Ibu Sarah Purnamawati, S.T., M.Sc dan Bapak Sajadin Sembiring, S.Si., M.Comp.Sc yang banyak memberikan masukan.

  4. Ketua dan Sekretaris Jurusan Bapak Anggia Muchtar, S.T., MM.IT dan Bapak M. Fadly Syahputra,B.Sc.,M.Sc.IT.

  5. Seluruh Dosen dan staff program studi Teknologi Informasi Universitas Sumatera Utara.

  6. Sahabat - sahabat terdekat saya selama mengecap bangku perkuliahan di jurusan Teknologi Informasi 2010 yang tergabung dalam Group Foya : Ovy, Dian Bunda, Dian Pomta, Desy, Edgar, Muslim, Akira, Baim, Eka, Galih, Fezan, Heri, Chairul, dan Joko, dan seluruh teman-teman sejawat yang tidak dapat disebutkan satu persatu. Terima kasih atas bantuan kalian, teman.

  Penulis menyadari bahwa hasil penulisan skripsi ini masih banyak kesalahan dan jauh dari sempurna. Oleh karena itu, kritik dan saran dari pembaca sangatlah penulis harapkan bagi perbaikan dan kesempurnaan di masa yang akan datang. Penulis mohon maaf apabila terdapat kekurangan dan kesalahan dalam penulisan skripsi ini.

  Akhir kata, penulis ucapkan terima kasih kepada semua pihak yang terkait dalam penyelesaian skripsi ini yang tidak bisa disebutkan satu persatu, biarlah Tuhan yang membalas semua kebaikan kalian. Amin.

  

ABSTRAK

Voting atau pemungutan suara dilakukan untuk mengambil sikap dan keputusan

  menyangkut hal kepemimpinan dan lain - lain. Namun voting dengan cara konvensional yang biasa dilakukan dinilai kurang efektif karena memakan waktu dan biaya yang cukup besar, serta rentan terhadap kesalahan dalam pemilihan dan penghitungan suara. E-Voting merupakan alternatif untuk melakukan pemungutan suara secara lebih mudah dan efektif karena membutuhkan waktu yang singkat, murah, dan dapat meminimalisir kesalahan. Akan tetapi e-voting memiliki celah terkait persoalan keamanan yang menimbulkan peluang kecurangan manipulasi terhadap data dan informasi yang digunakan. Atas dasar hal ini, kriptografi dimanfaatkan untuk mengatasi celah tersebut sekaligus meningkatkan kemanan dan menjaga keaslian informasi. Metode yang diajukan adalah dengan menggunakan kombinasi algoritma AES dan RSA untuk mengamankan data dan informasi pada sistem e-voting, dan menjaga keaslian data dan informasi menggunakan digital

  

signature dengan hash SHA-1. Pada penelitian ini ditunjukkan bahwa kombinasi

  algoritma AES dan RSA mampu menutupi celah manipulasi dan meningkatkan keamanan informasi pada sistem e-voting, serta penggunaan digital signature dapat menjaga keaslian data dan informasi yang digunakan.

  Kata Kunci : e-voting, kriptografi, kombinasi algoritma, AES, RSA, digital signature, SHA-1

  

DESIGNING INFORMATION SECURITY FOR ELECTRONIC VOTING

(E-VOTING) SYSTEM USING A COMBINATION OF

AES AND RSA ALGORITHM

ABSTRACT

Voting are often used to take decisions and actions regarding leadership issues, etc.

  However the conventional ballot voting system is considered less efective due to the amount of time and money it costs, and prone to errors in voting and calculation. Electronic voting (e-voting) could be an alternative to make voting easier and more effective because it only takes a short time, inexpensive, and able to minimize errors. But e-voting has a gap and security issues related to fraud of data and information manipulation. Cryptography, in this case, can be used to cover the gap and increase the security, and also maintain the authenticity of the information. This thesis describes how the AES and RSA algorithm in securing e-voting information, as well as maintaining its authenticity with digital signatures using SHA-1. In this study shows that the combination of AES and RSA algorithm is able to cover the security gap of manipulation and improve the information security in e-voting systems, as well as the use of digital signatures to maintain the authenticity of the data and information.

  Keywords: e-voting, cryptography, algorithm combination, RSA, AES, digital signature, SHA-1

  

DAFTAR ISI

Hal.

  2.2 E-Voting

  17

  15

  14

  13

  12

  9

  7

  6

  2.4.2 Proses Dekripsi AES

  2.4.1 Proses Enkripsi AES

  2.3.3 Perbandingan Kunci Simetrik dan Kunci Asimetrik

  2.3.2 Kunci Asimetrik

  2.3.1 Kunci Simetrik

  2.3 Kriptografi

  2.1 Voting

  Persetujuan Pernyataan Penghargaan Abstrak Abstract Daftar Isi ii iii iv v vi vii

  1.4 Tujuan Peneletian

  Daftar Tabel x

  Daftar Gambar xi

  BAB 1 PENDAHULUAN

  1.1 Latar Belakang

  1.2 Rumusan Masalah

  1.3 Batasan Masalah

  1.5 Manfaat Penelitian

  5 BAB 2 LANDASAN TEORI

  1.6 Sistematika Penulisan

  1

  3

  3

  4

  4

  20

  2.5

  22 Algoritma Kriptografi RSA

  2.6

  23 Konsep Dasar Perhitungan Matematis

  2.6.1

  23 Fungsi Totient Euler ϕ

  2.6.2

  24 Algoritma Euclidean

  2.6.3

  24 Metode Fast Exponentiation

  2.7

  26 Cara Kerja Algoritma RSA

  2.7.1

  26 Proses Pembentukan Kunci RSA

  2.7.2

  26 Proses Enkripsi RSA

  2.7.3

  26 Proses Dekripsi RSA

  2.8

  29 Tanda Tangan Digital (Digital Signature)

  2.9

  32 Penelitian Terdahulu

  BAB 3 ANALISIS DAN PERANCANGAN SISTEM

  33

  3.1

  33 Analisis dan Perancangan Keamanan Informasi Sistem e-Voting

  3.1.1

  34 Enkripsi Data Jumlah Suara menggunakan Algoritma RSA

  3.1.3

  37 Enkripsi Kunci Algoritma AES menggunakan Algoritma RSA

  39

  3.1.4

  40 Tanda Tangan Digital dengan SHA-1

  3.1.5

  41 Verifikasi Tanda Tangan Digital

  3.1.6

  42 Dekripsi Data Jumlah Suara menggunakan Algoritma RSA

  3.1.7

  43 Dekripsi Database menggunakan Algoritma AES

  3.1.8

  44 Dekripsi Kunci Algoritma AES menggunakan Algoritma RSA

  3.2

  44 Analisis dan Perancangan Sistem e-Voting

  3.2.1

  44 Dekripsi Database menggunakan Algoritma AES

  3.2.2

  46 Dekripsi Kunci Algoritma AES menggunakan Algoritma RSA

  BAB 4 IMPLEMENTASI DAN PENGUJIAN PERANGKAT LUNAK

  55

  4.1

  55 Spesifikasi Perangkat Keras dan Perangkat Lunak yang Digunakan

  4.2

  56 Pengujian Sistem

  4.2.1

  56 Pengujian Pada Sisi Administrator

  4.2.2

  63 Pengujian Pada Sisi Operator

  4.2.3

  65 Pengujian Pada Sisi Voter

  4.2.4

  66 Pengujian Pada Sisi Pengguna (Anonymous)

  4.3

  68 Analisis Keamanan Informasi Sistem

  4.3.1

  68 Hasil Enkripsi Data Jumlah Suara Analisis Keaslian

  4.3.2

  69 Hasil Enkripsi Database

  4.3.3

  70 Hasil Enkripsi Kunci Algoritma AES

  4.3.4

  71 Hasil Tanda Tangan Digital dan Verifikasi

  4.3.5

  73 Hasil Dekripsi Kunci Algoritma AES

  4.3.6

  73 Hasil Dekripsi Database

  4.3.7

  74 Hasil Dekripsi Data Jumlah Suara

  BAB 5 KESIMPULAN DAN SARAN

  75

  5.1

  75 Kesimpulan

  5.2

  75 Saran DAFTAR PUSTAKA

  77 LAMPIRAN LISTING PROGRAM

  80

  

DAFTAR TABEL

Hal.

Tabel 2.1 Tabel Perbandingan Beberapa CipherTabel 2.2 Tabel Perbandingan Panjang Kunci AESTabel 2.3 S-Box Algoritma AESTabel 2.4 Inverse S-Box Algoritma AESTabel 2.5 Tabel Proses Mencari Kunci Privat RSA (d)

  16

  17

  18

  21

  27

  

DAFTAR GAMBAR

Hal.

  40

  18

  18

  19

  19

  20

  22

  30

  34

  37

  39

  40

  41

  12

  42

  43

  44

  45

  47

  48

  49

  50

  51

  52

  53

  13

Gambar 3.18 Flowchart proses lihat hasil votingGambar 2.1 Skema enkripsi dan dekripsi pada kunci simetrikGambar 3.3 Proses enkripsi databaseGambar 2.2 Skema enkripsi dan dekripsi pada kunci asimetrikGambar 2.3 Ilustrasi transformasi SubByte ke dalam S-BoxGambar 2.4 Ilustrasi transformasi ShiftRowsGambar 2.5 Ilustrasi transformasi MixColoumnGambar 2.6 Ilustrasi transformasi AddRoundKeyGambar 2.7 Alur proses enkripsi algoritma AESGambar 2.8 Alur proses dekripsi algoritma AESGambar 2.9 Skema proses tanda tangan digitalGambar 3.1 Arsitektur umum perancangan keamanan informasi pada sistem

  e-voting

Gambar 3.2 Proses enkripsi data jumlah suaraGambar 3.4 Proses enkripsi kunci algoritma AESGambar 3.17 Flowchart proses rekapitulasi suara di KPUGambar 3.5 Proses tanda tangan digitalGambar 3.6 Verifikasi tanda tangan digitalGambar 3.7 Proses dekripsi data jumlah suaraGambar 3.8 Proses dekripsi databaseGambar 3.9 Proses dekripsi kunci algoritma AESGambar 3.10 Arsitektur penggunaan perangkat lunak e-votingGambar 3.11 Flowchart proses registrasi mahasiswaGambar 3.12 Flowchart proses login voterGambar 3.13 Flowchart proses pilih kandidatGambar 3.14 Flowchart proses cek pilihan suaraGambar 3.15 Flowchart proses login administrator/operatorGambar 3.16 Flowchart proses rekapitulasi suara di TPS

  54

Gambar 4.1 Tampilan halaman login administrator

  67

  59

  59

  60

  60

  61

  61

  62

  63

  63

  64

  65

  65

  66

  68

  58

  68

  69

  69

  70

  70

  71

  71

  72

  72

  73

  73

  73

  74

  58

  57

Gambar 4.2 Tampilan halaman panel administratorGambar 4.16 Tampilan halaman login pemilihGambar 4.3 Tampilan halaman manajemen databaseGambar 4.4 Tampilan halaman olah data pemilihGambar 4.5 Tampilan halaman olah data kandidatGambar 4.6 Tampilan halaman olah data operatorGambar 4.7 Tampilan halaman olah pertanyaan keamananGambar 4.8 Tampilan halaman manajemen TPSGambar 4.9 Tampilan halaman distribusi databaseGambar 4.10 Tampilan halaman manajemen kunciGambar 4.11 Tampilan halaman olah data pemilihGambar 4.12 Tampilan halaman lihat hasil votingGambar 4.13 Tampilan halaman rekap hasil suaraGambar 4.14 Tampilan halaman login operatorGambar 4.15 Tampilan halaman panel operatorGambar 4.17 Tampilan halaman pemilihanGambar 4.32 Hasil dekripsi databaseGambar 4.18 Tampilan halaman beranda website KPUGambar 4.19 Tampilan halaman pendaftaranGambar 4.20 Tampilan halaman cek suara pemilihanGambar 4.21 Tampilan halaman lihat hasil votingGambar 4.22 Hasil enkripsi data jumlah suaraGambar 4.23 Hasil enkripsi databaseGambar 4.24 Nilai Hex ciphertext databaseGambar 4.25 Hasil enkripsi kunci algoritma AESGambar 4.26 Nilai Hex ciphertext kunci AESGambar 4.27 Tanda tangan digital kunci validGambar 4.28 Tanda tangan digital database validGambar 4.29 Digital signature kunci tidak validGambar 4.30 Digital signature kunci tidak validGambar 4.31 Hasil dekripsi kunci algoritma AES

  74

Gambar 4.33 Pembuatan fungsi view pada databaseGambar 4.34 Hasil penghitungan rekapitulasi totalGambar 4.35 Hasil pengitungan suara dari TPS

  75

  75

  75