FOA:为什么说 zkRollup 的可行性起源于零知识证明的计算代理思想?

作者:FoxTechCTO林彦熹,FoxTech首席科学家孟铉济

前言

Prover和Verifier之间的计算代理思想是零知识证明的核心内容之一,是调节证明者和验证者工作量于复杂度之间取舍的工具。不同的零知识证明算法本质的不同在于不同程度的计算代理;高度的代理虽然会使验证的计算容易,但是却可能使得证明的复杂度高,从而导致证明耗时长,或是生成的证明大小较大;反之,低程度的代理会使得验证者的开销较大。

图1:零知识证明的计算代理程度影响

计算代理是什么

随着以太坊上应用和用户的扩展,以太主网上的拥堵程度不断提升,使用zkRollup进行Layer2的扩容成为一个很有吸引力的方案,FOX就是专注于使用FOAKS算法进行zkRollup的项目。而zkRollup的可行性,本质上在于使用的零知识证明算法的原理可行性。简单来说,零知识证明算法实现的功能是使得证明者向验证者证明某件事,但又不透露任何关于这件事的信息。zkRollup的构造就是利用了这个性质,使得Layer2的节点可以执行原本在Layer1进行的计算,同时向Layer1节点提供计算正确性的证明。

Olympus社区已批准今年向veBAL和vlAURA持有者提供多达800万美元的投票奖励:3月25日消息,算法稳定币协议Olympus社区已批准在2023年度向veBAL和vlAURA持有者提供多达800万美元的投票奖励,上限为每两周40万美元,用于激励的资产清单包括OHM、USDC、DAI、FRAX。[2023/3/25 13:25:46]

从更广义的角度来说,上述的过程我们可以理解为,由于验证者计算能力有限,所以将这部分的计算代理给了证明者来执行,证明者完成了这个任务,需要返回结果给验证者。从这个角度来说,我们可以说,零知识证明算法使得保障正确性的“计算代理”得以实现。从宏观上这种计算代理的例子可以表现为zkRollup这种形式的应用,具体到零知识算法当中,这种计算代理的思想也有各种应用。

工信部任爱光:“元宇宙热”回归理性,正是行业务实发展好时机:近日,在中国信通院主办的“元宇宙创新探索论坛“上,工业和信息化部科技司副司长任爱光在致辞中指出,历经一年的发展,业界对元宇宙发展热情逐步回归理性,而这正是务实推动行业发展的好时机。

任爱光表示,元宇宙是5G、人工智能、区块链、虚拟现实等新一代信息技术融合创新的集大成应用,能够深度融合数字空间和物理世界,有望催生出一批新产品、新模式、新业态,是具备高增长潜力的未来产业。工信部一方面加强顶层设计,加快谋划元宇宙产业发展,通过“揭榜挂帅”、建设先导区、标准建设、技术攻关等方式,推动人工智能、区块链、虚拟现实等元宇宙技术创新,夯实产业发展根基。另一方面,加快凝聚共识,支持世界人工智能大会、世界数字经济大会、世界VR产业,增设元宇宙议题,汇聚各方力量,加强产业协作。(新京报)[2023/1/18 11:18:05]

本文主要介绍FOAKS使用的在Orion当中提到的Code-Switching所做的令证明者帮助验证者执行的验证计算过程,以及FOAKS如何应用这种技巧进行递归。从而减少了证明的大小以及验证者的开销。

加拿大第三大养老基金Teachers或在FTX事件中面临大额投资损失:金色财经报道,加拿大第三大养老基金Teachers在2021年10月份参与了FTX以250亿美元估值完成的4.2亿美元融资,且在融资公告中被列为第一名,目前该基金拒绝透露投资规模,但指出FTX未被列入其2021年年度报告中超过2亿美元的投资清单中。

据悉这并非加拿大养老基金的第一次失误,加拿大另一家最大的养老金管理公司之一CDPQ此前已注销其对破产的加密借贷平台Celsius Network的1.5亿美元投资。(环球邮报)[2022/11/9 12:38:12]

为什么需要计算代理

从系统的实用性角度来说,很多情况下计算节点的算力是有限的,或者说计算资源是很宝贵的。例如在Layer1链上的所有计算都需要经过所有节点的共识,并且用户需要为此支付高昂的手续费。所以,在这种情况下,将本来由共识节点来处理的计算“代理出去”交给链下节点来完成,就是一种自然的想法,避免消耗链上资源。而这也正是FOX所专注的链下计算服务。

