Using a Blockchain-based system, an election can be defined as a smart contract. In
this contract, different choices can be identified with a unique address. Votes will
be provided to voters in the form of a certain source (for example a certain number
of coins from a certain source).
Voters can cast their vote by transferring their balance (or right to vote) to the
account of their chosen candidate or choice by scanning their address.
This transfer will be recorded in the Blockchain and will be counted after a certain
number of block confirmations.
At the end of the voting process, the accounts whose balance comes from the
predefined source specified in the smart contract will determine the chosen
candidate or option.
This is a simple definition of a Blockchain-based election process. What this structure
offers is the following:
Transparency: all the votes (transactions) of a candidate can be
seen in real time and in a transparent way. Voters can make sure of their vote by
looking at their transaction in their chosen candidate’s account.
Confidentiality: even though it is transparent which accounts have
voted to their chosen candidate, but it will not be divulged who has cast the vote.
Quick results: results can be seen in real time, and this matter
does not require separate operations.
Being unchangeable: the structure of Blockchain does not allow for
easy changes to be made. Any change will nullify the entire chain.
But can any Blockchain network be used to launch an election system?
More challenges must be considered in this system and a solution must be offered for them.
Voters’ demographic: since most of the general Blockchain networks, that are used
for cryptocurrencies, have a limited capacity in each block for processing
transactions, and most of the available space is already filled with ordinary
transactions, it would not be possible to use networks such as Bitcoin and Ethereum.
Given the size of the voting community, the network should have the capacity to
process few million transactions in a day. In other words, to receive 10 million
votes, 278 transaction should be recorded each second. If we want to prepare the
system for the peak influx of votes, it should be ready to cover about 1000
transactions each second. And this volume of transactions is not compatible with the
power of most Blockchain networks available.
Public Blockchain networks do not guarantee that the sent transaction will be
recorded in the first available block. Given the network’s traffic, the transaction
fee, and perhaps other defining parameters, the time of a transaction being recorded
in a block can vary. This is considered a challenge for an operation that needs to
take place and finish at certain times.
As it was mentioned at the beginning, organizing an election will include
determining candidates, verifying the identity of voters, preventing duplicate
votes, and preventing fake voters. Additionally as mentioned, the proposed method
does not provide viable solutions for these challenges. Therefore, current
conventional structures need to authenticate these matters.
The 51-percent attacks that can be organized as a result of enforced power on the
network can be very detrimental and destructive. Since elections are considered very
critical for any country, then the probability of such attacks from authorities