概述

本文介绍了由 L1 上的交易或事件触发的 L2 存款交易的存款流程。在 Optimism 术语中,“存款交易”是指由 L1 上的交易或事件触发的任何 L2 交易。

本文的结构安排如下:

  1. 介绍op-node为存款交易新增的交易类型DepositTx
  2. 介绍一笔存款交易在L1的执行过程
  3. 介绍一笔存款交易在L2的执行过程

整体流程

screenshot-20250329-153436.png

DepositTx

EIP-2718

以太坊中的交易类型如下:

// Transaction types.
const (
	LegacyTxType     = 0x00   //传统交易类型
	AccessListTxType = 0x01   //访问列表交易,符合**EIP-2718**规范
	DynamicFeeTxType = 0x02   //EIP-1559动态手续费交易,符合**EIP-2718**规范
	BlobTxType       = 0x03   //坎昆升级引入的Blob交易类型,符合**EIP-2718**规范
	SetCodeTxType    = 0x04   //Pectra升级引入的EIP-7702实现,符合**EIP-2718**规范
)

op-node中新增的DepositTxType 也是一种符合EIP-2718规范的交易,这里为EIP-2718规范做一个简单说明:

RLP([nonce, gasPrice, gasLimit, to, value, data, v, r, s])

//这里||是字节/字节数组连接运算符
TransactionType || TransactionPayload

上述字段的定义: