Implement Liquid Democracy on Ethereum: A Fast Algorithm for Realtime Self-tally Voting System

We study the liquid democracy problem, where each voter can either directly vote to a candidate or delegate his voting power to a proxy. We consider the implementation of liquid democracy on the blockchain through Ethereum smart contract and to be compatible with the realtime self-tallying property, where the contract itself can record ballots and update voting status upon receiving each voting massage. A challenge comes due to the gas fee limitation of Ethereum mainnet, that the number of instruction for processing a voting massage can not exceed a certain amount, which restrict the application scenario with respect to algorithms whose time complexity is linear to the number of voters. We propose a fast algorithm to overcome the challenge, such that i) shifts the on-chain initialization to off-chain and ii) the on-chain complexity for processing each voting massage is O(\log n), where n is the number of voters.

[1]  James C. Miller A program for direct and proxy voting in the legislative process , 1969 .

[2]  Ketan Mulmuley,et al.  Computational geometry - an introduction through randomized algorithms , 1993 .

[3]  Burt L. Monroe,et al.  The Principles of Parliamentary Representation , 1996 .

[4]  Rebecca B. Morton,et al.  Primary Election Systems and Representation , 1998 .

[5]  Aggelos Kiayias,et al.  Self-tallying Elections and Perfect Ballot Secrecy , 2002, Public Key Cryptography.

[6]  B. Harris,et al.  Black Box Voting: Ballot Tampering in the 21st Century , 2003 .

[7]  Dan S. Wallach,et al.  Hack-a-vote: Security issues with electronic voting systems , 2004, IEEE Security & Privacy Magazine.

[8]  Dan S. Wallach,et al.  Analysis of an electronic voting system , 2004, IEEE Symposium on Security and Privacy, 2004. Proceedings. 2004.

[9]  Thad Kousser,et al.  Does Voting by Mail Increase Participation? Using Matching to Analyze a Natural Experiment , 2007, Political Analysis.

[10]  Sarah Birch,et al.  Full Participation: A Comparative Study of Compulsory Voting , 2009 .

[11]  Satoshi Nakamoto Bitcoin : A Peer-to-Peer Electronic Cash System , 2009 .

[12]  Markus Schulze,et al.  A new monotonic, clone-independent, reversal symmetric, and condorcet-consistent single-winner election method , 2011, Soc. Choice Welf..

[13]  Alois Paulin,et al.  Through Liquid Democracy to Sustainable Non-Bureaucratic Government Harnessing the Power of ICTs for a Novel Form of Digital Government , 2014 .

[14]  Daniel Davis Wood,et al.  ETHEREUM: A SECURE DECENTRALISED GENERALISED TRANSACTION LEDGER , 2014 .

[15]  Steven Hardt,et al.  Google Votes: A Liquid Democracy Experiment on a Corporate Social Network , 2015 .

[16]  Christian Blum,et al.  Liquid Democracy : Potentials, Problems, and Perspectives , 2016 .

[17]  Davide Grossi,et al.  Binary Voting with Delegable Proxy: An Analysis of Liquid Democracy , 2017, TARK.

[18]  Feng Hao,et al.  A Smart Contract for Boardroom Voting with Maximum Voter Privacy , 2017, IACR Cryptol. ePrint Arch..

[19]  Budi Rahardjo,et al.  Blockchain based e-voting recording system design , 2017, 2017 11th International Conference on Telecommunication Systems Services and Applications (TSSA).

[20]  Mohammad Hamdaqa,et al.  Blockchain-Based E-Voting System , 2018, 2018 IEEE 11th International Conference on Cloud Computing (CLOUD).

[21]  Xun Yi,et al.  Decentralized Voting: A Self-tallying Voting System Using a Smart Contract on the Ethereum Blockchain , 2018, WISE.

[22]  Ariel D. Procaccia,et al.  Liquid Democracy: An Algorithmic Perspective , 2018, AAAI.

[23]  Nimrod Talmon,et al.  Pairwise Liquid Democracy , 2018, IJCAI.

[24]  B. Stiller,et al.  Smart Contracts – Blockchains in the Wings , 2018 .