探討以太坊EIP-1559弊端:仍不夠穩定

摘要:EIP-1559雖意圖有利於以太坊社區,但實際卻不穩定。自以太坊因其Gas費高昂而漸漸被其他公鏈覬覦其市場份額後, EIP-1559 的上線就備受大眾關注,被寄予厚望。據了解,自EIP-1559上線以來,ETH發行量淨減少了約68%,相當於148萬枚ETH被銷毀。這也被譽為是以太坊歷史上最看漲的催…

EIP-1559雖意圖有利於以太坊社區,但實際卻不穩定。

自以太坊因其Gas費高昂而漸漸被其他公鏈覬覦其市場份額後,

EIP-1559

的上線就備受大眾關注,被寄予厚望。據了解,自EIP-1559上線以來,ETH發行量淨減少了約68%,相當於148萬枚ETH被銷毀。這也被譽為是以太坊歷史上最看漲的催化劑。但與此同時,一些關於EIP-1559存在缺陷的言論也開始流傳起來,甚至還有人稱EIP-1559的存在弊大於利。事實上,EIP-1559確實不能解決Gas費高的問題。從經濟學角度看,Gas費的高低取決於市場供需關係,因此降低手續費的根本是擴容。但除此之外,EIP-1559還暗含著哪些不足呢?本文我們將就EIP-1559所存在的一些弊端進行深度探討。

在本文中我們將使用基本Gas價格來反映EIP-1559的表現。使用EIP-1559,交易有一個新字段,並使用新格式進行序列化。費用不是指定一個唯一的gas價格,而是指定為要支付的最高gas價格和礦工小費(稱為“優先費用”),它確定了將支付給礦工的金額高於基本gas價格。由於小費必須是正數,因此要支付的gas價格將始終高於或等於基本gas價格。處理交易時,總費用(價格乘以消耗的Gas)分為兩部分:基本金額被燒毀,礦工小費金額支付給區塊的礦工。

當大部分區塊鏈協議需要銷毀原生幣時,一般都是為了懲罰某一方的不當行為。如果獎勵行為不端的一方,那麼行為不端的一方可以譴責自己以避免被其他人譴責。在這些協議中,無論誰譴責,各方執行的一系列行動總是導致硬幣被燒毀。但是,在EIP-1559的情況下,如果它們以不同的順序或時間發生,導致代幣被銷毀的相同操作可以恢復代幣。與MEV類似,如果所有相關方都可以合作,代幣可以分享收入。

以下是協議參與者的短期激勵:

1.礦工希望從用戶那里或通過降低基本Gas價格收取更多費用。

2.活躍用戶希望支付更少的費用,要么降低小費,要么降低基本Gas價格。

3.被動用戶希望基礎gas價格高,以便更多的代幣被銷毀,代幣的價值上升。

所有活躍的各方都將受益於基礎Gas價格的降低。主要問題是活躍用戶和礦工之間的聯合行動以降低基本Gas價格很難實現。這些是協調的障礙:(1) 兩個團體都是匿名的和動態的,(2) 活躍用戶的數量很高,(3) 協調需要一些初始時間或金錢努力,(4) 叛逃者可能會破壞計劃和(5) 剩餘用戶可以利用這種情況,以較低的費用進行交易,提高基礎gas價格,而無需參與共同努力。

雖然EIP.-1559駁回了協調,但EIP可能沒有預見到當今存在的降低基本Gas價格的巨大激勵措施。今天,優先小費僅佔Gas基礎價格的6%以下。換句話說,礦工可以通過降低基本費用從交易費用中賺取16倍的收益。 Eric Voskuil關於加密經濟學的書解釋說,交易費用是抵制審查的成本,而目前以太坊為此付出的代價太少。這意味著,至少在理論上,所有交易都可以很容易地被抑制。交易的抑制導致基礎Gas價格迅速降至零,從而增加了錢包適應變化後的礦工收入。

