Ⅰ 礦工須知:Gas費為何越來越低,科學數據告訴您
對於以太坊用戶而言,高昂的Gas費一直是進入這個賽道的一大門檻。在Defi火熱時期,Gas費高至讓人望而卻步。然而,近期這一狀況已明顯改善。
數據顯示,6月6日,以太坊Gas平均價格下降至16.4Gwei,創下年內新低,與年內431.97的高點相比,下降比例高達96%。
Gas是什麼?為何重要?如何衡量?又是什麼導致了Gas費下降?帶著這些問題,我們開始歐科觀察。
Gas費,礦工之「蜜糖」,用戶之「砒霜」。在以太坊區塊鏈上,用戶進行交易、執行智能合約或支付數據儲存費用時,需支付Gas費作為計算工作量的計數單位。Gas費以ETH為單位支付,直接關繫到礦工是否願意為你的交易打包。
Gas高低由鏈上操作復雜度決定,就像開車,路越多消耗越多。以太坊網路中的兩類賬戶——外部賬戶和合約賬戶,前者是普通賬戶,後者是具有應用邏輯的智能合約。普通的轉賬交易涉及外部賬戶,Gas數量固定;涉及合約賬戶的DeFi交易則根據操作復雜度,消耗Gas更多。
舉個例子,2021年3月22日,用戶發起一筆0.1ETH轉賬,需要支付約9.69美元的Gas費。Gas費由Gas價格、Gas限額和Gas消耗決定。用戶最終支付費用為Gas價格乘以Gas消耗,即0.003969ETH。Gas價格影響礦工優先打包交易,但系統預估費用。
Gas用盡將導致交易失敗,但用戶仍需支付費用。提升Gas Limit,增加單個區塊交易筆數,從經濟學角度看,需求不變,供給增加,Gas費自然下降。
加密市場全面調整,加密和DeFi日交易量下降77%以上,DeFi市場交易量大幅下滑。Gas費下降,交易量整體下降,不具備上漲動力。
NFT市場降溫明顯,日交易額和交易數下降90%以上。NFT活動大部分在以太坊公鏈上,NFT遇冷影響Gas費貢獻。
技術層面,提升Gas Limit、落地以太坊Layer2相關解決方案,大幅提升TPS,有效降低Gas費。近期火熱的Polygon(以太坊側鏈擴容方案)就是代表。
Gas費下降對用戶有利,可低成本體驗DeFi創新;對礦工而言,持續下降可能引起不滿。市場調節最終達到用戶和礦工利益平衡。
Ⅱ Gas 機制是如何運作的
以太坊是目前第二大公鏈,它和比特幣不一樣,以太坊上的可以實現的功能更多,如果比特幣是一個可以進行加減乘除的計算器,那麼以太坊就是一台功能完備的計算機。以太坊系統的復雜度超過比特幣好幾個數量級。
在以太坊中,用戶可以自己寫一個智能合約,然後把智能合約放到以太坊中執行。智能合約的執行需要消耗資源,而以太坊上的資源是有限的。
在計算機系統中,停機問題(https://zh.wikipedia.org/wiki/停機問題)目前還沒有辦法完全證明。這個問題簡單來說就是沒辦法判斷一個程序是否能夠在有限的時間內結束運行。
如果一個用戶提交了一個死循環程序到以太坊中,那麼就會無限的執行下去,從而將以太坊網路擊垮。而使用 gas 機制則可以解決這個問題,智能合約中,每段代碼的執行都會消耗一定量的 gas,在用戶提交交易的時候需要指定好。如果 gas 消耗完了,那麼智能合約就必須停止,交易也會被撤銷,如果智能合約執行完成, gas 還有剩餘,就會退還給用戶。
需要特別說明的是,即使交易失敗,用戶也需要支付 gas 費用,因為以太坊為這些錯誤的交易也付出了計算資源。
除了這點之外,gas 還可以用來激勵礦工,用戶提交交易所消耗的 gas 費用最後都會給到礦工,礦工會優先去打包那些提供了更高 gas 價格的交易,在以太坊中,如果希望自己的交易早點被打包,可以設置更高的 gas 價格。
g as 機制是以太坊系統的命脈。
gas 本質就是維護以太坊網路安全,這是從兩個方面來做到的,一方面通過 gas 來衡量計算量,一方面使用 gas 來吸引更多的礦工,礦工的數量越多,以太坊網路就越安全。
gas 只能用於交易中,用戶不會接觸到 gas,gas 會在交易的提交的時候直接通過以太幣來兌換。
智能合約中,每個操作都會消耗一定的 gas 。每個操作都對應一個 Opcode,下面是一些常見的 gas 消耗,完整的 gas 消耗說明看這里:https://github.com/crytic/evm-opcodes
以太坊中的交易最後會被確認,打包成區塊,這樣交易才算是完成,但是在一個區塊中,可以打包的交易是有限的,以太坊通過 gas 來限制可以打包的交易數。這樣就讓被打包的機會成為了一個稀缺的資源。
用戶提交一個交易後,gas 量可以看做是一個固定的值,礦工為了做到最大收益,就會選擇那些 gas 價格更高的交易。
很多以太坊的用戶經常吐槽 gas 費過高,其實這里的過高不是指 gas 本身過高,而是指 gas 對應的以太坊價格過高。
因為 Gas 的價格不是固定的,而是波動的,簡單來說就是根據供需關系來決定的,如果同時需要用以太坊的用戶多,那麼Gas 的價格就貴,如果用戶的人少,那麼 Gas 的費用就會少。
以太幣的最基本單位是 wei,1 ETH = 10 ^18 wei,而衡量 gas 價格的單位則是 gwei,1 ETH = 10 ^ 9 gwei。
在提交交易的時候,需要設定兩個參數,一個是 gas 的最大消耗量(gas limited)和 gas 的價格,gas 的消耗量通常情況下會比較固定,不會有太大的變化,主要是 gas 的價格會波動很大。
在上面我們說到礦工會挑選那些 gas 費用比較高的交易進行打包。所以 gas 的價格設置得越高,那麼總的 gas 費用就會越高。如果想讓當前的交易盡快被確認,那麼就需要設置一個當前相對來說比較高的 gas 價格。
其實對當前 gas 價格最清楚的就是那些礦工,所以礦工們也提供了一些服務,讓用戶可以實時地了解到當前 gas 價格的分布。比如 GasNow 就是一個比較常用的服務,現在很多錢包中都在使用這個來為錢包的用戶提供 gas 價格建議。
如果你提交的交易不緊急,那麼使用當前的平均 gas 價格就可以,如果需要提交緊急的交易,那麼就需要設置更高的 gas 價格。
文 / Rayjun
Ⅲ 以太坊中的 Gas:關於交易費用你需要知道的一切
要了解以太坊網路,首先需要理解「Gas」這個術語。以太坊網路上的計算單位類似於汽車需要汽油來運行,Gas 是以太坊網路上的汽油,用於支付計算和交易費用。Gas 與任何其他數量一樣,也有自己的單位,比如以太幣(Ether 或 ETH)。
在倫敦升級前的以太坊中,計算費用通過一個簡單的公式計算:Gas 費用 = Gas 花費 * Gas 價格。Gas 價格以 Gwei 計價,Gwei 是以太幣的計價單位,代表 Giga-Wei,等於 1,000,000,000 wei。智能合約在被編譯為 OPCODES 之前,每個 OPCODE 都有自己的 Gas 成本。合約中特定函數的 Gas 成本是所有 OPCODES 成本之和。因此,Gas 費用 = Gas 花費 * Gas 價格。
在倫敦升級後,以太坊網路對單個區塊允許的最大氣體量有限制,即區塊氣體限制。這是為了確保每個塊都保持在合理的計算成本范圍內。同時,引入了基本費用和小費的概念。基本費用是讓交易包含在區塊中所需的最低金額,它由網路根據對塊空間的需求量計算得出,並在每次區塊中銷毀,以抵消 ETH 的發行。小費用來補償礦工執行和傳播用戶交易,大多數錢包會自動設置此設置,但也可以手動更改。較高的小費交易通常被優先考慮。
此外,倫敦升級帶來了可變塊大小的功能,每個區塊的目標氣體限制為 1500 萬氣體,但大小可以根據網路需求變化,最高可達 3000 萬氣體。通過調整區塊大小和基本費用,網路通常在 1500 萬氣體時達到平衡。
Gas 成本對於以太坊網路的安全至關重要。通過強制為網路上的每個計算付費,防止不良行為者向網路發送垃圾郵件。交易的 Gas 限制限制了交易可能需要的處理,防止智能合約中的意外或惡意無限循環,導致所有以太坊節點無限期地卡住。
了解 Gas 是理解以太坊交易費用的關鍵。通過閱讀更多關於 Gas 及其代碼實現的信息,可以更深入地了解這個主題。以下是相關資源:以太坊氣體解釋、倫敦升級和智能合約中的氣體優化。
Ⅳ Web3系列教程之入門篇---2:什麼是Gas
理解以太坊網路的核心要素之一就是「Gas」。Gas就像是汽車所需的汽油,為以太坊提供運行所需的能量。在交易時,用戶需要支付一筆交易費用,也就是所謂的Gas費用。
當以太坊網路進行升級,如2021年8月的倫敦升級時,交易費用的計算方式和Gas的運作方式也有所變化。因此,本教程將分為兩個部分,前部分易於理解,後部分提供升級的動力。
在倫敦升級前,交易費用的計算是基於簡單的公式:Gas費用 = Gas使用的數量 × Gas價格。Gas價格以gwei為單位,1Gwei等於0.000000001ETH。
例如,如果Alice想向Bob支付1ETH,交易的Gas成本為21,000Gas,假設Gas價格為200Gwei,那麼Gas費用為4,200,000Gwei,即0.0042ETH。這筆費用會被礦工從包含Alice交易的區塊中獲得。
用戶可以使用錢包如Metamask,根據當前網路條件為要執行的交易提供合理的Gas價格估算。
在執行交易時,每個智能合約被編譯成位元組碼,然後在以太坊虛擬機上運行。這個過程涉及到一系列操作,稱為OPCODES。每個OPCODE都有固定的Gas成本。這些成本相加,構成了智能合約執行所需的總Gas費用。
為了確保每個區塊的計算成本不超過允許范圍,以太坊網路對單個區塊中的最大Gas量施加了限制。這確保了節點不會由於計算復雜性的增加而與網路的其他部分脫節。
在倫敦升級後,每個區塊都會設置基本Gas費用,這是包含交易的每單位Gas的最低價格。這個價格由網路根據對塊空間的需求本地計算,這些基本費用將被銷毀,以減少ETH的供應量並達到平衡。此外,引入了小費的概念,用於補償礦工執行和傳播用戶交易。錢包會自動設置小費,但用戶可以選擇手動設置。
升級後的Gas費用計算公式為:Gas費用 = Gas使用的數量 × (基本費用 + 小費)。
在倫敦升級之前,所有區塊的區塊Gas限制是恆定的,為15MGas。然而,倫敦升級引入了可變塊大小,每個區塊有一個15MGas的目標Gas限制,但大小可以根據網路需求增加或減少,最高可達30MGas。平均而言,網路通過修改區塊大小和基本費用達到了1500萬左右的平衡。
以太坊的目標是成為一個高度安全和去中心化的區塊鏈網路,執行智能合約。然而,高昂的Gas費用是一個熱門話題。因此,正在進行多項工作來降低Gas費用和改善用戶體驗,包括以太坊2.0升級和第2層擴展。
最後,推薦使用以下資源獲取更多關於Gas的詳細信息:[1] GitHub上的EVM操作碼列表[2] 有關Gas的YouTube視頻[3] 倫敦升級的官方文檔[4] 智能合約中的Gas優化[5] 更多關於第2層擴展的信息。
Ⅳ 以太坊交易手續費需要知道的都在這了
以太坊的交易手續費是交易執行中的關鍵成本,需要交易者了解並掌握。一筆交易由一系列操作指令組成,每條指令消耗一定量的gas。
操作指令的gas消耗量由系統事先規定,例如一次加法運算需要消耗3 gas。一筆交易的總手續費等於操作指令的總gas消耗量乘以gas價格。
總gas消耗量由合約決定,gas價格則由用戶設定。gas價格體現用戶願意為此交易支付的費用,一般以Gwei為單位。用戶定的gas價格越高,礦工會更願意優先打包此交易,使其更快成功。
Gwei是eth的基本單位,1 eth等於10^18 Wei,等於10^9 Gwei。一般用Gwei表示gas價格。例如,當前gas市場均價為40 Gwei。
確定gas價格需考慮網路阻塞情況。網路處理能力一定時,交易人數增加會導致價格上升。可以訪問ethgasstation.info或錢包推薦價格來查看當前gas建議價格。如果今天gas定價為50 Gwei,交易將立即執行;定價為45 Gwei時,交易在2分鍾內執行;定價為40 Gwei時,則在5分鍾內執行。
為了防止合約惡意消耗用戶gas,用戶設置了gas上限。在交易中gas消耗超出上限時,交易終止,已消耗的gas費用扣除,未消耗部分退還給用戶。標准轉賬交易通常使用21000 gas。
舉例說明(2021.8.23),一筆標准轉賬使用21000 gas,當前gas市場價格為40.4 Gwei。因此,一筆轉賬交易總費用為21000 gas乘以40.4 Gwei/gas等於848400 Gwei,即0.0008484 eth(8484000 Gwei除以10^9)。當前eth價格為$3266.04,因此交易的美元計價為3266.04美元/eth乘以0.0008484 eth,即約2.77美元。