Secure internet voting using distributed networks

There is no doubt, that traditional paper-based voting still lags behind government digitalization. Analysis of this area quickly reveals several unsolved issues.

Voting is one of the most popular mechanisms for collective decision-making, prevalent in all types of communities; from housing associations and board members, through domestic presidential elections, to all forms of global voting that take place on the internet.

The act of voting can occur in different ways including paper-based precinct voting, mail-in ballots, electronically using DRE voting machine and internet voting.

Of all of them, internet voting is the most conventional, cheapest, fastest, safest (e.g. during the outbreak of COVID-19), and hence, a desirable method for conducting voting.

Internet voting can not only increase turnout and the frequency of votings, but most importantly it can catalyze the further development of modern democracy. Enabling practical applications of direct democracy, liquid democracy, and all other sorts of voting methods like Approval voting, Alternative vote, Score voting, and many others [1].

Visions of smart cities, crypto cities [2], Decentralised Autonomous Organisations [3], and other forms of algorithmic governance [4] rely on the existence of internet voting, so there is a high demand for such systems.

Online voting is often compared to online banking. Admittedly, online voting requires much higher security than online banking. Many researchers and experts in the field doubt the possibility of conducting public voting over the internet [5]–[10]. The resistance lies—among others—in insufficient confidence in the technology and a need for trust in the authorities controlling the voting process.

“Blockchain voting is overrated among uninformed people but underrated among informed people,” says Vitalik Buterin, the founder of Ethereum, suggesting more optimism in academia about internet voting [11].

Vitalik Buterin proposed the concept of MACI which is a base layer for coercion-resistant, secure, and private internet voting [12].

The system struggles with strong assumptions about the existence of a trusted-third party coordinator and is based on the Ethereum blockchain, which—due to high transaction costs and low throughput—may not be acceptable in practical uses.

My research aims to solve the problem of internet voting by employing blockchain [13], MPC [14], and co-zkSNARK [15] on a distributed network consisting of voters’ smartphones. Resulting in an internet voting protocol that achieves security, integrity, coercion-resistance, and privacy, without any trusted third party.

Figure 1 presents a big picture of the proposed solution. Figures 2, 3, and 4 illustrate the following voting phases: 

I will investigate issues related to trust models, BFT consensus algorithms, scalability, and practical applications of all mentioned components.

As Internet voting may not be the current topic of Meta research interest, MPC and zkSNARK are technologies enabling computation on private data. This may be especially important for Meta which operates on sensitive personal data.

Being a Meta fellow will accelerate my research and help me meet other ambitious researchers, leading to fruitful collaborations.

Figure 1: Overview of the proposed system
Figure 2: Setup phase, voters jointly generating encryption key
Figure 3: Voting phase, voters casting votes to the blockchain
Figure 4: Tally phase, voters jointly decrypting, counting and publishing results (along with the zkSNARK) to the blockchain.

References

[1] J.-F. Laslier, “And the loser is… Plurality Voting,” Jul-2011 [Online]. Available: https://hal.archives-ouvertes.fr/hal-00609810. [Accessed: 17-Sep-2022]

[2] V. Buterin, “Crypto Cities,” 2021. [Online]. Available: https://vitalik.ca/general/2021/10/31/cities.html. [Accessed: 22-Aug-2022]

[3] S. Wang, W. Ding, J. Li, Y. Yuan, L. Ouyang, and F.-Y. Wang, “Decentralized Autonomous Organizations: Concept, Model, and Applications,” IEEE Transactions on Computational Social Systems, vol. 6, no. 5, pp. 870–878, Oct. 2019, doi: 10.1109/TCSS.2019.2938190.

[4] “Government by algorithm,” Wikipedia. 18-Aug-2022 [Online]. Available: https://en.wikipedia.org/w/index.php?title=Government_by_algorithm&oldid=1105084102. [Accessed: 22-Aug-2022]

[5] S. Park, M. Specter, N. Narula, and R. L. Rivest, “Going from bad to worse: From internet voting to blockchain voting,” Journal of Cybersecurity, vol. 7, no. 1, p. tyaa025, 2021.

[6] L. Mearian, “Why blockchain-based voting could threaten democracy,” 12-Aug-2019. [Online]. Available: https://www.computerworld.com/article/3430697/why-blockchain-could-be-a-threat-to-democracy.html. [Accessed: 30-Aug-2022]

[7] S. Shankland, “No, blockchain isn’t the answer to our voting system woes,” 2018. [Online]. Available: https://www.cnet.com/news/privacy/blockchain-isnt-answer-to-voting-system-woes/. [Accessed: 30-Aug-2022]

[8] T. B. Lee, “Blockchain-based elections would be a disaster for democracy,” 06-Nov-2018. [Online]. Available: https://arstechnica.com/tech-policy/2018/11/blockchain-based-elections-would-be-a-disaster-for-democracy/. [Accessed: 30-Aug-2022]

[9] B. Schneier, “On Blockchain Voting,” 2020. [Online]. Available: https://www.schneier.com/blog/archives/2020/11/on-blockchain-voting.html. [Accessed: 30-Aug-2022]

[10] B. Schneier, “Blockchain and Trust,” 2019. [Online]. Available: https://www.schneier.com/blog/archives/2019/02/blockchain_and_.html. [Accessed: 30-Aug-2022]

[11] V. Buterin, “Blockchain voting is overrated among uninformed people but underrated among informed people,” 2021. [Online]. Available: https://vitalik.ca/general/2021/05/25/voting2.html. [Accessed: 22-Aug-2022]

[12] V. Buterin, “Minimal anti-collusion infrastructure - Applications,” 04-May-2019. [Online]. Available: https://ethresear.ch/t/minimal-anti-collusion-infrastructure/5413. [Accessed: 30-Aug-2022]

[13] S. Barański, J. Szymański, A. Sobecki, D. Gil, and H. Mora, “Practical I-Voting on Stellar Blockchain,” Applied Sciences, vol. 10, no. 21, p. 7606, Oct. 2020, doi: 10.3390/app10217606. [Online]. Available: https://www.mdpi.com/2076-3417/10/21/7606. [Accessed: 19-Jul-2022]

[14] D. Evans, V. Kolesnikov, and M. Rosulek, “A pragmatic introduction to secure multi-party computation,” Foundations and Trends® in Privacy and Security, vol. 2, no. 2–3, pp. 70–246, 2018.

[15] A. Ozdemir and D. Boneh, “Experimenting with Collaborative zk-SNARKs: Zero-Knowledge Proofs for Distributed Secrets.” 2021 [Online]. Available: https://eprint.iacr.org/2021/1530. [Accessed: 29-Aug-2022]