一個故事告訴你 EIP-1559 解決了什么問題?

一個用戶的故事

假如你是以太坊的新用戶。你剛剛安裝了Coinbase錢包并且提交了你的第一筆Uniswap交易,Coinbase錢包告訴你交易會在在幾分鐘內進行確認,需要你耐心地等待。然而幾分鐘過去了,卻沒有任何變化發生,這時候你一定認為是出現了錯誤,所以你關閉了所有程式并重新嘗試,但是這樣類似的問題又發生了,你的交易還是停留在等待狀態。

沮喪之余,你認為一定是你使用的應用程式出了問題,所以你轉到另一個以太坊應用程式,嘗試發送交易,不幸的是,同樣的問題再次發生了。然后你想到了一個很棒的主意,想通過給自己發送一些以太坊來測試問題是否出在Coinbase錢包上,但可惜這種方式也會卡住,

最后你已經到了窮途末路的時候,你決定去尋求幫助。首先你嘗試聯系Coinbase,但他們的支持響應時間相當長,所以你反而決定去你最初嘗試使用的應用的Discord服務器。在描述你的問題并與工作人員分享你的以太坊地址后,他們向你解釋你有六個待處理的交易,在第一筆交易通過之前,后續的幾筆交易都不會提前通過,他們告訴你這是一個可以解決的問題,并詢問你使用的是什么錢包。

當告訴工作人員你正在使用Coinbase錢包時,他們的回答是?,并很不幸的告訴你Coinbase錢包沒有提供必要的工具來糾正這種情況,你唯一的選擇是等待并希望gas prices下降,或者換成使用其他更高級的錢包,如MetaMask。這是你第一次聽說 “gas prices”,你問工作人員那是什么,這導致了長達10分鐘的對話,但是最終你也沒有真正明白,

然后你去安裝MetaMask,它會詢問你的助記詞,工作人員告訴你把Coinbase錢包里的助記詞放進去,但Coinbase錢包給了你非常明確的指示,永遠不要把你的助記詞給任何人!你的助記詞是什么?你聯系了你的信任網路,幾個小時后能夠驗證MetaMask是合法的,把你的助記詞放到MetaMask中是相當安全的,但你可能應該在這件事結束后創建一個新的錢包。

設置好MetaMask后,然后會告訴你給自己發送0個以太坊,并進入高級gas設置(這個名詞你還是不太懂),設置為70,支持人員給你發了一個網站的鏈接,上面顯示了一些每15秒左右就會變化的數字,他們告訴你在提交交易之前,將MetaMask中的gas prices設置為網站上的第一個數字。

你認真地按照這些指示去做,你的交易就成功了! 然后,您查看您的賬戶余額,看看是否一切正常,您發現您比您預期的少了不少以太坊,而且您還注意到,您想做的事情都沒有實際發生,工作人員耐心地解釋說,在清除堵塞后,你的所有其他交易緊接著都通過了,他們告訴你,每一筆失敗的交易都花費了你損失了一些gas s(又是那個你不太理解的名詞!),這就是為什么你的ETH余額下降的原因

你被告知你的賬戶現在已經正常工作,你可以再次嘗試你的交易,但顯然你應該觀察這個網站,無論你想做任何交易,你都應該將 “gas prices “先設置為與它所顯示的數字相匹配。

僅僅是一次性問題?

不幸的是,以上是用戶非常常見的情況,雖然很容易歸咎于Coinbase,但幾乎所有錢包的用戶都會出現同一類問題,包括MetaMask等高級錢包。這個問題在日益擁堵的時候最為常見(當錢包估算出錯誤的gas prices時),不過在不擁堵的時候也會出現類似的問題,原因是gas prices估計軟體中的漏洞。

一個圓滿的結局

現在想象一下,如果我們生活在一個不需要預測未來以太坊區塊空間需求的世界里。用戶只需要設置自己愿意支付的最高額度就可以獲得交易的收錄,而不用擔心支付過高的費用。比起讓用戶在等待交易時陷入無盡的絕望深淵,用戶只需要表明自己愿意為納入交易支付的最大金額,他們可以相信自己永遠不會支付超過這個金額,這是一個不需要了解/預測gas prices的市場。

這就是EIP-1559所提供的。它使Coinbase Wallet可以可靠地確保其用戶的所有交易都被納入區塊鏈,而不需要他們的客戶支付過高的費用,也不需要為了準確估算費用而開發先進的交易和預測算法,

它使得MetaMask可以讓用戶指定他們愿意支付的最高費用,而不是讓他們預測未來,

它使用戶不再陷入需要專家才能擺脫的境地。

它讓用戶最終不會在過高的gas費上浪費大量的金錢,

