比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > 聚幣 > Info

以太坊 Gas 費為何阻礙了 DeFi 發展?怎么辦?_DEFI

Author:

Time:1900/1/1 0:00:00

一覽以太坊擴展性的挑戰。

撰文:RemcoBloemen,0x技術專家編譯:LeoYoung

你最近要是用了DeFi產品,一定會因高額交易費望而卻步。現在為以太坊交易支付幾十到上百美元交易費再正常不過。以當前的費率,只有「巨鯨」交易才能獲利。就忘了那些所謂的「讓沒有銀行賬戶的人享受金融服務」(banking-the-unbanked)或「構建普惠大眾的無需許可金融基礎設施」這些高尚的目標吧。以太坊變成了富人的樂園。

小額交易手續費有時會高達10%

高額交易費的背后是區塊鏈可擴展性問題。這個問題眾所周知,甚至還有一個專門維基百科頁面。可擴展性是目前區塊鏈發展的最大限制,除此之外還有確定性時間長、易出現搶先交易、跨鏈互操作性等問題。

我們想要創造一個所有價值可自由流動的代幣化世界,區塊鏈的局限卻正在阻礙我們實現這一使命。這就是為什么0xLabs專門成立工程師團隊,力圖解決這些局限性的問題。通過我們的研究,我們希望通過本文來探討以太坊的局限性,及其如何影響DeFi用戶。此外,本文也會簡單論及下一代區塊鏈。在未來,我們還將撰寫文章,探討不同的解決方案Layer2,并演示我們滿足DeFi需求的策略。

首先要說明,以太坊交易的大小以gas計算。區塊中收集交易,大約每13秒一個區塊。每個區塊所容納的交易數量空間有限,也就是「gas上限」。目前每個區塊大約有1,200萬gas交易空間。純ERC-20代幣轉賬大約需要五萬gas。也就是每個區塊可容納最多240筆代幣轉賬,約每秒18筆轉賬。DeFi轉賬通常涉及多筆代幣轉賬和簿記,造成交易成本翻倍,進而限制區塊吞吐量。「gas上限」和區塊時間意味著需要持續提供交易所需的gas。

首先,我們來看以太坊歷史上gas供應及其使用如何增長。

Gas使用

每天以太坊上約有六千區塊挖出,有幾十億價值gas交易空間。主要由于「gas上限」增加,gas交易數量也隨著時間改變、增加。同時,交易消耗總gas費也會隨著以太坊上的交易增多、變大而增長。

回顧以太坊整個歷史的gas供應和消費,如下圖:

從上圖可以看出,以太坊是企業級應用,因為辦公時間應用最高

拜占庭(Byzantium)、君士坦丁堡(Constantinople)和繆爾冰川(MuirGlacier)硬分叉之前,以太坊gas供應有幾次斷續下跌。這都是以太坊「難度炸彈」的影響。

江卓爾:以太坊主網合并在11月-12月進行的概率很大:7月17日消息,江卓爾表示,ETH開發人員計劃9月19日合并ETH 2.0,但這種大型軟件開發項目,最后延期也是常態,并且還有大量的ETH應用項目沒有開始測試,因此料敵從寬,再加2-3個月冗余(這也是難度炸彈延長區塊時間的最后可忍受時間),11-12月合并的概率很大,正好契合年底熊市下跌結束的慣例(2014、2018熊市都是到年底止跌),由ETH作為龍頭,啟動下一輪牛市。

ETH 2.0后的三大實際資金面利好:

1. ETH將減產90%,你想想一次BTC減半都會帶來一輪大牛市,而減產90% = 3次BTC減半。

2. POS鎖定幣預計從現在的10%提高到30%(按照其它POS幣慣例),更多幣被鎖定。

3. 再加上EIP-1559燒幣,實際通脹從正2.0%變負1.8%,開啟幣圈前所未有的燃燒通縮時代。[2022/7/17 2:18:56]

在「冰河時代」,出塊時間大幅增加,造成單日出塊量減少,gas供應降低。當然這種情況非常不受歡迎,迫使網絡硬分叉來調整。這樣做的目的就是:迫使硬分叉帶來升級改進,防止陷入創新停滯。伊斯坦布爾(Istanbul)硬分叉沒有重設「難度炸彈」,所以很快進行了繆爾冰川硬分叉。即將進行的柏林(Berlin)硬分叉考慮更改這一機制(EIP2515)。

