撰文:崔晨,就職于HashKeyCapitalResearch審核:鄒傳偉,萬向區塊鏈首席經濟學家
最近以太坊網絡經常擁堵,用戶為了盡快達成交易,會上調Gas費希望能優先被礦工打包,尤其是在交易有利可圖的時候。以太坊網絡在2021年之后利用率長期超過97%,資源短缺的局面暫時不會得到緩解,按照這種趨勢,短期內以太坊的Gas費不會大幅下降。
圖1:以太坊網絡利用率
圖2:以太坊網絡的平均Gas費以太坊高昂的Gas費深受詬病,嚴重影響了用戶體驗,降低以太坊Gas費迫在眉睫。Gas費全部交給負責維護網絡執行交易的礦工,代表用戶使用網絡資源需要付出的費用。Gas費的計算方式為GasPrice*GasUsed,其中GasPrice由用戶設置,代表用戶為每單位Gas支付的價格,GasUsed是實際中使用的Gas數量。在操作時用戶還需要設置GasLimit,代表用戶愿意為此交易支付最多的Gas數量,如果在執行過程中發現所需的Gas超過設置的GasLimit,會導致交易失敗,此時的GasUsed等于GasLimit,用戶仍需繳納Gas費。如果GasUsed小于GasLimit,交易成功后Gas數量會按照實際執行使用的數量收費。
根據Gas費的計算方式,可以通過降低GasPrice和GasUsed實現降低Gas費,體現在降低網絡擁擠程度,將計算轉移到二層網絡中進行;降低合約復雜度減少計算的執行步驟;改變Gas的收取方式等。本文將從Layer1、Layer2和相關Gas產品這三個角度出發,解析關于降低以太坊Gas費的實踐以及優劣。其中Layer1指的是以太坊網絡本身,Layer2指的是以太坊主鏈外的網絡。
以太坊Layer1上的實踐
提高區塊的GasLimit
以太坊對單個區塊的大小沒有強制規定,但每個區塊承載的Gas單位數量是有上限的,也就是區塊的GasLimit。提高GasLimit帶來最直接的影響是單個區塊可以執行更多的操作,因此提高了整個系統的承載量。每個區塊可以打包更多交易來緩解網絡的擁堵狀況,用戶就可以降低GasPrice。這是最直接對網絡進行擴容的方案,因執行簡便經常被用于擴容。2020年7月之后以太坊區塊的GasLimit達到了1250萬左右,相較于2017年末已經上漲了近兩倍。
加密貨幣研究機構Delphi Digital支付474枚ETH購入4個AxieNFT:9月25日,加密貨幣研究機構Delphi Digital花474枚以太坊購入4個Axie NFT寵物。此前報道,AxieInfinity是一款基于以太坊的去中心化回合制策略游戲,類似口袋妖怪和拓麻歌子,玩家可以在游戲中讓游戲中的NFT幻想動物Axie進行繁殖、戰斗、交易。[2020/9/25]
圖3:以太坊區塊的GasLimit可以看出,雖然以太坊區塊的GasLimit一直在提高,以太坊還是會出現網絡擁堵的情況。這是因為以太坊的用戶和使用量是同時上漲的,只要GasLimit的上漲程度沒有超過使用量的上漲,提高GasLimit就無法根本解決高Gas費的問題。GasLimit具體數值由礦工投票決定,在目前的網絡擁堵程度下,有些礦工建議將GasLimit繼續提高到1600萬,但遭到了很多阻力。除了無法根本解決網絡擁堵的問題外,提高GasLimit后由于區塊容量擴大,區塊的驗證和同步時間有所延長。因此導致網絡更容易分叉,叔塊出現的概率升高,節點維護網絡的成本也會增加,最終網絡可能出現安全性和中心化問題。雖然提高GasLimit是最簡單進行網絡擴容的方式,但它帶來的弊端也是不能忽視的。不過目前網絡擁堵情況加劇,出于可用性考慮,加上礦工會受到更多筆Gas費獎勵的吸引,未來極有可能仍會提高區塊GasLimit來增大承載量。
降低操作的Gas消耗
雖然以太坊區塊的GasLimit在增加,區塊的承載量遠超過去,但數據顯示目前的轉賬數量剛剛與2018年初的轉賬數量持平,說明了以太坊網絡中大部分資源被分配給了更復雜的合約交易。如果在合約編寫上能夠降低復雜度,減少合約執行所需要的Gas,或者直接降低操作的Gas定價,就可以實現節約Gas費的目標,并且節約網絡資源。
圖4:以太坊的每日轉賬數
以太坊的黃皮書規定了Gas的消耗規則,智能合約的編寫過程中,同一功能的不同實現方式消耗的Gas會有所不同,為了節約Gas費就需要執行最節約Gas的代碼實現方法。例如儲存新數據和修改數據都要消耗Gas,所以最好避免重復修改,一次性盡可能多地寫入。在下圖中,兩者在結果上相同,但右邊的代碼實現消耗Gas會更少。
研究:在過去三次美聯儲降息中 比特幣的表現表明其不是避險資產:The Block研究表明,在過去的三次降息中,比特幣的表現表明它不是避險資產。2019年,美聯儲三次降息,目前為175個基點。研究發現,在這三次降價中,比特幣的價格沒有任何明顯的回升。相反,其在1周、1個月和3個月的滯后的中位數回報率分別為-5.0%,-20.9%和-11.0%。 The Block的分析表明,降息與比特幣價格走勢無關。因此,它不太可能在下一次降息期間上升。[2020/3/2]
圖5:同一結果的兩種代碼實現,右邊更節約Gas除此之外,壓縮智能合約的數據輸入,避免創建智能合約時將其用作數據存儲等方式也可以節約Gas。有人提出操作消耗Gas的原始定價沒有經過充分分析,存在定價不當的問題。以太坊中的EIP1380、EIP2046等提案就涉及降低某個操作的Gas。但以太坊Gas定價的改變要慎重考慮,因為降低有些操作的Gas定價會降低重入攻擊的難度。
EIP1559EIP1559已經被納入在以太坊的倫敦硬分叉升級中,它改變了以太坊網絡Gas費的定價和分配規則。目前以太坊Gas費定價規則為市場競價的方式,用戶自行設置愿意支付的GasPrice,礦工挑選支付最高GasPrice的交易打包。每個人都希望能盡快完成交易,因此在網絡擁堵時Gas費會居高不下。EIP1559提出了一種新的Gas費收取方案,用戶支付的Gas費分為基礎費和小費,其中基礎費直接銷毀,小費歸礦工收入。EIP1559方案引入了GasTarget的概念,區塊Gas上限是GasTarget的兩倍,基礎費根據網絡使用情況進行動態調節,也就是區塊實際包含的Gas與GasTarget的比較。如果區塊的Gas超過GasTarget,那么下個區塊收取的基礎費就會上漲,反之如果低于GasTarget就會下降。上漲和下降的幅度不會超過12.5%,避免了Gas費突然暴漲暴跌。由于基礎費一直是動態調節的,如果連續多個區塊包含的Gas一直超過GasTarget,基礎費就會指數上漲到夸張的價格,讓用戶不得不暫停交易,等待Gas降低到GasTarget以下,基礎費才會下降。基礎費是用戶必須支付的,礦工的小費可選擇支付,在網絡使用率不高的情況下,基礎費就可以讓用戶及時完成交易,沒有必要支付礦工小費。如果網絡擁堵,則需要支付小費優先交易。目前Gas費收取需要用戶設定支付的GasPrice,如果太低需要等待很久,太高則造成浪費。EIP1559的實施會提高用戶使用體驗,因為基礎費是已經被計算好的,理論上支付基礎費就能保證完成交易,用戶只需要選擇給礦工支付的小費,而且在不擁堵的情況下不需要給礦工小費。對于降低Gas費來說,EIP1559中沒有很直接的體現,在不擁堵時用戶只繳納基礎費于是避免了Gas費浪費。在網絡擁堵時持續調高基礎費沒有讓用戶花費更少,而是通過不斷漲價讓人們面對高昂收費時不得不暫緩交易。因此很多人對EIP1559的實施對降低Gas費的有效程度存疑,尤其是短期受到很大損失的礦工群體。但從長遠看,銷毀本來應該交給礦工的Gas費,能夠將交易帶來的價值引入到以太坊系統中,提升整個系統的價值也會提高礦工的收入。
動態 | 清華與航加國際民航合作 研究區塊鏈在民航領域的應用:據清華新聞網消息, 1月23日,清華大學-航加國際控股有限公司的民航大數據區塊鏈合作項目簽約儀式在信息科學技術大樓舉行。根據雙方協議,WEB軟件中心與航加國際將充分發揮各自優勢,共同組建研發團隊,通過產、學、研、用一體化的應用模式,并根據航加國際企業發展需求,重點圍繞“基于區塊鏈的民用航空大數據中心構建頂層框架設計”、“基于民用航空大數據的故障診斷與預測算法”以及“基于民用航空大數據的民用飛機維修資源規劃”三大方向進行深入合作。[2019/1/25]
以太坊2.0的實現
以太坊升級到2.0階段的最終目標是實現擴容,解決網絡的擁堵問題,除了將共識機制由PoW轉變為PoS,以太坊2.0的還要實現分片和部署eWASM虛擬機。分片就是將整個網絡分區,節點不需要維護整個系統的交易,只需要負責維護其中一個分區即可。以太坊2.0將有64個分片,將交易分布到各分片中增加網絡的承載量。各分片可以與信標鏈進行交聯,信標鏈不儲存以太坊上的賬戶余額和合約狀態等信息,負責管理驗證者和記錄分片狀態。分片要考慮到安全性的問題,因為相對而言攻擊單分片的難度會降低。在以太坊2.0的分片上都存在至少128個驗證者組成的委員會,他們負責表決分片上的信息,這些人每epoch更換一次,由信標鏈通過RANDAO+VDF的方案分配。作惡者很難保證在同一時間控制同一分片上超過三分之二的節點,因此保證了網絡的安全。
eWASM是以太坊2.0階段部署的虛擬機,相較于目前的EVM虛擬機,eWASM在速度和效率上會大幅提升,配合分片技術,以太坊2.0能夠實現大規模擴容,降低Gas費。但由于以太坊分片和eWASM的開發難度比較高,短期內不會上線。
以太坊Layer2上的實踐
Rollup
Rollup是目前受到最多關注的以太坊Layer2解決方案,最有可能在短期內解決以太坊網絡擁堵的問題來降低Gas費,Vitalik也指出Rollup是以太坊2.0分片技術上線之前最有效的擴容技術。Rollup的運營者通過將計算和完整的狀態儲存放到鏈下,壓縮交易數據實現主鏈上的擴容。實際上交易數據是儲存在區塊鏈上的,風險源自運行者可能提供錯誤的數據進而控制用戶資產,為了避免風險存在不同的Rollup解決方案。ZKRollup通過有效性證明保證數據安全,使用ZK-SNARK密碼學證明,Layer1可以快速完成驗證并轉賬,同時可以保證隱私性,但ZKRollup很難對EVM進行證明,因此難以應用于使用智能合約的場景。OptimisticRollup使用欺詐證明的方式,如果有人發現運營者處理的狀態根是錯誤的,那么可以發布一個證明,證明通過后會回滾交易并對運營者進行懲罰。OptimisticRollup在主網中支持智能合約的部署,更適用于現在的擴容需求。但由于欺詐證明的要求,在退出Rollup時,需要一周的時間檢查其他用戶是否提交欺詐證明。以太坊上儲存交易的一個字節花費50Gas,以太坊區塊的Gas上限為1250萬。Rollup可以壓縮以太坊上操作的字節數量,除掉Rollup校驗所需要的Gas量,可以計算出Rollup在擴容方面的表現。
動態 | 浙江財經大學與融都科技集團共建區塊鏈科技研究院:7月16日,浙江財經大學與大圣數據控股母公司融都科技集團共建區塊鏈科技研究院簽約及揭牌儀式,在浙江財經大學下沙校區舉行。雙方共同簽署了區塊鏈科技研究院共建協議,并為研究院正式揭牌。該研究院旨在結合雙方優勢,針對區塊鏈底層技術、區塊鏈在金融、供應鏈管理、電子商務、政務服務等多領域的技術實現和應用等課題開展聯合科研,促進相關領域科研成果轉化和專業技術人才培養。[2018/7/16]
表1:Rollup帶來的擴容空間
總的來說,Rollup在擴容上十分有效,因此可以降低以太坊Gas費。但Rollup會涉及鏈上應用的遷移,使用不同團隊開發的Rollup還會導致互操作性下降的問題。側鏈側鏈是一條區別于主鏈的區塊鏈,用戶可以將主鏈資產轉移到側鏈上交易,以節約主鏈的資源和交易者的成本。嚴格意義上側鏈不算是Layer2解決方案,因為無法完全保證用戶的資金安全也不能保證側鏈與主鏈的關聯性。側鏈只能歸為鏈下解決方案,但由于實現方式和其他Layer2較為相似,這里暫時歸為一類討論。狀態通道、Plasma和側鏈都是通過鏈下交易實現擴容的,他們在具體實現方式和安全性上有所不同。側鏈的技術實現有多種,重點在于讓資產安全地轉移到側鏈,并讓側鏈資產安全地轉移回主鏈,也就是能安全地實現雙向錨定。雙向錨定體現為主鏈上鎖定代幣后到側鏈上發行同等數量的代幣,以及在側鏈上銷毀代幣后到主鏈上解鎖相同數量的代幣。以太坊側鏈的概念從比特幣側鏈衍生而來,有單方或多方的托管方式,SPV模式,中繼模式等。由于目前以太坊因生態應用繁榮擁堵,實際中用戶對于側鏈更偏重易用性和生態問題,也就是資產轉移過程要簡易無感,側鏈上要有與主鏈相同的生態。因此目前最合格且受眾最多的側鏈是BSC和Heco,雖然他們使用了托管方式進行資產轉移,中心化風險較高,但用戶已經足夠信任這些交易平臺作為托管機構。完全去中心化的托管模式會因用戶不了解技術,或者存在黑客攻擊的風險而失去競爭力。BSC和Heco鏈上的生態發展較為繁榮,和以太坊生態一樣出現了借貸、交易等DeFi應用,所以有很多用戶將ETH轉移到BSC和Heco上來獲得低Gas費的使用體驗。但對于BSC和Heco來說不是將以太坊側鏈作為發展目標,他們同樣有獨立的生態,以太坊資產轉移到側鏈上會因此降低以太坊主鏈的價值。經測算BSC和Heco提高以太坊TPS上限約十倍左右,如果未來側鏈中用戶使用量過多的話,側鏈也會出現擁堵問題。狀態通道和Plasma狀態通道是一種在鏈下進行交易和狀態更新的技術,比特幣閃電網絡就是一種支付通道。以太坊的狀態通道可以讓交易雙方在鏈下進行狀態的更新和交易,無需占用鏈上資源。他們通過狀態通道進行交易時,需要對雙方的行為進行簽名并保存副本,每一步的操作是清晰的。如果他們結束了鏈下交易,就將最終狀態簽名后返回到主鏈上來更新主鏈上的狀態。狀態通道在用戶撤回資金時有挑戰期的要求,是為了防止用戶上傳過期的交易記錄牟利。用戶要等待一段時間確認沒有人上傳更新的副本,等待期結束后會按照最新的副本內容執行。如果其中一個用戶在挑戰期受到攻擊掉線等,他就會因無法回應而受到損失。狀態通道需要有一組確定的參與者,因為在通道中的狀態改變只限用于通道內的用戶,而且部署狀態通道需要成本,適合在一段時間內頻繁進行狀態更新的場景。Plasma也是一種鏈下交易的方式,它通過在以太坊主鏈上創建子鏈實現,交易和狀態更新通過子鏈操作,以太坊不會保存交易副本,因此可以節約以太坊空間實現擴容。Plasma子鏈上同樣存在區塊生產者,其中的共識機制可以與以太坊主鏈不同。他們在以太坊上建立交易的根節點來記錄子鏈狀態,作為子鏈更新的證據。為了防止Plasma鏈上的區塊生產者作惡,Plasma使用欺詐證明機制,如果有人發現了生產者的作惡,那么可以提交證明讓錯誤的區塊回滾并沒收生產者的保證金。如果用戶要退出Plasma,也需要經歷挑戰期來證明他的交易為最新交易。但如果Plasma上所有人同時退回資金,那么可能導致以太坊主鏈沒有容量同時處理這么多交易,會導致用戶資金丟失。
政策 | 研究加密貨幣用于非法交易的法案已通過美國眾議院:據coindesk報道,美國眾議院的立法者通過了一項法案,該法案如果簽署成為法律,將批準政府問責局(GAO)研究加密貨幣在性交易和交易中的使用情況。眾議院議員Juan Vargas稱,眾議院一致通過該法案,該法案現在已經轉移到國會參議院的上議院,目前不清楚該措施將如何進行,或者美國總統特朗普是否會簽署該法案。正如本月早些時候的報道,該法案指示政府問責局(GAO)研究“加密貨幣和在線市場如何被用于購買,出售或促進與性交易或相關的商品或服務的融資販運和其他目的”。[2018/6/27]
狀態通道和Plasma的共性問題是要求資產具有所有者,這樣資產所有者才可以出具證明。但對于智能合約不屬于任何人的應用來說很難與狀態通道和Plasma兼容,因此這兩者只能針對降低轉賬Gas費時效果明顯,但由于易用性和挑戰期的問題,技術進展處于停滯狀態。
Gas相關產品
GasToken
以太坊的GasPrice不是一直都保持在高位,而是在高低之間不斷變化,因此可以利用GasPrice的不斷變化進行Gas的儲存和套利,例如GasToken的應用。GasToken利用以太坊的定價系統實現,在清理狀態和存儲插槽以及刪除帶有自毀操作碼的合約時的Gas收費為負值,也就是會收到Gas的退款,最高退款為創造時消耗量的一半。于是在低價時創建狀態,在高價時刪除會獲得Gas,再用于其他交易就可以節約Gas的花費。GST1和GST2是使用不同機制的GasToken,鑄造和銷毀就完成了一次GasToken的應用,他們分別使用了儲存和退款機制、創建和自毀機制來獲得Gas退款,其中GST2得到的Gas更多。
1inch實踐并創新了一種名為Chi的GasToken。在價格低的時候,Chi會創建來「儲存」Gas,未來Gas費上漲后釋放來完成交易。就相當于花費Chi退回的Gas來支付應本應花錢購買的Gas。Chi或者任何GasToken都可以集成到其他系統中來節約Gas費,用戶可以鑄造GasToken,也可以購買GasToken。GasToken的價格會隨著GasPrice的漲跌而變化,對于用戶或項目方來說,在GasPrice低的時候自行鑄造更為劃算。
由于以太坊網絡交易量增加,賬簿容量擴張,GasToken由于占用了空間被認為是不利于網絡發展的。除了增加全節點成本的問題,未來對Gas操作的重新定價也會讓GasToken失效,因此GasToken不應該作為長期降低Gas費的手段。
Gas衍生品
GasPrice的不斷變化會讓用戶和礦工支出收入隨之改變,為了消除這部分的不確定性,GasPrice可以被設計為期貨類產品,讓投機者和用戶之間交易。例如uGas取一個月中以太坊交易GasPrice的中位數來定價,它類似于一種期貨產品。頻繁花費Gas的人可以通過購買uGas來鎖定花費,礦工可以通過鑄造并售出來鎖定收益。但期貨衍生品實用的前提是人們對GasPrice的預期不同,才能保證足夠的流動性。目前以太坊網絡GasPrice由網絡擁擠程度決定,所以很容易出現大部分人會對GasPrice產生相同的預期。如果大家統一看漲或看跌,uGas就會因流動性問題偏離正常的定價范圍而很難使用。
其他節省Gas費的方式
一些用戶習慣以及相關輔助工具可以幫助用戶節約Gas費,例如:
進行同種代幣的批量轉賬;
挑選交易者休息、網絡GasPrice低的時間段交易;
利用GasPrice實時監控產品確定準確的GasPrice區間;
查詢常見的GasLimit范圍再進行設置,避免因交易失敗造成Gas費浪費;
開發者可以通過代交Gas費的方式為用戶節約費用等。
思考與總結
用戶在以太坊網絡中支付Gas費進行交易本質上就是為使用以太坊網絡資源付費,在網絡擁堵資源稀缺的情況下Gas費自然就會上漲。在不減少使用人數的情況下,最好地降低以太坊Gas費的方法就是進行網絡擴容,降低用戶對網絡資源的競爭。以太坊擴容存在多種方案,包括提高GasLimit、分片、Rollup、側鏈、狀態通道等,他們的優劣進展各不相同,其中分片和Rollup是最有效和最可能實現的擴容方案。簡潔的代碼實現也很重要,優化智能合約降低用戶使用Gas的單位數量是有效降低Gas費的方式,AMM的興起有這方面的因素。EIP1559通過改變Gas費收取方式來改善目前的擁堵狀況,雖然最終仍是網絡閑暇時收費低,網絡擁堵時收費高的效果,但這是由系統自動對基礎費調整的結果。在網絡擁堵時Gas費會呈指數型增長,高收費會抑制人們的使用需求,所以達到緩解擁堵的效果。EIP1559的方案不適合長期用于緩解擁堵的手段,但由于基礎費被銷毀所以整體對以太坊生態是有利的。除此之外,針對EIP1559,礦工可能會聯合起來讓區塊的容量維持在GasTarget左右,這樣想優先交易的用戶和現在一樣只能交給礦工更多小費。因此這里對EIP1559最終實現降低Gas費的效果存疑。對于其他的Gas產品,都不適合作為長期、大規模降低Gas費的工具使用。下表是對上文中提到的降低以太坊Gas費方式有效性和缺點的總結。
表2:降低以太坊Gas費的方式比較
如果將以太坊比作一條承載了很多汽車的公路,提高GasLimit就是在擴建公路,但過去經驗告訴我們擴建公路永遠趕不上路上車輛增多的速度。EIP1559是通過改變收費方案,讓一些車會因高昂的收費而不愿出門,其實這是與降低Gas費讓更多人享受到以太坊服務的理念相悖的。優化智能合約就是將車輛改小,讓同一條公路能夠承載更多的車,雖然方式可行,但車輛不可能無限制地縮小,而且大部分智能合約在部署前都考慮到了這一點。分片是在原來的基礎上建立交橋和快速路,實現更有效率的擴容。Layer2是讓開汽車的人放棄這種交通方式,讓他們乘坐火車或者飛機達到目的地,將本應該在原鏈上完成的交易轉移到鏈下進行,減少對原來公路的使用。這個比喻就很清楚地讓我們看出哪些對擴容降低Gas費是有幫助的。
免責聲明:作為區塊鏈信息平臺,本站所發布文章僅代表作者個人觀點,與鏈聞ChainNews立場無關。文章內的信息、意見等均僅供參考,并非作為或被視為實際投資建議。
《覓新》是金色財經推出的一檔區塊鏈項目觀察類項目,覆蓋行業各領域項目發展情況,具體設計到項目概況、技術進展、募資情況等,力圖為您呈現熱門新潮的項目合輯.
1900/1/1 0:00:00近日,由深圳市稅務局主導推進的《基于區塊鏈技術的電子發票應用推薦規程》國際標準(下稱“國際標準”)正式經IEEE-SA(電子電氣工程師協會標準協會)確認發布.
1900/1/1 0:00:00加密貨幣行業頭部衍生品交易所BitMEX創始人決定在美國鐵拳下屈服。據彭博社4月7日消息,BitMEX聯合創始人、前CEOArthurHayes近日已在夏威夷向美國當局認罪.
1900/1/1 0:00:00本文來源:新浪財經 全球第四大數字貨幣交易所Kraken的首席執行官警告稱,各國政府可能會開始限制使用比特幣和其他加密貨幣.
1900/1/1 0:00:00最近,越來越多的藝術家和音樂出版商正在使用NFT來維護對版權的更多控制權,并將他們的作品NFT化,這可能是文化藝術圈的又一個風口.
1900/1/1 0:00:004月6日,開放性網絡NEARProtocol宣布以太坊跨鏈彩虹橋已正式上線,所有ERC20代幣都可以在NEAR和以太坊之間實現無縫轉移.
1900/1/1 0:00:00