全球数字财富领导者
财富汇
|
美股投研
|
客户端
|
旧版
|
北美站
|
FX168 全球视野 中文财经
首页
资讯
速递
行情
日历
数据
社区
视频
直播
点评旗舰店
商品
SFFE2030
外汇开户
登录 / 注册
搜 索
综合
行情
速递
日历
话题
168人气号
文章
如何设计出一种精妙绝伦的证明递归方案
go
lg
...
要使用下面提到的递归证明(Proof
Recursion
)。 Halo2以及STARK所用证明递归方案 为了更好的说明什么是递归证明,我们回到上面的例子。 Alice的7张照片实际上是7个证明。现在考虑将它们合并起来,于是Alice可以在1号拍好照片,在2号拿着这张照片和2号的报纸拍照片,在3号再拿着2号拍的照片和3号的报纸拍照片。以此类推,Alice在7号拿着6号的照片和7号的报纸拍下最后一张照片,而其他小伙伴在看到7号的这最后一张照片,就可以验证在1~7号Alice都去了公园。可以看到,之前的七张证明照片,被压缩成了一张。而在这个过程中的一个关键技巧,即是“包含照片的照片”,相当于将之前的照片以递归的形式嵌套进了之后的照片当中。这跟把很多照片放一起再拍个照片是不同的。 zkRollup的递归证明技巧可以大幅压缩证明大小。具体来讲,每一笔交易都会生成一个证明,我们设原始的交易计算电路为C0,P0为C0的正确性证明,V0为验证P0的计算过程,证明者(Prover)将V0也转化为对应的电路,记作C0’。此时,对于另一笔交易的证明计算过程C1,就可以将C0’和C1的电路合并,这样一来,一旦验证了合并后的电路的正确性证明P1,就相当于同时验证了以上两笔交易的正确性,也就是实现了压缩。 而回顾上述过程可以发现,其实压缩的原理在于将验证证明的过程又转化为了电路,然后生成“对于证明的证明”,所以从这个角度来说,是一种可以不断向下递归的操作,因此也被成为递归证明。 图2:Halo2与Stark所使用的递归证明方案 Halo2与STARK所采用的Proof
Recursion
方案能够并行生成证明,并将多个证明进行合并,使得验证一个证明值的同时可以验证多个交易执行的正确性,那就能够压缩计算的开销,从而极大的提高系统的效率。 然而,这样的优化仍然停留在具体的零知识证明算法之上的层次,为了进一步提高效率,我们需要更底层的优化和创新,Fox设计的FOAKS算法通过将递归的思想应用在一个证明的内部做到了这点。 FOAKS所使用的证明递归方案 在Fox Tech是一个zkEVM-based的zkRollup项目。在它的证明系统中,同样使用递归证明的技巧,但是内涵与上述递归方式有不同之处,主要的区别是Fox是在一个证明的内部使用了递归(
Recursion
)的思想。为了表达出Fox所使用的递归证明的那种不断将要证明的问题约化,直到约化后的问题足够简单的核心思想,我们需要再举一个例子。 在上面的例子,Alice通过拍照证明自己在某天去了Fox公园,于是Bob提出了不同的建议,他认为证明Alice去过公园的问题可以被约化为证明Alice的手机去过了这个公园,而证明这件事又可以被约化为证明Alice手机的定位在公园的范围里。因此,为了证明Alice去过这个公园,她只要在公园的时候用她的手机发送一个定位就行了。如此一来证明的大小就从原本的一张相片(一个很高维的数据)变为一个3维的数据(经纬度和时间),有效的节约了成本。这个例子并不完全恰当,因为也许有人会质疑Alice的手机到过Fox公园不代表Alice本人到过,但是在实际的情况中,这个约化过程是数学形式上严格的。 具体而言,Fox的递归证明的用法是在电路层面的递归。在进行零知识证明的时候,我们会将要证明的问题编写成电路,接着通过电路计算出一些需要满足的等式。而与其展示这些等式是满足的,我们再次将这些等式编写成电路,如此往复,直到最后要证明满足的等式变得足够简单,我们便能轻松的直接证明了。 从这个过程当中我们可以看出,这么做更贴近“递归”的含义。值得一提的是不是所有算法都可以使用这个递归技术,假设每一次递归会将复杂度为O(n)的证明变为一个O(f(n))的证明,而这个递归过程本身的计算复杂度是O(g(n)),则递归一次后总计算复杂度就变为O1(n)=O(f(n))+O(g(n)),两次后就是O2(n)=O(f(f(n)))+O(g(n))+O(g(f(n))),三次后就是O3(n)=O(f(f(f(n))))+O(g(n))+O(g(f(n)))+O(g(f(f(n)))),...,以此类推。因此,只有在f和g两个对应算法特性的函数满足对某个k有Ok(n) 图3:ZK-FOAKS所使用的递归证明方案 结语 证明的复杂度一向是零知识证明应用中最重要的关键之一,证明复杂度这个性质随待证明的事情越来越复杂会变得越来越重要,特别是在像zkEVM这样的巨型ZK应用场景中,证明的复杂度会对产品的性能与用户的体验造成决定性的影响。而在众多降低最终证明的复杂度的方法中,对核心算法的优化最为重要,Fox在最前沿算法的基础上设计出了精妙绝伦的递证明方案,并利用这项技术打造出最适合于zkEVM的ZK-FOAKS算法,有望成为zkRollup界的性能担当。 参考文献 https://blog.csdn.net/weixin_44383880/article/details/126338813 https://blog.csdn.net/freedomhero/article/details/126727033 来源:金色财经
lg
...
金色财经
2023-02-20
zkVM 生存之道 一文详解派系之争
go
lg
...
不必去管 Keccak :) 递归 (
recursion
):这是一个很大的话题,笔者倾向于不在该报告进行深入研究。需要知道的是,随着 Risc0 倾向于支持更复杂的用例 / 程序,更迫切地需要递归。为了进一步支持递归,他们目前正在研究一个硬件端的 GPU 加速方案。 处理非确定性 (non-determinism):这是 ZKVM 必须处理的一个属性,而传统的虚拟机是没有这个问题的。非确定性可以帮助虚拟机执行得更快。MLIR 相对更擅长处理传统虚拟机方面的问题,而 Risc0 如何将非确定性嵌入到 ZKVM 系统设计中值得期待。 WHAT EXCITES ME: a.简单且可验证! 在分布式系统中,PoW 需要高水平的冗余,因为人们不信任他人,因此需要重复执行相同的计算来达成共识。而通过利用零知识证明,状态的实现应该和同意 1+1=2 一样容易。 b.更多更实际的用例: 除了最直接的扩容外,更多有意思的用例将变得可行,比如零知识机器学习、数据分析等。相比于 Cairo 这样的特定的 ZK 语言,Rust/C++ 的功能更普适且更强大,更多 web2 的用例跑在 Risc0 VM 上。 c.更具包容性 / 成熟的开发者社区: 对 STARK 和区块链感兴趣的开发者不必再重新学习 DSL,使用 Rust/C++ 即可。 感谢 Xin Gao、p0xeidon 的 Boyuan、Taiko 的 Daniel 以及 Sin7Y 对本文的支持和修改建议! 来源:金色财经
lg
...
金色财经
2023-01-31
上一页
1
2
3
4
5
6
下一页
24小时热点
特朗普刚刚重大发声:这是一件对美国来说是“生死攸关”的事!
lg
...
两大投行齐声警告:全球股市或将迎来“现实回调”、未来两年恐跌10%至20%
lg
...
“大空头”再出手!全球市场集体跳水:美股、比特币、黄金、原油竞相下跌
lg
...
中美突发重磅!特朗普正式敲定与习近平的芬太尼及对等关税削减协议
lg
...
【黄金收评】令人震惊的行情!金价暴跌近70美元 黄金猛烈回调的原因在这
lg
...
最新话题
更多
#AI热潮:从芯片到资本的竞赛#
lg
...
19讨论
#SFFE2030--FX168“可持续发展金融企业”评选#
lg
...
36讨论
#VIP会员尊享#
lg
...
1989讨论
#比特日报#
lg
...
12讨论
#Web3项目情报站#
lg
...
6讨论