Layer2扩容关键技术:递归零知识证明剖析

在Layer2扩容赛道上,ZkRollup方案以完美的数据可用性以及与Layer1同等级的安全性,备受青睐;以单个Block为处理单元,用零知识证明算法来保证此区块引起的世界状态变化的有效性,大幅降低了每笔交易的上链成本,同时也增长了系统的吞吐效率。然而,在实际的落地过程中,研究者们发现,简单的ZkRollup方案带来的扩容效果,并不能满足真实的场景需求;这和很多因素有关,电路参数的限制,零知识证明算法的效率等等;研究者们做了很多努力,比如对零知识证明算法进行加速,配备超高配置机器,优化电路规模等,虽带来了一定的性能提升,但仍难以满足需求。

研究者们当然希望,链上一次处理的交易越多越好。朝着这个目标出发,研究者们首先发现了聚合证明技术,该技术已经被ZKSwap推出的ZKSpeed扩容方案采用。在前面的文章中,已经解释了聚合证明的原理和思想,简单来说就是把多个区块的证明聚合成一个证明,使得链上一次就可以完成多个区块的验证,大大的降低了交易的平均成本,其原理如下图所示:

Web3钱包Zerion称其App已从AppStore中暂时下架:5月23日消息,Web3 钱包 Zerion 表示其 App 已被 App Store 暂时下架,团队正在努力解决该问题,将实时发布更多进展更新。[2023/5/23 15:21:06]

?该方案虽然有优势,可实现多个区块的证明的一次验证,但也有其一定的局限性:

1.一次聚合的区块是有上限的,受限于电路参数的限制;

2.聚合的区块越多,电路就越大,直到其规模的上限;这种电路生成的证明时间要更长,证明密钥和验证密钥也会占用更大的存储空间;

3.目前可支持的最大聚合粒度是20个区块,也就是凑齐20个区块后,才会开始聚合处理。如果生成证明的效率比较低,这会导致这些区块被确认的时间拉长,尤其是最早生成的那些区块;

Merlin:建议用户撤销钱包在其官网的两个权限:4月26日消息,zkSync生态DEX Merlin发布公告称正在分析协议漏洞,并提醒用户撤销钱包在其官方网站上的连接站点访问权限和签名权限。[2023/4/26 14:27:34]

受限于证明计算和CRS生成复杂度的限制,上述的零知识证明算法是不可扩展的。因此,研究者们也在努力寻找一个可扩展的零知识证明算法,即Scalablezk-SNARKs。

Scalablezk-SNARKs可拓展的zk-SNARKs

在论文《ScalableZeroKnowledgeviaCyclesofEllipticCurves》中,EliBen-Sasson等给出了Scalablezk-SNARKs的定义:

Fewstones与TripleA合作接受视频制作服务的加密支付:金色财经报道,新加坡视频制作公司Fewstones与TripleA合作,接受加密货币支付。据了解,TripleA是新加坡金融管理局 (MAS) 许可的加密货币支付网关,FewStones是一家领先的视频制作公司,受到全球500多个品牌的信赖。[2023/3/8 12:50:09]

1.Keygenerationischeap:即,Key生成的时间和计算复杂度没有关系;

2.Proofgenerationiscarriedoutincrementally:即,证明生成过程既包含了当前执行步骤的正确性又包含了在此之前所有计算的正确性,这种zk-SNARKs是incrementallycomputable;

币安比特币钱包过去24小时增加近600枚BTC,当前余额50万枚上方:金色财经报道,据Coinglass数据显示,币安交易所比特币钱包过去24小时已增加558枚BTC,当前其比特币钱包余额已升至50万枚BTC上方,本文撰写时达到501,393.83枚BTC。[2022/12/20 21:56:23]

为了方便大家理解,用一张图来表示上述思想:

上图表示意思是:证明着证明一个递归计算过程,即:初始状态为S0,经过t次函数F迭代计算后的结果为St。

第一个计算方式,Monolithicoption:证明方P把t次计算过程全部写成电路,然后一次性证明,正如我们前面所列举的一样,存在相同的局限性,很高的时间复杂度和空间复杂度;

安全团队:被标记为孙宇晨的地址从Aave撤回5000万枚BUSD:10月21日消息,据派盾(PeckShield)监测,被标记为孙宇晨的地址从Aave V2中撤回5000万枚BUSD,此外该地址还向Paxos Treasury相关地址转入7000万枚BUSD。[2022/10/21 16:33:47]

第二个计算方式,Recursiveoption:递归计算,其过程如下:

1.首先对于初始状态S0=>S1,证明方P对于S1?=F(S0)计算过程生成一个证明π1;

2.对于S1=>S2的转换,由图中可以得知,证明方P证明了两部分:{S2?=F(S1),V(S1,π1)=1},前半部分保证了当前计算的有效性,后半部分保证了上一步计算过程的有效性;由于在zk-SNARKs里,证明生成的时间比原始计算要快一些,因此,对于验证过程进行证明是合理的;

由此可以看出,?Recursiveoption满足Scalablezk-SNARKs了基本要求:

1.Key的生成和循环次数没有关系,取决于单次F的复杂度,如果是generalzk-SNARKs,只取决于安全参数;

2.证明满足incrementallycomputable,每个证明都包含了在此之前所有计算的有效性;

3.证明的大小固定,和迭递归次数t没有关系;

由上可知,Scalablezk-SNARKs采用了Recursive思想,即当前的Prove过程包含上一步的验证过程电路,具体如下图所示:

可以看到,P2证明电路里,包含了上一步P1的验证过程电路。需要注意的是,P1对应的V在域Fq上,P2的证明过程在Fr上,如何在Fr上表示V的算术电路,是一个值得探讨的过程;由于Cv可以看作是P的一个子电路,因此,q需要满足?q=#E(Fr)或者?q整除?#E(Fr),即q整除rk?-1,因此:

尝试1.理想的情况下,如果?r=q,那么在Fr上,能完美表示Fq上的V的算术电路,但是根据上述原理,r!=q恒成立;

尝试2.对于q!=r,因为需要在Fr上去模拟Fq上的计算,会导致计算复杂度的提高log(r)倍;

尝试3.采用椭圆曲线循环,可以完美实现Recursive过程;

具体的,选取两个大素数,r和q。满足r=#E(Fq)和q=#E(Fr),即,当前群的域等于另外一个群的阶,反之亦然。因此,域Fq上的证明方P可以完美的在Fq上实现Fr上的验证电路,域Fr上的证明方P也可以在Fr上实现Fq上的验证电路;因此不会出现尝试2里面的缺陷。

下面表格列举常用的cycleofellipticcurves

写在最后

通过采用递归证明组合密码技术(RecursiveProofComposition),zk-SNARKS变成了Scalablezk-SNARKs,实现了更高效、简洁的零知识证明算法,并能真实的落地应用。即将发布主网的Mina就采用了这种技术实现了简洁的区块链,即固定大小的链,保持在22KB左右;同时,其他的技术团队包括MatterLabs、starkWare等也在计划采用Scalablezk-SNARKs技术来实现Layer2更高的扩容。ZKSwap团队在Layer2赛道上持续发力,在Scalablezk-SNARKs上亦有所突破,相信不久就会应用于新的版本上。

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

银河链

波场黎天王解币3.30晚间行情分析

  要想在一生中获得投资成功,并不需要顶级的智商,超凡的商业头脑或内幕消息,而是需要一个稳妥的知识体系作为决策基础,并且有能力控制自己的情绪,使其不会对这种体系造成侵蚀.

[0:15ms0-2:398ms