Cryptology ePrint Archive: Report 2020/033

Scalable Open-Vote Network on Ethereum

Mohamed Seifelnasr and Hisham S. Galal and Amr M. Youssef

Abstract: McCorry et al. (Financial Cryptography 2017) presented the first implementation of a decentralized self-tallying voting protocol on Ethereum. However, their implementation did not scale beyond 40 voters since all the computations were performed on the smart contract. In this paper, we tackle this problem by delegating the bulk computations to an off-chain untrusted administrator in a verifiable manner. Specifically, the administrator tallies the votes off-chain and publishes a Merkle tree that encodes the tallying computation trace. Then, the administrator submits the Merkle tree root and the tally result to the smart contract. Subsequently, the smart contract transits to an intermediate phase where at least a single honest voter can contend the administrator's claimed result if it was not computed correctly. Then, in the worst case, the smart contract verifies the dispute at the cost of an elliptic curve point addition and scalar multiplication, and two Merkle proofs of membership which are logarithmic in the number of voters. This allows our protocol to achieve higher scalability without sacrificing the public verifiability or voters' privacy. To assess our protocol, we implemented an open-source prototype on Ethereum and carried out multiple experiments for different numbers of voters. The results of our implementation confirm the scalability and efficiency of our proposed solution which does not exceed the current block gas limit for any practical number of voters.

Category / Keywords: applications / Ethereum, Voting, Smart Contract

Original Publication (in the same form): 4th Workshop on Trusted Smart Contracts in Association with Financial Cryptography 2020

Date: received 12 Jan 2020, last revised 8 Feb 2020

Contact author: h_galal at encs concordia ca

Available format(s): PDF | BibTeX Citation

Version: 20200208:165402 (All versions of this report)

Short URL:

[ Cryptology ePrint archive ]