在以太坊網路上,是用ETH (以太幣) 來支付礦工費。如果你要從交易所或錢包傳送以太幣和ERC 20 代幣,或是和智慧合約進行互動,例如參加ICO 或是使用DApp 等,就必須用ETH 來支付礦工費。
以上面的 MetaMask 截圖為例,每次當你要傳送以太幣時都會跳出這個操作畫面,圖中有兩個欄位與礦工費有關,分別是「Gas Limit」和「Gas Price」。在每次的交易中,你都可以依照需求調整這兩個數值。
Gas Fee = Gas Limit x Gas Price
礦工費總金額的計算方式是Gas Limit 乘上Gas Price。因此先把圖中的Gas Limit 和Gas Price 兩個數字相乘,再換算成以太幣(1 ETH = 10^9 GWEI): 21000 x 10 / 10^9 ,就可以得到礦工費的總金額0.00021 ETH 。
Gas Limit 是你在這筆交易中所願意支付Gas 單位的最大數量。完成一筆交易所需的Gas 單位數量,取決於交易的複雜程度。當一筆交易越複雜,就必須要耗費較多的運算資源,因此需要花費較多Gas。
要特別注意的是,當設定的Gas 單位不夠多時,將會導致交易失敗。21,000 是一般轉帳交易的Gas Limit 預設值,如果是要參與代幣銷售或是使用DApp,因為過程會涉及較為複雜的智慧合約,因此就要設定更高的Gas Limit。
Gas Price 是每個單位Gas 的價格,以GWEI 表示。它會影響到你的交易被礦工打包放上區塊鏈的速度。
如果Gas Price 設的越高,就給礦工更大的誘因將你的交易打包;相反的,如果Gas Price 設的低就要等待比較長的時間。要是不急著完成一筆交易,你就可以選擇較低的Gas Price 來省錢。
對礦工費有了基礎認識後,接著就來看你不可不知的6 個重點:
1.注意參加代幣銷售時設定的Gas Limit
參與代幣銷售時,你應該要把Gas Limit 設成銷售方所建議的數值。因為代幣銷售的智慧合約比一般轉帳交易更為複雜,所以Gas Limit 也要設得更高。我就曾經在參加ICO 時,因為不知道要把Gas Limit 從21,000 改為100,000,而碰到“out of gas” 錯誤。
2.想節省礦工費,你應該調低Gas Price 而不是Gas Limit
如先前所提到的,如果你調低Gas Limit 可能會無法滿足完成交易所需的Gas,導致交易失敗。因此要節省礦工費,請將Gas Price 調低,並耐心等候交易完成。
3.你可以拿回沒用完的Gas
不需要擔心把Gas Limit設定得太高,如果有Gas沒被用完,會在交易完成之後退還到你的帳戶中,你可以到 Etherscan 上查詢交易的細節。在下面的截圖中,我們可以看到Gas Limit的設定是100,000,但是實際上只用到35,826,所以剩餘沒用完的Gas就會退還。
4.如果交易失敗,依然要付礦工費
萬一不小心把Gas Limit 設得太低,導致交易失敗,礦工費也不會退還給你,因為你還是必須為區塊鏈已進行的運算支付手續費。
5.確保有足夠的ETH 支付礦工費
記得不論是要傳送ETH 或是ERC20 代幣,你都必須要用ETH 支付礦工費。有時候大家會忘記錢包中也要有ETH 才能夠傳送代幣。
6.實用小工具:ETH Gas Station , Etherscan
在 ETH Gas Station 上,可以找到依據以太坊網路壅塞程度,所推薦設定的Gas Price,就看你想節省礦工費,還是想快點完成交易。在 Etherscan 上,可以查詢每個交易的詳細資訊,包括Gas Limit, Gas Price以及交易中實際用到的礦工費。
更多數字貨幣資訊:www.qukuaiwang.com.cn/news