以太坊转账手续费与到账速度 如何巧妙设置Gas能省钱? 金色财经

以太坊转账手续费与到账速度 如何巧妙设置Gas能省钱? 金色财经
2021年06月19日 22:41 金色财经

通过钱包转账 ETH 或是 ERC-20 Token 时,我们知道这个转账需要付手续费。那么,转账的手续费是怎么算的呢?

如果转账的同时还去“刻字”,是不是需要收取更高的手续费呢?今天,大白就给大家聊聊以太坊的 Gas 机制。

在以太坊网络中转账,虽然最后的手续费我们支付的是 ETH,但其实在以太坊内部并不直接消耗 ETH,而是消耗 Gas。“Gas”这个单词的英文意思是“(气体)燃料”,以太坊网络中的操作需要消耗 Gas,就如同汽车行驶需要消耗燃料一样。

那么,交易的手续费(ETH)是如何计算的呢?我们先看一下大白在以太坊网络中的一个转账截图:

在以太坊网络中转账,手续费的计算方式如下:

在大白的这笔交易中,Gas 的单价(Gas Price)是 5Gwei,也就是 0.0000000005ETH(小数点后面8个0)。这里大白再给大家介绍一下 ETH 的单位,ETH 的最小单位是 Wei,但是谈到以太坊 Gas 的时候,经常用 Gwei。ETH、Gwei、Wei 之间的关系如下:

知道了 Gas 的单价,我们再看下大白这笔含“刻字”的转账消耗的 Gas 数量:24876。所以,按照上面的公式,单价乘以数量,即可得到大白花费的手续费:

汽车去加油站添加燃料,燃料的价格基本是固定不变的,但是在以太坊网络中,Gas 的单价是可以自己设置的。不过,需要注意的是,Gas 的单价会影响这笔交易被打包的速度。也就是说,Gas 的单价你给的越高,矿工为了自身利益最大化,越会优先打包你的交易。

下图是 ethgasstation.info 网站统计的实际操作中 Gas 的单价和所需要等待的交易打包时间。

在左边统计图中,我们可以看到,超过 70% 的以太坊网络转账给的 Gas 单价介于 4~20Gwei 之间,小于 1Gwei 或是大于 50Gwei 的交易占比很少。

在右边的统计图中,我们可以看到,如果给的 Gas 单价是 4Gwei,打包交易需要的平均等待时间是 0.6 分钟;如果是 20Gwei,平均等待时间是 0.2 分钟。

大家常用的 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 会影响一笔交易是否能成功。

财经自媒体联盟更多自媒体作者

新浪首页 语音播报 相关新闻 返回顶部