Implementasi Algoritme Grain Sebagai Proses Enkripsi Data dan Algoritme SHA-3 Sebagai Hashing Data Pada Rancang Bangun Aplikasi Pemilu Online Berbasis Android

  

Vol. 2, No. 9, September 2018, hlm. 2975-2981 http://j-ptiik.ub.ac.id

Implementasi Algoritme Grain Sebagai Proses Enkripsi Data dan

Algoritme SHA-3 Sebagai Hashing Data Pada Rancang Bangun Aplikasi

  

Pemilu Online Berbasis Android

1 2 3 Arsana Yudistira , Ari Kuyanti , Lutfi Fanani

  Program Studi Teknik Informatika, Fakultas Ilmu Komputer, Universitas Brawijaya 1 2 3 Email: arsanay@gmail.com, ari.kusyanti@ub.ac.id, lutfifanani@ub.ac.id

  

Abstrak

  Pemilihan umum atau biasa disebut pemilu sudah menjadi agenda rutin yang dilaksanakan oleh masyarakat Indonesia. Namun untuk melaksanakan pemilu diperlukan alokasi yang sangat besar, pada pemilu tahun 2014 tercatat pemeritah Indonesia mengeluarkan biaya sebesar 24,1 triliun rupiah untuk melaksanakan pemilu pada tahun tersebut. Pada sisi lain peningkatan jumlah smartphone berbasis android terus meningkat dari tahun ke tahun. Meningkatnya penjualan smartphone android bisa dijadikan sebuah solusi untuk menekan biaya dalam melaksanakan pemilu dengan merubah sistem pemilu konvensional menjadi pemilu online berbasis android. Seperti yang kita ketahui bahwasanya pemilu di Indonesia menerapkan asas “LUBERJURDIL” yang merupakan singkatan dari langsung , umum bebas , rahasia , jujur dan adil. Untuk memenuhi asas rahasia maka diperlukanya sebuah sistem yang dapat menjamin bahwa data hasil pilihan peserta pemilu tetap bersifat rahasia. Dengan menerapkan kombinasi algoritme grain sebagai enkripsi data dan SHA-3 sebagai hashing data merupakan cara yang tepat untuk mengamankan data .Algoritme grain dapat memberikan aspek confidentiality dikarenakan data tidak lagi dapat dibaca dan dimengerti maksutnya setelah dilakukan pemrosesan dengan grain sedangkan algoritme SHA-3 memberikan aspek integrity kepada peserta pemilu dikarenakan data tidak dapat lagi diubah bentuknya oleh siapapun. Dari pengujian yang telah dilakukan kedua algoritme tersebut menghasilkan nilai avalanche effect sebesar 96.4% dan rata-rata waktu pemrosesan sebesar 153 ms.

  Kata kunci: aplikasi android , grain , SHA-3 , pemilu online , enkripsi , hash .

  

Abstract

General election has become a routinity for Indonesian citizen. To hold a general election the

government need to spend a lot of money . on 2014 Indonesia goverment was spent 24,1 trilion rupiah

to hold general election on that year. On the other hand the increasing number of Android-based

smartphone sales is continue to increase year by year. With the high number of android based

smartphone sales can be use to a solution to reduce costs of hold a general election with changing the

conventional election E-Votting with smartphone android. As we know that Indonesia election apply the

“LUBERJURDIL” principle that means Indonesia election is direct, public, independent, confidential,

honest and fair. To meet the needs of confidential principle, we need a system that can make sure the

data of election are secret. Combination of grain algorithm as data encryption and SHA-3 algorithm as

data hashing is the best way to secure the data. Grain can give confidentiality aspect because make the

data cant read by everyone while SHA-3 give integrity aspect to participants because the data cant

changed by everyone. From testing that have done before, both algorithms give 153 ms of time

processing and 96,4% score of avalanche effect.

  Keywords: android application , grain , SHA-3 , E-voting , encryption, hash.

  rakyat untuk menjalankan kedaulatannya sesuai 1.

   PENDAHULUAN dengan azas yang bermaktub dalam Pembukaan UUD 1945 oleh Moertopo Ali (Rainer,2017).

  Pemilu adalah sarana yang tersedia bagi Sejak 1955, Indonesia telah menyelenggarakan

  Fakultas Ilmu Komputer Universitas Brawijaya

