当前位置: 首页 > news >正文

区块链技术原理(13)-以太坊燃料费Gas

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

  • 前言
  • 什么是Gas?
  • 为什么需要 Gas?
  • 什么是燃料限额(Gas Limit)?
    • 如何估算复杂合约调用的 Gas Limit?
  • 为什么燃料费会变得如此高?
  • 如何计算燃料费?
    • EIP-1559 前的拍卖机制(2021 年 8 月前)
    • EIP-1559 后的双层结构(伦敦升级后)


前言

Gas 对以太坊网络至关重要。 正是这种燃料使它能够运行,正如车辆需要汽油一样。


什么是Gas?

在以太坊中,Gas(燃料) 是衡量网络执行操作所需计算资源的单位,类似于汽车的燃油。它不仅是支付验证者(矿工)的报酬,更是维持网络安全、防止滥用的核心机制。以下从技术原理、费用模型、优化策略和未来趋。

燃料是指在以太坊网络上执行特定操作所需的计算工作量。

由于每笔以太坊交易都需要使用计算资源来执行,因此必须为这些资源付费,以确保以太坊不容易受到垃圾信息的攻击,并且不会陷入无限的计算循环。 计算费用以燃料费的形式支付。

燃料费是用于执行某些操作的燃料数量,乘以每单位燃料的成本。 无论交易成功与否,都要支付燃料费。

燃料费必须用以太坊的本币支付,即以太币 (ETH)。 燃料通常以 gwei 计价,gwei 是以太币的一种计量单位。 一个 gwei 等于一个以太币的十亿分之一(0.000000001 个以太币,或 10-9 个以太币)。

比如,你可以说你的燃料费是 1 gwei,而不说 0.000000001 个以太币。

“Gwei” 是 “giga-wei” 的缩写,意思是 “十亿个 wei”。 一个 gwei 等于十亿个 wei。 Wei 本身(以 b-money的发明者 Wei Dai的名字命名)是以太币的最小单位。

为什么需要 Gas?

  • 资源定价:以太坊作为 “世界计算机”,需为每笔操作(如转账、合约调用)消耗的 CPU、内存、存储等资源定价,防止恶意用户通过无限循环或垃圾交易瘫痪网络。
  • 经济激励:验证者(质押 32 ETH 的节点)通过打包交易获得 Gas 费奖励,确保其持续维护网络安全。
  • 状态一致性:通过 Gas 限制(Gas Limit)控制单笔交易的最大计算量,避免因逻辑错误导致区块处理超时。

什么是燃料限额(Gas Limit)?

燃料限额是指你愿意在交易中消耗的最大燃料数量。 涉及智能合约的更复杂交易需要进行更多的计算工作,因此相比简单的支付,它们需要更高的燃料限额。 标准以太币转账要求燃料限额为 21,000 单位燃料。

例如,如果你对简单的以太币转账设置 50,000 单位燃料限额,以太坊虚拟机将消耗 21,000 单位,你将收到剩余的 29,000 单位。 然而,如果你设置的燃料太少,比如说,对于简单的以太币转账,设置燃料限额为 20,000 单位,以太坊虚拟机将消耗 20,000 单位燃料并尝试执行交易,但最后不会完成。 然后,以太坊虚拟机回滚所有变化,但由于验证者已经完成了价值 20k 单位燃料的工作,这些燃料就被消耗了,不会退回

如何估算复杂合约调用的 Gas Limit?

  • 使用 Hardhat 等开发工具在本地模拟执行,获取精确的 Gas 用量。
  • 在主网交易时,将估算值上浮 20% 作为安全边际(如预估 100 万 Gas 则设为 120 万)。

为什么燃料费会变得如此高?

燃料费高是由于以太坊广受欢迎。 如果需求量太大,用户必须提供更高的小费,力争使出价高于其他用户的交易。 小费越高,交易进入下一个区块的可能性就越大。 此外,更复杂的智能合约应用可能会执行许多操作来支持其功能,使它们消耗大量的燃料。

