【密码专栏】超强进阶:PLONK VS Groth16(上)

前言

前文《天冷了,干了这碗“零知识证明”鸡汤》对「零知识证明学习」作了一个形象化的比喻:炖鸡汤。那么本系列的主要内容可以简单概括为《论高压锅炖鸡汤的一百种方法》之方法二。在学会了“清炖鸡汤”之后,不如来一口“阿胶鸡汤”补补脑细胞吧!

正如鸡汤不同风味之间各具千秋,不同的zk-SNARK方案也各有所长。zk-SNARK方案可以被分为【通用】与【非通用】zk-SNARK,PLONK与Groth16分别是其中的典型代表。通过本系列,我们将对PLONK算法内容作简要介绍,并指出PLONK和Groth16算法思路上的异同。

PLONK算法在[1]中提出,由来自于Protocol Labs的研究员Gabizon和以太坊隐私交易协议 Aztec Protocol 的两名研究人员合作完成。PLONK的提出晚于Groth16,在证明和验证的性能上与Groth16也存在一定差距,但是基于通用可更新的可信设置这一特点,使PLONK算法在零知识证明领域占据了一席之地。

【原文点击此处】

可信设置

可信设置可以说是PLONK和Groth16两者间最显著的差异。正是为了避免一次性的可信设置,PLONK设计了后续的约束系统和问题压缩方式。那么什么是零知识证明中的可信设置呢?可信设置实际上是在创建一个用于证明验证的秘密,任何知道这个秘密的人都可以伪造证明通过验证。如果将零知识证明看作是一扇挡在证明者a和验证者b之间上锁的门,那么合法构建的证明就是可以打开门的口令,a提供口令即可进入房间。但是如果a得知了门的秘密也就是房间窗户的位置,那么a可以直接无视锁的存在翻窗进入房间。

▲无窗的房间(无需可信设置的零知识证明)

显然,最安全的做法是找一个「没有窗的房间」,这也是一部分零知识证明方案的思路——无需可信设置,例如可扩展透明知识论证zk-STARKs和防弹证明Bulletproofs。虽然它们的安全性得到提高,但是目前这类方法的证明验证性能是远低于zk-SNARKs的,近线性的验证和规模较大的证明(proof)使其不适用于很多场景。

▲窗户位置指定策略(基于可信设置的零知识证明)<

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值