2975

  11 pemilu. Berdasarkan UUD 1945 pasal 1 ayat 3, memberikan hak kepada rakyat untuk menentukan kekuasaan.

  Pada tahun 2014 tercatat pemerintah telah mengeluarkan biaya sebesar 24,1 Triliyun untuk menjalankan pemilu pada tahun tersebut (Maesaroh , 2014). Angka tersebut merupakan angka yang fantastis dan berpotensi dapat dipangkas agar APBN negara dapat digunakan lebih maksimal .

  Disisi lain peningkatan teknologi tidak dapat dihalangi , salah satu buktinya adalah peningkatan jumlah penjualan smartphone berbasis android yang dicatat oleh web Statista.com . Pada tahun 2009 tercatat bahwa penjualan smartphone android jauh dibawah angka 50juta unit namun pada tahun 2014 peonjualan smartphone android menyentuh angka 250juta unit. Umumnya masyarakat sudah memiliki handphone masing-masing , bahkan anak dibawah umur yang sudah menggunakan handphone bukan merupakan fenomena asing dewasa ini .

  Dengan meningkatnya perkembangan teknologi diharapkan dapat menjadi celah guna mengurangi anggaran negara untuk melaksanakan pemilu secara langsung pada TPS . Pemilu berbasis online dapat menjadi trobosan baru yang sangat efektif menekan angka APBN untuk melaksanakan pemilu , dikarenakan banyak infrastruktur yang tidak perlu diadakan lagi sehingga dapat menekan tingginya APBN pelaksanaan pemilu . Kita dapat memanfaatkan Pemilu online dengan infrastruktur handphone masing-masing calon pemilih guna pengganti kertas. Pada pengaplikasian pemilu online diperlukan entitas yang berperan client dan server , client pada pemilu online berfungsi sebagai alat untuk melakukan pemilihan dalam hal ini berupa smartphone berbasis android , sedangkan server ialah sebuah sistem terpusat untuk menyimpan hasil dari kegiatan pemilu online yang dilakukan oleh peserta. Seperti yang kita ketahui bahwa pemilu merupakan suatu kegiatan yang bersifat sangat rahasia dan sensitive oleh sebab itu diperlukan enkripsi dan hash data pada saat data ditransmisi dari client menuju server . Hal ini juga diharapkan dapat menjaga aspek confidentiality dan integrity peserta pemilu dengan menangkal aktifitas para penyadap data yang memiliki suatu kepentingan pribadi pada kegiatan pemilu.

  • – voting atau electornic voting secara sederhana dapat diartikan sebagai penggunaan hak pilih dalam sebuah pemilu namun dengan menggunakan teknologi (secara elektronik) (Darmawan et al., 2014).

  Algoritme Grain merupakan algoritme

  enkripsi yang sampai saat ini belum ditemukan titik kelemahanya kecuali jika dibandingkan dengan efisiensi algoritme lain yang sengaja didesain untuk software dengan kecepatan tinggi. Algorimta Grain dan SHA-3 tentu juga memiliki kelebihan yaitu Grain didesain utnuk berjalan pada hardware dengan resource yang kecil , pada penelitian sebelumnya yang berjudul “Implementasi Algoritme Grain V1 Dan 128 Bit Pada Arduino Mega 2560” Nurrohmah et al.

  (2018) menyatakan bahwa algoritme grain dapat berjalan dengan stabil pada Arduino Mega 2560 sehingga sebagai hipotesis awal penulis memperkirakan bahwa algoritme grain juga dapat berjalan baik pada smartphone berbasis android dimana smartphone berbasis android memiliki daya dan kemampuan komputasi yang lebih besar jika dibandingkan dengan Arduino Mega 2560. Grain merupakan algoritme yang berorientasi pada setiap bit bukan blok kata sehingga menurunkan nilai kompleksitasnya dan meningkatkan kecepatan komputasi. Untuk SHA-3 sendiri algoritme ini baru saja diresmikan pada tahun 2015 sehingga masih sangat sedikit penerapanya dan juga SHA-3 bekerja dengan cara melakukan hash sebuah dokumen, sehingga dapat menghasilkan tanda tangan digital untuk suatu dokumen.

  

