Gas 中译是:瓦斯、汽油,代表一种可燃气体。 这形象地比喻以太坊的交易手续费计算模式,不同于比特币中直接支付比特币作为转账手续费, 以太坊视为一个去中心化的计算网络,当你发送Token、执行合约、转移以太币或者在此区块上干其他的时候,计算机在处理这笔交易时需要进行计算消耗网络资源,这样你必须支付燃油费购买燃料才能让计算机为你工作。最终燃料费作为手续费支付给矿工,无论交易成功与否。
What is gas? Why do transactions take so long?
以太坊技术与实现 Gas
以太坊白皮书给出的转账时计算Gas的例子如下,假设合约存储开始时为空,发送一笔带有10 ETH、2000 Gas、0.001以太币Gas价格的交易,并且有两个数据字段:[2, ‘CHARLIE’]:
注意:这是从交易发送者的钱包里扣除的,不是从10 ETH的交易金额中扣除的
以下是我用老ThinkPad电脑在测试网络里辛辛苦苦挖的一点币
现在我们从Account1转账0.001ETH给Account2,预估的Gas费用为0.0000315ETH,直接给你计算好了
也就是说我们这笔交易预估花费的总金额 = 0.001 ETH + 0.0000315 ETH = 0.0010315 ETH
稍作等待后,等到转账confirmed后,我们点击View on block explorer前往网页
可以从以下界面看到整个交易的过程
Transaction Fee = Gas Used * Gas Price = 21,000 Gas * 1.500000007 Gwei = 31500.000147 Gwei
注意:21000 Gas 是标准转账交易的gasUsed。因此一笔标准的转账交易你可以设置 gasLimit 为21000,多退少也不能补。这个大小和你转账多少ETH没有关系,转0.001用的是21000Gas,转账1000ETH也是21000Gas,如果想要提高转账的速度,可以通过提高Gas价格(Gas Price)来实现。