看用量情況,以太坊自從2017年ICO熱潮以來,gas用量始終占60%以上。之后「gas上限」幾次增長到四倍,每次上限增長后gas用量也成比例增長。過去幾個月,以太坊用量一直卡在95%。

要理解以太坊gas用量為何不會超過95%,需要先了解「空塊」(emptyblock)和「叔塊」(ommerblock)的概念。

「空塊」和「叔塊」

以太坊歷史上,即使需求再高,gas用量也從未超過上限95%。讓人驚訝的是,剩余5%浪費在完全空的區塊。這些空塊定期出現,大約每二十個塊有一個。有交易要付款進入打包入塊,為什么還會有人要挖空塊?先看以下數據:

空塊率隨著時間穩定增長,目前是5%。所有礦池的空塊率相等,所以挖空塊的不會是惡意礦工。相反,真實原因可能是出塊過快。如果挖塊時間低于六秒,那獲得空塊的概率便會幾何增長。

一個解釋就是,礦工一獲得新區塊頭,在完整個區塊沒打包完成前便開始挖下一個區塊。這種操作在比特幣里稱為SPV挖礦,讓礦工可以沒完成一個區塊驗證可即刻開始找下一個區塊,但只能加入空區塊。新區塊完全打包完成后,就可以添加下一個完整區塊,并切換去挖。

3Space Art推出其NFT平臺,目前支持以太坊和Klaytn區塊鏈:1月4日消息,3Space Art推出其NFT平臺。該平臺不僅僅是藝術家和收藏者的虛擬聚會場所。3Space Art與畫廊、部門、公司辦公室以及活動組織等線下場所合作,以展示數字藝術。

非加密人群只需掃描二維碼,就可以在線下展覽和畫廊使用信用卡購買這些NFT。然后,他們可以在家里或辦公室展示其NFT。NFT所有者還可以將其收藏的藝術品投入平臺的Art Pool,以獲得PACE代幣。PACE代幣是平臺針對藝術家和收藏者的版稅計劃的一部分,旨在協調藝術家、收藏者和觀眾之間的激勵措施。

3Space Art支持多個區塊鏈網絡,目前正在以太坊和Klaytn網絡上鑄造NFT。該平臺支持用于Klaytn區塊鏈的KLIP錢包,以及Metamask或用于以太坊上支持Walletconnect的任何錢包。(Bitcoinist)[2022/1/4 8:23:57]

這種解釋的進一步證據就是,如果同一礦工快速連續挖到兩個區塊,空塊率就會降低25%。

挖空塊的另一種方法就是,在挖上一個區塊的同時,處理新區塊。這就造成同時挖出多個區塊。如果出現此類情況,以太坊會選出一個主干區塊,把其他區塊標記為「叔塊」(ommer)。挖到「叔塊」的礦工仍舊可以得到小額獎勵。這種情況出現的比率穩定:

2018年gas用量達到峰值期間,「叔塊」率也到新高,但之后占比降到所有挖出區塊的5%。這與礦工可能此時更改挖礦策略造成空塊率升高相吻合。

空塊率對以太坊可擴展性的傷害沒有立即表現出來,但確實有影響。自從拜占庭升級的EIP-100提案,難度調整維持一定主干鏈區塊和「叔塊」比率。所以「叔塊」率高就表示浪費的「叔塊」增多,主鏈增加的塊減少。這就表現為每日出塊時間延長,每日總gas量減少。

「叔塊」或空塊都是以太坊網絡的重要健康指標。任何一個指標增長,都意味著每日用于交易的總gas減少。「叔塊」率分析是支持EIP2028和1559研究的主要部分。意外的是,這兩個EIP都沒提到空塊率,而且研究存在方法缺陷。用邏輯回歸等恰當的統計學方法分析「叔塊」率和空塊率,這樣更嚴謹的分析會更好。

有方法可以降低空塊率和「叔塊」率。推定根本原因就是,由于網絡和處理延遲,礦池沒有最新的狀態可用。一個簡單但不太讓人滿意的解決方案就是,讓礦池更中心化,最近的狀態就會集中在一起。

