以太坊转账手续费Gas price,Gas Limit怎么算的?

发布于 2021-04-01 11:01:21

在以太坊网络中转账,虽然最后的手续费我们支付的是 ETH,但其实在以太坊内部并不直接消耗 ETH,而是消耗 Gas

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

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

交易手续费(ETH)= Gas的单价 x 消耗的Gas数量

在大白的这笔交易中,Gas 的单价(Gas Price)是 5Gwei,也就是 0.0000000005ETH(小数点后面8个0)。

这里大白再给大家介绍一下 ETH 的单位,ETH 的最小单位是 Wei,但是谈到以太坊 Gas 的时候,经常用 Gwei。ETH、Gwei、Wei 之间的关系如下:

1 ETH = 10^9 Gwei(9个0)= 10^18 Wei(18个0)

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

手续费 = 0.0000000005ETH x 24876 = 0.00012438ETH

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

Gas Limit

Gas Limit就是一次交易中Gas的可用上限,也就是你的交易中最多会执行多少步运算。 由于交易复杂程度各有不同, 确切的Gas消耗量是在完成交易后才会知道,因此在你提交交易之前,需要为交易设定一个Gas用量的上限。

如果说你提交的交易尚未完成,消耗的Gas就已经超过你设定的Gas Limit,那么这次交易就会被取消,而 

经消耗的手续费同样被扣取 —— 因为要奖励已经付出劳动的矿工。 而如果交易已经完成,消耗的Gas未达到Gas Limit, 那么只会按实际消耗的Gas 收取交易服务费。 换句话说,一个交易可能被收取的最高服务费就是Gas Limit * Gas​​ Price 了。

为什么转账失败也扣手续费?

因为你转账失败,旷工也给你打包了,所以你也要付旷工费,不管你交易成不成功,旷工费都是要付的

转账ETH

gas limit 是固定的21000

转账ETH消耗的 Gas 是固定的,为 21000

转账代币

gas limit  是固定的70000  就足够了

gas limit  只能给高不能给低,给低了就会交易失败,给高了  会按照实际消耗扣除

查看更多

关注者
0
被浏览
282
0 个回答
暂无答案,快来添加答案吧

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友

手机
浏览

扫码浏览
扫码手机浏览