曾用過區塊鏈相關應用,不管是交易所、DApp 或是虛擬貨幣錢包的人,一定都聽過礦工費 (Gas Fee) 這個詞。它是當你要在區塊鏈網路發起一筆交易時,所要支付給礦工的一筆手續費。
源自:動區新聞
編輯:Metaverse Media
![虛擬貨幣入門|什麼是礦工費(Gas Fee)|元宇宙視界傳媒](http://meta-versemedia.com/wp-content/uploads/GAS.jpg)
使用過區塊鏈相關應用,不管是交易所、DApp 或是虛擬貨幣錢包的人,一定都聽過礦工費(Gas Fee)。這是當在區塊鏈網路發起一筆交易時,所要支付給礦工的手續費。
用一個實際例子來比喻,當你要在不同的銀行帳戶之間轉帳時,必須要為銀行提供服務手續費。同樣的,區塊鏈的礦工要把你的交易打包並放上區塊鏈,才能使交易完成,在這過程中會消耗區塊鏈的運算資源,所以要支付礦工費(Gas Fee)。
例如在以太坊網路上,是用ETH (以太幣) 來支付礦工費(Gas Fee)。如果你要從交易所或錢包發送以太幣、ERC 20代幣或是參與智能合約,例如ICO 或是使用 DApp 等,就必須用 ETH 來支付礦工費(Gas Fee)。
![虛擬貨幣入門|什麼是礦工費(Gas Fee)|元宇宙視界傳媒](http://meta-versemedia.com/wp-content/uploads/錢包01.jpeg)
以MetaMask 錢包為例,每次當你發送以太幣時都會跳出這個畫面,圖中有兩個欄位與礦工費(Gas Fee)有關,分別是「Gas Limit」和「Gas Price」。在每次的交易中,你都可以依照需求調整這兩個數值。
Gas Fee = Gas Limit x Gas Price
礦工費(Gas Fee)總金額的計算方式是 Gas Limit 乘上 Gas Price。因此先把圖中的 Gas Limit 和 Gas Price 兩個數字相乘,再換算成以太幣(1 ETH = 10^9 GWEI): 21000 x 10 / 10^9 ,就可以得到礦工費(Gas Fee)的總金額 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 來省錢。
對礦工費(Gas Fee)有了基礎認識後,接著就來看你不可不知的 幾個重點
1.注意參加代幣銷售時設定的 Gas Limit
參與代幣銷售時,你應該要把 Gas Limit 設成銷售方所建議的數值。因為代幣銷售的智能合約比一般轉帳交易更為複雜,所以 Gas Limit 也要設得更高。我就曾經在參加 ICO 時,因為不知道要把 Gas Limit 從 21,000 改為 100,000,而碰到 “out of gas” 錯誤。
2.想節省礦工費(Gas Fee),你應該調低 Gas Price 而不是 Gas Limit
如先前所提到的,如果你調低 Gas Limit 可能會無法滿足完成交易所需的 Gas,導致交易失敗。因此要節省礦工費(Gas Fee),請將 Gas Price 調低,並耐心等候交易完成。
3.你可以拿回沒用完的 Gas
不需要擔心把 Gas Limit 設定得太高,如果有 Gas 沒被用完,會在交易完成之後退還到你的帳戶中,你可以到 Etherscan 上查詢交易的細節。在下面的截圖中,我們可以看到 Gas Limit 的設定是 100,000,但是實際上只用到 35,826,所以剩餘沒用完的 Gas 就會退還。
4.如果交易失敗,依然要付礦工費(Gas Fee)
萬一不小心把 Gas Limit 設得太低,導致交易失敗,礦工費(Gas Fee)也不會退還給你,因為你還是必須為區塊鏈已進行的運算支付手續費。
5.確保有足夠的 ETH 支付礦工費(Gas Fee)
記得不論是要傳送 ETH 或是 ERC20 代幣,你都必須要用 ETH 支付礦工費(Gas Fee)。有時候大家會忘記錢包中也要有 ETH 才能夠發送代幣。