零知识证明: Plookup算法介绍

最近有空看了看Plookup的论文。针对对电路描述不友好的操作(比如bit操作),Plookup给出了新的思路和证明方式。给定某个操作的真值表示(lookup table),证明某个操作的输入/输出是在真值表中。这种方式,相对之前的bit计算约束方式,降低约束的个数,提高了电路效率。

Plookup的论文下载地址如下:

https://eprint.iacr.org/2020/315.pdf

基本思想

Plookup尝试解决的问题是,给定两个集合,证明某个集合的元素在另外一个集合中。给定两个集合t和f,s是f排序后的结果。如果t中的元素最少在f中出现过一次。判别f中的元素是否包括在t中,只需要比较元素差的集合:

欧易OKX宣布将基于全览默克尔树、零知识证明升级储备金证明:3月2日消息,据欧易 OKX 官方消息,平台宣布在未来几个月内升级储备金证明,将基于全览默克尔树、零知识证明的技术来证明偿付能力。后续将允许任何人查阅默克尔树中的所有资产情况,但也会通过拆分和洗牌的方式保障用户隐私。

据了解,除储备金干净度为 100% 外,欧易 OKX 是目前唯一一家同时实现默克尔树开源验证、钱包地址所有权开源验证、链上资产开源验证的交易平台。自去年 11 月份以来,欧易按月定期发布 PoR 报告,持续引领行业提升透明度。[2023/3/2 12:38:51]

BNB Chain将于年底上线零知识证明扩容方案zkBNB主网:9月8日消息,BNB Chain宣布已于9月2日上线基于零知识证明的扩展解决方案zkBNB测试网,允许开发人员开始构建应用程序,计划于年底上线主网。BNBChain称,zkBNB旨在提供更快的交易速度、更快的最终确定性、更低gas费,是BNBChain实现规模化的重大突破。

根据介绍,zkBNB的特点包括:支持快速集成支付和原子交换,利用创新的内置AMM交换和DeFi用例的流动性池,数字资产将在未经许可的情况下自动交易;TPS达到5000-10000;内置NFT市场和API服务;内置域名服务等。[2022/9/8 13:15:41]

举个例子,t是{1,4,8}的集合,元素的差异集合为{3, 4},分别是4-1,8-4。如果s只有t中的元素组成,并且每个元素最少出现一次,例如{1,1,4,8,8,8},元素的差异集合也为{3,4}。如果s中的元素并不完全是t中的元素,那即使在元素差异集合一样的情况下,也不能说明s中元素在t的集合中。例如s为{1,5,5,5,8,8},元素的差异集合也为{3,4},分别是8-5,5-1。

研究机构Geometry将正式启动并支持采用零知识系统和应用数学的Web3项目:6月28日消息,专注于零知识隐私技术的研究和投资公司Geometry已运营几个月时间,负责人为Aztec Network前首席执行官Tom Walton-Pocock,团队成员还包括Celo密码学负责人Kobi Gurkan和Oiler Network前增长主管Gregoire Le Jeune。Geometry表示,其还获得了由对冲基金经理Alan Howard支持的孵化器WebN Group的孵化。

Geometry已领投以色列零知识半导体公司Ingonyama的400万美元种子轮融资,并领投了对NFT市场流动性项目Soap Labs的200万美元种子轮融资,以及参投了跨链基础设施Socket的种子轮融资。[2022/6/28 1:36:24]

论文提出,可以引入一个随机因子,将前后两个元素相加的方法,确定两个集合的依赖关系。

定义多项式

在基本思想的基础上,论文在第三章定义了两个多项式F和G:

如果F和G相互对等,有且如下的条件成立:

f集合属于t

s是(f,t)的并集,并且按照t中的元素排序

如果条件成立,可以推导出两个多项式相等。F多项式可以看成是两部分组成,分别是两个连乘。后面的连乘可以看成是t中的元素连乘。前面的连乘,可以看成是f中元素的连乘。因为f中的元素属于t,则f中的元素的连乘,可以想象成多个相同元素的连乘。反之,因为beta和gamma的随机因子,也能从F和G对等条件推出满足的两个条件。具体的证明过程,可以查看论文的第三章。

在定义多项式的基础上,问题可以转化成两个多项式相等。

Plookup协议

已知f和t,可以排序得到s。因为s由f和t合并而成,s可以由两个函数h1和h2表示。关键在于第4步,定义了Z函数:

Z(g) = 1 - 初始为1

Z(x) 是两种多项式表示的商

Z(g^(n+1)) = 1 - n+1元素的连乘,两种多项式表达式相等

验证者,除了查看Z函数外,额外还要查看h1/h2连续性。

论文进一步将协议推广到更通用的情况,并给出了t中元素是连续情况下的优化协议。感兴趣的小伙伴可以自行查看。

Plookup提出了一种明确输入/输出的情况下,如何证明某个函数的运算正确的协议。输入输出定义成lookup表,计算的输入/结果只要在该lookup表中即表示运算正确。和Plonk采用同样的思路,Plookup定义了问题的多项式表示,证明了Z函数的递归表示和边界。

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

银河链

POL币最新价格视频 | 零基础学K线(一):教你识K线

金色财经联合欧易OKEx推出《零基础学K线》系列课程,第一期《教你识K线》正式上线。秘乐短视频或被工信部约谈,app已被苹果商店下架:6月23日,据相关人士透露,资金盘项目秘乐短视频或被工信部约谈,目前,秘乐短视频IOS端口的APP已.

[0:0ms0-1:592ms