如果基本Gas價格降至零,用戶和礦工都可以將他們的儲蓄分成50/50用於未來的交易。用戶將以50%的折扣進行交易,但礦工將從交易費用中獲得8倍的收入。由於支付的交易費用(已銷毀+ 未銷毀)已達到區塊補貼的平價,這導致已支付區塊獎勵增加50%。由於電力和其他運營成本,礦工的淨收入只佔獎勵的一小部分,即使與用戶分享新收入的50%,這一新收入來源也可能代表淨收入增加300%。這顯然是一個非常不穩定的情況。如果只有以太坊區塊鏈可以協調這兩個組,或者如果交易可以被審查,那麼EIP-1559將是遊戲結束。

如果交易的基礎Gas價格通過完美的協調系統神奇地瞬間降為零,那麼更多的用戶會嘗試交易,將交易費用推回到與以前相同的水平。但是,假設礦工之間的協調系統存在,那麼基礎Gas價格可以永遠保持為零。礦工將擁有比以前高400%的穩定淨收入。

在本文中,我們展示了幾種方法(一些便宜)來協調降低基本Gas價格。雖然其中一些協調機制可能不完善並且一開始可能會失敗,但通常說漏洞只會變得更糟。人們將完善協調系統以實現目標。如此多的方式來實現協調的唯一存在表明了以太坊網絡在EIP-1559下的當前脆弱狀態。

本文提出的研究顯然缺少對以太坊錢包費用管理代碼的分析。預計錢包將正確處理基本Gas價格的降低,並恢復為任意增加小費以確認交易,就像之前的EIP-1559錢包所做的那樣。但是,錢包可能會實施健全性檢查,以防止舊的費用市場再次運作。深入分析需要查看大多數現有錢包的源代碼,以查看與EIP-1559兼容的錢包是否有硬編碼限制,以防止支付高於基本汽油價格的小費。

同樣重要的是,PoS合併越接近,PoW礦工個人和集體行動的動機就越高。

沒有“經典”51%攻擊的礦工協調

我們假設大多數礦工(比如60%,就哈希率而言)願意合作以降低基本Gas價格。我們稱他們為協調多數(CM)。一個CM具有任意增加或減少塊Gas限制的能力,我們的第一個協調方法將利用這種能力。

EIP-1559將CM組的存在與51%攻擊進行了比較。但這種情況並非如此,經典的礦工51%攻擊是丟棄少數礦工的區塊以增加多數礦工的利潤。在CM中,大多數礦工為少數人提供利益。從礦工的角度來看,這與攻擊相反,是捐款。從礦工理性的角度來看,所有礦工都被激勵與幕後的CM合作,即使出於政治原因他們不加入CM。

這為我們帶來了第一種迴避基本Gas價格控制機制的方法。目前區塊Gas限制為30M Gas。如果60%的礦工創建消耗15M氣體的區塊,而其他礦工將它們填充到120M氣體,這相當於57M氣體/塊的吞吐量。我們可以假設對Gas的需求會滿足這個提議,因為BSC鏈有80M的區塊Gas限制並且會填滿它的一些區塊。因此,如果CM決定將區塊Gas限制提高4倍至120M,而CM人為地將其自己的區塊消耗的Gas限制為15M,則所有礦工都贏了。即使Gas價格的下降與吞吐量的增長成反比,這一點仍然成立。

為了說明為什麼這種策略有利於所有礦工,我們可以看到,如果少數人完全消耗了區塊中的所有可用Gas,每個非CM區塊將增加12.5%的基礎Gas價格(協議允許的最大漲幅)。每個以1500萬Gas為目標的CM區塊都會導致基礎Gas價格下降10.9%。因為CM開采了60%的區塊,結果是基礎Gas價格持續淨下降。需要190個區塊才能將基本Gas價格降低90%。

攻擊需要一個準備階段,CM將Gas限制提高到120M,這需要1422個塊(約6小時)。在這麼短的時間內,社區將沒有機會協調響應,更不用說硬分叉了。但在Gas供應快速擴張期間會發生什麼尚不清楚。如果在準備階段需求與供應不匹配,則基本Gas價格可能會下降。有可能僅通過擴大供應量使基本Gas價格變為零,並且小費也會減少,從而導致礦工獎勵的淨減少。 CM可以將其視為對未來回報的投資,但以今天的以太幣價格(6小時收入),“投資”可能達到80萬美元。但是,我們將提出更好的協調機制。

51%攻擊的礦工協調

