前言
本篇是“PLONKVSGroth16”的下篇,在上篇中我们对PLONK作了简要介绍,分析了PLONK和Groth16算法在「可信验证」和「约束构建」上的异同。那么,接下来让我们一起看看在后续的「证明生成」和「验证阶段」两者将有怎样的差异,以及整体上的性能区别。
证明生成
对于程序qeval,prover需要证明自己知道qeval(x)=35的解,即x=3。
defqeval(x):
y=x**3
returnx+y+5
在上篇中我们已经介绍了PLONK的约束形式:门约束与线约束。继续使用之前的例子,约束意味着零知识证明系统将这个问题约束成了一组格式固定的数学表达式,即问题描述等价于约束描述。而如果证明者真的知道这个问题的答案,将答案和计算中的中间参数代入约束表达式,这个组表达式必将是成立的。反之,如果该Prover提供的一组解无法使表达式成立,说明prover并不具备关于该问题解的知识。
密码学家David Chaum推出保护隐私的CBDC技术:金色财经报道,加密货币教父、密码学家David Chaum推出保护隐私的央行数字货币(CBDC)技术,正在与瑞士国家银行(SNB)合作开发Tourbillon,该项目专为注重隐私的央行货币而设计,将在国际清算银行(BIS)创新中心的主持下开发。
BIS公告称,Tourbillon旨在通过将盲签名和混合网络等技术与密码学和CBDC设计的最新研究相结合,通过试验抗量子密码学来实现网络弹性、使用与分布式账本技术兼容但不基于分布式账本技术的架构来实现可扩展性、为付款发送方但不为接收方提供隐私。[2022/11/10 12:44:30]
这是最朴素的证明验证思路,可以将它看作是“锁”和“钥匙的配对“:该问题约束的构建类似于“打造门锁“,而针对该问题提供的一组解信息就是”一把开启门锁的钥匙“。显然,Prover可以举着自己的解交给验证者来验证。可是这违背了我们的零知识原则:Verifier不应该获取到Prover的隐私信息。
密码学家发现MetaMask存在可致用户IP地址泄露的漏洞:金色财经报道,OMNIA协议的联合创始人、安全分析师和密码学家Alexandru Lupascu称MetaMask钱包存在漏洞风险,恶意攻击者可以简单地创建一个NFT,并通过转移该NFT的免费所有权来获取用户的IP地址,黑客只需花费50美元就能攻击他人的隐私。
Lupascu表示,他在2021年12月14日发现了这个安全漏洞,并向MetaMask团队提出了解决方案,但他们忽视了这个问题,并表示将在2022年第二季度之前解决。
在这项研究向公众展示之后,MetaMask的创始人Daniel Finlay承认了这一事件:“我认为这个问题已经被大众广泛知晓很久了,所以我认为披露期并不适用。”Finlay补充说:“Lupascu说我们没有尽早解决这个问题,他说得没错。我们现在就开始着手解决这一问题。谢谢你的提醒。”(BeInCrypto)[2022/1/23 9:07:16]
那么有什么方法能在解锁的同时保护隐私信息呢?
《福布斯》杂志将在The Sandbox上推出元宇宙:12月14日消息,The Sandbox发文称已与《福布斯》杂志达成合作,后者将在The Sandbox上推出与Polygonal Mind Creative Studio合作开发的元宇宙,用户可以在其中了解福布斯的历史、创始人Malcolm Forbes以及了解30 Under 30 Gallery等内容。若用户购买了福布斯独家的可穿戴设备,则可获得独特的配饰。该元宇宙将于北京时间12月14日23:00到12月28日23:00开放,并将总计提供5万枚SAND奖励。[2022/12/14 21:44:17]
这里我们用到一个简单的数学小技巧:减除,对此不太了解的读者可查阅文章最后的前置知识。在前文《超强进阶:PLONKVSGroth16》我们已经对从约束系统转化到多项式进行了详细的描述,在此我们不再赘述具体的转化过程,但需要重复的一点是:根据生成时使用的点值对,生成的多项式在这些点处的取值将恒为0。PLONK同理,此处我们给出两种算法的约束系统转化为多项式后的形式。
美国说唱歌手Lil Baby承认因加密货币损失数百万美元:10月21日消息,美国说唱歌手Lil Baby在最近的一次采访中表示,在加密货币投资中损失数百万美元。(BeinCrypto)[2022/10/21 16:34:47]
Groth16:
PLONK:?我们设门约束多项式为D(X),线约束多项式为L(X),那么PLONK的整个约束多项式将被表示为:
可以看到,两者都使用了减除的思路,也就是这里的h(X)和ZH(X),其具体内容取决于构建约束多项式时取的点值。
证明与验证
同样在之前的文章中,我们可以看到Groth16的证明规模极小,只包含三个群元素A,B,C。然而,这样优雅的证明实现依赖于它的非通用可信设置,这也是Groth16的一大痛点。在Groth16中,证明方提供A,B,C,验证方基于可信设置提供的参数,构建一个配对验证等式。在验证过程中包含了三次配对操作,也就是对验证性能影响较大的耗时运算。Groth16的具体证明验证如下所示。
Galaxy的以太坊基金已购买7500万美元的ETH:7月20日消息,美国SEC监管文件显示,Galaxy的机构以太坊基金已经购买7500万美元的ETH。此次购买是代表21位投资者进行的,每位投资者至少投资10万美元。(Trust Nodes)[2022/7/21 2:26:59]
Groth16证明:
Groth16验证:
相比之下,PLONK的证明验证将会复杂得多,这也是使用通用可信设置付出的代价。从验证方角度看,由于可信设置参数缺少了包含问题具体内容,从而无法帮助其构建一些制约证明多项式的值。因此,如何固定住证明多项式的内容成为一个难题。PLONK使用的一个思路是引入Kate承诺。
结合前述的约束多项式,我们可以对t(x)中出现的每一项都构建一个承诺,以实现验证方的验证。PLONK证明的具体内容如下,包含了两个点处的验证:Wz(X)为多个多项式的同点承诺,Wzw(X)则为另一个点处的对z(X)的承诺。
最后,PLONK的验证在原文中也被归纳为一个简洁的公式,实际上就是将上面提到的两个点处的承诺简单相加,具体等式如下所示:
以上就是PLONK和Groth16算法内容的具体对比结果,讲了这么多冗长的公式变换,两者在性能层面的差距究竟如何呢?
性能比较
在这里我们给出的是PLONK论文中的结论。Table1是在证明阶段的一个性能比较,Table2则是验证阶段的性能。可以看出,在验证上,两者的差距不大,Groth16比PLONK多了一次配对运算;而在证明方面我们遗憾地发现,Groth16不论在证明的工作量还是证明长度上仍然保持着最优的性能。但需要指出的是PLONK,尤其当它工作在fast模式时,所使用的SRS长度是所有算法中最短的。
▲验证阶段性能比较
▲证明阶段性能比较
前置知识
多项式减除
顾名思义,化减为除:若我们需要证明一个多项式f(x)在点a的取值为b,也就是证明f(a)-b=0;那么我们可以将其转换为证明多项式f(x)-b可以整除(x-a)。其数学表示:
设多项式f(x)且f(a)=b,则存在一个多项式g(x),使得:f(x)-b=g(x)(x-a)
kate承诺Kate承诺是由Kate,Zaverucha和Goldberg在2010年提出的一种多项式承诺方案。Kate承诺有多种形式,本文仅介绍PLONK中使用的常用形式,详细可参考其paper中的相应内容。其常用形式可以概括为对多项式的隐藏和部分打开验证。针对多项式f(x),Kate承诺的具体步骤如下:
1)构造f(x)在点a处的承诺C
C:f(a)
2)选取点z,执行f(z)的opening
gz(x)=f(x)-f(z)/x-z
wz=gz(x)
3)给定f(z),C和Wz,验证Kate承诺
C=wz*(a-z)+f(z)
以上就是“PLONKVSGroth16”的全部内容,如有任何疑问,欢迎添加小助手桔子加入技术交流群,在这里,你想知道的都会得到解答~
A.Kate,G.M.Zaverucha,andI.Goldberg.Constant-sizecommitmentstopolynomialsandtheirapplications.pages177–194,2010.
ArielGabizonandZacharyJ.WilliamsonandOanaCiobotaru.PLONK:PermutationsoverLagrange-basesforOecumenicalNoninteractiveargumentsofKnowledge.2019.
自2021年年初,区块链被列入“十四五”七大数字经济重点产业之一以来,区块链技术逐渐受到各界的关注.
据PYMNTS.com消息,12月20日,支付巨头Visa宣布已经完成对Currencycloud的收购.
来源:2021年12月15日出版的《环球》杂志第25期原标题:《韩国“元宇宙”起风了》 在西班牙巴塞罗那,一名男子在世界移动通信大会上试用韩国三星公司的VR设备韩国在元宇宙新概念领域持续发力.
据彭博社12月13日消息,韩国大财阀SK集团旗下的投资子公司SKSquare正在加速布局元宇宙和加密货币业务.
原文来自:通证通研究院?×?FENBUSHIDIGITAL文:宋双杰,CFA;王新刚 特别顾问:沈波;Rin 2018年8月.
据Cointelegraph12月18日消息,美国前第一夫人梅拉尼娅-特朗普推出了NFT平台,并投放了她的第一个数字收藏品,名为"Melania''sVision",预计将在本月销售.