ROO:ZKSwap团队解读零知识证明算法之Bulletproofs:Arithmetic Circuits

Bulleproofs算法有两个方面的应用。

一个是Rangeproof:

第一讲:?理解零知识证明算法之Bulletproofs--RangeProof1

第二讲:?理解零知识证明算法之Bulletproofs--RangeProof2

第三讲:?理解零知识证明算法之Bulletproofs--RangeProof3

另一个是generalarithmeticcircuits,本编文章就来主要分享Bulletproofs在后者上的应用。

ArithmeticCircuits

NFT游戏Mojo Melee将为Amazon Prime订阅者赠送NFT和游戏代币:金色财经报道,基于以太坊扩展网络Polygon构建的NFT游戏Mojo Melee已与零售巨头亚马逊合作,为Amazon Prime订阅者赠送NFT。第一个产品现已通过Amazon Prime Gaming门户提供,是一个免费套餐,其中包括NFT和游戏内货币,供为Mojo Melee创建新玩家帐户的Prime订阅者使用。包括冠军角色Gwyn Rockhopper的NFT以及885 Ore(一种非加密游戏内货币)。

亚马逊的交易将持续六个月,其中包括每月额外赠送的免费游戏内NFT和其他内容,为Prime订阅者提供持续体验游戏的机会,并比非订阅者拥有潜在优势。[2023/8/3 16:15:54]

了解ZK-SNARK算法应该都知道算术环路的概念,下面一张图展示了zk-snark算法中,算术环路的设计规则。

津巴布韦央行探索使用黄金支持的数字代币提供贷款:金色财经报道,津巴布韦央行正在考虑以新推出的黄金支持的数字代币作为抵押品提供贷款的可能性。中央银行设想将其作为未来日常交易的媒介,以扩大所提供的金融服务范围。

津巴布韦银行家协会解释说,数字货币的实施将要求银行将第三种货币纳入其系统以促进支付。这一发展为银行提供以前只能用津巴布韦元和美元提供的全系列产品提供了可能性,因为以黄金为支撑的数字代币的采用和使用获得了吸引力。

此前报道,中央银行最近拍卖的由黄金支持的数字代币获得了巨大的兴趣,收到了135份申请,价值140亿津巴布韦元(1100万美元)。这些代币由140公斤的黄金储备支持。第二次拍卖定于今日举行,进一步表明对这些数字资产作为保值手段的需求不断增加。[2023/5/19 15:12:40]

Circuit设计规则:

Arweave 2.6版本已成功激活并趋于稳定:3月6日消息,区块链存储协议Arweave创始人Sam Williams发推表示,Arweave 2.6 版本现已上线,难度和区块生成速度已经趋于稳定。新版本将提高网络及其存储市场的能源效率,并且激励矿工存储更多数据。

上月消息称,区块链存储协议Arweave将发布2.6版本,拟于3月6日激活硬分叉。[2023/3/6 12:45:21]

1.由乘法门和加法门组成,每个门固定两个输入一个输出;

2.不标记通过加法门连接乘法门的线,如图中绿线,仅起到连接作用;

3.同一条线直接或间接连接多个乘法门,仅表示为一条有效的线,为了方便理解,用紫色虚线表示其连接关系;

4.MulGate处的取值为图中红色字体所示

5.黄色线条为有效连接线

6.橙色线条表示MulGate对应的一阶约束

那Bulletproofs算法的算术环路的设计规则是什么样的呢?我们看看下图。

Circuit设计规则:

1.由乘法门和加法门组成,每个门固定两个输入一个输出;

2.不标记加法门

3.不标记有常量的乘法门

4.红色字体表示乘法门的索引

5.黄色字体表示乘法门的输入和输出

6.橙色线条表示乘法门对应的一阶约束

7.蓝色线条表示相邻乘法门间的一致性约束

因此,一个完整有效的算数电路应该满足:

1.每个乘法门对应的的约束成立

2.乘法门之间的一致性约束成立

Zk-snark的算术电路通过R1CS满足了上述两个条件。

1.每个R1CS表示一个乘法门的约束

2.相邻乘法门的输出是下一个乘法门的输入,如图中的y,sym_1,sym_2

Bulletproofs的算术环路以通过以下两种方式满足上述两个条件:

1.每个乘法门对应的约束成立

2.上个乘法门的输出等于下个乘法门的输入。

看起来两个算法的证明一个算术电路有效的思想是一样,但是由于两个电路的标注规则不同,就产生两个不同的约束结果。

Zk-snark算法以validwires为基本要素,每个wire有左输入,右输入,和输出三个属性

Bulletproofs算法以validMulgate为基本要素,每个Mulgate有左输入,右输入和输出三个属性

最后,附上一张对比图:

总结以上可以看出,对数算术环路的满足性问题,不同的算法具有不同的电路描述方式。Zk-snark算法由Circuits转化到QAP,最终生成的证据仅仅再几十个字节大小;

Bulletproofs的算法由Circuits转化到innerproductor,生成的证明的大小和算术电路的乘法门的个数n有关O(log(n*Q),电路越大,证据越大。

附录

1.Bulletproofs论文:https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8418611

2.BCG+讲述了算术电路的另外一种描述形式?https://eprint.iacr.org/2017/1066.pdf

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

金星链

[0:15ms0-0:870ms