本文是為預測EIP4345的影響而作的練習。這個EIP提議在2021年12月推遲難度炸彈。我們的目標是看看我們是否能幫助確定應該何時推遲、應該推遲多少,好讓難度炸彈預計在2022年5月份再次爆炸。
預備知識
有關這個主題,我之前已經寫過很多篇文章了:
有關難度計算的方法:It’sNottheDifficult
有關如何推遲難度炸彈:AMethodtoDiffusetheDifficultyBomb
一些更老的文章見此處和此處
難度炸彈的計算兩部分組成:A部分,用于調整難度、平抑出塊時間的波動;B部分,即難度炸彈本體。
A部分的調整時逐塊發生的,保證出塊時間圍繞13.5秒波動。這部分的調整效果非常好,如果沒有難度炸彈的話,將使出塊時間幾乎保持恒定。我們感興趣的是B部分。
B部分的炸彈是一個階躍函數,每隔10萬個區塊,數值就變作兩倍。在“爆炸”之前,大家都不會注意到它,然而一旦它開始爆炸,數值上升的速度會非常快(跟2^n一樣。
推遲以太坊難度炸彈的Gray Glacier升級預計將于6月29日進行:6月23日,據幣安官方公告,幣安預計將于6月29日17:43暫停ETH以及ERC-20代幣的充值及提現業務,以支持Ethereum(ETH)將于區塊高度15050000(預計6月29日18:43)進行的網絡升級。
此前消息,以太坊將于6月底在主網進行Gray Glacier硬分叉升級,以將難度炸彈推遲大約2-3個月。硬分叉將于區塊高度15050000激活,所有用戶必須在此之前進行升級。[2022/6/23 1:25:53]
炸彈的數值依賴于fake_period。fake_period的值則完全依賴于fake_block的數值;這個數值又是由當前區塊的區塊號以及offset決定的。
注意
我只有自己一個人。我帶著日漸疲憊的心、使用公開可得的數據寫下這篇文章。我在這里所說的一切都是可以討論的,但我已不準備為此負任何責任。本文中的一切,請自己帶著懷疑和謹慎加以看待和使用。
實際數據vs.理論數據
我是一個工程師,不是一個數學家,所以我對實際數據的興趣,要比對數學預測的大。在下文中,我會預測數據將如何改變。我的預測基于上面的公式,但都只用到了簡單、直接的Excel表格。
Ethereum EIP-4345提案:難度炸彈可推遲到2022年5月:10月9日消息,Ethereum開發者TimBeiko和James Hancock發布了EIP-4345提案,提議將Ethereum難度炸彈推遲到2022年5月。該提案稱,預計Ethereum可在2022年5月前完成上海升級和ETH1.0與2.0合并,所以可將難度炸彈推遲到該日期后。目前,EIP-4345提案并未終止修改,提案內容可在未來做出修正。[2021/10/9 20:16:29]
我的討論基于三個簡單的觀察:
A部分工作得非常好,使得出塊時間穩定在平均13.3的水平。
B部分也工作得非常好,它是獨立于A部分的,并且只會提高區塊時間。
如果我們忽略炸彈部分,我們的預測會是保守的。
換句話來說,如果我們的預測忽略了炸彈的效果,我們預測的時間將會比實際時間“提早”一些。這樣的話,即使我們預測錯了,也會有額外的緩沖時間。
第一個表格使用當前的區塊號,并按每塊13.3秒的時間推算出14000000區塊高度的時間:
以太坊核心開發者:12月網絡升級將僅包含“推遲難度炸彈”:9月27日消息,以太坊核心開發者Tim Beiko表示,在與4個客戶端團隊交談后,以太坊12月的網絡升級將僅包含“推遲難度炸彈”,不包含其他內容的升級,提議以箭形冰川(Arrow Glacier)命名12月的升級。EIP-3860和目前上海升級(是否仍然稱為“上海升級”待定)中提出的其他EIP,一旦合并完成,將討論其中哪些應該在合并后的第一次升級中實施。[2021/9/27 17:08:49]
看仔細一些,我們發現,自區塊號12000000以來,平均出塊時間一直在提高。當然,隨著炸彈的爆炸,平均出塊時間會增加得越來越快。
再次強調,為了保守一些,我們選擇13.3秒的出塊時間來預測未來區塊挖出的具體時間,并且,我們暫時忽略難度炸彈的效果。當難度炸彈爆炸時,平均出塊時間增加;所以,忽略難度炸彈的結果是我們預測的時間將早于實際挖出的時間。
何時分叉
我們考慮的第一個問題是,“何時應該分叉?”
在我看來,答案完全取決于fake_period的數值。可以這么問:“我們應該在哪個區塊號分叉?13700050,13800050還是139000050?”——為什么這很重要,則留給讀者當作練習——公式的計算應該使用大于號呢,還是使用大于等于號呢?)
以太坊12月份網絡升級或僅包括難度炸彈推遲,樂觀情況下為Eth1和Eth2合并升級:因為倫敦升級納入的EIP-3554提議將難度炸彈延遲到12月,以太坊開發者Tim Beiko發帖討論將于12月份進行的網絡升級。Tim Beiko表示,在最樂觀的情況下,這次升級將為Eth1和Eth2合并升級,但考慮到主網準備清單上的未清項數量,無法確定這一點。如果假設有一個非合并升級,需要決定除了推遲難度炸彈之外,是否還想包括其他東西(如果只延遲難度炸彈,是否保留名稱“上海”,或者使用另一個“冰川主題”名稱)。如果只延遲難度炸彈,升級的測試和實施會大大簡化,不需要在主網之前部署在測試網上,可以在10月份選擇適當的延遲,在11月份發布客戶端,在12月份升級。如果決定包含任何“功能EIP”,則需要進行測試和測試網部署。如果遵循倫敦升級時間表,后續需要遵循以下時間表:8月初選擇EIP、八月/九月下旬 devnets、九月下旬/十月初 測試網發布、十月 測試網升級、11月初 主網發布、12月初 主網升級。鑒于客戶團隊需要分散注意力,進行網絡升級可能會延遲合并的一些進展。除非我們在8月6日電話會議上選擇了EIP 列表,否則將默認在12月升級中不包括任何非難度炸彈EIP。
此前消息,倫敦升級決定納入EIP-3554,EIP-3554提議將難度炸彈延遲到12月。[2021/7/18 1:00:52]
下面的表格展示了fake_block計算。
動態 | Eric Conner:以太坊難度炸彈已經爆炸 以太坊出塊時間已被延長:Ethhub 創始人 Eric Conner 在Twitter上表示,以太坊難度炸彈已經“爆炸”,以太坊出塊時間正在被難度炸彈逐步延長,平均挖礦時間已經從 14 秒升至 15.5 秒,并且會一直延長以太坊的出塊時間。以太坊君士坦丁堡升級中本身包含延遲難度炸彈的提案,但是由于該升級被發現存在漏洞,已經推遲到 6 周之后啟動。[2019/1/21]
在這里我們并置了對每個區塊將挖出的具體時間的預測,以及偽區塊號的計算。
偽周期號正是我們感興趣的內容,因為難度炸彈的值完全取決于偽周期號的值。從我之前的工作來看,我們認為難度炸彈的效果會在偽周期號達到41~42之間的時候開始顯現,在此之前則不明顯。換言之,當偽周期號變成41時,B部分的效果將壓過A部分的效果。
我在這里不想解釋為什么難度炸彈的效果不會在偽周期號達到41之前顯現。我想說的只是,炸彈只會提高出塊的時間,而如果沒有炸彈的話,A部分就會讓區塊時間保持在13.3秒左右。換句話來說,平均出塊之間會高于13.3秒,如果太低了,A部分就會調整難度,把出塊時間拉回來——再直白一點——A部分就是這么工作的。
給定上述分析,我建議在晚于13800000區塊的任意時間分叉。大概是12月中旬。我會建議以具體的區塊號為目標,比如區塊號13850000。“痛點”會在大約1月中旬到來。所以這個目標也是有容錯空間的。
我們應該推遲多少偽塊?
我們需要考慮的另一個問題是,“我們需要偏移多少偽區塊?”
如上所述,偏移量決定了偽區塊號,進而決定了偽周期號,進而決定了炸彈的值。所以,在下文中,我們會專注于偏移量,看看我們能學到什么。
EIP4354所提議的數值
首先,我們來看看這個EIP提議的偏移量。我們在此根據13.3秒的平均出塊時間生成一個簡單的圖表。同樣地,我們忽略炸彈的影響,因為我們知道炸彈只會提高區塊時間,因此讓相應區塊號的實際發生時間晚于我們的預測。我們將安排“ArrowGlacier”發生在13800050號區塊,并使用這個EIP提議的偏移量10500000。
本圖似乎表明,如果我們設置10500000的偏移量,則難度炸彈最早將在4月中旬開始爆炸。到5月中旬,區塊將開始顯著變慢。
我們之前遇過的最大的偽周期號就是43,是在“拜占庭”分叉之前。出塊時間的增加顯著可見——達到了數秒的級別。
提早或推遲分叉的時間
為了消遣,我準備看看如果我們提早或推遲分叉的時間,會有什么影響。
下面的這張表顯示了估計的結果——讓我有點意外——分叉的時間對最終結果沒有影響。但是,我回想了一些,覺得這是有道理的。因為,唯一一個決定偽周期號的量就是偏移量。除了讓當次分叉之前出塊變得更慢,推遲分叉的時間對下一次難度炸彈爆炸的時間沒有任何影響。
你可以從上面這張圖看出,無論我們早點還是晚點實施“ArrowGlacier”硬分叉,只要我們使用10500000的偏移量,那就對下一次難度炸彈爆炸的時機沒有任何影響。
那我們該偏移多少呢?
這個問題取決于你想在5月的時候給以太坊核心開發者多大的壓力。如果你想給他們很大的壓力——讓5月的時候整個世界都會抱怨以太坊出塊速度變慢——那就把偏移量設得小一點。如果你只想輕輕地推他們一下——類似于“我們最好現在采取行動,不過也不是特別著急”——那就支持大一點的偏移量。
如果你使用了10500000的偏移量,你可能是在給他們很大的壓力。你可以預期,四月底就會看到出塊顯著變慢。但是,難度炸彈的麻煩之處在于,一旦開始爆炸,就不會給人喘息之機。
從“明顯”到“非常顯著”,到“令人煩躁”,再到“搞什么鬼”再到“以太坊去死吧”,只需要4到6周時間。我不是瞎扯,因為每一個10萬區塊的周期都會越來越長,而且只要開始爆炸,就會爆炸得越來越快。詳見我上面關于“拜占庭”分叉前爆炸情況的文章。難度炸彈是來得很慢,但爆炸之后可就是另一番景象了。
在最后一個表格中,我建議使用10700000的偏移量。我同樣建議在13800050號區塊后分叉。這會讓我們現在有休息的時間,并讓預計下一次爆炸的時間推到5月中旬。這是保守估計,但也是現實的考量。
結論:需要設置大于10500000的偏移量。
總結
決定你想給核心開發者多大的壓力。如果你想狠狠推他們一把,就把偏移量設為10500000;如果你想放過自己,就請設置為10700000。搖擺不定的,可以在這兩者間取一個值。
“何時”激活分叉的決定對下次爆炸的時間沒有影響。這個決定唯一影響的是“ArrowGlacier”硬分叉之前出塊時間會拉長到多久。這是因為,只有偏移量會影響偽周期號,也只有偽周期號會影響難度炸彈的數值。
支持我們的工作
TrueBlocks是完全用我們的個人資金支持的項目,少量獎金來自以太坊基金、Consensys公司、MolochDAO以及近期的Filecoin/IPFS。
如果你喜歡本文,或者希望支持我們的工作,請看我們的GitCoin主頁:https://gitcoin.co/grants/184/trueblocks。請給下一輪匹配捐款。我們會從更大的匹配獎勵中獲得額外的利益。即使很小的數額也會產生很大的效果。
Tags:以太坊ETHTHELAC怎么購買以太坊幣eth2.0幣價會漲嗎THEXGalactic Arena: The NFTverse
“互聯網圈最近都在談論Facebook改名Meta,這事兒堪稱里程碑,不僅表明扎克伯格不斷強化自己‘元宇宙是互聯網的下一站’的世界觀.
1900/1/1 0:00:00概括: 做任何我想做的事情的自由比任何衡量成功的標準都重要。?SamBankman-Fried動作很快,這就是我認為我們合作得很好的原因.
1900/1/1 0:00:00往期小編簡單介紹了老牌公鏈ETH、EOS、TRX,新興公鏈solana、polkadot、Avalanche,今天為小伙伴們解析卡爾達諾,也就是我們熟悉的Ada.
1900/1/1 0:00:00行了,是時候來聊聊這個讓Facebook丟下臉面的東西了。美國當地時間2021年10月28日,在一年一度的FacebookConnect開發者大會上,馬克·扎克伯格正式宣布,創立于2004年的F.
1900/1/1 0:00:00在多鏈世界中,「一次編碼,隨處部署」已經變得極其重要。上個月,我們宣布了Optimistic?以太坊史上最重要的一次升級.
1900/1/1 0:00:00DeFi數據 1.DeFi總市值:1631.95億美元 DeFi總市值數據來源:Coingecko2.過去24小時去中心化交易所的交易量:55.
1900/1/1 0:00:00