如果我們假設區塊限制提高到120M Gas,但CM開始從消耗超過15M Gas的非CM 礦工那裡孤立區塊(51%“攻擊”),那麼降低基數只需要24個區塊Gas價格為原值的10%。為了避免與其他礦工發生公開的孤立戰爭,CM =會提前向所有礦工提供單行代碼補丁(甚至可能是配置更改),以便礦工人為地將他們的區塊上限限制為15M。

最終結果是,在6小時內,區塊Gas上限可能會提高到120M,網絡封頂至15M Gas區塊,所有礦工在每個區塊中額外收集超過2個以太幣,收入翻倍。

第三方協調

EIP-1559的目標是將所有區塊填充到大約50%,除非在高需求期間。 EIP-1559的特性之一是,如果所有奇數塊都為空,並且所有偶數塊都以30M的Gas 100%填充(實現相同的平均目標吞吐量),那麼基本Gas價格會持續下降。在僅300個交替的空塊和完整塊(約1.25小時)之後,基本Gas價格達到其原始值的10%。請注意,沒有必要100%的礦工決定創建空的奇數塊。如果只有30%的礦工創建空的奇數塊,則在300個塊後,基本Gas價格降低50%,在1000個塊(約4 小時)後再次降低90%,我們看到不需要大多數礦工。

請注意,如果所有礦工填充的區塊少於47%,則基礎Gas價格也會下降並在316個區塊後達到10%,但吞吐量略有下降1.5%。

補償礦工因開採空塊而造成的任何暫時損失的收支平衡點要早於1.25小時。只有40%的礦工參與,並且僅在15分鐘(60個區塊)內,基本Gas價格可以降低20%,這足以補償他們因空區塊造成的任何損失。基準Gas價格的螺旋式下降已被觸發。

現在我們將邀請第三方幫助達到收支平衡點。假設有一個名為Charles的隱藏協調方願意投資獎勵創建空奇塊15分鐘的礦工,補償每個人在創建空塊時的潛在損失,外加10%的獎金。假設每15秒一個塊,Charles的最大成本對應於本可以在60個塊中支付的小費(給空的塊生產者30個小費)乘以1.1以提供獎金。我們假設以太幣價格為3200美元/以太幣,每個區塊包含2.12個以太幣,用戶支付的費用,其中有2個以太幣被銷毀。

假設Charles將過去15分鐘內的平均小費作為參考,這將導致1.3萬美元的預算。只有40%的參與度,如果市場通過提高小費金額來應對Gas供應的上限,那麼僅僅15分鐘後,所有礦工總共賺取了高達4萬美元的費用,防止他們被銷毀。 40%參與的人多賺了16,000美元。

Charles可以接受鏈上的捐贈,為持續的偶數/奇數採礦模式創造激勵,但這不是必需的。

Charles可以說,只有少於40%的人參與挖掘空奇數塊,才會支付獎金。這意味著礦工永遠不會賠錢:要么Charles補償他們,要么他們得到支付更高Gas價格小費的用戶的補償。由於最可能的結果是礦工參與,Charles可以保存賞金並將其重新用於下一輪。在礦工意識到他們降低基礎Gas價格的能力之後,即使Charles離開了,礦工很可能只是繼續挖掘空的奇數塊作為新的謝林點!螺旋式下降已經開始。

通過智能合約進行協調

如果你不相信可以達到一個新的Schelling點,或者可以信任第三方來協調它,那麼我們展示了智能合約的力量可以實現相同的目標:我們可以替換外部方Charles通過將礦工聚集在一起的開放且安全的智能合約。讓我們稱之為收集者。礦工將直接與Gatherer交互,而不信任任何外部實體。只需要礦工了解合約,任何礦工都可以引發連鎖反應,增加礦工收益。

很明顯,在以太坊中構建Gatherer是可能的,使用BLOCKHASH操作碼來獲取最近15分鐘或更長時間內的塊的哈希值。 Gatherer必須為用戶或礦工提供一些激勵,以將完整的區塊頭信息提交給Gatherer合約,Gatherer將檢查此信息是否與安全獲得的區塊哈希值匹配。通過區塊頭,合約可以了解其過去區塊的所有信息,並發現哪些礦工創建了空的奇數塊,並相應地補償它們。檢測空塊很簡單,因為交易根哈希對應於空的trie哈希。畢竟,協調是以太坊的好處。