它使得用戶界面不再會因為一個簡單的輸入錯誤就平白無故的花費大量金錢,

出了什么問題?

在上面用戶的故事中,Coinbase試圖向用戶隱瞞gas prices,因為這是一個非常復雜的話題,絕大多數用戶都不理解,相反,他們會代替用戶估算gas prices,大多數情況下這種效果不錯,但是,當gas prices波動很大時,他們的算法有時會發生錯誤(不是他們的錯),此時用戶的交易就會陷入僵局。一旦交易受阻,它將阻止所有未來的交易,直到交易通過為止,不管這些未來交易的gas prices是多少,這就是導致用戶通過試圖自己解決問題,相反卻將自己挖進了一個越來越深的洞,

不幸的是,一旦挖好了洞,就沒有什么靈丹妙藥可以讓你脫身,你可以使用像MetaMask這樣的自定義nonces的高級工具(假設你的錢包支持助記詞)來清除這一筆交易,但這樣一來,你的其他所有交易(很可能包括重復的交易、過期的交易等)都會泛濫成災,無謂花費gas costs,相反,你可以按照相反的順序去取消所有的交易,但這對終端用戶來說是一個非常復雜的過程,需要一個專門的支持人員和你坐在一起10-15分鐘來指導你完成整個過程。即使在這種情況下,你仍然會花費gas costs,只是比你在取消所有其他交易之前清理堵塞交易要花費的少。

過去的業績不能保證未來的結果

這里的問題根源在于,gas prices的估算真的很難。有很多工具試圖操控它,但終究是一個無法解決的問題,因為未來的gas prices是區塊空間需求的函數,并且每時每刻都在變化,有些事件期間,人們可以預測需求的增加,比如ICO啟動、新的熱門項目啟動、oracle價格feed更新等,但要跟蹤所有這些幾乎是不可能的,即使你跟蹤了,也不可能對任何特定事件帶來的需求量有強有力的保證,

最后,gas prices的估算者一般都是依靠歷史數據,并在此基礎上對未來的gas prices進行預測。這一方法在某些時候非常有效,但是在gas prices上漲或下跌的時候就行不通了。更糟糕的是,你總是要支付你預估時的全額gas price,即使你高估了油價! 這意味著大家都有強烈的愿望,試圖低報油價,希望得到優惠。即使你不想低價,往往也希望至少不要多付一大筆錢,所以你會選擇一個能讓你快速列入區間的中間數。

解決的辦法是什么呢?

EIP-1559。大多數人知道這個EIP是因為以太坊的供應減少,但在我看來,1559的真正價值在于以太坊可用性的提高,在以太坊包含EIP-1559的世界里,這一類問題幾乎會完全消失,雖然讓自己陷入這樣的“窟窿”仍然有可能,但錢包幫助你從一開始就避免“窟窿”變得容易得多。

有了EIP-1559,Coinbase和其他錢包不需要以極高的準確度來猜測未來以太坊的需求,并在用戶估算錯誤的情況下導致用戶支付不必要的費用。而是可以加入一個能被大多數礦工接受的固定礦工賄賂(很可能是1納幣的量級),并將費用上限設置為當前基本費用加礦工賄賂的2倍。有了這些設置,用戶的交易不會被包含在未來6個區塊內的唯一方法是,如果未來6個區塊對區塊空間的需求比目前翻了一倍,那么所有的區塊都會被包含!

EIP-1559的巨大勝利在這里是微妙的,人們經常會忽略它,但它是至關重要的。如果你高估了區塊的基本費用,無論你高估了多少,你仍然只需要為你所包含的區塊支付基本費用! 這意味著,如果你將費用上限設置為1000,礦工賄賂為1,但你被包含在一個基礎費用為10的區塊中,你將只支付11的汽油費。這與今天的以太坊形成了相當大的反差,如果你設置的汽油價格為1000,你將支付1000美元/gas,即使11也會讓你被包含在區塊中!

另一個可用性難題是,平均而言,區塊將是半滿的,這意味著幾乎總是有空間用于支付基本費用的任何交易。因此在區塊空間上幾乎沒有競爭,理論上即使是待定池也應該在大多數時間內是空的。

這意味著那些希望從終端用戶那里提取gas prices錢包(這是一個勇敢的目標)可以做到這一點,而不必成為猜測汽油價格的專家(即使是最熟練的以太坊專家有時也會失敗)。以太坊gas prices的這一相當小而微妙的變化,使得以太坊新用戶最常見的挫折點之一幾乎完全消失了,我們終于可以實現以太坊的夢想,在那里終端用戶不需要擔心或考慮gas prices,

0 条回复 A文章作者 M管理員
    暫無討論,說說你的看法吧