Why do we need to vote? By voting, we have the power to decide on the quality of life we want for ourselves and for the coming generations.
From public infrastructure, minimum wage to funding important missions,voting helps us to select the best candidate for our nation. The present voting systems in most countries are inefficient and demand a decentralized process for secure election that is open, fair and independently verifiable.
One such technology that can become a game changer for the voting process is blockchain. This blog highlights how we can use blockchain in voting for secure election and how it can make the entire process highly secure and robust.
Let’s start with the basics first. What is a blockchain?
Blockchain technology is a public ledger that records and stores all transactions. These transactions are recorded in a block and when the block is completed as more transactions are carried out, it is added in chronological order to the blockchain.
All the blocks are secured and bound to each other using cryptographic principles. A block has three parts:
- Information about transactions, such as the date, time, and amount.
- Information about who is participating in transactions.
- A unique code called a “hash” that separates it from other blocks.
How to use blockchain in voting?
Voting with blockchain will eliminate election fraud and boost transparency. Each vote would be stored as a block on the blockchain, making it impossible for anyone to tamper them.
The blockchain technology will also reduce the personnel needed to conduct an election and offer instant results for an election.
Blockchain Voting System: Four Parts
1) User with a smartphone or any device with a front camera. The device must have an internet connection to register and vote.
2) An Authentication Server which is a kind of web server with backend database of all the eligible voters in a country. This server will allow users to create account after they register. The information needed to register includes their unique identity number (such as Aadhaar Card ID or Voter ID in India), postal address, email address and phone number (optional). A picture or small video of the user’s face will also be taken to confirm verification. The information of each user will act as a transaction. An automated miner will verify the transaction and will send confirmation to the user. The user then can create an account with a username and password of their choice on the AS server.
3) An Arbitration Server, which will consist of national, constituency and local nodes, is required to connect a user and the blockchain voting system.On the voting day, the users can login to their account created on the AS server through their mobile device. This server will verify the user’s identity as soon as they login using a front-facing camera in a device.The server will assign a public key to each user and assign the same amount of digital tokens to all eligible voters.
The user will use that token along with their private key to cast vote so that their votes remain a secret. The encrypted token will be sent to the local node. Each local node will communicate with the other local nodes under the associated constituency node.The constituency node will collect information from the associated local nodes and send to a national node. All national nodes can communicate with each other for voting counting process. Each node is required to follow the smart contract to verify the vote and add it to a chain of blocks on a node.
4) Each voter will use their tokens to vote for a candidate. During the voting counting process, miners of national nodes will verify and count the token numbers. A candidate with the highest amount of tokens will win the election.
Since everything in a blockchain is public and distribute, each associated user can see if their vote has been counted for their candidate. The private keys used by voters protect their anonymity in voting while the public keys assigned to each voter account can be mapped to see if the votes have been counted fairly.
Use of Blockchain Cryptographic Functions in Voting
Hashes: Hashes are mathematical functions that assign a set of numbers and letters to the output based on the input. For instance, the word “election” if hashed using SHA-256 hashing algorithm, it will be written as c7a19845b9e9de079260094d79525957. If installed in electronic voting machines, hashing can identify malicious modifications to the software or when software is corrupted.
Digital Signatures: They are also mathematical functions like cryptographic hashes and help to identify who sent a message or file. It will help to eliminate voting frauds when one people cast too many votes or try to tamper the votes in an EVM.
Mix-Nets: They only take encrypted data and then re-encrypt them to mix the order in which it is stored. When someone tries to manipulate votes, the re-arranged vote orders will not match with the manipulated ones on the nodes. The blockchain system will quickly alert auditing personnel about the manipulation.
Homomorphic Cryptography: It allows the votes in an electronic ballot machine to be tabulated while still encrypted, eliminating the way to identify who voted for whom. These tabulated votes can then be posted on public channels to verify the outcome of the election.
Encryption and Decryption: Encryption obscures any information and decryption reverses this process. Keys are the secret piece of information necessary to encrypt and decrypt data. When casting an iVote, the value of the vote can be encrypted using an encryption key and only authorized vote counting officer can decrypt encrypted data.
Benefits of using blockchain technology in voting
Blockchain is immutable. No one can delete votes or vote twice, because everything is encrypted and verified at each level, thereby bringing transparency to the voting process.
- Conducting election on a blockchain system is safer and efficient because counting results will not take days but minutes. It will also remove human errors in counting EVM votes or paper ballots.
With elections going on in India and approaching in the world’s biggest democratic countries like the US and the UK, blockchain can prove beneficial to prevent any manipulation or fraud in the election process as we have seen during the 2016 US election. The blockchain technology already exists and it is the time to implement it for hosting elections on this innovative technology.
Blockchain can be used to track voting data, register and verify voters and verify news sources to avoid fake ones from affecting people’s sentiments. Blockchain is sure to make the voting process more transparent, efficient, and secure.