Paper 2015/1007

How to Vote Privately Using Bitcoin

Zhichao Zhao and T-H. Hubert Chan


Bitcoin is the first decentralized crypto-currency that is currently by far the most popular one in use. The bitcoin transaction syntax is expressive enough to setup digital contracts whose fund transfer can be enforced automatically. In this paper, we design protocols for the bitcoin voting problem, in which there are n voters, each of which wishes to fund exactly one of two candidates A and B. The winning candidate is determined by majority voting, while the privacy of individual vote is preserved. Moreover, the decision is irrevocable in the sense that once the outcome is revealed, the winning candidate is guaranteed to have the funding from all n voters. As in previous works, each voter is incentivized to follow the protocol by being required to put a deposit in the system, which will be used as compensation if he deviates from the protocol. Our solution is similar to previous protocols used for lottery, but needs an additional phase to distribute secret random numbers via zero-knowledge-proofs. Moreover, we have resolved a security issue in previous protocols that could prevent compensation from being paid.

Available format(s)
Publication info
Published elsewhere. Minor revision. ICICS2015
Contact author(s)
zczhao @ cs hku hk
2015-10-16: received
Short URL
Creative Commons Attribution


      author = {Zhichao Zhao and T-H.  Hubert Chan},
      title = {How to Vote Privately Using Bitcoin},
      howpublished = {Cryptology ePrint Archive, Paper 2015/1007},
      year = {2015},
      note = {\url{}},
      url = {}
Note: In order to protect the privacy of readers, does not use cookies or embedded third party content.