數據:以太坊域名服務在空投ENS后完全稀釋市值達到54億美元:11月9日消息,CoinGecko數據顯示,以太坊域名服務(ENS)治理代幣ENS的完全稀釋市值已經達到54億美元。“完全稀釋(fully diluted)”是指如果ENS代幣的總供應量處于流通狀態的市值。ENS代幣的最大供應量為100000000枚,目前只有十分之一在流通。截至發稿時行情顯示,ENS現報46.09美元,24小時上漲155.7%。(Decrypt)[2021/11/10 6:42:31]

更去中心化一點的解決方案就是bloXroute那樣,創建礦池間專用連接。受「間諜挖礦」(spymining)啟發,可以讓礦池預先分享目前在挖的區塊。其他礦池會準備可能會挖的后續區塊。礦池成功挖完自己的塊后,就已經知道后續可以挖哪些塊,立即切換。在堆棧上方,改進節點通訊協議和處理算法也有效,這些地方仍有改進空間。最終,降低空塊率和「叔塊」率才能單日提升最多5%gas供應量。

所以似乎有95%gas上限,但如果有人想要使用超過95%的量怎么辦?

Gas價格

以太坊gas上限到頂會怎樣?礦工可以自由選擇打包交易,但實際上礦工按「高gas費優先原則」打包交易,因為這樣利潤最高。這樣就產生對可用gas的第一價格拍賣現象。

Gas價格已成為「完美非彈性供應量」的教科書范本。隨著網絡使用率超過80%,漲到95%位置,gas價格明顯增加。任何潛在需求增加只會增加價格,直到價格趕退需求,降回相同水平。

讓價格下降的唯一方式就是增加gas供應,或降低需求,而最近gas上限增加不足以有效降低gas價格。

乍一看,對以太坊都興趣增加,只會推升價格,不會造成用量增長。實際上,高價值使用會驅逐低價值使用,便宜的游戲類非同質化代幣(NFT)交易減少,大額DeFi交易更多。

提案EIP1559意在使短期內gas供應更加彈性。在需求高峰期,可以加大區塊容量。這就有助于保持高峰gas價格平穩,可以更快打包交易。但這樣無法改變長期供應量不具彈性的問題。

根據提案EIP-1559,長期仍有固定gas發行率,意味著gas價格會持續上升,直到需求足夠小。EIP-1559仍舊鼓勵同一區塊內支付溢價的優先打包處理。這就意味著搶先交易、gas競價和礦工牟利的情況仍舊存在。

以太坊上的大多數USDT活動轉向歐美辦公時間:金色財經報道,一份新報告顯示,USDT在以太坊區塊鏈上的活動已從亞洲辦公時間轉向歐洲和美國的辦公時間,這可能是因為中國打擊加密貨幣交易以及USDT用戶遷移到其他區塊鏈。報告稱,去年,以太坊上的大多數USDT活動發生在UTC時間2:00至14:00之間(北京時間10:00至22:00),其中UTC時間6:00至8:00期間(北京時間14:00至16:00)最為繁忙。但是,今年在UTC時間2:00至6:00(北京時間10:00至14:00)的使用量較少,UTC時間15:00至20:00(北京時間23:00至04:00)之間的使用量更多。[2021/8/4 1:32:51]

圖中的數字代表下個區塊內可打包交易的最低價格。你愿意等得越久,gas價格會越低。歷史數據表明,若你愿意等兩分鐘或更久,那價格便會很低。EIP-1559有助于降低溢價,便于更快處理交易。

因此,gas上限促使gas價格上升,那我們該如何提高上限?

Gas上限

礦池確定gas上限。下面簡要概述礦工和礦池工作原理:幾乎所有礦工都會把算力資源聚集一起。礦工們不會冒著長期沒有收獲的風險單獨去到下一個區塊,而是將資源聚集而獲得穩定收入。礦池來驗證每個礦工貢獻的算力,再繼續挖下個區塊,這種方式推動了礦池發展。大型礦池最終會挖得較大份額區塊。

下面來看以太坊上礦池份額的發展情況:

星火、Ethermine和魚池三家獲得主要區塊。

除了進行硬分叉外,礦池運營者有重要治理責任:他們可以設置以太坊gas上限。與出塊時間和gas價格不同,gas上限由每個區塊各自確定。新gas上限限于上一區塊的0.1%,所以每個區塊僅能做出微小浮動。要是三家礦池一致同意快速復利滾動單邊浮動,兩個半小時gas上限就能翻倍或減半。要是意見不一致,gas上限就是礦池規模的加權平均數。

