编者按:本文来自知矿大学,Odaily星球日报经授权转载。以太坊钱包可能是大家使用最频繁的加密货币钱包了,尤其是前段时间的DeFi流动性挖矿热潮,让很多之前从来不使用钱包的用户也纷纷把币提到自己的钱包里去提供流动性。现在,流动性挖矿的热潮已经褪去,以太坊网络的Gas平均价格也从之前的最高点709Gwei回归到目前的50Gwei,但在BTC的带动下,ETH的价格仍在不断挑战年内新高。ETH价格涨了,从法币本位的角度看,转账所需的矿工费又变贵了。你知道你的某个钱包地址一共花出去了多少ETH矿工费吗?以下这个网址可以帮你查询:https://fees.wtf比如,要查询「0xD58189F5E858A6F67319E33Fa1107eb7e679989f」这个地址一共花出去了多少矿工费,可以按照下面的格式,直接将这个「地址」加到上面的网址中进行查询:https://fees.wtf/?address=0xD58189F5E858A6F67319E33Fa1107eb7e679989f
通过查询我们可以得知,这个钱包地址一共花出去了0.484ETH的矿工费,按照现在的价格计算,价值$213.92,也算是一笔不小的开支了。那么,问题来了,以太坊转账如何设置矿工费更省钱呢?在回答这个问题之前,我们先来了解以太坊网络中的三个概念:Gas,GasPrice,GasLimit。以太坊本身就是一个去中心化的虚拟机,联合起来就相当于世界级的计算机网络。在以太坊网络上,每一次的运算、每个字节的存储、链上的任何操作,都需要全网的计算机共同去参与。天下没有免费的午餐,上述的这些操作都需要消耗相应的网络资源,因此必须支付相应的费用给矿工。在以太坊网络中,这个费用称之为「Gas费用」,更通俗的叫法是「矿工费」、「手续费」。这里需要注意的是,Gas不是一种新的代币,而是一种计量单位。上述所提到的那些操作,每个运算步骤需要消耗多少Gas,以太坊系统里都是事先规定好的。比如,执行一次Copy操作需要消耗3Gas,执行一次SHA3哈希需要消耗30Gas。普通的转账,以太坊系统规定的是需要消耗21000Gas。
图:https://github.com/ethereum/go-ethereum/blob/master/params/protocol_params.goGasPrice指的是,你愿意为消耗的每单位Gas支付多少的单价。GasPrice的单位通常用Gwei表示,1Gwei=0.000000001ETH。GasLimit指的是,你愿意为这笔操作支付的Gas数量上限。默认情况下,GasLimit是21000Gas。一般情况下,我们也不需要调整GasLimit的数值,但涉及到复杂一些的操作,比如在以太坊区块链上“刻字”,就要调整GasLimit上限了,否则活还没干完就已经消耗完了Gas数量。
图:知矿大学“爱在七夕,链上有你”活动中,某个上链内容实际消耗的Gas数量为22632Gas,所以GasLimit在事先调整到了42000Gas。那以太坊系统为什么要设置GasLimit这个参数呢?一方面,是为了防止某些有Bug的程序陷入死循环,另外一方面是为了防止某笔操作耗尽账户上的所有ETH。明白了这三个概念,我们再来看下以太坊的矿工费计算公式:矿工费=实际消耗的Gas数量*GasPrice其中,「实际消耗的Gas数量」小于或等于GasLimit,这点很容易理解。上文提到过,每个运算步骤需要消耗多少Gas,以太坊系统里都有所规定,所以「实际消耗的Gas数量」我们无法调整,我们能调整的是「GasPrice」。以太坊矿工和比特币矿工一样,都是趋利的,谁给的GasPrice高,就优先给谁打包确认。因此,遇到特别紧急、需要马上确认的情况,我们需要给更高的GasPrice,从而让矿工第一时间给我们打包确认;而在不紧急的情况下,我们则可以把GasPrice调低一些,以节省不必要的矿工费开支。现在,很多钱包都很“智能”,通过对当前网络拥堵情况的分析,告诉你GasPrice的推荐值。当然,你也可以自己手动调整GasPrice,钱包会告诉你调整后预计需要多久才能被矿工打包。
除了钱包推荐的GasPrice数值,还可以参考GasNow这个网址给出的数值:https://gasnow.sparkpool.com
如上图,截图的这一刻,如果想在15秒内被矿工确认,可以将GasPrice设置为32Gwei,如果不着急,可以选择“缓慢”模式,设置为16Gwei。通常情况下,选择“一般”模式推荐的矿工费即可。GasNow是当前最大的以太坊矿池——星火矿池,根据矿池节点交易池中实时交易的GasPrice分布给出的推荐值,其数据更具实时性、准确性,更有参考价值。近期,imToken、麦子钱包、MYKEY、TokenPocket、TrustWallet等钱包已经宣布使用GasNow的服务。最后,我们总结一下今天的内容:1、以太坊转账的矿工费由「实际消耗的Gas数量」与「GasPrice」的乘积所得,前者是系统事先规定好的,后者我们可以自己调整从而减少不必要的矿工费开支。2、调整「GasPrice」时,可以参考钱包给的推荐值,也可以参考实时性、准确性更强的GasNow网址。3、另外,如果涉及更加复杂的操作,还需要调整GasLimit的数值,以防止活还没干完就把Gas消耗完了的情况出现。
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。