Gatherer可以輕鬆決定支付賞金或再使用15分鐘,所以最可能的結果是Gatherer只需要1.3萬美元的初始投資,這些資金將永遠持續下去。如果由於供氣較短而需要更多時間來提高提示,則可以延長賞金和賞金時間。這是參數化的問題,但不是可行性問題。

少數礦工和私人用戶的協調

EIP-1559的期望屬性之一是用戶可以更好地估計交易費用並避免多付。但與此同時,基本Gas價格必須迅速適應擁堵。目前,基礎Gas價格在一天內上漲100%是很常見的。

巨大的費用可變性為用戶與礦工協商固定費率創造了動力。正如我們將展示的,我們稱為Mina的礦池可以通過挖掘空塊為用戶提供更低的交易價格,同時獲得巨大的收入增長。 EIP-1559提出了這個問題並忽略了它:不開採空塊的礦工將破壞Mina的計劃。然而,我們的模擬表明情況並非如此。

這就是Mina開展業務的方式:Mina向用戶提供固定費率合同,我們稱之為Mina的“私人客戶”。該產品在區塊編號給出的截止日期之前有效,如果私人客戶試圖在截止日期之前雙花給定交易,他們同意受到處罰。

懲罰機制是由我們稱為Penelope的智能合約完成的。私人客戶存入的抵押品大約等於Penelope兩筆交易的成本。當客戶端向Mina發送帶有nonce N的私人交易T時,它還會簽署消息M斷言他將在截止日期D之前避免創建任何雙花T´。要簽名的消息如下:“nonce N將保留給事務TxId(T),直到塊D”。私人交易T將指定低於(即3%)當前基本Gas價格的最高費用,該價格由私人客戶和Mina協商確定。如果私人客戶雙花nonce N,那麼Mina會將證據發送給Penelope並收取賞金。請注意,Mina的私人客戶更有可能是大型加密貨幣交易所。

Mina現在可以根據同一協議自由地從其他客戶那裡收集盡可能多的其他私人交易。請注意,如果Mina收集了足夠多的承諾(例如,她可以填充一個完整的區塊),那麼這也意味著她已經從市場上移除了待消耗的Gas,並且填充的區塊將減少,並且基礎Gas價格為更低,甚至在Mina開採空塊之前。

目前在以太坊中,平均小費不到基本Gas價格的6%。為了簡化我們的解釋,我們假設基本Gas價格是100個代幣,平均小費是6個代幣。 Mina的私人客戶的交易最多支付給她103個代幣(比106少了約3%),但他們指定了15.5個代幣的小費(遠高於其他的6個代幣)。 Mina不能濫用這些私人交易,因為它們在基本Gas價格為100的區塊中是無效的。 Mina將等待。讓我們假設所有區塊都是半滿的,並且基礎Gas價格是穩定的。讓我們假設塊的Gas限制是30個單位的Gas。現在我們解釋Mina將如何通過挖掘空塊從這些私人合約中受益。

一旦Mina收集到一個充滿交易的區塊,她就會開始挖掘空區塊。她每挖一個空塊,基礎Gas價格降低12.5%,基礎Gas價格變為87.5個幣。如果她恰好在挖完空塊後挖了一個塊,她可以用私人交易將其填滿,每使用一個Gas單位就可以獲得103–87.5=15.5個代幣。由於她將區塊完全填充到30M Gas,因此她獲得了15.5*30=465個代幣。每次她挖出一個空塊,她就會損失大約6*15=90個代幣的收入。這意味著,只要Mina可以每5個區塊連續創建兩個區塊,她就可以獲得正收益。

擁有45%算力的礦工有更高的機會開採兩個連續的區塊,而不是每5個區塊一個。因此,假設大多數礦工需要從降低基本Gas價格中獲利是錯誤的,因為我們表明45%的礦工實際上可以獲利。

我們在這裡考慮到,在挖出一個空塊後,剩餘的礦工會填滿他們的塊來消耗之前沒有消耗的所有Gas,但情況可能並非如此。如果不是所有的Gas都被消耗掉,那麼Mina的策略可能會觸發基礎Gas價格的持續下降,而整體交易成本保持不變,以造福所有礦工。在實踐中,實際會發生什麼取決於錢包如何編程以在確認延遲的情況下增加小費。

