什么是 Ethereum gas?工作原理指南

Ethereum 费用模型的深度解读——gas、Gwei、base fee 与 priority tip——由 ChainGate.

如果你在 Ethereum 上发过交易,就一定付过 gas。但尽管 gas 这个词随处可见,它仍被普遍误解——多数人以为它是另一种必须购买的 token。其实不是。本指南拆解 gas 究竟是什么、Ethereum 为什么需要它,以及钱包里看到的那笔费用是如何由几个可知的小部分组合而成的。

简要版

  • Gas 是计量单位,不是币。它用来计量一笔交易执行了多少计算工作。
  • 你真正花掉的资产是 ether (ETH)。Gwei 只是 ether 的一个小面额,让数字更易读。
  • 费用就是直白的乘法:gas used × price per gas
  • 价格会随需求上下浮动,但公式从不改变。

1. Gas 是计量单位,不是 token

关于 Ethereum gas 最大的困惑源头,是以为它是某种需要先去购买才能交易的独立货币。其实不是。你永远不会在钱包里看到 gas 余额,不能把 gas 转给朋友,也没有哪家交易所挂牌交易 gas。Gas 只是一个数字——由网络在处理交易时产生的工作量计数。

最贴切的日常类比是加油站的油量表。汽油的升是单位,你用钱为它付费。同样地,gas 的单位就是单位,你用 ether 为它付费。在加油站买油并不会把钱换成另一种货币,在 Ethereum 上付 gas 也不会把 ether 换成另一种货币。Ether 离开你的钱包,网络消耗掉 gas,仅此而已。

为什么要用两个概念?因为在 Ethereum 上运行一项操作的成本,与 ether 的市场价格是相互独立的两件事。转 token 所涉及的工作量多年没变,但 ether 的价格每秒都在波动。把工作量(gas)与货币(ether)分开,能让协议稳定地为计算定价,同时让市场自由地为资产定价。

2. Ethereum 为什么需要 gas

Ethereum 是一台公开、共享的计算机。任何人都可以提交代码让它执行。若不附加成本,显而易见的失败模式就是洪水攻击:单个用户让网络跑一个无限循环,就能让所有人陷入停摆。Gas 正是为了防止这种情形。每项操作都有固定的 gas 成本,每笔交易都必须声明它将消耗的 gas 上限,超出即刻停止。

Gas 同时承担三项职责。它限定一笔交易能执行的工作量,让失控代码无法阻塞网络。它为区块空间定价——每个区块都有有限的 gas 预算,用户会竞争块内的位置。它还向做工作的 validator 支付报酬——没有奖励就没人愿意运行维护网络的硬件。

3. 费用的构成:单位乘以价格

每一笔 Ethereum 费用都是两个数字的乘积,熟悉这两者就完成了大半功课:

  1. Gas used —— 一笔交易有多重,以工作单位计。纯 ether transfer 正好是 21,000 个单位;token transfer 大约 50,000 个单位;在去中心化交易所上的一次 swap 可能是 150,000 或更多。
  2. Price per gas —— 你为其中每个单位支付多少,以 gwei 报价。这是随需求浮动的那根杠杆。

两者相乘即得以 gwei 计的费用。除以十亿就得到以 ether 计的费用。这就是整个模型。

4. Wei、gwei 与 ether:单位详解

Ether 只有一个基础单位叫 wei。其他所有名称都只是不同数量 wei 的标签。这些名字存在是因为用纯 ether 或纯 wei 书写费用都不方便:ether 费用是极小的小数,wei 数值则是巨大的整数。Gwei 正好居中,读起来干净。

单位折合 wei折合 ether用途
wei110⁻¹⁸协议层面的内部记账
gwei10⁹10⁻⁹报 gas price 与 tip
ether10¹⁸1余额与 transfer 金额

当钱包告诉你费用是 30 gwei 时,意思是网络目前为你交易消耗的每一单位 gas 收取 300 亿 wei。乘以 transfer 的 21,000 gas,就得到 630,000,000,000,000 wei,或 0.00063 ether。同一数值,三种写法。

5. Base fee 与 priority tip:价格如何构建

在名为 EIP-1559 的升级之前,用户各自出价,通过一场盲拍竞争。升级之后,你为每单位 gas 付的价格被拆成两部分:

  • Base fee 由协议本身设定。每个区块都会根据上一块比其目标更满还是更空,按小幅百分比自动上调或下调。Base fee 会被销毁——从流通中移除——而非支付给任何人,这让 ether 在活动高峰期略带通缩性。
  • Priority tip 是你选择额外附加,用以吸引 validator 的金额。Tip 越高,你的交易越靠前。Tip 支付给把你纳入区块的那位 validator,作为他们承接你工作的奖励。
  • Max fee 是你愿意为每单位支付的上限,也就是 base fee 加 tip 的总和。若 base fee 爬升到你的上限之上,你的交易就静静等待,直到条件降温。

合起来看:你为每单位 gas 支付 base fee 加 tip,但不会超过你的 max。当网络平静,钱包通常建议 1 或 2 gwei 的 tip,而 base fee 是主要部分。当活动激增,base fee 膨胀,tip 占比则变小。

6. 常见操作及其典型 gas 成本

一笔交易消耗多少 gas 取决于它做了什么。以下是大致数字——具体数字因合约而异——但能让你对相对重量有个直观感受:

操作典型 gas
向其他钱包发送 ether21,000
授权一个 token 合约~46,000
转账 ERC-20 token~50,000–65,000
在去中心化交易所上 swap~120,000–250,000
铸造一个典型 NFT~100,000–300,000
部署 smart contract500,000–3,000,000+

