Blockchain Based e Voting System Report
Blockchain Based e Voting System Report
PROJECT REPORT
SUBMITTED
BY
Student Name
UNIVERSITY NAME
UNIVERSITY
ADDRESS
Ph: +91
34237872367237
Year 2022
BONAFIDE CERTIFICATE
UNIVERSITY NAME
Acknowledgement
This document: I thank all my colleagues who provided a deep insight and
expertise that greatly assisted in the document development.
I personally thank my Professor for the assistance with the initial drafts and the
core structure of the proposal for the comments that greatly improved the
manuscript.
I would also like to show my gratitude to the University for sharing its pearls of
wisdom with me during the course of the development of this proposal. I am
immensely grateful to everyone.
Abstract
Online voting is a trend that is gaining momentum in modern society. It has great
potential to decrease organisational costs and increase voter turnout. It eliminates the
need to print ballot papers or open polling stations—voters can vote from wherever
there is an Internet connection. Despite these benefits, online voting solutions are
viewed with a great deal of caution because they introduce new threats. A single
vulnerability can lead to large-scale manipulations of votes. Electronic voting
systems must be legitimate, accurate, safe, and convenient when used for elections.
Nonetheless, adoption may be limited by potential problems associated with
electronic voting sys- tems. Blockchain technology came into the ground to
overcome these issues and offers decentralized nodes for electronic voting and is
used to produce electronic voting systems mainly because of their end-to-end
verification advantages. This technology is a beautiful replacement for traditional
electronic voting solutions with distributed, non-repudiation, and security protection
characteristics. The following article gives an overview of electronic voting systems
based on blockchain technology. The main goal of this analysis was to examine the
current status of blockchain-based voting research and online voting systems and
any related difficulties to predict future developments. This study provides a
conceptual description of the intended blockchain-based electronic voting
application and an introduction to the fundamental structure and characteristics of
the blockchain in connection to electronic voting. As a consequence of this study, it
was discovered that blockchain systems may help solve some of the issues that now
plague election systems. On the other hand, the most often mentioned issues in
blockchain applications are privacy protection and transaction speed. For a
sustainable blockchain-based electronic voting system, the security of remote
participation must be viable, and for scalability, transaction speed must be addressed.
Voting System based on Blockchain Technology
Table of Contents
Table of Contents 6
Introduction 8
I.1 Overview 8
I.2 Main Objective 10
I.3 Specific Objective 11
Fundamentals of Blockchain Voting: 11
Verifying Voter Identity 12
Maintaining Anonymity & the Secret Ballot 12
1. Increased Transparency in the Voting Process 13
2. Reduced Fraud & Election Rigging 13
3. Everyday Voting in Real Time 13
4. Corporate Governance & Autonomous Organizations 13
5. Increased Voter Engagement 14
I.4 Scope 14
1. Encryption 14
2. Authentication and permission 15
Security protection 15
Permission 15
I.5 Company 16
System Analysis 17
II.1 The Existing System 17
Types of Electronic Voting 17
Remote Voting System 18
Internet Voting (i-Voting) 18
SMS (Short Message Service) Voting 18
Direct Recording System 18
II.2 Vulnerabilities with the existing system 22
II.3 Blockchain-Based Voting 24
A. Evaluating Blockchain as a Service for E-Voting 30
B. Security analysis 31
C. Legal issues 31
Project Summary 50
V.1 Summary 50
V.2 Futures Works 50
V.3 References 51
Introduction
Electronic voting (also known as e-voting) is voting that uses electronic means
to either aid or take care of casting and counting votes.
A worthy e-voting system must perform most of these tasks while complying
with a set of standards established by regulatory bodies, and must also be
capable to deal successfully with strong requirements associated with security,
accuracy, integrity, swiftness, privacy, auditability, accessibility,
cost-effectiveness, scalability and ecological sustainability.
Electronic voting technology can include punched cards, optical scan voting
systems and specialized voting kiosks (including self-contained direct-recording
electronic voting systems, or DRE). It can also involve transmission of ballots
and votes via telephones, private computer networks, or the Internet.
+
After 2000, voting machine problems made international headlines. The
government appropriated money to fix the problems nationwide. Unfortunately,
electronic voting machines although presented as the solution have largely made
the problem worse. This doesn’t mean that these machines should be
abandoned, but they need to be designed to increase both their accuracy, and
peoples’ trust in their accuracy. This is difficult, but not impossible.
1. Accuracy. The goal of any voting system is to establish the intent of each
individual voter, and translate those intents into a final tally. To the extent
that a voting system fails to do this, it is undesirable. This characteristic
also includes security: It should be impossible to change someone else’s
vote, ballot stuff, destroy votes, or otherwise affect the accuracy of the
final tally.
2. Anonymity. Secret ballots are fundamental to democracy, and voting
systems must be designed to facilitate voter anonymity.
3. Scalability. Voting systems need to be able to handle very large elections.
One hundred million people vote for president in the United States. About
372 million people voted in India’s June elections, and over 115 million
in Brazil’s October elections. The complexity of an election is another
issue. Unlike many countries where the national election is a single vote
for a person or a party, a United States voter is faced with dozens of
individual elections: national, local, and everything in between.
4. Speed. Voting systems should produce results quickly. This is particularly
important in the United States, where people expect to learn the results of
the day’s election before bedtime. It’s less important in other countries,
where people don’t mind waiting days or even weeks before the winner is
announced.
Through the centuries, different technologies have done their best. Stones and
pot shards dropped in Greek vases gave way to paper ballots dropped in sealed
boxes. Mechanical voting booths, punch cards, and then optical scan machines
replaced hand-counted ballots. New computerized voting machines promise
even more efficiency, and Internet voting even more convenience.
More Information:
In this current paper we shall present how the blockchain technology can
overcome, improve and make the e-voting system efficient than ever.
Since each country has different laws and implementations, proposing a
definitive structure is almost impossible. The suggested solution in this paper is
specifically for problems of conventional paper elections in Democratic
Republic of Congo. Despite the solution is specific to one country, it may be
taken as a general application, and can be customized to other countries.
Security and privacy of votes and voters and the speed of counting votes and
announcing the results are discussed in the solution.
Blockchain voting is similar to analogue voting that we’re used to. The same
concepts and processes apply. In order to cast a digital vote, a citizen would
need to register and prove their citizenship in a given jurisdiction. We could
then record that identity and citizenship on the blockchain associated with that
user’s key.
Next, a citizen needs a ballot to cast a vote. In the blockchain, this would likely
take the form of a special voting token that would be deposited in the user’s
account. This token would also likely have a time limit in which it could be
used to vote, after which it would burn itself via a smart contract or become
useless.
Casting a vote on the blockchain would involve sending the voting token (the
ballot) to a specific address. Voters would know which address aligns with
which candidate or referendum. Sending a token to that address would represent
a vote.
Technically, that sounds simple enough. The vote gets registered on the
blockchain where its immutable, verifiable, and transparent. We can easily
count up the votes to declare a winner to the election. In addition, we can build
nice user interfaces that automate and hide the process of sending a token to a
specific address. Instead, voters would see a simple online interface for them to
select a candidate or proposal and click submit.
Verifying Voter Identity:
If that first explanation sounded simple and you wonder why we’re not voting
on the blockchain already, just hold on. It’s actually a lot more complicated than
that. There are a lot of issues that need a resolution first.
One major issue is verifying voter identity. In order for blockchain voting to
work, we need a system that prevents people from voting more than once or
voting in an election where they’re not a citizen. That gets tricky on the
blockchain because it relies on a central authority to verify citizenship or
residency documentation.
Cybersecurity experts generally agree that blockchains are unhackable (with the
right network size and consensus algorithm). Logic proofs and statistics indicate
that it becomes increasingly unlikely that a block can be compromised once the
network confirms it. However, the
anonymity needed for voting is more difficult to secure and be certain that it
won’t be compromised.
On the blockchain it could be possible to track your vote and see that it ended
up in the right place. Even though it wouldn’t have your information tied to it,
your vote would exist on the blockchain for all of history.
If blockchain makes voting transparent, then we can follow and tally votes in
real time. This means that elections can happen on a much shorter time span.
Additionally, if they are digital, they require less investment in polling
infrastructure. As a result, elections could be held with a short lead time to vote
on a referendum quickly.
This could completely change daily life. Imagine if you could vote on your
phone on how traffic in your city would be routed today or whether to increase
taxes to pay for a new park in your community. Voting could become highly
targeted, even neighborhood specific. There would be little overhead to voting
more often, possibly making voting a daily occurrence.
The Governments aren’t the only institutions that could benefit from blockchain
voting. Employees or shareholders could vote for initiatives within a company
as well. It’s possible to even imagine ownerless businesses where every decision
is an open vote from shareholders.
5. Increased Voter Engagement
I.3 Scope
1. Encryption
When a block stores new data it is added to the blockchain. Blockchain, as its
name suggests, consists of multiple blocks strung together. In order for a block
to be added to the blockchain, however, four things must happen:
4. That block must be given a hash. Not unlike an angel earning its wings,
once all of a block’s transactions have been verified, it must be given a
unique, identifying code
called a hash. The block is also given the hash of the most recent block
added to the blockchain. Once hashed, the block can be added to the
blockchain.
When that new block is added to the blockchain, it becomes publicly available
for anyone to view even you. If you take a look at Bitcoin’s blockchain, you
will see that you have access to transaction data, along with information about
when (“Time”), where (“Height”), and by who (“Relayed By”) the block was
added to the blockchain.
Security protection
In the e-voting system, ensure the reliability of the voters’ devices provides
security protection. Even if a device has passed the authentication of other
nodes, it still has the risk of being attacked by malicious users due to software
or system vulnerabilities during the execution of the task. The intruder usually
will modify the network entity to leave a backdoor in the device to prepare for
subsequent infiltration and modify the key configuration file in the device and
cause damage to the entire network. In order to discover potential intrusions
quickly, we regularly verify that whether critical data have been tampered with.
Permission
1)Enrollment Control
We use a permission chain with access control rights ensured by the system
administrator for the proposed system. A device needs to register in blockchain
before it accesses to the network. The access control layer in the permission
chain ensures that only devices with legal identities can register information in
the blockchain.
2)Secure Channel
3)Fast Synchronization
When a device registers in the blockchain, it only needs to request the ledger
from a small number of nodes rather than performing long-term synchronization
of block data. The nodes for synchronization are selected randomly, so we can
assume that these nodes are trustworthy.
I.4 Company
The reminder of this paper is organized as follows: In chapter II, we discuss the
System analysis: we shall look at the existing issues with the current system,
how to fix them with using blockchain technology, the feasibility and the
development requirement. In chapter III, we present our blockchain based
e-voting system, we discuss some of the security and legal considerations and
limitations regarding designing an electronic voting system for national
elections, the flow chart and the E-R diagram.
Chapter II: System Analysis
The Election process is made simple using Electronic Voting System. The first
procedure involves logging into the website with the voters registered details.
Then the user or voter selects a candidate according to his personal choice. This
is called submission of ballots digitally. The system records the details and
stores the voter’s information in the database and computers help in counting
and displaying voter’s results.
Internet Voting
SMS Voting
Internet Voting is a type of e-Voting done remotely via internet. In this system
the voter can participate from any location. Few countries like France,
Switzerland, Estonia use Internet Voting (i-Voting) for National Level Elections.
Internet Voting is also popular among television shows.
SMS voting system is used in popular television shows where the audience
votes by sending SMS to a specific number. Mobile Phones are used to send an
SMS.
The EVM’s are used in National Elections and the participant has to go to the
specific location called the voting booth to cast his vote. The entire process is
supervised by Government Electoral Authorities. EVM displays a list of names
of candidates and the user selects his preferred candidate by pushing the button
against the name. The LED glows and selection is displayed on the screen
which confirms the choice of the user.
Different parts of world have reacted differently to the use of EVMs. North
America and some parts of Europe have shown a decreasing interest to EVMs
whereas South America and Asia have shown a rapid growth in interest towards
EVM technology.
Voting Unit
Voting Unit consists of Resistors connected to press buttons. The user selects his
candidate by pressing the button against the name displayed.
Control Unit
Micro controller is used as the Control Unit which stores the voters data. This
unit consists of a CPU, RAM, ROM, I/O Ports and Timers.
Display Unit
Display Unit is Liquid Crystal Display (LCD). When the user pushes a button
on the EVM, the result is displayed on the Display Unit which is in textual
format.
Confirmation Unit
Buzzer and LED forms the Confirmation Unit. Once the button is pushed by the
User on the Voting Unit, Buzzer beeps and LED glows indicating that a
particular button is selected which acts as a Confirmation to the User. Buzzer is
an audio-signaling device which produces sound in the range of 2-4 KHz. LED
is a semiconductor device which acts as a light source.
Internet Voting or Online Voting System helps the users to cast their vote from
internet connected computer or a mobile anywhere in the world. In this system,
the voter’s login to the specific website and their identity is authenticated. It is
followed by voting process. Once the process is completed, the user logs off
from the system.
Online voting increases the voter’s participation and it is easier than the poll site
voting.
The database contains voter’s information like Name, Age, Telephone Number
etc. It is responsible for collecting, storing and maintaining the data.
Server
The server is responsible for authentication of the user based on the details entered
by the user.
Mixnet
Mixnet is mixed networks that are a set of protocols that aids in Encrypted
communication by using a chain of proxy servers called as Mixes which take in
messages, shuffle and send them randomly to the next destination.
Decryption Mixnet involves decrypting messages by using private key and the
message order is shuffled by the node and transmits the result to the next node.
One form of Russian meddling in the 2016 election, for example, was social
media campaigns, which affect political discourse at the level of opinions
formed by individuals. But the second prong the hacking into campaigns, like
John Podesta’s e-mail was just so sinister in the way it was picking only on one
side. That gets to the very roots of how open societies traditionally rely on
information gathering and the media in order to make sound political decisions.
And then there’s the third form of hacking: going after the machinery of
elections, the infrastructure, polling places, voter registration systems, etcetera.
That’s where most of my work has been.
No research group had ever had access to a U.S. voting machine in order to do a
security analysis, and an anonymous group offered to give us one to study. Back
then there was quite a dispute between researchers who hypothesized there
would be vulnerabilities in polling place equipment and the manufacturers that
insisted everything was fine.
It has moved away from a position of hubris. Now that there have been major
academic studies there is scientific consensus that here will be vulnerabilities in
polling place equipment.
Sometimes the risks or probable failure modes of new technology are totally
foreseeable. And that was certainly the case in voting. As paperless computer
voting machines were being introduced, there were many computer scientists
who before anyone had even studied one of these machines directly were
saying, “This just isn’t a good idea to have elections be conducted by,
essentially, black box technology.”
On the other hand, the ways in which these failures will be exploited and the
implications of that exploitation are sometimes a bit harder to foresee. When we
did the first voting machine study 10 years ago, we talked about a range of
different possible attackers, dishonest election officials and corrupt candidates.
But the notion that it would be a foreign government cyber- attack, that that
would be one of the biggest problems to worry about well, that was pretty far
down on the list. Over the past 10 years cyber warfare went from something that
seemed like science fiction to something you read about every almost every day
in the newspaper.
2016 really did change everything. It taught us that our threat models were
wrong. we think it caught much of the intelligence community off guard, and it
caught much of the cybersecurity community off guard. It was surreal to see
Russia get so close to actually exploiting the vulnerabilities to harm us.
There’s a programming process by which the design of the ballot the races and
candidates, and the rules for counting the votes gets produced, and then gets
copied to every individual voting machine. Election officials usually copy it on
memory cards or USB sticks for the election machines. That provides a route by
which malicious code could spread from the centralized programming system to
many voting machines in the field. Then the attack code runs on the individual
voting machines, and it’s just another piece of software. It has access to all of
the same data that the voting machine does, including all of the electronic
records of people’s votes.
So how do you infiltrate the company or state agency that programs the ballot
design? You can infiltrate their computers, which are connected to the internet.
Then you can spread malicious code to voting machines over a very large area.
It creates a tremendously concentrated target for attack.
As Bruce Schneier describes it, technology adds more steps to the process and
thus increases the possibility of error with each additional step, all of which are
largely unseen by the voter. Put Murphy’s Law of ‘whatever can go wrong, will
go wrong’ into play, and one can surmise that technology will most likely falter.
Not only does the technology create more errors in the electronic workings, but
the voters can also commit mistakes due to confusion with the user interface.
The terminology is confusing, different machines produce different interfaces,
and even the audio guides to help the disabled may prove more confusing than
helpful.
With the advent of electronic machine voting also comes the higher possibilities
of fraudulent machines and practices. First of all, the technology is “black box
software,” meaning that the
public is not allowed access into the software that controls the voting machines.
Although companies protect their software to protect against fraud (and to beat
back competition), this also leaves the public with no idea of how the voting
software works. It would be simple for the company to manipulate the software
to produce fraudulent results. Also, the vendors who market the machines are in
competition with each other, and there is no guarantee that they are producing
the machines in the best interest of the voters and the accuracy of the ballots.
Lastly, vote accuracy is also an issue, because voters have no way of confirming
their vote, and there is also no way of conducting a recount with
direct-recording electronic (DRE) in the current system voting. With DRE, there
is no paper trail, no verification, and thus no scrutiny of the processes. Voter
anonymity is also a problem. Voters have to provide much of their personal
information to the systems for voter verification, and with that comes the
problem of keeping voter information safe and keeping voters anonymous.
Blockchain-Based Voting
As you can see in the Fig. 1, standard use case of the election system is about
the citizen and government. Government in this system only provides the
authorization of using a leveled architecture are explained below in detail.
Furthermore, consensus of the system is satisfied using DPoS algorithms.
If the whole country would have been represented with a single blockchain,
synchronization of the system would have a performance issue due to
abundance number of ballots and the distance between voting centers. Distance
in connected systems is always cause to latency. For a system that includes all
the country under the same blockchain, latency between two voting centers
would be a big problem, because for instance for Turkey, expected latency
would be around 100 ms at least. This is a huge value for a system that consist
of ten thousand of centers and there would be voting at each center
simultaneously. In this case, synchronization of the system would take lots of
time. So, in order to decrease latency, chains are distributed over levels. From
lowest level to highest level, there will be different chains at each level, and
connections between levels will be provided with a secure system.
At the lowest level, there will be a chain that consist of nodes (machines / voting
centers) where citizens will perform their voting about election. Due to the
relatively less number of nodes in the system, synchronization will take
affordable amount of time at the lowest level. When the number of nodes is
arranged in a good pattern (i.e. there will not be overload at the chains that will
cause enormous latency), system will perform well. Citizen will go to the center
and will enter the system with the identity that is provided by the government.
We considered to build a system that is working on the citizens who can vote or
prevention of the citizens who already voted for that election. Also, government
and citizens determine the candidates that will be participating in that election.
The ballot box information, candidates and citizen ballot box relation will be
provided by the government which is the trusted party in the elections. After
citizen’s vote, it is added to the blockchain that we will be proposed below and
any vote has a guarantee from the system about being immutable. Since a chain
contains all the citizen votes anonymously at the end of the election, the official
results will be announced within minutes
after the election terminates. Any concerning third party can get the chain and
count the votes for being sure that voting is really trusted.
We propose a system that has a leveled structure. There will be different number
of levels in that system according to necessities of the country. In order to
provide a fast, consistent and secure system, system is designed in a leveled
architecture. This number will change from country to country according to
features of the country. Reasons behind government’s system that will hold the
data about citizen for specified voting. If a citizen has not voted yet, citizen will
be able to vote one of the candidates. Candidates’ will be hold in a database that
will also be stored at government related system, because they are already hold.
When the authentication process is satisfied, citizen will vote with choosing one
of the proposed candidates or blank vote for those who do not want to vote one
of the candidates. In this system, proposed candidates will be taken from
database that includes relation between ballot boxes and candidates. Thus, there
will be only appropriate candidates. It can be the government of any country, in
our case it’s the Democratic Republic of Congo government. We will be using
e- devlet system. Since most of the authentication system used across the
government related systems are managed by e-government system, it will not be
hard to implement this system relying on this system. When the user passes the
authentication phase, citizen will see whether he has voted previously or not. If
citizen has not voted yet, citizen will choose desired candidate according to the
steps explained above.
At the second lowest level, there will be a cluster of chains that stores data that
are coming from below level. In this level, facilities of blockchain technology
are used to make system consistent. We considered that 2 levels will be enough.
The system at the second level can have about 700 nodes considering population
of the country. That brings a huge performance improvement to the system
because the number of connected nodes decrease in this structure in a
considerable amount. Additionally, if the node numbers at the 2nd or upper
levels are increased, performance increases exponentially. For a country, which
has more citizens, level number can be increased in order to decrease collisions
between transactions. Consequently, system can be considered as a scalable
system.
It is stated that vote centers are nodes of blockchains. There will be a file at
each node (voting center) that stores the number of data that indicates the
number of votes accepted from upper level at previous synchronization step. At
every specified time intervals, voting will be stopped for a very short time
period in order to synchronize blockchain data between levels. When the data is
arrived to upper level from lower chain nodes, it will be checked in order to
satisfy consistency. If the consistency of the data is ensured, answer will be a
flag that indicates the data is accepted. At this point, nodes at the level 0 will be
waiting an answer from level 1 (and level 1 from level 2, so on). If arrived flag
tells the votes are accepted, the files at each node (voting centers) will be
updated. So, nodes at the lowest level of one of two levels will always know
that how many votes have been accepted at above level. Additionally, data will
be added to blockchain at the level that the data is arrived (if the communication
is between level 0 level 1, indicated level here is level 1). This data will be
considered as a transaction block, that means all the new votes (votes coming
after from the previously added votes) are considered as a vote cluster and
considered as array in computer scientific terms. This vote cluster will be a
block that will be added to chain.
At the synchronization phase, if the data coming to the upper level from
different machines are inconsistent, that will be a case that should be considered
with a care. In this case, if the consensus could not be satisfied, the data will not
be accepted from highest level of the two levels and the “decline” flag will be
sent to the lower one. In this case, same data should be sent to the upper level
again. Until the consistency is satisfied, this procedure will be continued, and
with this procedure, consistency will be satisfied at each level.
It is stated above that the all nodes at the lower levels know that the data is
accepted if the answer states, so, they can continue working. But in order to
satisfy consistency through the system, delays between synchronizations should
be arranged very carefully. If the delay between levels becomes a small amount
of time, the time spent for synchronization may grow
much. On the contrary, if the delay becomes a big amount of time, the data that
will be sent between levels takes an enormous size and to transfer this data
becomes a problem. So, in order to not bottleneck the system, this delay
between levels should be chosen carefully. With the well-designed
synchronization times between levels, a high performance providing consistent
system would be obtained.
Block structures in levels can be seen below. The election related data are stored
in block as shown below through the system. As seen in Fig 3. and Fig 4. we
propose two types of blocks: one is for building blockchain at the lowest level
of the architecture, that stores candidate info, ballot box info, a “nonce” field
that will be used for hashing and a prev_hash info that will be used when
creating block that will be added to the blockchain, and other one is consisting
of two fields: one is prev_hash field that will be used in order to build
blockchain and other one, “lotb” keyword that indicates list of the blocks.
Attribute “nonce” is a state of art in the blockchain technology which provides
additional security to each hash. For each chain, you select a pattern such as
“hash must start with 4 trailing zeros”, while creating hash from the block
system look to the hash pattern if it does not fit the pattern then it changes the
“nonce” string until hash pattern is valid for the chain. It requires more
computational power because it will run hash algorithm multiple times until
pattern is matched but it also increases the security since if any malicious party
create a hash and try to add that block to the chain, it also has to know the hash
pattern. Since chain pattern will be different for each election, third parties
cannot predict or create a hash that can be accepted.
Figure 3: Block structure at level 1 or more
At the lowest level (level 0), each block will be consisting of one transaction
and at each block, whole related information about transaction (in proposed
e-voting case, this block indicates a vote) are stored. At the upper levels, the
votes coming from one below level are stored in clusters that is sent through
different time segments, and all of them are stored as a monolith
structure. When this data is arrived, a new block is processed with the
prev_hash data and added as a block to the blockchain at described level. When
a new block is being tried to add to the chain, according to the Delegated Proof
of Stake of Etherium, it is added and data consistency is satisfied. Adding block
to the chain is very costly operation. Therefore, there are some implementations
and research about this operation. In Ethereum based Smart Contracts system
has been discussed for different purposes. Researchers think that smart contracts
can be applied in e-voting and this project implements Smart Contracts. Smart
Contracts reduce the cost of the transactions and it does not rely on a third party
to operate. Turing-completeness feature of the Ethereum allows to create
customized and more powerful contracts
B. Security analysis
1) DDoS: To successfully DDos a distributed system such as we have
proposed, the attacker must DDoS every single bootnode in the private
network. The individual or institution would be immediately located if that
would occur. Each node is implemented with a Byzantine fault tolerance
algorithm, which helps locating failed nodes in the system.
2) Authentication vulnerability: Each individual is identified and
authenticated by the system by presenting an electronic ID from Auðkenni
and the corresponding 6-digit PIN in the voting booth. Without supervision,
an individual could vote for multiple people, if the individual had knowledge
of the PIN for each corresponding electronic ID he has. To further address
this vulnerability in the near future, a biometric scan could be introduced.
3) Sybil: Sybil attack is known against centralized systems, where an
individual creates a large number of nodes in an attempt to disrupt network
operation by hijacking or dropping messages. Since our proposal is running
in a private network no individual has the access to create one. Even the
consensus protocol that is used in our system is prone Sybil attacks. Private
blockchains solve many of today’s security problems using strong
cryptography features and the limited access to the ledger, without negating
the transparency aspect the blockchain technology offers.
C. Legal issues
1) Remote voting: Remote elections provide no coercion resistance
because of the non- supervised factor in a remote election. Remote elections
can therefore not guarantee the privacy that people have when they cast their
vote in a voting booth. Family members or a
coercer can watch over your shoulder while you’re voting, which could lead
to a misconfigured result. If elections are hosted on a website for example it
could easily be taken down by people with good hacking skills and the
mindset to do so. People could identify themselves as another person and
therefore vote for another person and even multiple people.
2) Transparency: In the today’s election scheme, no method of
transparency can be offered to participants of the election. When an
individual place his ballot in the box at his voting district, there is no
guarantee from the scheme that his vote was counted and counted correctly.
Any individual vote can be misplaced, counted incorrectly because of human
error or simply because the party which the voter voted for could be disliked
by the individual which counted the vote. This transparency is non-existent
because no ballot has information on who casted aforementioned vote. To
introduce transparency in the process of an election would require a new law
which would allow government officials to provide the services which allow
such method of transparency
3) Voter privacy: In every pen and paper election scheme, voter’s privacy
is a key element. The law forbids any individual or entity to be able to know
from a single vote, who gave aforementioned vote. If such information could
be gathered for each vote, such information could then leak to the public
which would allow for listing every single individual who voted for a single
party/candidate. To satisfy the privacy of each voter, no individual vote
should be traceable back to the voter.
System Diagrams(Architectures):
1.
2.
3.
1. Metmask Wallet
2. Ganache
3. Remix IDE
4. Solidity
Conclusion
Democracies depend on trusted elections and citizens should trust the election
system for a strong democracy. However traditional paper-based elections do
not provide trustworthiness. In this paper, we proposed a blockchain based
e-voting system which provides a trusted, secure and fast voting system for
Turkey. Proposed system is suitable to apply in another country whereas
integration is hard work since each country has different laws and election
system changes between countries.
References