理解零知识证明算法之Bulletproofs:Range Proof (2)_VER:LLE

前言

在本系列的第一篇文章中,我们介绍了Bulletproofs在Rangeproof上的应用,当prover想要证明v值在范围内时,他需要发送2n+7个元素。然而,这种O(n)级的CC并不是我们想要的,希望能寻找一种方法可以把CC降低到O(log(n)级。

所以,本篇我们就主要介绍这个优化过程,主要分为两部分:

以简单的场景去阐述这个优化过程把第一篇的Rangeproof结果嵌入到优化过程注:第一篇文章由于格式的原因,公式显示会有误差,向量的特殊标记也没有显示出来,因此本篇将以图片的形式展示整个过程;另外,本文最后也附上了第一篇文章的图,帮助大家理解^_^

声音 | Anthony Pompliano:人们需要时间去熟悉并理解比特币的重要性:针对监管者往往支持区块链、禁止加密货币的做法,Morgan Creek Digital联合创始人Anthony Pompliano认为,比特币这个游戏规则改变者需要的只是时间,“我认为每个人都进入这个行业,他们通常通过比特币来实现。他们听说了它,开始观察,然后就有了进化。他们去检查企业区块链、代币化证券、DeFi,但几乎每个人都会回到比特币。现在,这段旅程可能需要6个月、12个月或者18个月,但我认为对比特币来说最好的事情是时间。人们需要时间来熟悉它,开始使用它,理解它为什么至关重要。我认为这将发生在政府层面、私人层面和机构层面。所以这只是人们更熟悉它所需要的时间。”[2019/12/9]

ImprovedRangeproof----Asimpleexample

声音 | 德勤咨询区块链主管:建立必要的治理比理解和实现区块链技术更为困难:据华尔街日报报道,德勤咨询区块链主管Geoff Lougheed表示:理解和实现区块链技术通常比建立必要的治理更容易。希望在企业间建立区块链的领导者往往无法召集一个团队来决定利益相关者将如何操作区块链、定义其规则、设置治理指南,以及创建一个整体组织结构。但这些因素对于区块链的开发是不可或缺的,因为它们阐明了成员及其提供的信息之间如何互动。[2019/5/1]

1.预备知识

动态 | 德国财政部:国家发布的数字货币存在“未被充分理解”风险:据Cointelegraph消息,德国联邦财政部(GFMF)认为央行发行的数字货币(CBDC)的概念风险太大。财政部在回应绿党议员Gerhard Schick表示,“到目前为止,没有令人信服的理由向德国和欧元区的广大用户发放数字中央银行资金,”。该部门认为,CBDC包含“一些尚未被充分了解的风险”[2018/7/7]

2.一个简单的场景

3.复杂度优化到O(log(n))

下图是一张基于上述过程的交互协议

有几点需要说明:

图的右半部分分为两个部分a.黄色部分为文章前面部分讲述的过程。这又分为三个部分:?i.初始化:省略了P的计算和交互的过程,我们假定开始此证明协议前,验证者已经有了一些基本的信息。这并不严谨,仅仅是为了清晰的表示后面的交互过程

?ii.LOOP:一个不断迭代的过程,每次迭代,会:

产生一对(Li,Ri),所有向量长度减半Verifier计算P?i?/g?i?/h?i`?iii.End:最后一步,向量a,b已减半成常量a,b

?b.绿色部分为黄色部分的进一步优化,优化思想主要是多次幂乘操作缩减成单词幂乘操作,具体的是:

?i.上述LOOP中的第3步,延迟到最后一部一次性计算

ArealRangproof

回顾第一篇文章,我们知道,当我们要证明v属于时,验证者最终要验证:

对关系式做个变换:

因此,prover是要证明有向量l,r满足关系:

基于此关系,使用上述协议,就可以使rangeproof的交互复杂度降低到对数级。现在,是不是找到点内味了?

总结

本篇文章主要讲到了,BulletProof是如何把Rangeproof的CC降低到O(log(n)),并且介绍了更近一步的优化。结合第一篇文章,相信你已经对基于Bulletproofs的Rangeproof原理有了整体的了解,在本系列的第三篇文章中,将给大家分享Rangeproof的工程上实现细节。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金智博客

DAIDeFi行业本质研究:触发算子_EST:Meta Game City

为什么会有触发算子?当合约内部逻辑满足一定的条件时,需要改变合约状态,这个时候合约不会自动实现,需要外部操作来触发,这是由中本聪架构下智能合约本质决定的:每个操作都是一次全局拍卖.

[0:15ms0-3:879ms