bot.gif
取消
选择语言
确认
简体中文
繁体中文
English
close
正在加载
全部 数字货币专题 区块链专题 钱包专题 空投专题
数字货币专题
以太坊中交易手续费(Gas)及交易流程详解
摘要
Gas字面中译是:瓦斯、汽油,是一种燃料。这非常形象的比喻了以太坊的交易手续费计算模式,不同于比特币中直接支付比特币作为转账手续费, 以太坊视为一个去中心化的计算网络,当你发送Token、执行合约、转移以太币或者在此区块上干其他的时候,计算机在处理这笔交易时需要进行计算消耗网络资源,这样你必须支付燃油费购买燃料才能让计算机为你工作。最终燃料费作为手续费支付给矿工。
SAIDE MATTAR
更新时间: 2019-01-05 13:16
关注

众所周知,当一辆汽车要行驶时,必须要给其加油才能跑,那同样的,一个网络要平稳运行也需要对应的“燃料”。以太坊是区块链的网络,以太(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
点赞
最新文章
了解 数字货币 的知识
USDT会贬值吗?USDT贬值意味着什么?
上一篇
了解 数字货币 的知识
比特币投资靠谱吗?比特币投资有哪些技巧?
下一篇
评论
已发布
成为第一个评论的人
查看更多评论
没有更多评论了
阅读更多专题
以太坊今日行情分析:冲高3246美元,能否挑战3400美元阻力?
以太坊今日行情分析:冲高3246美元,能否挑战3400美元阻力?
本文分析了以太坊(ETH)在冲高至3246美元后的市场态势。文章指出,当前ETH正于3150美元支撑与3400美元强阻力构成的区间内震荡。文章从关键技术位、市场内外驱动因素(如链上数据、竞争格局) 以及未来多空走势展望三个层面进行解读,探讨了其能否成功挑战并突破3400美元关口的关键条件,为投资者提供了全面的行情梳理与策略参考。
2025-12-12 12:03
数字货币专题
以太坊今日行情分析:突破3100美元是暴涨开端还是风险警示?
以太坊今日行情分析:突破3100美元是暴涨开端还是风险警示?
本文分析了以太坊价格突破3100美元关键点位的市场意义。文章从供需结构转变与宏观情绪共振阐述了上涨动力,通过图表形态与技术指标解读了多空博弈现状,并警示了高杠杆波动与宏观不确定性带来的潜在风险。最终指出,此次突破是多重因素的综合结果,投资者应理性看待,做好风险管理。
2025-12-08 18:17
数字货币专题
BTC24小时行情分析,78.5%多头清算与6.6万亿美元 QT 预期下的中周期战略
BTC24小时行情分析,78.5%多头清算与6.6万亿美元 QT 预期下的中周期战略
比特币市场正处于 宏观流动性重启预期下的中周期回调。Glassnode 报告将当前定性为健康回调,其战略价值由 6.6万亿美元 QT 结束预期 和 SEC ETF 最终审查 构成。近期 78.5%的多头清算 驱动了价格回调(24小时 -2.18%),这是市场在系统性地清洗散户的过度杠杆。然而,大户持仓多空比高达 2.1581,反映了对 ETF 批准的强烈战略性押注。 83,500美元附近的强劲 V 型反弹 确立了战略支撑。市场正通过清除杠杆,为 ETF 批准后的周期性突破做准备。
2025-12-05 18:22
数字货币专题
以太坊24小时行情分析,在 1亿清算与 2.87倍大户押注下的以太坊结算层革命
以太坊24小时行情分析,在 1亿清算与 2.87倍大户押注下的以太坊结算层革命
以太坊市场正处于 Fusaka 升级驱动的效用革命 与机构资金战略性布局 ETF 的双重战略推动期。Fusaka 硬分叉激活,将 L2 费用预计降低 40%-60%,大幅提升 ETH 作为 Rollup 结算层的效率。大户持仓多空比高达 2.8714,是对 Staking ETF 获批 和 Fusaka 利好的强烈押注。近期 7天 5.62% 的反弹是由1.04亿空单被清算 的战术突破所驱动。清算后市场结构健康,资金费率中性。当前价格在 3,199美元 附近企稳,标志着 ETH 正进入效用升级驱动的长期看涨通道。
2025-12-05 17:55
数字货币专题
ena币24小时行情分析,Ethena 在欧洲 ETP 上市与 0.9295大户净对冲中的战略定位
ena币24小时行情分析,Ethena 在欧洲 ETP 上市与 0.9295大户净对冲中的战略定位
市场正处于 机构对冲下的高收益资产锁定策略。其核心价值已从投机转向高收益、合规化的稳定币抵押品。战略利好包括 21Shares 在欧洲交易所上市 ETP 以及 Symbiotic 再质押带来的超10\%年化收益。然而,价格持续下跌(24小时 -4.43\%),并伴随 76.4%多头清算。这是由于 机构资金的净对冲行为 所驱动:大户持仓多空比仅为 0.9295,且资金费率长期处于极端负值。这表明机构正在安全地锁定 Staking 收益,同时通过衍生品做空对冲价格风险。市场正在系统性地清洗散户的过度杠杆,以完成价值的结构性重估。
2025-12-05 11:35
数字货币专题
eth24小时行情, 在 1亿空头清算与现货 ETF 最终审查中的以太坊价值重估
eth24小时行情, 在 1亿空头清算与现货 ETF 最终审查中的以太坊价值重估
以太坊市场正处于 现货 ETF 批准预期的战略性修复期。大户资金展现出极度看涨偏见(持仓多空比高达 2.8714),战略性押注 Ark Invest 现货 ETF 的最终审查(预计 12月底批复)。近期价格在 7天内上涨 5.62%,这是由 $24$ 小时内 1.04亿空单被清算 驱动的战术性空头挤压。这种清算清除了价格在 $3,175$ 美元上方继续修复中期跌幅 -11.22%的障碍。基础设施方面,Pectra 升级(2026Q1 预期)和 EigenLayer 提升了 ETH 作为 Rollup 结算层的效率。市场结构健康,正稳步进入 ETF 预期驱动的上升通道。
2025-12-04 18:33
数字货币专题
solana24小时行情:Solana ETF上线洪流与1445万清算瀑布中的战略支点
solana24小时行情:Solana ETF上线洪流与1445万清算瀑布中的战略支点
机构资本战略性轮动 与 过度交易杠杆 博弈的关键阶段。宏观层面上,Solana 已完成去风险化:Solana ETF 净流入超过 51000万美元,企业(如 Upexi Inc.)将 SOL 纳入国库配置,且香港、日本等地的监管框架持续宽松,确立了其机构级资产地位。
2025-12-02 15:24
数字货币专题
以太坊实时行情分析,重现杠杆绞肉机1.4亿美元清算,刺破3.2倍狂热泡沫。
以太坊实时行情分析,重现杠杆绞肉机1.4亿美元清算,刺破3.2倍狂热泡沫。
以太坊(ETH)市场在12月初经历了一场极为残酷的短期逆转。在价格冲击 3,050关口失败后,市场迅速崩塌,并在短短 24小时内引爆了高达 1.39亿美元的多头头寸清算。ETH 价格被猛烈拉回 3,000心理关口下方,K线图上的垂直下跌是投机者恐慌情绪的真实写照。
2025-12-01 16:50
数字货币专题
还有 33099篇更精彩
继续阅读更多专题