区块浏览器把一笔交易标成Type 2或Type 3,不是在给它打安全分,也不是成功状态。Type描述交易按哪套规则编码、携带哪些字段;是否执行成功要看回执status,调用是否符合你的意图还要看to、input、logs与授权。
EIP-2718为这些类型提供统一信封:首字节标识TransactionType,后面payload由对应EIP解释。Legacy交易则保留旧的RLP格式。
五种类型速查
| 浏览器常见标签 | 标准 | 主要新增能力 | 核验重点 |
|---|---|---|---|
| Type 0 | Legacy | 传统gasPrice交易 | chainId签名、防重放、gasPrice |
| Type 1 | EIP-2930 | accessList | 列表条目与预付Gas |
| Type 2 | EIP-1559 | 动态费率 | maxFee、priority fee、base fee |
| Type 3 | EIP-4844 | Blob数据与独立费用 | blob hashes、blob fee、L2发布方 |
| Type 4 | EIP-7702 | set-code授权列表 | authorization链、nonce、委托目标 |
Type 0是行业界面对Legacy交易的常用编号表达;它本身没有2718类型前缀。理解这一点,可以避免把“0”误当作失败或空交易。
Type 1:访问列表交易
EIP-2930的0x01交易加入chainId与accessList,同时仍使用单一gasPrice。accessList预声明将访问的地址和storage key,使它们在本次执行开始时变成暖状态,但每个条目要先收内在Gas。
因此Type 1不是自动省费模式。列表没有命中执行路径时可能更贵;钱包显示Type 1也不说明合约可信。访问列表的成本计算应单独对照当前EIP规则。
Type 2:现在最常见的动态费率交易
EIP-1559把gasPrice拆成maxFeePerGas与maxPriorityFeePerGas,并由区块给出base fee。用户设置愿意支付的总上限和优先费上限,实际单价受区块base fee约束。Type 2也可携带accessList。
交易失败仍可能产生执行费用,因为节点已经消耗计算资源。实际gasUsed与effectiveGasPrice要从回执读取,参见以太坊交易回执字段。
Type 3:Blob不是普通calldata
EIP-4844的0x03交易服务于Blob数据发布,增加maxFeePerBlobGas和blobVersionedHashes等字段。Blob有独立费用市场,数据不会像普通calldata那样永久留在执行层供合约直接读取。
普通L2用户通常不是自己构造Type 3,而是由rollup批次发布者提交。看到Type 3,应分别核对执行Gas和Blob费用;Blob基础与L2费用关系可读Blob交易是什么,实时字段意图可参考以太坊Blob费用怎么看。
Type 4:为EOA设置代码委托
EIP-7702定义0x04 set code transaction,携带authorization_list,让外部账户在授权条件下把代码执行委托给目标地址。它为批量操作、代付等智能账户体验提供基础,也引入新的签名与委托核验要求。
Type 4不是“钱包升级后永远安全”。要确认授权的chainId、目标地址、nonce、签名者,以及当前委托代码会做什么。授权风险与撤销边界可结合EIP-7702授权风险防护。
同一笔交易要分四层看
第一层看type,确认编码与字段集合。第二层看签名和发送者,确认谁授权。第三层看费用,确认Gas上限、实际消耗和Blob费用。第四层看执行结果,读取status、logs、状态变化与业务结果。
只看type会漏掉大部分风险:Type 2可以调用恶意合约,Type 3也可能发布错误批次数据,Type 4的授权列表可能指向不可信代码。反过来,Type 0并不天然不安全,它只是沿用旧格式。
RPC和浏览器显示差异
不同工具可能显示十进制0到4、十六进制0x0到0x4,或直接写Legacy、EIP-1559、Blob。某些老节点和SDK若不认识新类型,会拒绝解码或漏掉字段。读取数据时应记录节点版本和max supported transaction type,不要把工具错误当作链上交易无效。
签名前怎样把type变成可执行的核对项
先从原始序列化消息或钱包高级详情页确认type,再按该类型核对必填字段:Type 1看accessList,Type 2看两个费率上限,Type 3额外看blob哈希与Blob费上限,Type 4则逐条展开authorization list。然后统一检查目标链、nonce、to、value、input和预估Gas,最后在回执中确认执行状态与实际费用。
若钱包只展示“普通交易”而隐藏类型专属字段,不宜继续高金额签名。可用另一个独立解码器或节点交叉读取消息,但不要把未签名原始交易上传到来源不明的网页。
本文用于以太坊交易格式与钱包核验教育,不构成交易或授权建议。未来可能增加新的EIP-2718类型,既有类型也可能随网络升级获得新验证边界。签名前请以钱包原始消息、当前协议规范和目标链实现交叉核验。
发表评论
还没有评论,来说两句吧。
评论区为展示样式,提交不会被处理。