以太坊二层扩容解决方案OP提出了宏大的发展蓝图,高度可拓展、可互操作的区块链模块化堆栈—— OP Stack。
但目前的一些介绍文档比较晦涩难懂,很多人并不理解OP Stack是什么以及它到底想做什么?
本文旨在用通俗的语言讲清楚OP Stack是什么,以及它的实现逻辑,有没有潜力。
分层架构
简单来讲,OP Stack是为了实现模块化区块链架构的软件堆栈,也是OP探索模块化从理论到实践的伟大实现路径尝试。
OP把区块链细分为以下3大功能层级:共识层、执行层和结算层。而共识层下又分为数据可用性(DA)层和推导(Derivation)层。
DA 层
数据可用性层,顾名思义,即数据存放的地方,更具体地,是blobs的有序数列。一些DA层的例子:如以太坊DA以calldata函数形式存在于链上。
CelestiaOrg有单独的数据可用性层等。DA函数实现:转化成字节流数据以供解析。
推导层
推导层也是OP Stack的重要结构之一,它能够根据DA层和当前的Rollup状态进行解析,生成负载以供Layer 2执行L1上的任何相关信息都能通过derive函数整合成负载。
当然也存在着L1上没有发布任何交易的情况,此时函数输出nul。
执行层
执行层的函数实现即状态交易函数(STF: State Transaction Function)的实现,基于初始状态和推导层产生的负载,执行层通过execute函数实现Rollup状态的更新。
the loop of STF
推导层和执行层是共同运行、相辅相成的,形成一个循环往复的环状结构。
如果L1上没有发布新数据,derive函数输出null, 重新执行该流程直到产生负载,执行层函数通过负载进行状态更新,更新后的状态又作为初始状态进入到derive函数。
结算层
结算层的作用是对交易进行验证并生成承诺,获取L2的状态跟具体的函数实现形式也非常直白,Valid函数基于Rollup的初始状态和更新状态,DA推导和执行函数,以生成布林值。
DA通过getBlobByIndex函数获取,此处的证明机制可以是OP的欺诈证明,也可以是zk的有效性证明。
总结:
1.OP stack将不同的功能层级进行解耦,并以API软件堆栈的形式把所有层级组合起来,极大地简化了模块化区块链构建的流程。
从理论上讲,OP Stack能构建任何基于其API的模块化区块链。开发者也无需从0到1构建区块链,基于OP Stack现成的代码库能实现模块化区块链的快速部署。
2.模块化堆栈给开发人员带来了更大的自主性,能够切换、替换、修改不同模块层级,就像切换API一样具体的应用如某条链可以把DA层由以太坊替换成CelestiaOrg,实现DA层分离,执行层的欺诈证明模块切换成有效性证明实现OP rollup向zk Rollup的转换。
3.OP提出区块链的终局既非多链也非单链结构,而是由一组高度集成的OP Stack链组成的“超级链”结构。
白话区块链|同步全球区块链资讯、区块链快讯、区块链新闻
本站所有文章数据来源:金色财经
本站不对内容真实性负责,如需转载请联系原作者
如需删除该文章,请发送本文链接至oem1012@qq.com