1 of 24

Decentralized Election System

Presented by:

Monjure Mowla 

Ameer Talha  

Nipun Paul   

Mutakabbirul Islam Pranto 

Supervised by:

Mr. Md. Khairul Hasan

Associate Professor, CSE Department

Ahsanullah University of Science and Technology

- 180104027

- 180104036

- 180104042

- 180104044

AHSANULLAH UNIVERSITY OF SCIENCE  AND TECHNOLOGY

Department of Computer Science and Engineering

2 of 24

Objective

Decentralized Election System

 2 of 24

13th December, 2022

To implement a decentralized application in order to solve the problems of holding a fair election.

  • Immutable
  • Transparency
  • Decentralized
  • Efficiency
  • Traceability

Motivation

3 of 24

Purpose

Decentralized Election System

3 of 24

  • Efficient Maintaining of the Voting System

    => The Election Commission can do their jobs digitally 

  • Making the Job of Polling Agents Faster & Easier

    => The agents can quickly verify a voter

  • Eradicating the Prospect of Fake Votes

    => Each voter can vote only once

13th December, 2022

4 of 24

Introduction (1 of 2)

Decentralized Election System

4 of 24

  • Blockchain: Immutable distributed ledger
  • Ethereum: Decentralized and open-source blockchain
  • Smart Contracts: Immutable, verifiable, and autonomous pieces of code
  • Solidity: Programming language to write smart contracts
  • Node.js: Back-end JavaScript runtime environment
  • Remix: An online IDE for Solidity
  • jQuery: A fast, small, and feature-rich JavaScript library
  • HTTP-Server: A simple, zero-configuration command-line static server
  • Web3.js: A collection of libraries that allow you to interact with a remote ethereum node using HTTP, IPC or WebSocket
  • MetaMask:  An extension for accessing Ethereum

13th December, 2022

5 of 24

Introduction (Continued – 2 of 2)

Decentralized Election System

5 of 24

  •  Bootstrap: A free and open-source CSS framework
  • ABI: It is an interface between two program modules, often between the operating system and the user programs
  • InterPlanetary File System (IPFS): A protocol, hypermedia and file sharing peer-to-peer network for storing and sharing data in a distributed file system. IPFS uses content-addressing to uniquely identify each file in a global namespace connecting IPFS hosts
  • TestNets: It is an instance of a blockchain which is used for testing and experimentation of applications without risking of losing funds

13th December, 2022

6 of 24

Some Related Works

Decentralized Election System

6 of 24

  • Eleanna Kafeza, and Syed Juned Ali, "Legal smart contracts in Ethereum Block chain: Linking the dots", in 2020 IEEE 36th International Conference on Data Engineering Workshops (ICDEW).
  • Divya Rathore, and Virender Ranga, "Secure Remote E-Voting using Blockchain", in 2021 5th International Conference on Intelligent Computing and Control Systems (ICICCS).
  • Aaron Fernandes, and Karan Garg, "Decentralized Online Voting using Blockchain and Secret Contracts", in 2021 International Conference on Information Networking (ICOIN).
  • Ruhi Taş, and Ömer Özgür Tanrıöver, "Building A Decentralized Application on the Ethereum Blockchain", in 2019 3rd International Symposium on Multidisciplinary Studies and Innovative Technologies (ISMSIT).
  • R. Aroul Canessane, and N.Srinivasan, "Decentralized Applications Using Ethereum Blockchain", in 2019 Fifth International Conference on Science Technology Engineering and Mathematics (ICONSTEM).
  • Andreas Bogner, and Mathieu Chanson, "A Decentralised Sharing App running a Smart Contract on the Ethereum Blockchain" in 6th International Conference on the Internet of Things (IoT‘16).

13th December, 2022

7 of 24

Decentralised Applications Using Ethereum Blockchain

Decentralized Election System 

7 of 24

  • Decentralised voting system.
  • Real time vote count.
  • Trustworthy.
  • Tools – Truffle, Ganache, Solidity, Metamask.

13th December, 2022

8 of 24

Decentralized online voting using

blockchain and secret contracts

Decentralized Election System 

8 of 24

13th December, 2022

Designing with Enigma

Android Application

Voters Remain Anonymous

9 of 24

Secure Remote E-Voting using Blockchain

Decentralized Election System 

9 of 24

13th December, 2022

Remote Voting

Proof of Concept

Results Hidden

10 of 24

Building A Decentralised Application on the Ethereum Blockchain

Decentralized Election System

10 of 24

  • Solving obscurity problem.
  • Revealing real time vote count.
  • Traceable.
  • Tools - Truffle, Ganache, Solidity, Node.js, ASP.net.

13th December, 2022

11 of 24

A Decentralised Sharing App Running a Smart Contract on the Ethereum Blockchain

Decentralized Election System

11 of 24

  • Decentralised monetization system. 
  • No Third party medium needed for transaction  process.
  • Tool - Truffle Development Network.
  • HTML5 and JavaScript for web client. 

13th December, 2022

12 of 24

Legal smart contracts in Ethereum Blockchain: Linking the dots

Decentralized Election System

12 of 24

Technologies used-

  • Solidity
  • IPFS
  • Web3js
  • MetaMask
  • Ganache
  • Truffle Framework
  • MySQL

A versioning system that keeps track of the contract changes and links the different versions using a linked list.

System Architecture for a smart contract application

13th December, 2022

13 of 24

Proposed Model

Decentralized Election System

 13 of 24

  • Using the properties of Blockchain in e-governance
  • Making the EC's responsibilities efficient
  • Making the polling agents' jobs quicker
  • Ensuring protection to the voters of their right to vote
  • Ensuring the right candidate or decision prevails

13th December, 2022

14 of 24

Implemented Model (1 of 3)

Decentralized Election System

 14 of 24

13th December, 2022

15 of 24

Implemented Model (Continued – 2 of 3)

Decentralized Election System

 15 of 24

13th December, 2022

16 of 24

Implemented Model (Continued – 3 of 3)

Decentralized Election System 

 16 of 24

  • Contract Deployment
  • Constituencies and Voting Centers
  • Mapping Voter Information with NID
  • Adding Candidates
  • Verifying NID
  • Verifying the Information of a Voter
  • Checking whether a Voter Has voted or Not
  • Casting Votes

13th December, 2022

17 of 24

Simulation and Result (1 of 5)

Decentralized Election System 

 17 of 24

13th December, 2022

18 of 24

Simulation and Result (Continued – 2 of 5)

Decentralized Election System

 18 of 24

13th December, 2022

19 of 24

Simulation and Result (Continued – 3 of 5)

Decentralized Election System

 19 of 24

13th December, 2022

20 of 24

Simulation and Result (Continued – 4 of 5)

Decentralized Election System

 20 of 24

13th December, 2022

21 of 24

Simulation and Result (Continued – 5 of 5)

Decentralized Election System

 21 of 24

13th December, 2022

22 of 24

Limitations

Decentralized Election System

 22 of 24

  • Unordered Data Retrieving because of Buffering
  • Seat wise Center Selection Display

13th December, 2022

Future Work​

  • Private Blockchain
  • More User Friendly

23 of 24

Conclusion

Decentralized Election System

 23 of 24

  • Decentralized Election System Prototype for Bangladesh
  • Operational in the Ethereum Test Network
  • Replacement of the Traditional Voting System
  • Used by Government Authorities & Authorized Voters

13th December, 2022

24 of 24

Your Valuable Suggestions, Please

Decentralized Election System

Thank You

13th December, 2022

 24 of 24