一文比较不同证明方案:理解ZK证明系统的优缺点
原文作者:Hill.bit
原文编译:深潮 TechFlow
零知识证明的概念大家耳熟能详,但具体到技术细节可能很多人都一头雾水。
零知识和证明实际上是 2 个名词,证明方案是零知识协议安全假设的基本组成部分。 在本文中 Hill.bit 将通过解释多种不同的证明方案以及它们的优缺点,来帮助更多人理解 ZK 证明系统。
在零知识证明系统中,有三个实体参与:设置者、证明者和验证者。不同的证明方案会以各种方式影响它们的行为,从而影响效率、安全性和整个系统的性能。
设置者阶段生成 ZK 系统所需的必要参数和公钥。证明方案会影响设置者阶段的复杂度、计算、通信以及它是受信任的还是无需信任的。证明者生成一个证明,证明其掌握了一个秘密输入的信息,而无需透露该信息。证明方案影响证明者的计算时间、内存需求和证明大小,从而影响通信和存储需求。验证者检查证明的有效性。证明方案会影响验证时间、内存需求以及向证明请求的数量和复杂度。 这里有三种不同类型的证明方案。
线性 PCPs + 仅线性编码:
利用线性概率可检验证明(PCPs)和线性运算;
提供强零知识属性;
生成最短的证明;
需要受信任的设置;
以前的改进主要集中在减少证明者时间上。
线性 PCPs 是一种证明系统,其中验证者通过查询少量证明来检查语句的有效性。术语“线性”指验证者的查询是证明的线性函数。
仅线性编码是一种加密技术,用于隐藏信息,仅允许对隐藏数据进行线性操作。这可以确保数据隐私同时使某些计算得以执行。
多项式 IOPs + 多项式承诺方案:
利用代数结构;
通常比基于线性 PCP 的系统更高效;
支持通用/不受信任的设置;
允许定制电路;
以前的改进主要集中在提高验证者效率上。
多项式交互式预言机证明(IOPs)是一种证明系统,其中证明者和验证者在多个回合中交换消息。证明者生成预言(对多项式的承诺)并将其提供给验证者。
验证者在特定点查询预言机,而证明者以相应的多项式评估响应。多项式方案承诺多项式而不透露有关多项式本身的信息。
与线性 PCPs + 仅线性编码相比的效率提高来自于:
更好地利用代数结构;
更高效的证明生成/验证;
压缩多项式表示;
批处理验证技术
然而,多项式 IOPs + 多项式承诺方案存在以下缺点:
更复杂的设计和实现;
特定目的的加密假设;
不同的性能权衡,例如可并行性。
折迭方案:
允许递归证明组合;
实现嵌套证明以提高效率和可扩展性;
快速且易于并行化的证明者;
之前的改进主要集中在构建递归 SNARKs 上。
递归证明组合可以降低验证者的计算和内存需求,这在像区块链这样的应用中特别有用。证明聚合可以减小最终证明的大小和验证时间,但生成这样的证明可能对证明者的计算要求更高。 与多项式 IOPs + 多项式承诺方案相比,折迭方案的效率提高来自于:
递归证明组合;
证明聚合;
改进的可扩展性;
更快的验证时间。
折迭方案的潜在缺点包括:
更复杂的设计和实现;
定制化的加密假设;
增加证明者的计算时间和内存开销;
适用性可能因用例而异 。
总之,线性 PCPs + 仅线性编码提供强大的零知识属性和最短的证明长度,但它们需要受信任的设置,并且与其他类别相比在效率上具有局限性。多项式 IOPs + 多项式承诺方案通过更高效的证明生成和验证过程,在效率上比线性 PCPs + 仅线性编码有显著改进,但设计和实现可能更为复杂。
折迭方案在效率和可伸缩性方面表现出色,得益于递归证明组合,这在区块链应用中尤其有用。但是,证明者的计算时间和内存开销可能会增加,并且其适用性可能因使用情况而异。
区块链世界的隐秘威胁:钓鱼攻击全解析
在区块链的世界中,用户的每一步操作都可能直接影响资产安全。随着技术的发展,钓鱼攻击手法也在不断升级,因此我们必须时刻保持高度警惕,提升自我防护意识,避免掉入骗局。无论是核实链接、使用安全设备、开启多重身份验证,还是妥善管理钱包,这些细小的举措都能为我们的资产构筑起一道坚固的防线。
下周必关注|CZ或将于9月29日出狱;SEC五大委员集体听证(9.23-9.29)
Alameda前联席首席执行官Caroline Ellison将于9月24日接受宣判。
Solana新手机Seeker亮相,这次能靠空投回本吗?
Chapter 2预购者勉强回本,但Seeker产品设计已偏向满足空投需求。