Abstract:
Remote voting has become more critical in recent years, especially after the Covid-19 outbreak. Blockchain technology and its benefits like decentralization, se curity, and transparency have encouraged remote voting systems to use blockchains. Analysis of existing solutions reveals that anonymity, robustness, and scalability are common problems in blockchain-based election systems. In this thesis, we propose ElectAnon, a blockchain-based, ranked-choice election protocol focusing on anonymity, robustness and scalability. ElectAnon achieves anonymity via zero-knowledge proofs. Robustness is realized by removing the direct control of the authorities in the voting process. Scalability is ensured by treating each ranked-choice ballot as a permutation list, then encoded into a single integer that can be efficiently stored. The proposed protocol includes a candidate proposal system to provide an end-to-end election solu tion. We also discuss three different extensions in this thesis. The Multiple Elections extension provides a mechanism to use the same set of voters for multiple elections. The Merkle Forest extension minimizes the trust assumption on election authorities in exchange for a decrease in scalability. The Assisted Merkle Tree extension offers just the opposite tradeoff by increasing scalability in favor of requiring external assistance from authorities. ElectAnon is implemented using Ethereum smart contracts and a zero-knowledge gadget, Semaphore. The implementation includes two different sophis ticated tallying methods, Borda Count and Tideman. Results show that ElectAnon is capable of running feasibly with up to 100,000 voters and reduces the gas consumption up to 89% compared to previous works.