自2022年9月“合并”(The Merge)成功以来,以太坊从工作量证明(PoW)机制正式过渡到权益证明(PoS)机制,这一历史性的转变不仅极大地降低了以太坊的能耗,也引发了广大用户和投资者对网络运行细节的关注,其中最核心的问题之一便是:转PoS之后,以太坊的交易手续费(俗称“Gas费”)到底是怎么计算的?

要理解这个问题,我们首先需要回顾一下PoS时代Gas费的“新面貌”。

PoS之后,Gas费的核心构成:基础费用 + 优先费用

在PoW时代,Gas费主要由用户愿意为交易支付的最高Gas价格和Gas使用量决定,矿工优先打包Gas价格高的交易,进入PoS时代,虽然“Gas”这个概念和单位(Gwei)依然被沿用,但其费用的构成和分配机制发生了根本性的变化。

以太坊2.0(PoS)将每一笔交易的Gas费分成了两个主要部分:

  1. 基础费用(Base Fee)
  2. 优先费用(Priority Fee,也称小费)

如果交易涉及到“数据计算”(将数据写入合约),还会产生一笔费用(Fee),但这部分通常包含在基础费用和优先费用的计算中,我们主要关注前两部分。

基础费用(Base Fee):自动调节的“网络拥堵税”

基础费用是以太坊网络为了处理交易而收取的固定费用,它由网络协议自动计算和燃烧(销毁),不属于验证者(矿工的替代者)的收入。

  • 如何计算? 基础费用的计算与当前网络的“区块Gas限制”(Block Gas Limit)“目标Gas限制”(Target Gas Limit)密切相关。

    • 目标Gas限制:每个区块可以包含的Gas量的理想值(目前为30,000,000 Gas)。
    • 区块Gas限制:实际每个区块允许包含的最大Gas量,由验证者提议,但不能超过目标Gas限制的2倍。

    当网络拥堵时(即前一区块的Gas使用量接近或达到区块Gas限制),基础费用会呈指数级上升,反之,当网络空闲时,基础费用会缓慢下降,这种机制被称为“EIP-1559”,旨在通过动态调整基础费用来抑制网络拥堵,并使Gas费更加可预测。

  • 关键特点

    • 自动燃烧:基础费用会被直接发送到“燃烧地址”(0xDead...),永久销毁,从而减少以太坊的总供应量,具有通缩效应。
    • 用户无法直接控制:你无法设定基础费用的高低,它由网络状态自动决定。

优先费用(Priority Fee):支付给验证者的“小费”

优先费用是用户自愿支付给验证者的费用,目的是为了激励验证者优先打包你的交易,在PoS机制下,验证者负责提议新区块并验证其他验证者的区块,他们需要从交易中获得激励。

  • 如何计算? 优先费用 = 你设置的优先费用上限(Priority Fee Cap) × 交易消耗的Gas量。

    • 优先费用上限(Priority Fee Cap):这是你可以自定义的部分,在大多数钱包(如MetaMask)中,你会看到“Max Priority Fee”或类似的设置,你设置的值越高,验证者打包你交易的意愿就越强,尤其是在网络拥堵时。
    • 实际收取的优先费用:如果你的优先费用上限高于网络平均水平,你实际支付的优先费用可能只是网络平均水平或你设定的上限(取较低者),如果你设定的上限过低,交易可能长时间不被打包。
  • 关键特点

    • 验证者收入:这是验证者主要的交易手续费收入来源。
    • 市场竞争:类似于PoW时代的“矿工费”,优先费用的高低取决于市场竞争程度。

总Gas费的计算公式

综合以上两部分,一笔交易的总Gas费可以通过以下公式计算:

总Gas费 = (基础费用 + 优先费用上限) × 交易消耗的Gas量

或者更精确地说,实际支付的总Gas费 = (实际基础费用 + 实际优先费用) × 交易消耗的Gas量,其中实际优先费用不超过你设置的优先费用上限。

举个例子:

假设你想发送一笔ETH转账:

  • 当前网络的基础费用随机配图