数据:ETH 主力资金在近4小时净流入超2亿美元:10月29日消息,数据显示,在最近4小时里,以太坊的主力资金净流入规模大幅扩大,累计净流入约2.07亿美元。期间,BTC 的主力资金也持续增长,金额达1.23亿美元。[2022/10/29 11:56:42]

从密码学理论角度来讲,在GMR模型当中限定了证明者拥有无限计算能力,验证者拥有多项式计算能力。如果验证者也有无限能力,则零知识证明的基本性质无法满足。所以自然地,将计算向证明者一方倾斜,让证明者承担更多的计算就是很多零知识证明算法设计都会考虑的问题。

当然,为了实现这一点,我们需要特别的技巧。

CodeSwitching

这一节介绍Orion当中使用的CodeSwitching技巧。Orion和FOAKS都使用了Brakedown作为多项式承诺方案,而CodeSwitching是在Orion当中命名的有证明者代替验证者执行验证计算的过程。

元宇宙数字地图公司Spinview完成550万英镑Pre-A轮融资,Alchemmy领投:7月13日消息,总部位于英国伦敦的元宇宙数字地图公司Spinview宣布完成550万英镑Pre-A轮融资,管理咨询公司Alchemmy领投,英国政府创新基金Future Fund和一批天使投资人参投。作为元宇宙的一部分,Spinview结合了来自各种来源的数据并将其可视化,使客户能够理解和观察他们的数据,其工具可以将实物资产映射到数字平台,并使用这些数据远程分析其效率、状况和状态,或衡量利益相关者对虚拟环境的反应方式,目前这家元宇宙公司的主要业务覆盖事建筑、公路和铁路基础设施等。[2022/7/13 2:10:22]

在《一文了解FOAKS当中的多项式承诺协议Brakedown》一文当中我们曾经介绍过,验证者的验证计算为以下的过程:

idxI,C0==<0,C1>andEC(y0)==C0

?idxI,C1==<r0,C1>andEC(y1)==C1

现在如果令证明者承担这部分计算,则证明者除了执行这些计算,还要附上证明值来证明自己的计算是正确的。

做法是将上述等式同样写成R1CS电路:

Statement:

EC(y0)=C0,EC(y1)=C1

idxI,C0=<0,C1>andEC(y0)=C0

idxI,C1=<r0,C1>andEC(y1)=C1

y=<r1,y1>

idxI,EC(C1)isconsistentwithROOTidx,andROOTidx’sMerkletreeproofisvalid.

之后使用Virgo算法进行验证。

FOAKS当中的计算代理

在FOAKS当中同样使用类似的技巧完成计算代理,值得一提的是,FOAKS由于使用了Fiat-Shamirheuristic技巧实现了非交互式证明。想要了解更多,读者可以参考《如何将交互式证明改造为非交互式?Fiat-ShamirHeuristic!》。所以FOAKS的挑战生成和Orion所使用的CodeSwitching方法不同,电路当中也需要加入新的等式:

0=H(C1,R,r0,r1)

I=H(C1,R,r0,r1,c1,y1,c0,y0)

这样之后FOAKS当中的证明者同样生成了代理验证者进行验证的计算证明。而对于验证证明的过程,FOAKS利用算法自身进行迭代,这也是FOAKS实现递归的关键内容。具体内容见《如何设计出一种精妙绝伦的证明递归方案》。

通过一定次数的迭代可以使得证明的大小被压缩,从而极大降低验证者的计算负担以及通信复杂度。这就是FOAKS这个零知识证明方案对FOX这条zkRollup的重大意义。

结语

zkRollup中使用的零知识证明算法的计算代理程度需要被精心设计,必须恰到好处才能使其整体达到最佳效率。而FOAKS算法通过自身迭代的递归实现了可以调节的计算代理,是为专门为zkRollup所设计的零知识证明算法。

参考文献

1.Orion:Xie,Tiancheng,YupengZhang,andDawnSong."Orion:Zeroknowledgeproofwithlinearprovertime."AdvancesinCryptology–CRYPTO2022:42ndAnnualInternationalCryptologyConference,CRYPTO2022,SantaBarbara,CA,USA,August15–18,2022,Proceedings,PartIV.Cham:SpringerNatureSwitzerland,2022.

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

金星链

[0:15ms0-0:860ms