论文标题
使用ZK-SNARKS的无争议可扩展投票网络
Dispute-free Scalable Open Vote Network using zk-SNARKs
论文作者
论文摘要
公开投票网络是一种适合董事会选举的自定义分散的电子投票协议。目前,它具有两个基于以太坊的实现:McCorry等人的第一个具有可扩展性问题,因为所有计算均在链上进行。 Seifelnasr等人的第二个实施方法通过以可验证的方式将重量计算的一部分分配给非链不信任的管理员,从而部分解决了此问题。作为副作用,第二次实施并非无争议。需要一个调用纠纷阶段,当管理员作弊(即宣布错误的统计结果)时,观察者会中断协议。在这项工作中,我们提出了一种新的智能合同设计,以通过(i)对所有重型计算进行链链偏离链,从而实现较高的可扩展性,以及(ii)利用零知识简洁的知识(ZK-SNARK)来验证偏离脑介质计算的正确性,以验证质量验证,以验证验证型号,以验证质量的正确性。为了证明我们的设计有效性,我们开发了对以太坊的原型实施,并为不同的实施方案进行了多个实验,这些实施方案显示了ZK-SNARK证明生成时间与智能合约气体成本之间的权衡,其中包括智能合同消耗恒定数量的气体数量的实施,独立于选民的数量。
The Open Vote Network is a self-tallying decentralized e-voting protocol suitable for boardroom elections. Currently, it has two Ethereum-based implementations: the first, by McCorry et al., has a scalability issue since all the computations are performed on-chain. The second implementation, by Seifelnasr et al., solves this issue partially by assigning a part of the heavy computations to an off-chain untrusted administrator in a verifiable manner. As a side effect, this second implementation became not dispute-free; there is a need for a tally dispute phase where an observer interrupts the protocol when the administrator cheats, i.e., announces a wrong tally result. In this work, we propose a new smart contract design to tackle the problems in the previous implementations by (i) preforming all the heavy computations off-chain hence achieving higher scalability, and (ii) utilizing zero-knowledge Succinct Non-interactive Argument of Knowledge (zk-SNARK) to verify the correctness of the off-chain computations, hence maintaining the dispute-free property. To demonstrate the effectiveness of our design, we develop prototype implementations on Ethereum and conduct multiple experiments for different implementation options that show a trade-off between the zk-SNARK proof generation time and the smart contract gas cost, including an implementation in which the smart contract consumes a constant amount of gas independent of the number of voters.