注意,发送 ether 与铸造 NFT 之间,单是 gas 的成本差就超过十倍,这还没算上当日每单位价格的差异。重的操作,不论网络平静还是繁忙,都一样重。

7. 价格为什么会波动

每个 Ethereum 区块都有一个 1500 万 gas 的软目标和 3000 万 gas 的硬上限。Base fee 在每个区块后按一条规则调整:若上一块消耗超过目标,就略微抬高 base fee;若少于目标,则略微下调。每个区块的最大变动约为 12.5%。

结果是一个自我调节的价格。当对区块空间的需求上升,base fee 会稳步攀升,直至链变得足够贵,愿意交易的人减少。当需求回落,base fee 又会下沉,直到活动回温。没有中心化的运营方定价,也没有拍卖——只有一个在相邻区块之间不断运转的反馈回路。

由此有两条实用的启示。其一,费用并非随机:静谧时段确实更便宜,不紧急的交易可以等待。其二,你偶尔看到的峰值并非永久。一阵突发需求会把 base fee 推高几个区块,但压力一消散,它总会回落。

8. 端到端示例演算

假设你想发 0.1 ether 给朋友。把数字走一遍:

  1. 一笔纯 transfer 消耗已知固定的 21,000 gas
  2. 你的钱包读取最新区块,报出 28 gwei 的 base fee。
  3. 你保留建议的 priority tip 2 gwei
  4. 每单位有效价格:28 + 2 = 30 gwei
  5. 以 gwei 计的总费用:21,000 × 30 = 630,000 gwei
  6. 换算为 ether:630,000 ÷ 10⁹ = 0.00063 ether

这 0.00063 ether 里,较大的那份(28/30)由协议销毁、从流通中移除;较小的那份(2/30)归把交易打包的 validator。你的朋友无论如何都会收到完整的 0.1 ether——费用是在转账金额之外另行收取,而非从中扣除。

9. 值得厘清的误解

"我得先买 gas 才能交易。"
不用。你只需要 ether。交易一被纳入区块,网络就会从你的 ether 余额中扣除费用。
"Gwei 是一种独立的货币。"
Gwei 只是十亿分之一 ether。说费用是"30 gwei"与说它是"0.00000003 ether"完全一样——同样的值,更容易阅读。
"Tip 越大,交易就越快。"
有帮助,但并非万灵药。Validator 会优先把最具吸引力的 tip 纳入区块,但他们无法把你塞进一个已经打包好的区块。常态下,哪怕一笔适度的 tip 也能让你在一两个区块内被打包。
"Base fee 归矿工所有。"
自 EIP-1559 升级起,base fee 由协议销毁——没有人拿到它。Validator 通过 priority tip 以及 Ethereum 的发行奖励获得报酬。

10. 后续阅读

你现在掌握了这个模型:gas 是工作量的计数,ether 是货币,gwei 是可读的标签,费用就是一次乘法。若想实时观察 base fee 与 priority tip 的波动,Ethereum 实时 gas tracker 按区块刷新,而 多链 gas station 可让你把 Ethereum 与 ArbitrumBaseOptimism 等 rollup 对比——它们通常只需 L1 费用的一小部分。如果你好奇这些费用在你本地货币中的样子,ether 兑美元转换器 会按实时市场汇率为你换算。若你想构建能签名交易并按程序支付 gas 的软件,ChainGate 为你提供一套库,覆盖 Ethereum 及我们支持的每一条链。等你想查询某笔具体交易并在真正的 Ethereum 区块上看到这些数字时,关于 什么是 Etherscan 以及如何使用 的配套指南正好接上本文。

常见问题

Ethereum gas 是 token 或加密货币吗?

不是。Gas 是一个计量单位,记录一笔交易执行了多少计算工作。你无法把 gas 放进钱包、转给别人或挂牌交易。你真正用来支付 gas 的资产是 ether (ETH),也就是 Ethereum 的原生货币。

为什么叫 gas?

这个名字借自燃料的类比。汽车烧油量与行程距离和难度成正比,Ethereum 上一笔交易消耗的 gas 也与它要求网络执行的工作量成正比。简单 transfer 是短途,复杂的 smart contract 交互是长途。

gas、gwei 与 ether 有什么区别?

Gas 是工作单位的计数。Ether 是你用来支付的资产。Gwei 只是 ether 的一个便于使用的面额(1 gwei 等于十亿分之一 ether),用来表示每单位价格,因为以 ether 表示的原始数字太小,不便阅读。

Ethereum 的费用究竟是怎么算出来的?

总费用是交易消耗的 gas 单位乘以你为每单位支付的价格。自 EIP-1559 升级起,该价格被拆为由协议设定的 base fee 以及你选择用来吸引 validator 的 priority tip。gas used 乘以二者之和,即得以 ether 计的成本。

EIP-1559 如何在区块间调整 base fee?

每个区块都有一个目标 gas 量。当需求超过目标,协议自动将下一区块的 base fee 上调至多约 12.5%;当需求低于目标,则按相同规则下调。机制是确定性的——无拍卖、无运营方——价格由此按区块自调节。

能不能在 Ethereum 上不付 gas?

没有交易能在 Ethereum 上零 gas 成交,但你可以通过选择低需求时段、选择继承 Ethereum 安全性且费用只是其一小部分的 Layer 2 rollup,或在交易不紧急时降低 priority tip 来削减成本。多链 gas station 会把实时费用从便宜到贵排序,让你一眼看见 Ethereum L1 与 rollup 之间的差距。

使用 ChainGate 构建

把这些想法落地 —— ChainGate 提供钱包、交易与托管 RPC,一次安装即可覆盖以太坊以及 20 多条其他区块链。