Ethereumtrac投票的库。 风险投资公司 Andreessen Horowitz(俗称 A16z)提供了以太坊的Ethereum投票 Solidity 库 该图书馆以“Cicada”的名义对投票地点的选择保密,直到投票结束为止。
使用 A16z 的“Cicada”库在Ethereum上进行匿名投票
根据博客文章当与 Semaphore 等零知识团体会员系统配合使用时,它还可以使选民的身份dent
Zhu 表示,Cicada 使用时间锁谜题,这是一种密码学,使用户能够加密个人价值,这些价值只有在预定时间后才能解密。
自 1996 年起,这些谜题就已上市。 然而,在 2019 年之前,他们会要求用户在该期限过后披露他们的价值观。 这干扰了投票系统对下线前提交选票的用户所投的所有选票进行统计的能力。
两位密码学家 Giulio Malavolta 和 Aravind Thyagarajan 在 2019 年提出了“同态”时间锁谜题的想法。这使得将谜题组合成一个比不同谜题总和更容易解决的谜题成为可能。 最后的谜题只能通过了解各个值的总和而不是各个值来解决。
A16z 帖子声称,Cicada 使用这些同态问题来trac投票,即使用户不在线也是如此。
Cicada实现零知识证明验证,保护投票完整性
区块链时遇到了挑战:每个选项都必须编码为布尔值“1”或“0”。 因此,攻击者可以尝试通过不正确地编码投票来增强投票强度,例如,将“100”编码为值。
帖子称,为了解决这个问题,Cicada 要求每张选票都附有其合法性的零知识证明。 在不公开投票内容的情况下,证明表明投票已被适当编码。
只有在进行投票时,选票才能被蝉掩盖。 在“投票结束”或锁定期结束后,通过暴力破解谜语的答案,任何人都可以发现投票结果。
然而,据 A16z 称,Cicada 可以与 Semaphore、Semacaulk 等零知识组成员系统或零知识状态证明结合使用,以缓解这个问题。 通过暴力破解谜题只能证明有效选民投票了; 它不会显示用于验证选民资格的身份证明dent。
Zhu 将 URL 发送到一个示例 Cicadatrac,该合约使用 Semaphore 来验证选民资格作为说明。
去中心化自治组织(DAO)是经常监督区块链应用程序的管理机构,长期以来一直在其结构中纳入投票方法。 然而,由于 DAO 通常使用代币来代表投票,如果用户控制大量代币,他们的权力可能会过多。
例如,5 月 22 日,一名黑客通过对一项邪恶提案进行额外投票,获得了 Tornado Cash的控制权,然后利用该提案从治理trac中抽走了所有资金。 后来,攻击者提出将控制权归还给用户。
Waves 创始人萨沙·伊万诺夫 (Sasha Ivanov) 提出,如果要防止此类治理黑客行为,DAO 必须转向更民主的投票方式。 朱在推特上承认,链上投票“尚未为高风险的现实世界用例做好准备”,但他对进一步发展表示乐观。
许多区块链项目现在都具有依赖于链上投票的治理结构。 例如,稳定币项目 Maker 采用链上投票来选择其储备的构成和其他决策。 相比之下,Uniswap 和其他DeFi平台使用链上治理来决定部署哪些区块链。
A16z 与 Rollup Client Magi 携手加入 Optimism Collective
加密货币风险投资基金A16z 用 Rust 开发的汇总客户端(共识层)是 a16z 的最新产品,代表该公司进入 Optimism Collective。
Magi 作为共识客户端,向Ethereum执行层的执行客户端提供新的区块,以推动链的发展。 Magi 的dent创建是为了增加 rollup 的客户端多样性并替换操作节点。 此外,a16z 团队打算通过新的同步技术、对备用数据可用性层的支持、trac不安全头(未确认的块)以及更好的框架来增强 Magi。
a16z 团队希望 Magi 即使是一种新颖的方法,在经过几个月的开发后也能成为 op-node 的可行替代品。 Op 节点是 Op Labs 支持的基于 Go 的 Roller 客户端实现。