2.

DASAR TEORI Pemilihan Umum

  Pemilihan umum atau yang biasa lebih dikenal dengan pemilu adalah wujud nyata demokrasi prosedural, meskipun demokrasi tidak sama dengan pemilihan umum, namun pemilihan umum merupakan salah satu aspek demokrasi yang sangat penting yang juga harus diselenggarakan secara demokratis (Veri Junaidi, 2009).

  Pemilu Online (E-Voting)

  E

  Algoritme Grain Algoritme Grain adalah algoritme

  yang sengaja didesain atau diciptakan untuk diterapkan pada hardware dengan resource yang kecil namun dengan implementasi pada sisi software yang mudah. Algoritme Grain didesain agar berjalan dengan berorientasi i33 i23 i21 i15 i9 i

  • pada setiap bit bukan setiap,ini bertujuan i+63 i+60 i+37 i+33 i+15 i+9
  • untuk menurunkan tingkat kompleksitas i+60 i+52 i+45 i+33 i+28 i+21i+63 i+45 i+28 i+9 i+60 i+52 i+37
  • namun tetap tangguh dalam menangani
  • masalah keamanan data. Algoritme Grain juga
  • i+33 i+63 i+60 i+21 i+15 memberikan kebebasan pada penggunanya i+63 i+60 i+52 i+45 i+37
  • untuk memiliih tingkat kecepatan komputasi i+33 i+28 i+21 i+15 i+9
  • tergantung dari resource hardware yang i+52 i+45 i+37 i+33 i+28 i+21 (6)
  • tersedia. Walaupun Grain diciptakan untuk

  Cara kerja dari grain cipher secara fokus kepada hardware namun grain tetap umum dapat digambarkan dengan Gambar 1.: dapat berjalan baik di software pada umumnya, namun grain tidak dapat dibandingkan dengan algoritme lain yang sengaja diciptakan untuk efisiensi pada sisi

  software .Grain diciptakan dengan 2 model shift register yaitu linear feedback atau biasa

  disebut LSFR dan nonlinear feedback yang biasa disebut dengan sebutan NFSR.Kedua

  register memiliki ukuran 80bits (Hell et al, 2007). Algoritme Grain memiliki 3 blok utama yang Gambar 1. Diagram Umum Grain Cipher dinamakan LSFR , NFSR dan blok filter.

  Isi dari kedua shift register disebut sebagai Sebelum setiap keystream di ubah menjadi kondisi atau state dari cipher. Dari state cipher , LSFR adalah shift register yang bit yang didapatkan diambil 5 buah nilai sebagai masukannya merupakan fungsi linear dari masukan untuk fungsi filter h(x). Masukan state sebelumnya. Pada grain cipher isi dari diambil baik dari LSFR dan dari NSFR . Fungsi LSFR dapat dinotasikan sebagai berikut : I, i+1, i+78, i+79 tersebut dapat didefinisikan sebagai berikut :

  (1)

  i+2,…., 1 4 3

  • 2 3 3 4 1 2 Fungsi umpan balik dari LSFR, adalah ℎ( ) = + fungsi polinom berderajat 80 yang dapat + + + 2 3 2 4 1 2 4 2 3 4

      (7)

      didefinisikan sebagai berikut : 0, 1, 2, 3 4 Dimana pengubah dan

      18

      29

      42

      57

      67

      ( ) = 1 + + + + + + diambil dari nilai i+3 , i+25 , i+46 , i+64 , i+63 .

      80

      (2) Keluaran dari fungsi filter ini di-xor (masked)

      Dan fungsi update dari LSFR adalah sebagai dengan bit bi dari NFSR untuk mendapatkan berikut : i+80 i+62 i+51 i+38 i+23 i+13 I keystream .

      = (3) + + + + + Sebelum setiap keystream dibangkitkan,

      Sedangkan isi dari NFSR dapat dinotasikan

      cipher harus dinisialisasi dengan kunci dan IV

      dengan : i, i+1, , i+2,.., , i+78, , i+79 (Initial Value ). Misalkan bit-bit dari kunci, (4) dilambangkan dengan ki dengan

      0 ≤ ≤ 79 dan Dan fungsi umpan balik dari NFSR, g(x) dapat bit-bit dari IV dilambangkan dengan IVi, dengan didefinisikan sebagai berikut : 0 ≤ ≤ 63. Inisialisasi kunci dilakukan dengan

      17

      20

      28

      35

      43

    • ( ) = 1 + cara sebagai berikut:

      47

      52

      59

      65

      71

      80

    • 1.

      NFSR diisi dengan bit-bit kunci, =

      17

      20

      43

      47

      65

      71

    • , 0 ≤ ≤ 79 .

      20

      28

      35

      47

      52

      59

    • 2.

      64 bit bertama dari LSFR diisi dengan

      17

      35

      52

      71

      20

      28

      43

      47

      IV , = , 0 ≤ ≤ 63.

      17

      20

      59

      65

    • 3.

      Sisa bit dari LSFR diisi dengan angka 1

      17

      20

      28

      35

      43

    • (satu) , = 1 , 64 ≤ ≤ 79 .

      47

      52

      59

      65

      71

    • 4.

      Chiper di-Clock 160 kali.Keluaran dari

      28

      35

      43

      47

      52

      59

    • (5) fungsi filter dikembalikan dan di-xor dengan masukan baik ke LSFR dank e

      Fungsi update dari NFSR dapat didefinisikan NSFR seperti pada Gambar 2. sebagai berikut : i+80 = i i63 i60 i52 i45 i37

      Gambar 2. Inisialisasi Grain Cipher Algoritme SHA3

      Pada tahun 2006, NIST mengadakan kompetisi hash function untuk membuat sebuah standar hash baru, yaitu SHA-3. SHA-3 dibuat tidak untuk menggantikan SHA-2, dikarenakan belum ada serangan hebat yang terjadi pada SHA-2. NIST membuat SHA-3 dikarenakan kekhawatiran dikarenakan MD5, SHA-0, SHA- 1 yang telah berhasil ditembus. Karena itulah

      Gambar 3. Diagram Alir Penelitian

      NIST mencari algoritme hash alternatif yang sangat berbeda dengan algoritme sebelumnya, yaitu SHA-3.

      4. PERANCANGAN

      Pada tahun 2012, algoritme Keccak Dalam penelitian yang sedang dibahas yaitu menjadi pemenang dalam kompetisi ini. perancangan sistem pemilu online yang

      Kemudian pada tahun 2015 mempublikasikan dilengkapi dengan algoritme grain sebagai draft FIPS 202 tentang

      “SHA-3 Standard:

      proses enkripsi data dan juga algoritme SHA-3

      Permutation-Based Hash and Extendable-

      sebagai proses hashing data. Analisis dari

      Output Functions”. Setelah itu pada tahun 2015

      permasalahan yang dibahas pada penelitian ini SHA-3 diresmikan sebagai standar baru fungsi hash (Charles, 2015). akan dijelaskan pada Gambar 4.

      Tidak seperti SHA-1, SHA-3 merupakan kelompok dari spoge function dikarenakan memiliki ukuran keluaran yang beragam. Jenis- jenis keluaran SHA-3 tersebut yaitu SHA-3 224, SHA-3 256, SHA-3 384, SHA-3 512, SHAKE128 dan SHAKE256. Menurut pembuat dari algoritme SHA-3 ini, pada jurnalnya yang berjudul

      “Sponge function”, sponge function

      menyediakan cara tertentu agar dapat

      Gambar 4. Skema Global Aplikasi Pemilu Online

      menggeneralisasikan fungsi hash dengan hasil keluaran yang beragam (Bertoni, 2011).

      Penjelasan skema global Aplikasi Pemilu Online pada Gambar 4.1 di atas adalah sebagai berikut.

    3. METODOLOGI

      1. Pengguna melakukan login dengan

      Bab ini menjelaskan metode yang digunakan memasukan username berupa Nomor dalam penelitian, yaitu analisis kebutuhan,

      Induk Kewarganegaraan (NIK) dan perancangan system, implementasi, pengujian, memasukan password agar dapat masuk dan analisis, pengambilan kesimpulan dan saran. ke dalam system. Runtutan pengerjaan peneltian dapat dilihat pada

      2. Kemudian username dan password Gambar 3. tersebut akan dicocokan pada data dan password yang sudah

      username

      terdaftar pada database, jika terjadi kecocokan dengan salah satu data maka

      user akan masuk kedalam halaman utama Aplikasi Pemilu Online.

      3. User melakukan pemilihan terhadap pasangan calon yang ia inginkan pada Aplkasi Pemilu Online.

      4. Data pilihan pasangan calon yang dipilih oleh user akan di enkripsi dengan algoritme grain . Algoritme grain memerlukan 3 buah inputan, pada kasus ini ketiga inputan tersebut adalah data pilihan pasangan calon yang dipilih oleh

      user , 6 digit awal password diikuti 4 digit akhir username sebagai key dan

      kata “sekripsi” yang secara defalut telah diatur oleh penulis sebagai Initial Value (IV).

      5. Keluaran dari proses enkripsi pada tahapan sebelumnya yaitu berupa cipher

      text akan dilalui proses hashing dengan

      menggunakan algoritme hashing SHA- Gambar 4. Grafik pengujian waktu tempuh aplikasi

      pemilu online berbasis android dengan grain dan 3.

      SHA-3 maupun tanpa grain dah SHA-3.

      6. Hasil dari proses hashing yang berupa

      digest text akan di masukan kedalam

      Pengujian independent samples t-Test database . dijelaskan pada Tabel 2. Dengan skema tersebut, diharapkan

      Tabel 2. Independent samples t-Test untuk tidak ada kemugkinan terjadinya upaya pengujian waktu tempuh aplikasi pemilu online pelemahan tingkat keamanan oleh pihak tidak berbasis android dengan grain dan SHA-3 berwenang dari sisi aplikas pada saat maupun tanpa grain dan SHA-3. dilakukanya aktifitas pemilu online.

    5. HASIL DAN PEMBAHASAN Pengujian Seluruh Sistem

      Tabel 1. merupakan waktu tempuh aplikasi pemilu online berbasis android dengan menerapkan grain dan SHA-3 maupun tidak

      Dari hasil Tabel 2. Menunjukan bahwa menerapkan grain dan SHA-3. hasil t dari hasil perhitungan t-test dari hasil

      Tabel 1. Hasil pengujian waktu tempuh aplikasi pengujian waktu tempuh aplikasi pemilu online pemlu online berbasis android dengan grain dan dengan maupun tanpa SHA-3 adalah -35,950

      SHA-3 maupun tanpa grain dan SHA-3 . dengan probabilitas (Sig.) 0,000. Karena probabilitas 0,000 < 0,05 maka H0 ditolak.

      Artinya terdapat perbedaan yang signifikan pada waktu tempuh aplikasi pemilu online ketika menerapkan grain dan SHA-3 dengan tidak menerapkan grain dan SHA-3.

      Pengujian Avalanche Effect

      Tujuan pengujian avalanche effect ialah untuk membandingkan berapa banyak karakter yang berubah pada output ketika inputnya dirubah . Pada jurnal yang berjudul

      “Effective Implementation and Avalanche Effect of AES”,

      hasil dari enkripsi atau hash dikatakan baik apabila perubahan 1 bit input menghasilkan perubahan besar pada output (Kumar, 2012).

      Berikut ini merupakan hasil pengujian

      6. KESIMPULAN avalanche effect dari algoritme grain , SHA -3

      dan juga ketika kedua algoroitma tersebut

      1. Algoritme grain dan algoritme SHA-3 berjalan secara linear dengan menggunakan dua memiliki waktu rata-rata 153,62 ms dalam input sebagai pembanding. memproses masukan hingga mengeluarkan keluaran yang diinginkan ketika kedua a. Grain algoritme tersebut berjalan secara linear .

      Tabel 3. Hasil pengujian avalanche effect untuk

      2. Algoritme grain dapat memberikan aspek

      algoritme grain confidentiality kepada peserta pemilu karena

      dapat merubah data pilihan paslon peserta pemilu online menjadi cipher text, sehingga arti dari data tersebut tidak dapat dimengerti oleh orang lain, sedangkan SHA-3 dapat memberikan aspek integrity karena dapat

      b. SHA-3 merubah data menjadi digest text sehingga

      Tabel 4. Hasil pengujian avalanche effect untuk data tersebut tidak dapat dirubah lagi menjadi

      algoritme SHA-3 bentuk semula atau plain text.

      3. Analisis untuk ketahanan pada algoritme grain dan SHA-3 terhadap serangan dilakukan dengan cara memperhatikan dan membandingkan hasil dari avalanche effect yang dimana dari pengujian tersebut

      c. Grain dilanjutkan dengan SHA-3 menunjukan nilai 96,4% untuk algoritme grain dan SHA-3 ketika kedua algoritme tersebut dikombinasikan .

      7. DAFTAR PUSTAKA Bertoni, G .,Daemen, J.,Peeters, M.& Van Aschee,G.

      Tabel 5. Hasil pengujian avalanche effect untuk

      2007. Sponge function. STMicroelectronics algoritme grain dilanjutkan dengan SHA-3 NXP Semiconductors.

      Dari Tabel 3 tercatat bahwa grain memiliki nilai Darmawan,I.,Nurhandjati,N.,Kartini,E., 2014.

      avalanche effect sebesar 44.6% dan pada Tabel Memahami E-voting: Berkaca dari Pengalaman Negara-negara Lain dan

      4 tercatat bahwa SHA-3 memiliki nilai

      Jembrana (Bali) , Yayasan Pustaka Obor

      avalanche effect yaitu 98.2%. Namun ketika Indonesia. kedua algoritme tersebut dijalankan secara linear

      Hell,M., Johansson,T. & Meier,W., 2006. Grain - A

      dengan skenario grain berjalan terlebih dahulu Stream Cipher for Constrained Environments . lalu menghasilkan output yang diterima oleh SHA-3 sebagai inputan maka nilai avalanche Junaidi,V., 2009. Menata Sistem Penegakan Hukum

      Pemilu Demokratis Tinjauan Kewenangan MK effect nya adalah 96.4% . Berarti dengan atas Penyelesaian Perselisihan Hasil Pemilu

      melakukan hash terhadap output dari grain dapat

      (PHPU) . Jurnal Konstitusi Volume 6, Nomor 3

      memperbaiki nilai avalanche effect algortima

      Kumar,A. & Tiwari,Namita., 2012. Effective

      grain, walaupun pada input algoritme Implementation and Avalanche Effect of AES . grain hanya merubah 1 jenis input . Jika

      International Journal of Security, Privacy and Trust Management (IJSPTM), Vol. 1, No ¾

      dibandingkan dengan nilai avalanche effect

      algoritme SHA-3, avalanche effect dari grain Maesaroh, Anggaran total Pemilu 2014 Rp24,1 T, 15

      yang dilanjutkan dengan SHA-3 memiliki nilai

      Maret 2013. [Online]. Tersedia:

      lebih rendah , namun hal ini bukan menjadi <https://nasional.sindonews.com/read/727799/

      12/anggaran-total-pemilu-2014-rp241-t-

      masalah karena nilai avalanche effect minimal 1363353173>. [Diakses 12 Agustus 2017]. ialah 50 % sebagai syarat algoritme yang baik (Kumar, 2012).

      Rainer, D. , Pengertian Pemilu, Tujuan, Fungsi, Asas, Bentuk, Sistem Terlengkap . 23 Oktober 2017.

      [Online]. Tersedia http://www.spengetahuan.com/2017 /09/pengertian-pemilu-tujuan-fungsi-asas- bentuk-sistem.html>.[Diakses

    12 Agustus 2017].

      Rhomine,C.H., 2015. SHA-3 Standard: Permutation-Based Hash and Extendable- Output Functions . Federal Information Processing Standards Publications Statista, Global smartphone sales to end users from

      1st quarter 2009 to 1st quarter 2017, by operating system (in million units). 2017.

      [Online]. Tersedia: <https://www.statista.com/statistics/266219/gl obal-smartphone-sales-since-1st-quarter-2009- by-operating-system/>. [Diakses 12 Agustus 2017].