a16z :Cicada 利用时间锁谜题和零知识证明实现链上投票
编译:Lynn,MarsBit
所有无论以何种有意义的方式运作的投票系统都依赖于完整性和透明度。从表面上看,这使得区块链成为构建这些系统的理想平台——事实上,许多去中心化的组织已经接受了无许可投票来表达集体意图,通常是在挥舞大量财富或调整关键协议参数的情况下。但是链上投票也有缺点,隐私仍未被探索和开发,对 Web3 投票系统不利——在目前使用的大多数链上投票协议中,选票和投票结果是完全公开的。如果没有隐私,投票结果很容易被操纵和选民激励错位,可能会导致不民主的结果。
在这篇文章中,我们调查了投票隐私的情况,并提供了关于 Cicada 如何工作的高层次描述(正式的证明即将到来)。我们还鼓励开发者查看GitHub 仓库——Cicada 可以通过许多方式进行调整和扩展,以支持不同的投票方案和功能,我们希望与社区合作,探索这些可能性。
在任何投票系统(链上或其他)中,有许多不同层次的隐私需要考虑。个别选票的披露、运行中的计票和选民身份都会以不同方式影响选民的积极性。哪些隐私属性是必要的,取决于投票的背景。在密码学和社会科学文献中经常出现的几个:
Cicada 专注于正在进行中计票隐私,但(正如我们在后面讨论的)它可以与零知识组成员证明联合,以达成选民的匿名性和选票隐私。
为了实现正在进行中计票的隐私,Cicada 利用了(据我们所知)以前从未在链上使用过的密码学基元。
其次,一个同构的时间锁谜题(Malavolta Thyagarajan, 2019)具有额外的属性,即在知道秘密密钥、解密谜题或使用后门的情况下,对加密值的一些计算是可能的。特别是,一个线性同态的时间锁谜题允许我们将谜题组合在一起,产生一个新的谜题,封装了原始谜题的秘密值的总和。
要使投票方案在链上实用,还需要考虑几个问题。首先,攻击者可能会试图通过投一个不正确的编码的选票来操纵投票。例如,我们可能希望每张选票的时间锁谜题都编码为一个布尔值:“1”表示支持被投票的提案,“0”表示反对。一个热心的提案支持者可能会试图编码,例如“100”来扩大他们的有效投票权。
为了使证明尽可能高效,我们使用了定制的sigma协议——为特定代数关系设计的零知识证明,而不是通用的证明系统。这使得证明者的时间非常快:用 Python 生成一个选票有效性证明,在一台现成的笔记本电脑上需要 14ms.
使用 ElGamal 的一个缺点是解密计数的最后一步需要暴力破解离散日志(请注意,这是在链下完成并在链上有效验证)。因此,它仅适用于预期的最终票数相当小的情况(例如小于 2^32,或大约 430 万票)。在最初的基于 Paillier 的方案中,无论其大小如何,计数都可以被有效地解密。
如上所述,Cicada 提供了运行计票隐私——时间锁定谜题属性在投票期间保持计票的私密性。然而,每个单独的选票也是一个时间锁难题,在相同的公共参数下加密。这意味着就像可以解密计数(通过执行必要的计算)一样,每张选票也可以。换句话说,Cicada 仅在投票期间保证选票隐私——如果好奇的观察者希望解密特定选民的选票,他们可以这样做。解密任何个人选票与解密最终计票一样昂贵,因此天真地需要 O(n) 的工作来完全解密有 n 名选民的选票。但是所有这些选票都可以并行解密(假设有足够多的机器),花费的挂钟时间与解密最终计票所需的时间相同。
在我们的存储库中,我们包含一个使用Semaphore进行选民匿名的示例合约。但是请注意,Cicada 合约本身没有对如何确定或执行选民资格做出任何假设。特别是,您可以将 Semaphore 替换为例如 Semacaulk 或 ZK 状态证明(如此处和此处所建议的)。
我们在设计 Cicada 时的首要任务之一是避免需要统计机构:许多私人投票结构需要一个半信任的统计机构(或授权委员会,通过安全的多方计算进行协调)接收和汇总选票。在区块链环境中,这意味着这些方案不能仅由智能合约执行,需要一些人为干预和信任。
尽管在许多现实世界的场景中,统计当局是一个合理(且必要)的假设,但它们在区块链环境中并不理想,我们的目标是最大限度地减少信任并确保审查阻力。
还有机会调整 Cicada 以支持不同的投票方案(例如代币加权投票、二次投票)——更复杂的方案对于以太坊主网来说可能计算成本太高,但它们在 L2 上可能是实用的。考虑到这一点,我们欢迎您就下一步将 Cicada 带到哪里做出贡献、分叉和建议。
(责任编辑:市场数据)
-
三、使用温馨和柔和的暖色风格 粉色在网站中在女性用户中占据很重要的位置,女性在选择颜色中对于暖色很偏爱,这可能对于女性喜欢被宠爱有关。...[详细]
-
交易型B2B如此,服务型也是如此。...[详细]
-
几经波折,网易科技联系上了友友用车的联合创始人李宇。...[详细]
-
10月31日农银行业领先混合净值下跌0.54%,近1个月累计下跌5.74%
比如关键词‘国足’,其在3月23日比赛之前,其微信指数情况一直平稳,但在3月23号期间其指数已在攀升,在3月24日,有关‘国足’的指数达到顶峰...[详细]
-
现场提问:人工智能是否会把现在写字的人取代? Keso:我们所说的人工智能,会通过不同的形式体现出来,比如无人驾驶、有稿件套路模板的写稿机器人,但如果让机器去写《百年孤独》,我觉得是有待商榷的。...[详细]
-
”这些他所掌握的游戏生态里的种种运作和沟通技巧,在创业后也得到了集中释放。...[详细]
-
这个数值一出来,就给SEOer们下个套,在今后写文章时都会刻意跟随这个优化密度。...[详细]
-
其实关于刷点击排名,如果能够真正的做到点击的真实性模拟或者软件参数设置得当,排名会非常稳定。...[详细]
-
六、产品运营分析 俗话说,一个统治级的产品出现需要三架马车,分别是产品、运营以及运气,这一节我们就来分析分析《王者荣耀》这个好的产品形态做出来之后,团队采取的推广和运营的策略。...[详细]
-
如果这时候是你,你会做出哪种选择?还是你有第三种选择? 但事实却是,《王者荣耀》团队做出了第二种选择,他们放弃不了手机端的社交特性和多年来手机游戏培养出的更加广大的小白和女性用户群体,也不会忽视...[详细]