风险提示:理性看待区块链,提高风险意识!
  • 全部 数字货币专题 区块链专题 钱包专题 空投专题
    以太坊中交易手续费(Gas)及交易流程详解
    来源: SAIDE MATTAR
    时间: 2019-01-05 13:16
    关注
    摘要
    Gas字面中译是:瓦斯、汽油,是一种燃料。这非常形象的比喻了以太坊的交易手续费计算模式,不同于比特币中直接支付比特币作为转账手续费, 以太坊视为一个去中心化的计算网络,当你发送Token、执行合约、转移以太币或者在此区块上干其他的时候,计算机在处理这笔交易时需要进行计算消耗网络资源,这样你必须支付燃油费购买燃料才能让计算机为你工作。最终燃料费作为手续费支付给矿工。

    众所周知,当一辆汽车要行驶时,必须要给其加油才能跑,那同样的,一个网络要平稳运行也需要对应的“燃料”。以太坊是区块链的网络,以太(ETH)则是网络的燃料。当您转账、发布智能合约或在区块链上执行任何其他操作时,您必须为该交易付费。以太坊上的交易都是需要支付费用,和比特币以比特币来支付一定的交易费用不同,以太坊上固定了这个环节,那么这个间接理解是以太坊的一种安全防范错误,防止了大量的无意义的交易,保证一定的安全性,特别是智能合约的创建、执行、调用都需要消耗费用,那么也保证了整个系统的稳定性,防止了一些链上无意义的恶意行为。

    以太坊交易手续费

    以太坊的核心是EVM,以太坊虚拟机,那么在EVM中执行的字节码都是要支付费用。也就是经常看到的Gas、Gas limit、Gas Price这几个概念。

    Gas:字面理解就是汽油,以太坊和日常的汽车一样需要Gas才能运行。Gas是一笔交易过程中计算消耗的基本单位。有一个列表可以直观看到在以太坊中操作的Gas消耗量:

    操作Gas消耗具体内容
    step1执行周期的默认费用。
    stop0终止操作是免费的。
    suicide0智能合约账户的内部数据存储空间,当合约账户调用suicide()方法时,该值将被置为null。
    sha320加解密
    sload20在固定的存储器中去获取
    sstore100输入到固定的存储器中
    balance20账户余额
    create100创建合约
    call20初始化一个只读调用
    memory1扩充内存额外支付的费用
    txdata5交易过程中数据或者编码的每一个字节的消耗
    transaction500交易费用
    contract creation53000homestead中目前从21000调整到53000

    所以有些公司或者个人觉得区块链技术去中介化,不需要中心服务器,这种开发模式是比较便宜的,但是事实上区块链的开发不比之前的那些传统软件开发来的便宜。

    Gas Price:字面理解汽油价格,这个就像你去加油站,95#汽油今天是什么价格。一个Gas Price就是单价,那么你的交易费用=Gas*Gas Price,然后以以太币来ether来支出。当然你觉得我不想支付费用,你可以设置Gas Price为0,但是选择权在矿工手中,矿工有权选择收纳交易和收取费用,那么最简单的想想很难让一个矿工去接收一个价格很低的交易吧。另外提一句,以太坊默认的Gas Price是1wei。

    Gas Limit:字面理解就是Gas的限制,限制是必要的,没有限制就没有约束。这个Gas Limit是有两个意思的。首先针对单个交易,那么这个表示交易的发起者他愿意支付最多是多少Gas,这个交易发起者在发起交易的时候需要设置好。还有一个是针对区块的Gas Limit,一个单独的区块也有Gas的限制。

    假设几个场景来说明Gas的使用:

    用户设置Gas Limit,那么在交易过程中,如果你的实际消耗的Gas used < Gas Limit,那么矿工只会收取你实际消耗的Gas used。在交易结束后返回 Gas Limit-Gas Used。

    用户设置Gas Limit,那么交易过程中,如果你的实际消耗的Gas used > Gas Limit,那么矿工肯定发现你的Gas不足,这个交易就无法执行完成,这个之后会回滚到执行之前的状态,这个时候矿工会收取Gas Price*Gas Limit。

    区块的Gas Limit,区块中有一个Gas上限,收纳的交易会出现不同的用户指定的Gas Limit。那么矿工就会根据区块限制的Gas Limit来选择,“合理”选择打包交易。

    以太坊的具体交易流程

    以太坊上交易可以是简单的以太币的转移,同时也可以是智能合约的代码消息。列个表格看下交易的具体内容:

    代码内容
    from交易发起者的地址、不能为空,源头都没有不合理。
    to交易接收者的地址(这个可以为空,空的时候就表示是一个合约的创建)
    value转移的以太币数量
    data数据字段。这个字段存在的时候表示的是,交易是一个创建或者是一个调用智能合约的交易
    Gas Limit字面理解就是Gas的限制,限制是必要的,没有限制就没有约束。
    Gas Price一个Gas Price就是单价,交易费用=Gas*Gas Price。以太坊默认的Gas Price是1wei。
    nonce用于区别用户发出交易的标识。
    hash交易ID,是由上述的信息生成的一个hash值
    r、s、v交易签名的三部分,交易发起者的私钥对hash签名生成。

    交易分三种类型

    转账:简单明了的以太坊上的以太币的转移,就和比特币类似,A向B转移一定数量的以太币。这种交易包含:交易发起者、接收者、value的数量,其余类似Gas Limit、hash、nonce都会默认生成。所以你会看到一段代码:

    web3.eth.sendTransaction({
         from: "交易发起者地址",
         to:“交易接收者地址”,
         value: 数量
    });

    智能合约创建:创建智能合约就是把智能合约部署到区块链上,那么这个时候to是一个空的字段。data字段则是初始化合约的代码。所以看到代码:

    web3.eth.sendTransaction({
         from: "交易发起者地址", 
         data: "contract binary code"
    });

    智能合约执行:合约创建部署在区块链上,那么执行就是会加上to字段到要智能合约执行的地址,然后data字段来指定调用的方法和参数的传递,所以看到代码:

    web3.eth.sendTransaction({
         from: "交易发起者地址",
         to:“合约执行者地址”,
         data:“调用的方法和参数的传递”
    });

    以上大致就是交易的类型。

    交易的确认

    和比特币一样,以太坊的交易需要后续区块确认后,节点同步后、才能确认。简单理解就是多挖出一些区块来,通过验证后这一笔交易才算确认,以太坊时常会出现拥堵的情况,所以有时候需要等待确认。

    以太坊转账、合约交易流转

    首先交易发起者A发起一笔转账交易,那么发送的格式如下:

    代码内容
    from交易发起者的地址、不能为空,源头都没有不合理。
    to交易接收者的地址(这个可以为空,空的时候就表示是一个合约的创建)
    value转移的以太币数量
    data数据字段。这个字段存在的时候表示的是,交易是一个创建或者是一个调用智能合约的交易
    Gas Limit字面理解就是Gas的限制,限制是必要的,没有限制就没有约束。这个Gas Limit是有两个意思的。首先针对单个交易,那么这个表示交易的发起者他愿意支付最多是多少Gas,这个交易发起者在发起交易的时候需要设置好。还有一个是针对区块的Gas Limit,一个单独的区块也有Gas的限制。
    Gas Price一个Gas Price就是单价,那么你的交易费用=Gas*Gas Price,然后以以太币来ether来支出。以太坊默认的Gas Price是1wei。
    nonce用于区别用户发出交易的标识。
    hash交易ID,是由上述的信息生成的一个hash值
    r、s、v交易签名的三部分,交易发起者的私钥对hash签名生成。

    节点验证:

    以太坊网络中会有节点收到A发送出来的消息,那么会去检查这个消息格式时候有效,然后计算Gas Limit。这个时候回去验证A的以太坊余额,如果余额不足,那么就返回错误,不予处理。一旦A发送的消息通过了节点的验证,那么节点就会把这个交易放到交易存储池中。并广播到区块链网络。

    矿工验证:

    那么写入区块链必须要矿工打包,矿工在接收到A发出的交易,会和其他交易一块打包,普通转账交易打包即可,那么合约调用的交易则需要在矿工本地的EVM上去执行调用的合约代码,代码执行过程中检查Gas的消耗。一旦Gas消耗完了,那么就回滚,如果Gas足够那么返回多余的Gas。并广播到区块链网络。

    其余节点:

    重复节点验证步骤,然后合约也会在本地EVM上执行验证。通过验证后同步区块链。

    收藏
    0
    点赞
    阅读更多专题
    以太坊还会继续跌吗?2100美元保卫战打响:深度复盘以太坊还会继续跌吗背后的4.12倍多头拥挤度与技术性崩盘
    以太坊还会继续跌吗?2100美元保卫战打响:深度复盘以太坊还会继续跌吗背后的4.12倍多头拥挤度与技术性崩盘
    价格单日暴跌7.61%,直逼2100美元整数关口,7天累计跌幅更是接近30%。在如此惨烈的行情下,市场恐慌情绪达到了极值。然而,链上数据却揭示了一个更危险的信号:Binance大户的多空持仓比竟然高达4.12。这种极度的多头拥挤意味着杠杆并未出清。本文将用2000字的篇幅,结合最新的爆仓与持仓数据,全连贯地深度拆解以太坊还会继续跌吗的底层逻辑,带您看懂这场针对ETH死多头的终极猎杀。
    2026-02-05 11:41
    数字货币专题
    以太坊下跌引发2.5亿爆仓:深度解析本次以太坊下跌的根本原因与抄底时机
    以太坊下跌引发2.5亿爆仓:深度解析本次以太坊下跌的根本原因与抄底时机
    2026年2月2日,加密市场遭遇了严重的流动性危机,以太坊下跌 成为全场焦点。在短短 24 小时内,以太坊下跌 幅度超过 10%,价格击穿2200美元关口。链上数据显示,这次 以太坊下跌 直接导致全网 2.5 亿美元爆仓。本文将结合Coinglass最新数据,深度复盘 以太坊下跌 的全过程,并探讨在持续的 以太坊下跌 趋势中,投资者该如何寻找生机。
    2026-02-02 11:32
    数字货币专题
    2026以太坊合约深度解析:失守3,000后的多空猎杀——是做空者的盛宴,还是多头最后的“黄金坑”?
    2026以太坊合约深度解析:失守3,000后的多空猎杀——是做空者的盛宴,还是多头最后的“黄金坑”?
    2026年1月23日 ETH 合约市场的核心逻辑是什么? 今日 ETH 现货价格跌破2,960,日内跌幅超 2%,并在过去一周累计下跌 10%。合约市场呈现出典型的多头陷阱 (Bull Trap)”特征:尽管多空比 (Long/Short Ratio) 依然维持在 1.2 以上(散户看多),但大户持仓量 (OI)正在下降,表明主力资金正在撤退。$2,900 是目前全网最大的多单清算密集区,一旦跌破,极易引发连环爆仓(Long Squeeze)至 $2,800。
    2026-01-23 16:37
    数字货币专题
    什么是Immunefi,IMU币如何分配及运作,2026年值得持有吗?
    什么是Immunefi,IMU币如何分配及运作,2026年值得持有吗?
    本文深度解析Immunefi平台原生代币IMU的核心机制与投资前景。文章详细阐述了IMU代币的分配模型、在安全赏金与平台治理中的运作逻辑,并结合2026年Web3安全赛道的发展趋势,对其持有价值与潜在风险进行了客观评估,为关注加密安全资产的投资者提供全面参考。
    2026-01-22 09:39
    数字货币专题
    2026 以太坊美元价格 (ETH/USD) 深度解析:3000美元失守后的恐慌——创纪录活跃度是繁荣还是骗局?
    2026 以太坊美元价格 (ETH/USD) 深度解析:3000美元失守后的恐慌——创纪录活跃度是繁荣还是骗局?
    2026年1月21日 ETH/USD 的核心逻辑是什么? 今日 以太坊美元价格 (ETH/USD) 遭遇恐慌性抛售,跌幅达 7%,有效跌破 $3,000 关键心理支撑位。市场陷入了“基本面背离”的困境:一方面,日交易量创下 290 万笔的历史新高;另一方面,分析师指出这部分增量可能源于大规模的 地址投毒攻击 (Address Poisoning Attacks) 而非有机增长。这种对网络真实活跃度的质疑,叠加宏观避险情绪,引发了严重的流动性回撤。
    2026-01-21 12:03
    数字货币专题
    以太今日价格坊跌破3000美元:暴跌近7%背后原因揭秘,牛市终结了吗?
    以太今日价格坊跌破3000美元:暴跌近7%背后原因揭秘,牛市终结了吗?
    本文深度解析了2026年1月20日以太坊价格跌破3000美元、单日暴跌近6%的背后原因。文章从地缘政治黑天鹅事件、市场高杠杆清算、技术面全面转弱三个维度展开,揭示了此次下跌与全球市场波动的联动性。同时,针对市场最关心的“牛市是否终结”问题,文章结合链上数据与机构观点进行了多空对比分析,并为不同投资者提供了后市展望与策略参考。
    2026-01-21 09:49
    数字货币专题
    2026 以太坊 (ETH) 走势全景展望:从世界计算机到互联网债券——质押 ETF 与 Pectra 升级如何引爆万亿美金的补涨浪潮
    2026 以太坊 (ETH) 走势全景展望:从世界计算机到互联网债券——质押 ETF 与 Pectra 升级如何引爆万亿美金的补涨浪潮
    2026年以太坊的核心投资逻辑是什么? 2026 年是以太坊 (ETH) 价值回归的一年。随着 Pectra 升级 优化了执行层效率,以及 质押 ETF (Staking ETF) 允许机构直接捕获链上收益,ETH 成功转型为具备 3.5%-5% 年化收益率的互联网债券。在 EigenLayer 再质押 和 Layer 2 Blob 费用 的双重通缩效应下,ETH 经历了严重的流动性供给冲击 (Liquidity Supply Shock),重夺加密市场的 Alpha 地位。
    2026-01-20 11:53
    数字货币专题
    2026年中文MEME币爆发,“我踏马来了”为何领衔风骚?
    2026年中文MEME币爆发,“我踏马来了”为何领衔风骚?
    本文聚焦2026年最具爆发潜力的中文MEME币。以现象级代币“我踏马来了”领衔,深入解读其结合马年文化的爆发逻辑。同时分析“币安人生”、“修仙”等热门币种,剖析其扎根中文互联网梗文化的价值基础、交易所助推下的市场现状,并揭示高收益背后剧烈的波动性与风险。为读者提供一份理解中文MEME币热潮的深度指南。
    2026-01-20 09:34
    数字货币专题
    还有 33335篇更精彩
    继续阅读更多专题
    0
    0
    0