原文作者:FoxTechCEO康水跃,FoxTech首席科学家孟铉济
前言:如果密码学家没有发现张量积和多项式取值之间的联系,那就很难出现多项式承诺协议Brakedown,也就不可能诞生基于Brakedown的Orion、以及FOAKS这类全新的快速算法。
在许多依赖多项式承诺的零知识证明系统当中,使用了不同的承诺协议。根据a16z的JustinThaler在2022年8月文章“MeasuringSNARKperformance:Frontends,backends,andthefuture”的评估,Brakedown虽然有较大的ProofSize,但是无疑是当下最快的多项式承诺协议。
FRI、KZG、Bulletproof是更为常见的多项式承诺协议,但速度是它们的瓶颈。zkSync采用的Plonky、PolygonzkEVM采用的Plonky2、Scroll采用的Ultra-Plonk等算法都是基于KZG的多项式承诺。Prover涉及到大量的FFT计算和MSM运算生成多项式和承诺,这两者都会带来大量的计算负担。虽然MSM有运行多线程加速的潜力,但需要大量内存,即使在高并行下也很慢,而大型FFT则严重依赖算法运行时数据的频繁洗牌,难以通过分布式加速跨计算集群加载。
正是由于有了更为快速的多项式承诺协议Brakedown,才使这类运算的复杂度大幅降低。
FOAKS即FastObjectiveArgumentofKnowledges,是由FoxTech提出的一种基于Brakedown的零知识证明系统框架。FOAKS在Orion的基础上进一步减少FFT运算,目标是最终消除FFT。此外,FOAKS还设计出一种全新的非常精妙的证明递归方式来减少证明大小。FOAKS框架的优势在于在实现线性证明时间的基础上有着较小的证明大小,非常适合应用于zkRollup场景当中。
Celo关于迁移到以太坊L2架构的治理提案开启社区投票:7月25日消息,Celo关于将Celo迁移到以太坊L2架构的治理提案已开启社区投票(Temperature Check)。该治理提案是对社区的投票,支持Celo通过从独立的EVM兼容Layer1区块链过渡到以太坊Laye2,不是对如何实现Layer2目标的架构或设计的投票。
7月中旬,Celo开发团队cLabs发起新提案,提议Celo从独立的EVM兼容Layer1区块链迁移到以太坊Layer2,即利用OP Stack成为以太坊L2的架构,这将是一次技术升级,关键特点包括:由Celo现有验证器们驱动的去中心化排序器,采用拜占庭容错共识机制;由EigenLayer和EigenDA提供支持的链下数据可用性层,由以太坊节点运营商操作,并通过重新抵押ETH进行保护,使得Celo能够保持低费用;保留Celo只需1个区块确认的设计。[2023/7/25 15:58:09]
下文我们将详细介绍FOAKS所使用的多项式承诺协议Brakedown。
在密码学当中,承诺协议由证明者对某一个秘密值进行承诺,生成一个公开的承诺值,这个承诺值具有绑定性和隐藏性,之后提交者需要打开此承诺并将消息发送到验证者,以验证承诺与消息之间的对应关系。这一点,使得承诺协议和哈希函数的作用有许多共通之处,但是承诺协议往往依赖于公钥密码学领域的数学结构。而多项式承诺是一类对于多项式的承诺方案,也就是说被承诺值是多项式。而同时多项式承诺协议当中还包含了在给定的点取值并给出证明的算法,这就使得多项式承诺协议本身成为一类重要的密码学协议,是许多零知识证明系统的核心部分。
而在最新的密码学领域的研究当中,由于发现了张量积和多项式取值之间的联系,所以诞生了一系列与此相关的多项式承诺协议,Brakedown是其中的代表性协议。
灰度GBTC负溢价率收窄至36.60%,半年收回超25%:6月21日消息,据Coinglass数据显示,当前灰度总持仓量达213.06亿美元,单日涨幅5.21%。灰度GBTC负溢价率收窄至36.60%,较2022年12月观测到的最高点(48.89%)已收回约25.13%。其余主流币种信托溢价率如下,ETH:-52.76%;ETC:-59.97%;LTC:-44.33%;BCH:-15.05%。[2023/6/21 21:51:26]
在详细介绍Brakedown的协议细节之前,需要先了解一些基础知识。我们需要先了解线性码、抗碰撞哈希函数、默克尔树、张量积的运算以及多项式取值的张量积表示。
首先是线性码。一个消息长度为k,码字长度为n的线性码是一个线性子空间
C∈Fn,使得存在一个从消息到码字的单射,称为编码,记作EC:Fk→C。任意的对于码字的线性组合仍然是一个码字。两个码字u,v的距离即他们的汉明距离,记作△(u,v)。
最短距离为d=minu,v△(u,v)。这样的码记作线性码,用d/n表示码的相对距离。
其次是抗碰撞哈希函数与默克尔树。
使用H:{0,1}2λ→{0,1}λ表示一个哈希函数。默克尔树是一种特殊的数据结构,可以实现对于2d个消息的承诺,生成一个哈希值h,在打开任何消息时候需要d+1个哈希值。
默克尔树可以被表示为一个深度为d的二叉树,其中L个消息元素m1,m2,...,ml分别对应树的叶子。树的每一个内部节点都由它的两个子节点进行哈希计算得出。打开消息mi时,需要公开从mi到根节点的路径。
用以下记号来表示:
h←Merkle.Commit(m1,...,ml)
马斯克:如果佛罗里达州共和党州长Ron DeSantis在2024年竞选总统将支持他:金色财经报道,马斯克周五表示,如果佛罗里达州共和党州长Ron DeSantis在2024年竞选总统,将支持他。据悉,Ron DeSantis是Donald Trump的竞争对手,很可能会在共和党初选中与他对决。马斯克此前暗示没有在民主党人中找到理想的候选人。[2022/11/27 20:55:23]
(mi,πi)←Merkle.Open(m,i)
{0,1}←Merkle.Verify(πi,mi,h)
图1:默克尔树
我们还需要了解张量积的运算是怎么做的。数学上,张量是向量和矩阵向高维空间的扩展,是很重要的研究对象,详细的讨论张量超出本文的研究范畴,这里只介绍向量和矩阵的张量积运算。
图2:向量和矩阵的张量积运算
紧接着,我们需要知道多项式取值的张量积表示。
当中提到,多项式的取值可以被表示成张量积的形式。在这里我们考虑多线性多项式的承诺。
具体来讲,给定一个多项式,他在向量x0,x1,...,xlogN-1的取值可以写成:
根据多线性的定义,每一个变量的次数是0或1,因此,这里有N个单项式和系数,以及logN个变量。令
NFT市场Quix将于明年2月28日结束运营,Optimism基金会将代为开源其代码:11月24日消息,据官方公告,Optimism生态NFT市场Quix宣布,Optimism基金会将代表Optimism社区使Quix代码开源,这意味着,虽然Quix作为一家公司即将结束,但从2023年1月6日开始,其代码将免费供社区使用和构建。Quix正在与Optimism基金会合作,以确保平稳过渡,其团队致力于维持运营到2023年2月28日。
官方称,其每月基础设施成本已超过收入,而且运营过于精简,无法以有意义的方式投资于生态系统,鉴于种种限制,Quix不再是其可以继续经营的企业,“现在我们转向Optimism Collective,将Quix带入下一阶段”。
此外,官方称:“对于Optimism上的NFT收藏者,我们将很快开始将交易重定向到OpenSea。对于NFT创作者,Quix Launchpad将在1月18日之前保持可用状态。我们的团队将直接与Quix API用户合作,帮助他们过渡到替代解决方案。作为代表,我们将在短期内继续参与Optimism的治理,但鼓励委托给Quix团队的代币持有者重新委托给其他人。”[2022/11/24 8:02:38]
,其中i0i1...ilogN-1是i的二进制表示。令w表示多项式系数,
同样的,定义
科技行业财团用英镑稳定币运行CBDC试点:金色财经报道,一个跨行业的联盟在英国启动,以运行零售CBDC试点,该试点将以实时数字英镑(dSterling)稳定币资产为特色。数字金融市场基础设施 (DFMI) 联盟目前的成员包括 IBM、Finastra、FinClusive、Ibanera、paywith.glass、Mattereum、Trust Payments 和 Accomplish Financial。该计划由荷兰金融基础设施集团 paywith.glass 协调,波士顿咨询集团作为其咨询合作伙伴,并得到英国支付协会的支持。[2022/8/17 12:31:45]
令
。于是有X=r0?r1。
从而,多项式取值可以被表示成张量积的形式:?(x0,x1,...,xlogN-1)=<w,r0?r1>。
最后,我们来看FOAKS、Orion当中使用的Brakedown的过程。
首先,PC.Commit将多项式系数w划分成k×k的矩阵形式,并将其编码,记作C2。之后对于C2的每一列C2进行承诺建立一个默克尔树,然后再对于每一个列形成的默克尔树树根建立另一个默克尔树,作为最终的承诺。
在取值证明的计算中,需要证明两点,一是近似性,二是一致性。近似性保证了承诺的矩阵确实和编码后的一个码字足够接近。一致性保证y=<w,r0?r1>。
近似性检验:近似性检验由两步组成。首先,验证者发送一个随机向量0给证明者,证明者计算Y0与C1的内积,也就是以Y0的分量为系数对C1的行计算线性组合。由于线性码的性质,Cy0是Yy0的码字。之后,证明者证明Cy0确实是从被承诺的码字计算出的。为了证明这一点,验证者随机选取t列,证明者打开对应的列并提供默克尔树证明。验证者检查这些列和Y0的内积和Cy0当中对应位置相等。当中证明如果使用的线性码有常数的相对距离,那么被承诺的矩阵就以压倒性的概率与一个码字接近。
一致性检验:一致性检验和近似性检验的流程完全类似。不同之处在于,不使用随机向量Y0而是直接使用r0来完成线性组合的部分。类似的,c1也是消息y1的一个线性码,并且有
?(x)=<y1,r1>。当中证明,通过一致性检验,如果被承诺的矩阵与一个码字接近,则以压倒性概率成立y=?(x)。
以伪代码形式,我们给出Brakedown协议的流程:
Publicinput:TheevaluationpointX,parsedasatensorproductX=r0?r1;
Privateinput:Thepolynomial?,thecoefficientofisdenotedbyw.
LetCbethe-limearcode,EC:FkFnbetheencodingfunction,N=k×k.IfNisnotaperfectsquare,wecanpadittothenextperfectsquare.Weuseapythonstylenotationmattoselectthei-thcolumnofamatrixmat。
functionPC.Commit(?):
Parsewasak×kmatrix.TheproverlocallycomputesthetensorcodeencodingC1,C2,C1isak×nmatrix,C2isan×nmatrix.
fori∈do
ComputetheMerkletreerootRoott=Merkle.Commit(C2)
ComputeaMerkletreerootR=Merkle.Commit(),andoutputRasthecommitment.
functionPC.Prover(?,X,R)
TheproverreceivesarandomvectorY0∈Fkfromtheverifier
Proximity
Consistency
ProversendsC1,y1,C0,y0totheverifier.
Verifierrandomlysamplestasanarray?andsendittoprover
foridx∈?do
ProversendsC1andtheMerkletreeproofofRootidxforC2underRtoverifier
functionPC.VERIFY_EVAL(πX,X,y=?(X),R)
Proximity:?idx∈?,CY0==<Y0,C1>andEC(Yy0)==CY0
Consistency:?idx∈?,C1==<Y0,C1>andEC(Y1)==C1
y==<r1,y1>
?idx∈?,EC(C1)isconsistentwithROOTidx,andROOTidx’sMerkletreeproofisvalid.
Outputacceptifallconditionsaboveholds.Otherwiseoutputreject.
结语:多项式承诺是一类非常重要的密码学协议,被广泛的应用在许多密码学系统当中,尤其是零知识证明系统。本文详细介绍了多项式承诺Brakedown协议以及和其相关的数学知识,作为FOAKS很重要的底层组件,Brakedown对FOAKS的实例化性能的提升起到了重要作用。
参考文献
:AlexanderGolovnev,JonathanLee,SrinathSetty,JustinThaler,andRiadS.Wahby.Brakedown:Linear-timeandpost-quantumsnarksforr1cs.CryptologyePrintArchive.https://ia.cr/2021/1043.
:XieT,ZhangY,SongD.Orion:Zeroknowledgeproofwithlinearprovertime//AdvancesinCryptology–CRYPTO2022:42ndAnnualInternationalCryptologyConference,CRYPTO2022,SantaBarbara,CA,USA,August15–18,2022,Proceedings,PartIV.Cham:SpringerNatureSwitzerland,2022:299-328.https://eprint.iacr.org/2022/1010
:Bootle,Jonathan,AlessandroChiesa,andJensGroth."Linear-timeargumentswithsublinearverificationfromtensorcodes."TheoryofCryptography:18thInternationalConference,TCC2020,Durham,NC,USA,November16–19,2020,Proceedings,PartII18.SpringerInternationalPublishing,2020.
JustinThalerfromA16zcrypto,MeasuringSNARKperformance:Frontends,backends,andthefuturehttps://a16zcrypto.com/measuring-snark-performance-frontends-backends-and-the-future/
张量积的介绍:https://blog.csdn.net/chenxy_bwave/article/details/127288938
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。