如何计算燃料费?

  • Gas Price:用户愿为每单位 Gas 支付的 ETH 数量(单位:Gwei,1 Gwei = 10⁻⁹ ETH)。它分为两部分:
    • 基础费(Base Fee):由协议动态调整,反映网络拥堵程度(如区块利用率超 50% 时自动上涨),且100% 被销毁以调节通胀;
    • 优先费(Priority Fee):用户额外支付的小费,激励验证者优先打包交易。
  • 总费用公式:
    总费用=Gas用量×(基础费+优先费)

例如,假设 Jordan 要向 Taylor 支付 1 个以太币。 一笔以太币转账需要 21,000 单位的燃料,基础费是50 gwei。 Jordan 支付了 2 gwei 作为小费。总费用为 21,000 × 52 = 1,092,000 Gwei = 0.001092 ETH。

EIP-1559 前的拍卖机制(2021 年 8 月前)

  • 无序竞价:用户直接指定 Gas Price,验证者优先打包出价高的交易。
    痛点:
  • 费用波动剧烈(拥堵时 Gas Price 可达 1000+ Gwei,约 100 美元 / 笔);
  • 用户需盲目猜测合理价格,易超额支付。

EIP-1559 后的双层结构(伦敦升级后)

  • 基础费动态调整:
    • 每区块基础费根据前一区块的 Gas 利用率自动增减(±12.5%/ 区块),公式为:
 下一区块基础费=当前基础费×(1+(实际用量-目标用量​)/目标用量×8)

(目标用量为 1500 万 Gas / 区块,弹性上限 3000 万)。

基础费销毁机制减少 ETH 流通量,形成通缩效应(如 2023 年销毁超 400 万 ETH)。

  • 优先费市场化:用户通过调整优先费控制交易速度(如 DeFi 套利需支付高优先费抢占区块空间)。
  • 费用可预测性提升:用户只需关注基础费(公开透明)和优先费(自主选择),避免传统模型的竞价博弈。
http://www.dtcms.com/a/333652.html

相关文章:

  • ITM(仪器跟踪宏单元)是什么?
  • Elasticsearch赋能规章制度智能检索:从海量文档到秒级响应
  • PyInstaller打包Python应用操作备忘
  • 学习嵌入式之硬件——I2C
  • Redis7学习--管道
  • P4069 [SDOI2016] 游戏 Solution
  • “社保新规”9月施行,内容、影响与时代意义
  • Ansible 学习笔记:变量事实管理、任务控制与文件部署
  • 分布式锁的具体实现和原理分析
  • 无线收发模块高效协同:EMS系统监控、交互、执行端同步通讯
  • SpringCloud学习
  • 现金流分析与预测提示词设计指南:从基础到复杂场景的实用框架
  • IO多路复用底层原理
  • Python中推导式和表达式
  • 基本电子元件:碳膜电阻器
  • 代码随想录二刷之“字符串”~GO
  • 集合车位租售、充电桩共享、二手市场、便民服务的家政服务平台,带源码
  • 数说故事发布全新AI产品:Social Research,免费洞察各行各业趋势,提升营销效率
  • 20250815日记
  • 智慧零碳园区——解读2025 零碳产业园区实施路径规划【附全文阅读】
  • pytorch学习笔记-模型的保存与加载(自定义模型、网络模型)
  • 大白话解析 Solidity 中的防重放参数
  • USENIX Security ‘24 Fall Accepted Papers (1)
  • 归并排序和统计排序
  • 用matlab实现的svdd算法
  • 2025年机械制造、机器人与计算机工程国际会议(MMRCE 2025)
  • gnu arm toolchain中的arm-none-eabi-gdb.exe的使用方法?
  • C#WPF实战出真汁05--左侧导航
  • 日常反思总结
  • 异步开发:协程、线程、Unitask