通过钱包转账 ETH 或是 ERC-20 Token 时,我们知道这个转账需要付手续费。那么,转账的手续费是怎么算的呢?
如果转账的同时还去“刻字”,是不是需要收取更高的手续费呢?今天,大白就给大家聊聊以太坊的 Gas 机制。
在以太坊网络中转账,虽然最后的手续费我们支付的是 ETH,但其实在以太坊内部并不直接消耗 ETH,而是消耗 Gas。“Gas”这个单词的英文意思是“(气体)燃料”,以太坊网络中的操作需要消耗 Gas,就如同汽车行驶需要消耗燃料一样。
那么,交易的手续费(ETH)是如何计算的呢?我们先看一下大白在以太坊网络中的一个转账截图:
币安将支持以太坊Shapella升级,4月13日6:20暂停ETH和ERC-20充值和提现:金色财经报道,币安宣布将支持以太坊网络的Shapella升级,以太坊网络的Shapella升级将于UTC时间4月12日22:27:35(北京时间4月13日06:27:35)在epoch194048处激活,大约从4月13日6:20开始,将暂停通过以太坊网络进行的ETH和ERC-20代币的充值和提现,并在升级完成网络稳定后,重新开放ETH和ERC-20代币的充值和提现。[2023/3/29 13:32:46]
以太坊开发者:将预留出更多时间来稳定代码和确保安全过渡:金色财经消息,ETH2.0核心开发者/img/202281262137/1.jpg">
大家常用的 imToken 钱包,在 Gas 的单价设置里,提供的是 5~100Gwei,钱包把最低单价设置为 5Gwei,保证了交易能在合理的时间内被打包,当然,如果想插队,尽快被矿工打包,你也可以自己提高 Gas 的单价。
说完了 Gas 的单价,我们再接着说消耗的 Gas 数量。
在以太坊网络中,每一笔转账,无论数额大小,消耗的 Gas 是固定的,为 21000,如果添加备注(“刻字”),需要消耗额外的 Gas。
回到大白的那笔交易上,大白总共花费的 Gas 数量是 24876,其中包含了 21000 的固定消耗数量,以及备注消耗的 Gas 数量 3876。备注需要消耗多少数量的 Gas,和输入的内容长度有关,内容越多,需要消耗的 Gas 数量也越多。
如果你仔细观察大白的那张转账截图,你会发现,大白花费的 Gas 数量 24876 后面有个括号,里面是 41.46%。这个百分比是什么意思呢?如果你再仔细看截图,你会发现,上面还有一个 Gas Limit,数值是 60000,而且它的 41.46% 正好是 24876。
Gas Limit,是指这笔操作消耗的 Gas 数量上限,这个上限值你可以自己设置。比如,大白设置的是 60000,但实际操作中并没有达到这个上限,只用了 41.46%。一般的钱包都会默认帮你设置这个上限值,对我们普通用户而言,普通转账时这个上限值也不用去考虑。
以太坊网络设置这个上限值,是以防万一,如果碰到恶意的智能合约,该合约执行将消耗无限的燃料,这样会导致交易方的 ETH 余额全部消耗(恶意的智能合约有可能是程序 Bug,如合约执行陷入一个死循环)。
Gas Limit 如果设置过低,比如设置为 10000,任何一笔转账需要的 Gas 数量至少 21000,远远超过你设置的 Gas Limit,就会导致转账失败。也就是说,Gas Limit 会影响一笔交易是否能成功。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。