mt logoMyToken
Market cap:
0%
FGI:
0%
Cryptocurrencies:--
Exchanges --
ETH Gas:--
EN
USD
APP
Ap Store QR Code

Scan Download

深度研究OP价值:区块链模块化堆栈—— OP Stack

Collect
Share

以太坊二层扩容解决方案 op 提出了宏大的发展蓝图,高度可拓展、可互操作的区块链模块化堆栈—— OP Stack

 

但目前的一些介绍文档比较晦涩难懂,很多人并不理解OP Stack 是什么以及它到底想做什么?

 

本文旨在用通俗的语言讲清楚OP Stack是什么,以及它的实现逻辑,有没有潜力

 

分层架构 

 

简单来讲,OP Stack是为了实现模块化区块链架构的软件堆栈,也是 op探索模块化从理论到实践的伟大实现路径尝试

 

op把区块链细分为以下3大功能层级:共识层、执行层和结算层。 而共识层下又分为数据可用性(DA)层和推导(Derivation)层


FaCp2IbCFzPa1FCqM0ABHlAO3tdqAt4qq6tixJ8D.png

DA 层 

 

数据可用性层,顾名思义,即数据存放的地方,更具体地,是blobs的有序数列。 一些DA层的例子:如以太坊DA以calldata 函数形式存在于链上

 

CelestiaOrg有单独的数据可用性层等。DA函数实现:转化成字节流数据以供解析

G6bY2tT8qQHuBYV758T7SkSGlhMM3U1rkzc4fVba.png

 

推导层 

 

推导层也是OP Stack 的重要结构之一,它能够根据DA 层和当前的Rollup 状态进行解析,生成负载以供Layer 2 执行 L1 上的任何相关信息都能通过derive 函数整合成负载

 

当然也存在着L1 上没有发布任何交易的情况,此时函数输出nul

 

执行层 

 

执行层的函数实现即状态交易函数(STF: State Transaction Function)的实现 基于初始状态和推导层产生的负载,执行层通过execute 函数实现Rollup 状态的更新

 

the loop of STF  

 

推导层和执行层是共同运行、相辅相成的,形成一个循环往复的环状结构  

 

如果L1 上没有发布新数据,derive 函数输出null, 重新执行该流程直到产生负载 执行层函数通过负载进行状态更新,更新后的状态又作为初始状态进入到derive 函数

 

lAAOMotjWFxIBzC0AQlN96PQrZTKWkx7nIWpPG1p.png

 

结算层 

 

 结算层的作用是对交易进行验证并生成承诺,获取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 链组成的“超级链”结构 

 

 未来,通过共享消息传递格式,基于OP Stack 的链能够进行相互通行,实现互操作性,从而实现“超级链”的愿景

欢迎志同道合的币圈人一起探讨~

感谢阅读,喜欢的朋友可以点个赞关注哦,我们下期再见!

Disclaimer: The copyright of this article belongs to the original author and does not represent MyToken(www.mytokencap.com)Opinions and positions; please contact us if you have questions about content