Source-linked AI summary
E-Voting with Blockchain: An E-Voting Protocol with Decentralisation and Voter Privacy
Freya Sheer Hardwick, Apostolos Gioulis, Raja Naeem Akram, Konstantinos Markantonakis
TL;DR
The paper addresses how blockchain might support e-voting that is decentralised, transparent, independently verifiable, and privacy-preserving while allowing voters to update votes. It proposes and implements a blockchain-based protocol, identifies a trusted central authority and practical blockchain limitations, and concludes with possible paths for improvement.
Problem
E-voting needs transparency, auditability, privacy, integrity, and distributed authority, while existing blockchain proposals leave large-scale implementation challenges insufficiently discussed.
Method
The paper proposes an e-voting scheme using blockchain as a transparent ballot box, with pseudonymous ballots, central-authority eligibility authentication, and alteration ballots.
Results
The protocol is reported to meet fundamental e-voting properties while providing decentralisation, voter control, eligibility enforcement, privacy, and universal verifiability.
Takeaways & Limitations
The paper concludes that blockchain can support the proposed e-voting design, but complex applications require addressing platform shortcomings and practical implementation constraints.
Abstract
from arXiv · showhide
Technology has positive impacts on many aspects of our social life. Designing a 24hour globally connected architecture enables ease of access to a variety of resources and services. Furthermore, technology like Internet has been a fertile ground for innovation and creativity. One of such disruptive innovation is blockchain -- a keystone of cryptocurrencies. The blockchain technology is presented as a game changer for many of the existing and emerging technologies/services. With its immutability property and decentralised architecture, it is taking centre stage in many services as an equalisation factor to the current parity between consumers and large corporations/governments. One of such potential applications of the blockchain is in e-voting schemes. The objective of such a scheme would be to provide a decentralised architecture to run and support a voting scheme that is open, fair and independently verifiable. In this paper, we propose potentially a new e-voting protocol that utilises the blockchain as a transparent ballot box. The protocol has been designed with adhering to the fundamental e-voting properties in mind as well as offering a degree of decentralisation and allowing for the voter to change/update their vote (within the permissible voting period). The paper highlights the pros and cons of using blockchain for such a proposal from practical point view in both development/deployment and usage contexts. Concluding the paper with a potential roadmap for blockchain technology to be able to support complex applications.
I. INTRODUCTION
The paper frames blockchain-based e-voting as a response to voter apathy and as a way to support transparent, private, auditable elections. It proposes a protocol intended to satisfy fundamental e-voting properties while retaining decentralisation and voter choice alteration.
- Increasing voter apathy, particularly among younger technology-savvy people, motivates e-voting as a potential way to attract voters.
- Robust e-voting schemes require transparency, accuracy, auditability, integrity, privacy, availability, and distributed authority.
- Blockchain provides distributed ledgers without a single controlling authority, while allowing network agreement on transactions and user anonymity.
- Blockchain e-voting is associated with transparency, anonymity, security, reliability, and immutability, but existing work underexplores large-scale implementation challenges.
- The paper proposes a blockchain e-voting scheme designed around fundamental properties, decentralisation, and voter-controlled alteration of cast votes.
- The design does not actively pursue coercion-resistance because the paper considers it unattainable purely through technology in remote e-voting, offering forgiveness instead.
B. Blockchain e-voting
The proposed scheme targets the fundamental goals of e-voting while allowing voters to replace cast ballots. It seeks maximum decentralisation but retains some centralisation because eligibility and secret identity information cannot be stored directly on the public blockchain.
- Existing blockchain e-voting protocols have been proposed, but questions remain about their internal workings and satisfaction of fundamental properties.
- The protocol is motivated by meeting established e-voting goals while allowing voters to cancel and replace an existing vote.
- The design pursues maximum decentralisation and voter control, but accepts some centralisation as necessary for the primary goal.
- The blockchain acts as a transparent ballot box and is maintained by peer voters in a network controlled by no single entity.
A. Notations and Definitions
The paper defines voters, votes, ballots, commitments, and eligibility tokens for a blockchain voting protocol. Ballots conceal choices through commitments, while a central authority authenticates eligibility.
- The protocol uses a voting client, predefined or protest choices, and digital commitments that conceal choices until counting.
- A central authority authenticates voters and issues eligibility tokens consisting of signatures over the voter’s key and commitment.
- The central authority maintains an eligible-voter list and uses application-dependent authentication information and procedures.
- A vote is a predefined message equivalent to a bitcoin transaction and receives a unique vote ID when recorded on the blockchain.
- A ballot is the digital representation of a physical ballot; it is sealed while its commitment opening remains undisclosed and open after revelation.
- The ballot’s public key identifies its owner pseudonymously and enables the protocol’s alteration-ballot mechanism.
5) Alteration Ballot:
The alteration ballot lets a voter replace a previously cast blockchain vote. It cancels the earlier vote, carries a new signed commitment, and identifies the voter through the public key.
- The alteration ballot enables voters to change votes that have already been cast on the blockchain.
- It cancels a previously existing vote identified by V IDx so that the cancelled vote is excluded from the final result.
- The ballot includes the voter’s public key, which also serves as the signature-validation key.
- It carries a new commitment containing the voter’s replacement choice.
- The protocol is divided into initialisation, preparation, voting, and counting phases.
1) Initialisation phase:
The protocol initialises election rules, voter eligibility infrastructure, and an election-specific blockchain before voters authenticate and prepare signed, committed ballots. It also supports optional vote alteration through ballots linked to the voter's public key.
- Initialisation phase: Election organisers determine protocol-phase durations and whether vote cancellation is permitted, then publicise these rules.
- Initialisation phase: The Central Authority receives eligible-voter information, establishes authentication, and publicises a system-wide signature-verification key.
- Initialisation phase: The genesis block records election-specific information, including the Authority’s validation key and valid choices, tying system parameters to the election.
- Initialisation phase: After authentication, the client generates a pseudonymous public key, obtains the voter’s choice, and creates a digital commitment to that choice.
- Initialisation phase: A blinding function lets the Authority sign the voter’s public key and commitment without directly learning either value.
- Initialisation phase: The protocol can accept an alteration ballot that cancels a previous vote, with repeated cancellations leaving only the final ballot counted.
4) Counting phase:
During counting, voters reveal their final committed choices, while network nodes authenticate opening messages and count the corresponding valid votes. The protocol’s eligibility checks and alteration chain determine which ballot contributes to the final tally.
- Counting phase: Voters broadcast opening messages containing the final vote’s VID, the commitment opening value, and a signature over both.
- Counting phase: Network nodes verify each opening-message signature with the public key associated with the referenced vote before propagating it.
- Counting phase: All peers should reach the same result because they operate on the same blockchain.
- Counting phase: Only ballots with valid Authority signatures are included, so eligible voters can obtain one eligibility token and cast one valid vote.
- Counting phase: The network rejects duplicate votes but accepts a properly signed alteration vote produced by the owner of the vote being cancelled.
- Counting phase: In an alteration chain, the final ballot remains attributable to an eligible voter because successive ballots are provably issued by the same entity.
2) Privacy:
The protocol protects vote privacy by separating commitment from revelation and using blind signatures, while its public ledger enables voters and auditors to verify inclusion and counting. These mechanisms preserve privacy even when voters alter ballots.
- Privacy: The protocol guarantees that no party can determine how a voter voted during the protocol run, except that the Authority may potentially link identity to the pseudonymous public key.
- Privacy: Blind signatures let the Central Authority sign a voter’s commitment and public key without learning either value.
- Privacy: Adding vote alteration does not give the Central Authority additional knowledge or weaken the stated privacy relationship.
- Privacy: Digital commitments and separate voting and counting stages prevent results from becoming known during voting; choices are revealed only during counting.
- Privacy: The public ledger lets each voter verify that their vote was inserted and counted, while external auditors can validate ballots and compare an independently counted result with the official tally.
D. Further considerations
The protocol uses a permissioned blockchain with a trusted certificate authority, while implementation choices reflect platform costs and election-contract requirements.
- Trust and centralisation: The certificate authority is the protocol’s only centralisation point and is assumed to be trusted.A compromised authority could cast undetectable fraudulent votes when some eligible voters abstain.
- Trust and centralisation: Eligibility tokens restrict blockchain participation to voters, making the proposed network permissioned and inherently more secure.
- Implementation choices: The implementation uses a private Ethereum-based network because Ethereum is widely recognised and supports comparison with similar protocols.
- Implementation choices: Ethereum gas costs constrain design choices, although a private network reduces mining incentives while retaining computational expenses.Charging voters for computation raises ethical concerns; a sponsored gateway node is proposed as one possible workaround.
- Election initialization: The genesis contract stores election parameters, candidate choices, phase timings, and validation rules in publicly available contract state.These rules validate ballot timing, signed eligibility tokens, and whether altering ballots are permitted.
2) Voting Phase - Initial Ballot:
The voting phase validates signed eligibility tokens and timing before recording sealed initial or altering ballots, with gas minimisation influencing implementation choices.
- Initial and altering ballots: Voters must obtain a certificate-authority-signed token and submit its component parts to place a ballot on the blockchain.The protocol avoids separating the token on-chain because that operation costs too much gas.
- Initial and altering ballots: Initial ballot placement requires a valid token and a submission before the election end time.
- Initial and altering ballots: Each initial ballot records a candidate choice and unique VID, then is sealed with no retrieval timestamp.The VID prevents multiple non-altering ballots from being placed by one voter.
- Initial and altering ballots: Altering ballots additionally identify the previous ballot being replaced, while their legitimacy is deferred until the counting phase.The deferred validation partly reflects limited Solidity support for the required operation.
- Initial and altering ballots: Altering ballot placement checks the signed token, election end time, and whether the election permits ballot alteration before creating a sealed contract.
4) Counting Phase:
After the election ends, ballots are retrieved and unsealed, altering-ballot references are checked, and every private-blockchain node can independently verify the final count.
- Counting: Counting begins only after the election concludes, when votes are retrieved from their ballot contracts.
- Counting: The first retrieval marks a ballot unsealed and records the retrieval time.
- Counting: The public VID and any replaced-ballot VID allow altering ballots to be validated before the vote is counted.
- Counting: Every private-blockchain node can access the ballot information and independently verify the final count.
5) Challenging The Count:
The protocol exposes ballot state and unsealing timestamps so blockchain nodes can investigate whether ballots were opened early or excluded from the count.
- Challenge mechanism: Nodes can retrieve a ballot’s sealed state and unsealed timestamp from the publicly readable blockchain information.
- Challenge mechanism: These records can support challenges concerning early ballot opening or omission from the count.
- Scope and outlook: The paper presents blockchain e-voting as promising but identifies current platform shortcomings for complex applications and suggests two paths forward.