我們尚未評估Mina的策略對剩餘用戶(未與Mina簽訂私人合同的用戶)的影響。了解Mina的策略後,願意進行交易的用戶可能會決定等到創建了一個降低基礎Gas價格的區塊,然後立即廣播他們的交易以競爭具有低基礎Gas價格的區塊空間,設置較低的最高費用。使用我們之前示例中的數字,一種可能性是10個代幣的小費,最高費用為100個代幣,成功節省6個代幣。該策略使所有礦工受益,包括Mina。在空塊之後,礦工的收入幾乎翻了一番。因此,他們的動機仍然是保護Mina,即使他們不是Mina的一部分。

自主挖礦和EIP-1559

想要預售區塊空間但不希望搭便車者追隨他的空區塊的礦工可能會嘗試自主挖礦,試圖連續創建兩個私有區塊,並將它們一起發布。如果不可能,那麼第一個區塊將被釋放,稍後作為叔集包含在內,至少會失去1/8 的區塊補貼。目前,如果80%的費用從基礎Gas價格轉移到優先小費,那麼費用將提供比塊補貼更高的收入,這意味著自主挖礦可能成為具有大哈希率百分比的礦工的理性策略。同樣,一旦觸發了基礎Gas價格的下降,它可能以零基礎Gas價格結束。

EIP-1559 “合併” PoS 之後

以太坊PoS共識中EIP-1559的問題之一是礦工提前知道他何時能夠連續開採兩個區塊。礦工可以以低於平均Gas價格的價格預售區塊空間,當輪到開採兩個連續區塊時,開採一個空區塊,然後開採一個私人填充區塊。由於領導者選擇的開放性,以太坊PoS還使礦工很容易與先前或後續礦工協調行動以降低基本Gas價格。

解決方案

我們找不到EIP-1559激勵問題的完美解決方案。我們提出的解決方案是只銷毀一部分基礎費用(即20%),其餘的給礦工,比礦工池更可取。

一些變化可以減少協調的動機。最簡單的補丁是降低基本Gas價格的變化率,從12.5%/block降低到3%/block左右,但這會改變EIP-1599的屬性以將擁塞傳達給用戶。儘管如此,仍無法阻止通過智能合約進行長時間的協調。另一個部分解決方案是將塊體積中的硬限制設置為30M(有幾個EIP嘗試這樣做)。

由於EIP-1559已將交易審查成本降低到可接受的範圍以下,所以如果不減少消耗的費用,那麼EIP-1559就無法保存。時間會證明EIP-1559是穩定的還是在沒有建議的更改的情況下變得不穩定。社區對礦工的壓力可以減輕風險,即使他們不繞過EIP-1559是不合理的。

總結

雖然EIP-1559的意圖有利於以太坊社區,尤其是被動的以太坊持有者,但我們認為它是不穩定的。當所有活躍的參與者都可以從協調中獲得高度收益,並且協調的成本很低時,只需要一個火花就可以觸發將EIP-1559恢復到先前狀態的更改。一連串的事件可以迅速收斂到一個新的互惠Schelling點,以消除基本Gas價格。問題的根源在於基礎Gas價格可以通過交易審查來改變,而以太坊的審查成本已經變得非常低。如果平均吞吐量保持在1500 萬/塊,那麼以當前以太幣價格抑制奇數塊交易的成本僅為77,000美元/小時。

在本文中,我們展示了六種不同的方法來在一些參與者可能背叛的對抗情況下實現協調,但協調可以取得進展。我們還展示瞭如何使用智能合約的以太坊協調能力來促進消除EIP-1559的共同利益。 EIP-1559使非活躍用戶受益而損害活躍用戶這一事實使其不穩定,因為非活躍用戶在開始合作刪除EIP-1559時可能沒有關注區塊鏈的狀態。

原標題| 你知道嗎,以太坊EIP-1559可能並不穩定?

來源:medium

作者:Sergio Demian Lerner

編譯:陳一晚風

Total
0
Shares
Related Posts