目前由于缺少礦工實際操作的詳細信息,我們會用簡單的方法:投票系統。希望未來我們可以軟分叉,變為更精確的算法。

以太坊設計原理

以太坊早期礦工設定gas上限的方式是「補缺解決方案」。很多「補缺解決方案」足夠好,就變成了備用參數。EIP1559建議采用不同機制,目前正在討論在柏林分叉時應用。這之前,礦池運營者可像OPEC控制石油產量一樣控制gas供應量。

歐科云鏈OKLink:交易手續費占到以太坊礦工收入的53%:據歐科云鏈OKLink數據顯示,二月份至今,以太坊上礦工收入已達到7.9億美元,超過同期比特幣的7.6億美元。

此外,53%的以太坊礦工收入來自于網絡的交易手續費,而同期比特幣的這一比例為14%。[2021/2/18 17:27:21]

Ethermine礦池運營者

最近兩大礦池一致決定提升gas產量25%,頗有爭議。目的本是通過增加gas供應來緩解高交易費壓力。目前我們所看到的,交易需求增長快過gas上限增長速度。這就造成價格暫時趨緩,最終還是會上升。

提高gas上限會對以太坊安全帶來巨大隱患。如上所述,gas上限會增加「叔塊」率和空塊率。正常交易負載下,這一增長很小。但對于安全問題,我們不關心正常行為,只關心糟糕情況下的不利行為。Perez和Livshits(2019年)研究了這種糟糕情況,結果就是同等gas成本下,糟糕時的交易要比正常交易慢百倍。需要九十秒區塊才能填滿交易。這就造成節點同步滯后,礦池挖「叔塊」和空塊。至本稿發布,問題已有緩解,但不足以避免。這就引致兩位節點主開發者PéterSzilágyi和AlexeyAkhunov批評提高gas上限的決定。

所以,gas上限促使gas價格上升。似乎我們不該一味增加gas上限。那該怎么做?或許可以降低交易所需的gas成本?

Gas成本

交易的gas成本主要由EVM運行成本組成。交易是由眾多EVM操作組成,每次運行成本由EIP和硬分叉決定。過去幾次硬分叉中,有些操作的gas成本已經增加(EIPs150、160、1884),有些降低(EIPs1108、2028、2200)。計劃中的柏林硬分叉也在在考慮變更一些特定操作的gas成本。

所有變更的目標是要讓費用更準確反應操作的真實成本。這就意味著,隨著計算機和算法變快,計算運行成本會降低。

而存儲操作成本有所不同。存儲與檢索成本視鏈上狀態大小而定,而以太坊狀態大小在持續增加。改善存儲設備或數據庫不會抵消狀態規模的增加。

這就意味著,存儲仍舊是DeFi應用的大額成本。創建新的余額要兩萬gas,修改現有余額要五千gas。轉賬至少要修改兩次余額,匯兌至少要修改四次,DeFi交易所需的狀態費用更高。似乎沒有簡單方法能降低相關存儲量,有需求,存儲費就會上升。好的一面,Layer2擴展解決方案偏向輕量存儲和高計算量,似乎更有優勢。

最后,隨著gas上限提高,也會出現相同的安全擔憂:糟糕情況影響大。本地優化gas成本達到當前操作的平均成本很危險。

這樣就很清楚為何以太坊擴展性的問題這么棘手。在給出解決方案前,還需提及目前以太坊傷害DeFi用戶的另一局限之處。

礦工牟利

區塊打包者遵守共識規則。共識規則保證交易選擇和排序等重要自由。對于普通代幣轉賬,問題不大。但對交易所等DeFi交易,搶先交易就有很高經濟價值。目標交易兩面受攻擊,便會出現更復雜的牟利行為。Daian等人(2019)稱之為「礦工牟利」(minerextractablevalue)。

礦池似乎不會惡意使用自己的交易排序自由,但仍可以用其牟利。礦池有可能使用Geth按gas價格排序交易。這就會產生gas價格拍賣,最高競價交易優先。這會造成不良影響,任何人都可以通過高競價搶先交易。競爭交易者持續競價讓gas價格升高,直到交易利潤完全抵消gas費。目前,所有牟利都會變為交易費落入礦工口袋。

