Modulo-P 开放 Cardano 零知识工具集,用于匿名投票和隐私应用
这套开源栈结合了 Cardano-Semaphore、私密投票、Proof of Innocence 以及可复用的设置基础设施,降低了在 Cardano 上构建零知识应用所需的密码学基础工作量。
By SongMarketCap
Modulo-P 发布了一套开源零知识技术栈,Cardano 开发者可以用来构建匿名成员资格、私密投票和保护隐私的合规应用。Agustín Salinas 在 7 月 10 日的 Cardano Developers Office Hours #68 上介绍了这项工作,回顾了其从早期的 Plutus V2 和 Hydra 实验,发展到可复用的 Aiken 合约与共享的密码学设置基础设施的过程。
这些组件并非一个单一的面向消费者产品。它们提供独立的构建模块,开发者可以将其集成到需要身份、成员资格或交易属性证明的应用中,同时不暴露底层的私人数据。
Cardano-Semaphore 将匿名成员资格引入 Aiken
Modulo-P 于 2023 年开始在 Cardano 上尝试零知识证明,那时网络尚未具备用于高效验证的 Plutus 原语,Aiken 也还未成熟为广泛使用的智能合约语言。
团队的第一个验证器体量大且计算开销高,使得 Cardano 第一层不适合最初的实现。开发随后转移到 Hydra,在那里 Modulo-P 创建了 Mastermind 的零知识版本,使参与者可以在不揭示隐藏组合的情况下证明线索的有效性。
随后,Plutus V3 引入了原生的 BLS12-381 密码学函数,Aiken 显著缩短了编译与开发周期。Modulo-P 借助这些能力发布了 ak-381,即基于 Aiken 的 Groth16 验证器实现,随后又发布了 Cardano-Semaphore。
Semaphore 是最初在 Ethereum 生态中开发的零知识协议。它允许用户在不透露其具体身份的情况下,证明自己属于某个定义好的群组。
Cardano-Semaphore 通过 Aiken 智能合约实现了这一模型。经过验证的成员可以提交匿名信号,表示投票、偏好、消息或其他特定于应用的输入。该协议会检查发送者是否持有有效的私有身份、是否属于授权群组,并且是否尚未提交过同类型的信号。
这一实现为 Cardano 应用提供了可复用的隐私层,而不再需要每个团队各自设计匿名成员资格与防重复逻辑。潜在用例包括私密调研、组织决策、匿名背书以及需要限制参与但又不将每次操作公开关联到钱包或身份的治理系统。
私密投票与 Proof of Innocence 将这些工具付诸实践
Modulo-P 已将 Cardano-Semaphore 用作投票应用的基础,该应用运行在 Cardano 的 Preprod 环境中。
当前的实现支持一人一票模型。参与者证明自己属于合格群组,投下匿名选票,并对所提交的选择进行承诺,同时不暴露是哪一位注册成员作出的选择。
Salinas 表示,该架构也可以适配加权投票和不同的问题形式。这些配置取决于各个应用如何定义群组成员资格、投票权以及每个投票窗口的规则。
该投票应用延续了早先的 Project Catalyst 计划,该计划资助了在 Cardano 上实现 Semaphore 和匿名信号的工作。Fund 11 项目获得了 100,000 ADA 的资助,并被标注为已完成,其产出设计为完全开源。
第二个应用 Proof of Innocence 由 ENCOINS、Modulo-P 与 Eryx Cooperative 共同开发。
Proof of Innocence 允许用户在不披露用于生成证明的具体交易、来源地址或私密历史的情况下,证明其资金未与一组被定义为恶意的交易相关联。
隐私协议可以在用户提取资金时应用这一机制。用户无需公开完整的交易路径,而是生成一个零知识证明,表明相关的存款或承诺并未包含在该协议的黑名单中。
Project Catalyst 为该计划分配了 150,000 ADA。该项目被标注为已完成,涵盖研究、零知识电路、智能合约、测试和最终文档。其产出仍是概念验证,而非可用于生产的合规服务。
这一区分对评估代码的开发者很重要。该实现演示了选择性验证在 Cardano 上如何工作,但商业化部署仍需要经过审计的合约、可靠的数据源、清晰定义的黑名单治理,以及与处理私密交易的应用进行集成。
可复用的 Powers of Tau 参数降低了 ZK 设置工作量
Groth16 等高效证明系统在应用能够安全生成与验证证明之前,需要进行可信设置。
在 Powers of Tau 仪式中,多位参与者向一组共享的密码学参数贡献保密的随机性。每位参与者在其贡献被纳入后都必须销毁其私密贡献。只要至少有一位贡献者诚实地完成该过程,最终产出就能保持安全,因为没有任何一方可以重构完整的秘密。
Modulo-P 与 ENCOINS 举办了一场面向 Cardano 的 Powers of Tau 仪式,约有 40 位社区成员参与。Salinas 表示,按顺序进行的贡献过程持续了大约 20 天。
该计划通过 Project Catalyst 获得了 87,141 ADA,完成了四个里程碑,涵盖准备、仪式执行、公共门户与最终交付。由此产生的参数可被兼容的 Cardano 应用重复使用,从而无需为每个新电路重复进行设置的第一阶段。
Groth16 应用仍然需要与其特定电路绑定的第二阶段设置。来自 Cardano 与 Ethereum 零知识社区的贡献者正在开发 Brebaje,以简化该阶段。
这一与协议无关的工具旨在帮助团队创建仪式、协调贡献、公布参与者记录,并保留可审计的过程账目。Brebaje 仍在积极开发中,尚未成为完善的生产级服务。
Modulo-P 目前优先完善文档、安全审查与更易用的开发者工作流,而不是持续扩展实验性工具的数量。Cardano 团队已经可以从公开的 Groth16 验证器代码、Cardano-Semaphore 合约、已完成的 Proof of Innocence 参考实现以及可复用的第一阶段参数入手。剩余工作因应用而异,包括电路设计、任何所需的第二阶段仪式、审计与生产集成,而无需重建完整的零知识基础。