原文標題:《Goerli/Prater 合併公告》
原文來源:Ethereum Foundation Blog
原文作者:Protocol Support Team
作為最後一個進行權益證明過渡的測試網,Goerli 將與Prater 合併。 Goerli/Prater 合併的網絡將保留Goerli 這個名字。
Prater 測試網為合併做準備的Bellatrix 升級將於epoch 112260 被激活,預計時間是 12:24PM UTC on August 4, 2022
Bellatrix 升級激活後,當Goerli 觸達總難度值 10790000 時,Goerli/Prater 合併就會發生,預計時間在 August 6-12, 2022 之間。
合併後,Goerli 的驗證者集將對個人質押者運行測試網驗證者保持開放。想要啟動一個Goerli/Prater 驗證者的質押車可以前往Prater Launchpad。
背景
經過幾年的努力將權益證明引入以太坊,我們現在已經進入了最後的測試階段:測試網部署!
在經歷了幾個開發測試網、影子分叉和被棄用的測試網之後,Sepolia 最近過渡到權益證明。現在,只剩下一個測試網了:Goerli 和與它相匹配的信標鏈Prater。
合併在兩個方面與以前的以太坊升級不同。首先,節點運營商需要升級他們的共識層(CL) 和執行層(EL) 客戶端,而不是兩個中的一個。然後,升級分兩個階段激活:第一個階段是Bellatrix 升級,在信標鏈上的一個公開的epoch 高度上激活,第二個是Paris 升級,在執行層上觸達一個 Total Difficulty (總難度) 值時激活。
升級信息
時間
合併分兩步走。它從共識層上的Bellatrix 網絡升級開始,由一個epoch 高度觸發。接下來是執行層從工作量證明過渡到權益證明的升級Paris,由一個特定的 Total Difficulty 閾值觸發,被稱為 Terminal Total Difficulty (TTD)。
Bellatrix 升級計劃在Prater 信標鏈的epoch 112260 上激活,預計在 12:24PM UTC on August 4, 2022 (2022 年8 月4 日12:24PM UTC )。執行層上的部分Paris 將在Goerli 測試網的 Terminal Total Difficulty (TTD) 達到 10790000 時被觸發,預計在2022 年8 月6 – 12 日。
一旦執行層超過了 TTD,下一個區塊將完全由信標鏈驗證者產生。一旦信標鏈最終敲定了這個區塊,我們就認為合併已經完成。假設在正常的網絡條件下,這應該在TTD 後觸發了第一個區塊後的2 個epoch,也就是大約13 分鐘後完成!
有一個新的 JSON-RPC 區塊標籤 finalized,它返回的時最新被最終敲定的區塊,或者如果沒有這樣的合併后區塊存在的話,就返回錯誤。這個標籤可以被應用用來檢查合併是否已經完成。同樣地,智能合約可以查詢 DIFFICULTY opcode (0x44),它在合併後被改名為 PREVRANDAO,用來確定合併是否已經發生了。我們建議基礎設施提供商除了監測最終敲定的狀態外,也監測整個網絡的穩定性。
客戶端版本
以下的客戶端版本支持Goerli 和Prater 測試網的合併。節點運行者必須運行一個執行層(EL) 客戶端和共識層(CL) 客戶端,以在合併期間和之後都在保持在網絡裡。
當選擇運行的客戶端時,驗證者應該特別注意運行EL 和CL 上的多數客戶端的風險。關於這些風險及其後果,可以看這篇解釋文章。對目前EL 和CL 客戶端分佈的預估以及從一個客戶端切換到另一個客戶端的指南可以看這篇文章。
共識層
Lighthouse Geardude Clockberg (v2.4.0)
Lodestar v0.41.0
Prysm v2.1.4-rc.0
Nimbus v22.7.0
Teku 22.7.0
執行層
Besu 22.7.0-RC3
Erigon 2022.07.03-alpha
go-ethereum (geth) v1.10.21
Nethermind 1.13.5
升級規範
合併的共識關鍵變更在兩個地方得到詳細說明:
共識層的變更,在共識規範倉庫的 bellatrix 目錄
執行層的變更,在執行規範倉庫的 Paris spec
此外,另外兩個規範涵蓋了共識層和執行層客戶端是如何交互的:
Engine API 在execution-apis repository 裡說明了,它是用於共識層和執行層之間的通信的
Optimistic Sync 在共識規範倉庫的sync 文件夾裡說明了,它被共識層用來在執行層同步時導入區塊的,並給執行層提供共識層鏈頭的部分視域。
FAQ
1. 作為節點運行者,我應該做什麼?
合併後,一個以太坊全節點將結合一個共識層客戶端(運行PoS 信標鏈) 和一個執行層客戶端(管理用戶狀態和運行與交易相關的計算)。它們通過一個已認證的端口進行通信(使用一套新的JSON RPC 方法,稱為引擎API)。執行層客戶端和共識層客戶端使用一個加密JWT 來驗證對方。節點運行者需要對照他們的客戶端文檔,了解如何生成和配置這些信息。
換句話說,如果你已經在信標鏈上運行了一個節點,你現在還需要運行一個執行層客戶端。同樣地,如果你在當前的PoW 網絡上運行著一個節點,那麼你將需要運行一個共識層客戶端。為了使它們能夠安全地進行通信,必須向每個客戶端傳遞一個JWT 通證。在Goerli/Prater 網絡上運行一個節點的簡要說明可以在這裡找到。
值得強調的是,雖然信標鏈節點和驗證者客戶端都是共識層客戶端的一部分,但是運行一個信標鏈節點和運行一個驗證者客戶端是不一樣的。驗證者必須運行兩者,而節點運行者只需運行信標鏈節點。這篇文章更詳細地解釋了這兩個組件之間的區別:https://docs.ethhub.io/ethereum-roadmap/ethereum-2.0/eth-2.0-client-architecture/
另外,請注意,共識層和執行層都會維護一個獨立的對等點集,並公開它自己的API。 Beacon 和JSON RPC 的API 都將按預期繼續工作。
2. 作為質押者,我需要做什麼?
Goerli/Prater 合併是大家在主網過渡前確保驗證者得到正確配置的最後機會。我們強烈建議參與這次的合併,以避免在主網上出現任何預料以外的問題。
如上所述,合併之後,信標鏈上的驗證者除了運行他們的共識層客戶端之外,還需要運行一個執行層客戶端。我們強烈建議大家在合併前就這樣做,但是驗證者可以將這些功能外包給第三方提供商。這是有可能的,因為執行層需要的唯一數據就是對存款合約的更新。
合併後,驗證者需要確保他們創建和證明的區塊中的交易是有效的。為了做到這一點,每一個信標節點必須與一個執行層的客戶端配對。
請注意,多個驗證者仍然可以與一個信標節點和執行層客戶端組合配對。雖然這增加了驗證者的責任,但它也使得提議區塊的驗證者有權獲得其相關交易的優先費(目前這筆費用由礦工獲取)。
雖然驗證者的獎勵在信標鏈上累積,並且要在隨後的網絡升級才能提出來,但交易費將會繼續在執行層支付、銷毀以及分配。驗證者可以指定任何以太坊地址作為交易費的接收者。
在更新你的共識層客戶端之後,請確保在設置驗證者客戶端時設置了 fee recipient (費用接收方),以確保交易費用能夠發送到你所控制的地址中。如果選擇了第三方提供商來質押,由你選擇的提供商來指定這些費用的分配方式。
Prater Staking Launchpad 有一個合併準備檢查清單,驗證者可以用來確保他們已經完成了流程的每一步。 EthStaker 團隊還將在7 月29 日舉辦一個合併驗證者準備工作坊。
3. 為什麼對 Terminal Total Difficulty 的預計時間跨度這麼大?
每個區塊增加的難度波動使得對TTD 的估計比區塊或epoch 高度更難,因此預期範圍更廣。用戶應該注意,由於工作量證明哈希率的變化,主網的過渡期也會出現這種情況。
4. 作為應用或工具開發商,我應該做什麼?
Goerli 測試網準備進行合併,現在是你們的最後機會,以確保你們的產品順利通過PoS 過渡,並在合併後的環境裡按預期運行。如之前的博文所述,合併只會對以太坊上部署的合約子集產生非常微弱的影響,應該不會破壞任何合約。此外,大部分用戶的應用程序接口(API) 端點仍將保持穩定(除非使用 eth_getWork 等工作量證明的特定方法)。
儘管如此,以太坊上的大多數應用程序涉及的遠不止鏈上合約。現在您要確保前端代碼、工具、部署管道和其他鏈下組件能夠按預期運行。我們強烈建議開發者在Ropsten(或Kiln)上執行一個完整的測試和部署週期,並向這些項目的維護者報告任何工具或依賴項存在的問題。如果不確定在哪裡創建一個issue,請使用此資源庫。
此外,你需要注意的是,除了Sepolia 和Goerli 之外的所有測試網都會在合併後關停。如果你是Ropsten、Rinkeby 或者Kiln 測試網的用戶,你應該計劃遷移到Goerli 或者Sepolia 測試網。更詳細的信息請閱讀文章《Ropsten、Rinkeby 和Kiln 測試網棄用公告》。
5. 作為以太坊用戶或ETH 持有者,我需要做什麼?
不需要。以太坊主網不受此測試網的影響。在主網過渡之前,我們將在此博客中發布後續公告。
6. 作為礦工,我需要做什麼?
不需要。如果你在以太坊主網或者Sepolia 測試網上挖礦,你需要知悉合併後每個網絡都將完全在PoS 共識下運行。屆時,在該網絡上無法再進行挖礦。
7. 作為驗證者,我可以提出我的質押資產嗎?
不能。合併是迄今為止以太坊最複雜的升級。為了最大限度減少網絡中斷的風險,我們採取了最小可行的方法,也就是說在此次升級中,我們將所有與PoW->PoS 過渡無關的變化先放一邊。
從信標鏈上提款的功能可能會在合併後的第一次升級中引入。共識層和執行層的規範推動中。
8. 我有更多問題,可以去哪裡問?
EthStaker 社區已經建立了一個discord 頻道來回答staker 和節點運行者的問題。大家可以加入他們的discord,然後在#goerli-prater 尋求幫助。如上文所說,EthStaker 還將在7 月29 日主持合併驗證者準備工作坊。
此外,合併社區會議定於8 月12 日14:00 UTC 舉行。客戶端開發者和研究員將回答來自節點運行者、質押者、基礎設施&工具提供商以及社區成員的問題。請注意,這個社區電話會議預計將在Goerli/Prater 合併後舉行。
9. 什麼時候合併?
截至本文發布,以太坊主網合併的日期尚未確定。任何給出合併日期的相關言論都可能是一個騙局。更新內容將發佈在以太坊基金會博客中,不要被騙了!
假設Goerli/Prater 合併沒有發現什麼問題,當客戶端發布功能完備的版本,我們會選出在主網信標鏈上激活Bellatrix 升級的slot 高度,以及設置用於觸發主網過渡的總難度值。客戶端將發布用於主網合併的版本。我們將在此博客以及其他社區平台上宣布相關消息。
以上均以未發現問題作為前提。如果在此過程的任何時間點發現問題,或測試範圍被判定不夠全面,我們將解決這些問題,然後再繼續推進部署進程。
只有到這時,才可能估計合併的確切日期。