其他情況下,恰好接著一筆交易會有價值,例如價格預言機更新后第一個清算倉位。這稱為「back-running」,結果也是礦工獲益。

大價差、價格偏離、高手續費及更多失敗交易,最終會讓DeFi用戶受損,礦工牟利。要有更好的DeFi體驗,這個問題就得解決。解決這個問題就要限制交易排序自由,例如要求一個區塊內最低gas價格的交易優先。

現在已完全了解以太坊的局限,及其如何影響DeFi。當然所有致力于擴展性的明星團隊終將解決這個問題,對吧。

強化底層,著眼二層

有很多出眾的團隊致力于不同可擴展性解決方案。解決方案有兩種:Layer1和Layer2。Layer1解決方案的目標是構建擴展性更好的以太坊,Layer2解決方案是要在以太坊的基礎上構建更具可擴展性的基礎設施。

從最明顯的問題開始:提升現有以太坊的性能——這是Eth1x要做的事情。改進以太坊客戶端性能,仍舊可以有很多提高。糟糕的是,Eth1x幾乎沒有得到任何應有的支持,所有進展很慢。

要了解Eth1x可以達到何種性能,可以先來看看Solana。Solona吞吐量可達到以太坊千倍以上,還有提升空間。這種方法的主要劣勢是,運行全節點的硬件要求很高。

多數其他解決方案都有三個共同點:

使用WebAssembly作為虛擬機,極簡狀態架構,和最重要的分片。目前以太坊上的所有交易都按序列執行。交易排序毫無疑問是區塊鏈的關鍵。這種模式的缺點是,很難并行處理,所以投入更多資源也無法輕松解決可擴展性問題。這就是下一代區塊鏈Eth2.0要解決的。通過更改交易執行方式,讓交易平行處理。將區塊鏈分為多個松散連接的域,也就是稱作「分片」的處理程序,來實現這一方案。一個分片內的交易仍舊按順序排列,但分片之間是異步進行。這就允許所有分片平行運行,依分片數量擴展網絡。用以分離的域不一定與分片相匹配,同一個分片可以有多個域,甚至可以遷移域,達到負載平衡。如需深入了解分片技術,讀者請瀏覽Near協議的「夜影」論文。下一代區塊鏈主鏈從哪里分為域何時分為域,視情況而定。第二代區塊鏈可看作是從細粒化到粗粒化光譜。

兩個項目各占粒度光譜兩邊:Dfinity在細粒度一端,每個代理人有自己的域,每次代理人交互都是異步。Near協議細粒度化稍小,每個合約都有自己的域。粗粒度一端是波卡,其域是就是整個分片,這種情況稱為「平行鏈」更準確。從DApp開發者角度判斷以太坊2.0為時尚早。Eth1EE將為粗粒度,有與分片一致的界限,目前的以太坊會成為一個分片。細粒度解決方案的優勢是透明;合約間調用無論是否跨分片邊界,都能看上去一樣。這就進而允許在分片間移動合約來輕松平衡負載。

缺點是跨域交易不再是原子化,而是變成并行,其中部分不可撤銷。Dfinity和Near中顯示合約間調用為async,返回約定等待await。await期間所有發生的交易都會寫入鏈上。之后其他人的交易可以疊加之上。這時候之前的所有交易就不能撤銷。await最終確認后,可返回合約調用成功或失敗指令。有多個提案避免這一情況,讓跨分片獲得一定原子化,但這樣也有劣勢。擁抱非原子化似乎是自然結果。

對于DeFi,異步transferFrom調用構成很大挑戰。設想雙方進行簡單交易,Alice和Bob想要用ETH和DAI交易。基本合約應該是:

但現在我需要處理錯誤。如果第一次交易失敗,我們可停止交易。如果第二次交易失敗,就需要將1個ETH退給Alice。問題是,這時Bob可能已經把那1個ETH花了。解決這個問題的一個方式就是托管。

這樣就行了,沒人會損失。但現在Bob就對Alice的交易有了專屬自由選擇權。Alice的代幣被托管,不會再進行其他交易,也尚未保證與Bob的交易一定會成功。解決這個問題可以對違規者懲罰。而DeFi交易會很貴,就難以確定多少懲罰額度合適。解決這個問題可以要求市場各方最開始都在一個存款合約存入資金托管。而這樣又變成中心化狀態,根本上就不需要分片了。

