VEIL:为基于哈希的证明系统添加零知识属性

VEIL是一种编译器,为基于哈希的证明系统添加零知识属性,仅增加约3%的证明者时间、22%的验证者时间和12%的证明大小。它通过解耦哈希操作与代数运算,对哈希部分进行轻量级盲化,并用内部零知识证明保护小规模代数交互,避免了完整证明系统重写或昂贵的封装方法。VEIL完全基于哈希,使得结果协议在底层系统后量子安全的前提下具备后量子安全性。文章以SP1为例,展示了VEIL如何替代现有的Groth16封装,消除椭圆曲线依赖,推动证明系统迈向完全后量子安全。

博客/VEIL: 为哈希证明系统添加零知识

VEIL: 为哈希证明系统添加零知识

VEIL 为哈希证明系统添加零知识,仅增加 3% 的证明时间。

作者: Rahul Dalal Tamir Hemo

我们构建了 VEIL,一个为哈希证明系统添加零知识的编译器,开销仅约 3%。这消除了对椭圆曲线密码学的另一项依赖,使 SP1 等证明系统走向完全后量子安全。

我们在下文分享其工作原理。

什么是 VEIL

SP1 这样的现代证明系统是为简洁性而设计的。验证者可以快速检查复杂计算是否与一个短证明匹配。这在验证速度至关重要的情况下很有价值,例如需要快速终局性的 区块链。但这些系统原生不具备零知识(ZK)特性,不提供隐私保证,因此排除了处理敏感数据的用例,如 内容真实性、私有访问控制或 负责任的漏洞披露

VEIL(低开销可验证交互证明封装)是一个编译器,为哈希证明系统添加零知识。生成的协议不泄露关于见证的任何信息,同时保持可靠性和简洁性。

我们在设计 VEIL 时考虑了以下三个特性:

  • 非侵入性。 VEIL 将零知识作为基础协议上的一层添加。它不需要为每次转换设计和审计自定义密码学。
  • 轻量级。 添加零知识的成本极低:证明时间增加 3%,验证时间增加 22%,证明大小增加 12%。
  • 后量子安全。 VEIL 完全基于哈希,因此只要基础协议是后量子安全的,生成的协议也大概率是后量子安全的。

VEIL 的工作原理

目前有两种成熟的方法为简洁证明系统添加零知识。两者都有显著的限制,使得在生产证明系统中添加零知识在实际中很困难。

  1. 将整个系统包裹在一个外部的 ZK 证明中,该证明本该被验证者接受。这种方法成本高且延迟大,因为外部系统必须通过算术电路证明密码学哈希。
  2. 从头开始重写证明系统的每个部分,使其成为 ZK。这种方法具有深度侵入性且难以维护。代码库的每个部分都与 ZK 逻辑耦合,增加了潜在协议错误的风险。

VEIL 采用了第三条路径。

基于哈希的多线性证明系统共享一个结构模式。证明者提交迹(trace),然后与验证者进行纯代数交互,并归约为针对原始承诺检查的多线性求值声明。

哈希仅出现在承诺和求值声明打开中。中间的所有内容都是域算术。VEIL 将它们解耦:它用廉价且有目标的盲化保护涉及哈希的部分,并用一个 ZK 系统包裹小的代数交互。内部的 ZK 证明从未需要证明哈希。

结果是一种包装方法,其中内部 ZK 系统在一个小的代数语句上运行,而不是在完整的基础验证器上运行,仅增加 3% 的额外证明时间。

后量子 SP1

目前的 SP1 依赖 Groth16 包装器来实现零知识,继承了 Groth16 对椭圆曲线密码学的依赖,而椭圆曲线密码学不是后量子安全的。随着 量子时间线缩短,从生产证明系统中消除椭圆曲线依赖成为一个实际关切。

一旦集成到 SP1 中,VEIL 将用基于哈希的包装器替换 Groth16 包装器。由于基于哈希的密码学大概率是后量子安全的,生成的协议继承了基础证明系统的后量子安全性,而不是受限于包装器的安全性。SP1 实现完全后量子安全的道路除了零知识之外还有其他组件,但 VEIL 缩小了隐私方面的差距。

结论

VEIL 为我们提供了一条路径,无需重建哈希证明系统,也无需承担在电路中证明哈希的成本,即可添加零知识。

完整的技术细节见 VEIL 论文。原型实现,包括转换为 VEIL 格式的协议示例,可在 SP1 仓库 中找到。

  • 原文链接: blog.succinct.xyz/veil...
  • 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
点赞 0
收藏 0
分享
本文参与登链社区写作激励计划 ,好文好收益,欢迎正在阅读的你也加入。

0 条评论

请先 登录 后评论
Succinct
Succinct
Building towards a proof-based future.