本文档是关于rollup node的规范,重点介绍了rollup driver的职责,即从L1链派生L2链的过程,包括从L1选择输入、生成payload attributes以及将payload attributes传递给执行引擎等步骤。同时,还介绍了Rollup节点提供的RPC方法optimism_outputAtBlock,该方法用于获取L2输出根。
<!-- 本文件中所有的词汇表引用。 -->
Rollup 节点是负责从 L1 区块(及其相关的收据)推导 L2 链的组件。
rollup 节点中推导 L2 链的部分称为 rollup 驱动。本文档目前只关注 rollup 驱动的规范。
<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- 不要编辑此段落,请重新运行 doctoc 以更新 --> 目录
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
这个过程分为三个步骤:
虽然从概念上讲,这个过程是从 L1 链到 L2 链的纯函数,但实际上它是增量的。每当新的 L1 区块被添加到 L1 链时,L2 链就会被扩展。类似地,每当 L1 链发生重组时,L2 链也会重组。
有关 L2 区块推导的完整规范,请参阅 L2 区块推导文档。
Rollup 节点有自己的 RPC 方法 optimism_outputAtBlock
,它返回一个 32 字节的哈希值,对应于 L2 输出根。
这里的输入和返回类型由引擎 API 规范定义。
optimism_outputAtBlock
blockNumber
: QUANTITY
,64 位 - L2 整数区块号 </br>
OR String
- "safe"
、"latest"
或 "pending"
之一。version
: DATA
,32 字节 - 输出根版本号,从 0 开始。l2OutputRoot
: DATA
,32 字节 - 输出根。
- 原文链接: github.com/ethereum-opti...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!