另一個需要注意的是,這些并發問題到底能多復雜。真實交易中,也有需要更新的序列填充狀態(fill-stateoftheorder),這就讓協議更加復雜。相比并發漏洞,困擾以太坊1.0的重入攻擊漏洞便不足為奇。并發漏洞為不確定性,測試中也不會發生。從上述簡單交易可知,要解決這個問題就需要重新思考基礎架構,唯一可靠的方式就是打翻重來。

交易是DeFi構建的基礎,是一系列處理程序。我們已知道交易所交易簿如何構成挑戰。自動做市商交易所就較為簡單,因為有托管儲備金在,但儲備金余額形成妨礙并行的瓶頸。即使最快的傳統交易所,結算也沒有并行,在單一匹配引擎排序完成。如需詳細了解傳統交易所工作原理,BrianNigito的演講非常棒。

這并不意味著這些問題無解。最簡單的解決方案就是這些所有協議在每個分片部署獨立的實例,讓套利者保持彼此間同步。或許可以得到性能足夠的單獨同步分片納入所有DeFi交易,這樣就無需擔心并發的問題。

本文深入探討了以太坊擴展DeFi應用方面的局限性。如上所述,這問題復雜而不可一蹴而就。之后我們會撰寫另外一篇文章探討Layer2特定解決方案,并演示0x自己的策略。

參考

1.DanielPerez&BenjaminLivshits(2019).“BrokenMetre:AttackingResourceMeteringinEVM.”

2.Daianetal.(2019).“FlashBoys2.0:Frontrunning,TransactionReordering,andConsensusInstabilityinDecentralizedExchanges.”

3.BrianNigito(2017).“HowtoBuildanExchange.”

4.DannyRyan(2020).“TheStateofEth2,June2020.”

5.ScottShapiro&WilliamVillanueva(2020).“ETH2Phase2WIKI.”

6.NearProtocolshardingdesign

Tags:GAS以太坊ETHDEFIgas幣最新消息以太坊幣最高價格是多少錢tetherAxis DeFi

聚幣
灰度母公司旗下Foundry進軍BTC礦業 是否影響中國礦工_比特幣

中國是全球最大的加密礦業所在地,盡管許多其他國家正在實施戰略,以吸引更多的礦業公司。美國和加拿大自2018年以來,已連續五年試圖挑戰中國在加密挖礦領域的全球主導地位.

1900/1/1 0:00:00
TB礦池即將上線挖礦幣種CBT的公告_BTC

尊敬的TB用戶: 礦池首期項目TBP上線不足一分鐘全部售磬!為增強用戶體驗、滿足廣大用戶需求,我們將于9.14上線挖礦幣種CBT 一、礦池算力認購細則 1、認購算力須以TBUSDT形式認購2、流.

1900/1/1 0:00:00
LBank關于上線FARM交易區的公告_USD

尊敬的LBank用戶: 為提高用戶體驗,LBank將于9月11日16:00上線FARM交易區,該交易區所含的交易對如下:LBank藍貝殼于5月18日20:00上線XVS.

1900/1/1 0:00:00
幣安智能鏈支持主流幣挖礦,設立1億美元“種子基金”加速DeFi建設_EFI

親愛的用戶:為了扶持區塊鏈行業生態建設,打造CeFi與DeFi生態協同,幣安智能鏈首批將支持DeFi挖礦項目,包括XRP、BCH、LTC、ADA、DOT、XTZ、EOS、ONT等主流幣挖礦.

1900/1/1 0:00:00
關于BTFI采用漲跌幅機制_TPS

尊敬的LOEx用戶:LOEx國際站應BTFI項目方要求,于新加坡時間9月16日24:00采用漲跌幅機制.

1900/1/1 0:00:00
關于ARRC上線COINBIG合約區ETH、EOS指數交易的公告_COI

ARRC將于2020年9月14日15:30正式上線COINBIG合約區ETH、EOS指數交易,歡迎參與體驗! 幣種介紹: TheARRCchainofrightsisinitiatedbythe.

1900/1/1 0:00:00
ads