1. 引言
Cicada为A16z团队以Solidity实现的链上隐私投票协议。
论文见:
- Noemi Glaeser等人2023年9月论文 Cicada: A framework for private non-interactive on-chain auctions and voting
开源代码见:
- https://github.com/a16z/cicada(Solidity+Foundry开发工具)
Cicada采用2019年论文 Homomorphic Time-Lock Puzzles and Applications的线性同态时间锁谜题(linearly-homomorphic time-lock puzzle)方案。
所谓time-lock puzzle,是指:
- 在某密码学谜题中包含了某秘密,该秘密可通过执行 T T T步(不可并行化)的计算来恢复。
- 具有running-tally privacy属性,用于投票系统中,可将用户选票看成是puzzle,确保在选举过程中在统计投票结果时不会泄露选票信息。用户在投票时不受其它已投票影响。
homomorphic time-lock puzzle是指在time-lock puzzle基础之上额外引入了线性同态属性。可将2个puzzle相加合并为一个puzzle。
与传统投票机制相比,Cicada具有的关键优势为:
- 高效
- 匿名与选民资格
- Tallying Authorities(计数机构)
参考资料
[1] 2023年5月博客 A First Look at Cicada: A16Z’s Library for On-Chain Voting
[2] 2019年论文 Homomorphic Time-Lock Puzzles and Applications
[3] 2023年5月博客 Building Cicada: Private on-chain voting using time-lock puzzles