在未來幾周內,倫敦升級將在測試網啟動。JSON RPC 的變更已經文檔化了,還有項目可用於添加 1559 支持的參考手冊;
「合併」 的 eth2 部分已經有成熟的規範了。eth1 部分的相似文檔在撰寫中,且還會有一份可執行的規範;
儘管還沒有作出決定,但上海升級的兩份候選 EIP 都有了進展:EIP-3074 的審計報告已出, EIP-3540 有了路線圖
倫敦升級測試網
在未來幾周內,倫敦升級將會在測試網啟動:第一個是 Ropsten 測試網,大約在 6 月 24 日,然後是 Goerli 測試網,計劃在 6 月30 日,最後是 Rinkeby 測試網,將在 7 月 7 日升級[0]。如果你還沒升級你的測試網節點,現在是時候了!
在測試網分叉後,我們預期會進行一些測試,用大量交易轟炸網路,以確保在這樣的條件下網路依然運行正常。當客戶端開發者覺得倫敦升級在各個測試網上的部署都沒有問題了,我們就會確定主網分叉的區塊高度。考慮到難度炸彈所在的大約區塊高度,主網實際上需要在未來 300,000 到 400,000 個區塊里進行分叉。
如果你的項目是建在以太坊上,且會受倫敦升級,尤其是 EIP-1559 影響,以下是你應該審閱的內容:
JSON RPC 規範,其中詳細說明了在倫敦升級中的幾處變更,例如:
添加了欄位 baseFeePerGas (譯者註:每單位 gas 的基本費用) 到區塊頭;
添加了欄位 maxFeePerGas (譯者註:每單位 gas 的費用上限) 和 maxPriorityFeePerGas (每單位 gas 的小費) 到 1559 式交易;
在這些交易的收據里添加了欄位 effectiveGasPrice (譯者註:交易實際支付的 gas 費用);
添加欄位 eth_feeHistory (譯者註:gas 費用歷史數據) 到終端,使錢包更容易根據近期的歷史數據提供 gas 預估值。詳情看這裡。
1559 錢包參考手冊 (1559 Wallet Cheatsheet),解釋了與 EIP-1559 相關的非共識變更,提供了支持這份 EIP 的最佳實踐。它具體包括:
Calaveras 開發者測試網的說明,現在應用可以用它來測試倫敦升級的內容
maxPriorityFeePerGas (即小費)涉及的多個函數,以及如何在擁堵和不擁堵的情況對其進行設置;
關於如何順滑地將用戶遷移到 1559 式交易的指南
一如既往地,如果你的項目會受 EIP-1559,或更廣泛地受倫敦升級影響,你可以在 Discord 聯繫客戶端團隊。
也就是說,倫敦升級要來了?
「合併」
當大多數客戶端團隊專註於倫敦和 Altair 升級時,「合併」的進展並沒有停止。
首先,在共識層 (即 eth2) 部分已經有了成熟的規範!它的開發工作仍在如火如荼地進行中,你可以在 eth2.0-specs 庫里關注內容的更新。
在執行層部分 (即 eth1),將會有一份關於所需變更的概述。?
它將作為一份「主文檔」,能鏈接到更細化的規範變更,這些規範變更會以相應的格式呈現 (例如,EIP 用於引入新的操作碼)。
採用不同方法的原因是共識層 (eth2) 與執行層 (eth1) 之間的規範格式是不一樣的。
雖然以太坊的規範格式一開始是黃皮書,但其大量數學語構的特點使其難以說明變更。相反,我們通常使用核心 EIP (Core EIPs) 來說明協議規則的變更。這些內容又再反饋到黃皮書上。
另一方面,以太坊 2.0 的規範一開始是用 markdown 文檔來寫,逐漸發展成現在用可執行的 python 規範。不用說,存在兩套不同的方法是遠不夠理想的!
因此,「合併」的一個輔助舉措是為執行層創建可執行的規範,與 eth2.0-specs 庫的格式相匹配。這樣,我們不僅可以為整個以太坊協議提供一個共同的規範格式,還能從規範生成自動化測試。這仍處於早期,Quilt 團隊已經開了一個 PR,有一個初步的實現 ?
上海升級
如之前的更新提到的,儘管「合併」是倫敦和 Altair 升級後的工作重點,開發者已經對下一次執行層的升級——上海升級有想法了。
這次升級會在「合併」之前或之後進行,取決於二者在 12 月的準備情況,因為屆時難度炸彈需要再次被推遲。儘管這次升級目前還沒有規範,也沒有 EIP 被正式納入,但有兩份候選的:EIP-3074 和 EIP-3540。
EIP-3074
這份 EIP 旨在讓智能合約在與用戶地址互動上有更多的靈活性。這份 EIP 作者之一的 @lightclient 發的推文很好地總結了它的主要裨益。
有人擔心這份 EIP 會改變一些安全假設,特別是關於msg.sender 代表的地址,以及智能合約可以代表用戶賬戶採取的行為廣度。兩家審計機構受委託研究這份 EIP,以探索這些安全憂慮:Least Authority 負責研究這份 EIP 本身;Dedaub 負責研究 EIP-3074 會如何影響當前部署了的合約。
這是 Least Authority 的完整審計報告,審計者在最新的一次核心開發者會議里分享了他們研究成果的總結 (從 1:07:00 開始)。在該次會議里,Dedaub 也在 Least Authority 的分享後討論了他們的審計結果,在推特上分享和總結了他們的報告。
儘管在該次會議里沒有對 3074 作出任何決定,這些審計結果有助於澄清納入這份 EIP 所涉及的安全權衡。同時,有人在 Ethereum Magicians 論壇上提出了 "3074 的替代方案" ,這將在本周的核心開發者會議上討論。
EIP-3540
此提案依附於已被納入倫敦升級的 EIP-3541。它引入「一種用於 EVM 的可擴展、版本化容器格式,在部署時進行一次性驗證。」這將有助於更好地分離代碼與數據,兩者現在客戶端都需要在運行時間驗證。
這個變更對多種用例都有所裨益,比如二層網路的代碼驗證、多位元組操作碼,可能會棄用 JUMPDEST 等。
這份 EIP 作者之一的 Alex Beregszaszi 最近分享了一個更完整的概述和路線圖。
如果時間允許的化,下一次的核心開發者會議會討論這份 EIP。如果時間不允許的話,可能是再下一次會議。
更新到這裡就結束了!請留意未來幾周在blog.ethereum.org 上發布的倫敦主網升級公告,以及大約一個月後的以太坊核心開發者會議更新。?
發佈於 2021 年 6 月 22 日
[0] Kovan 測試網的升級日期還未定,很可能是主網升級之後。以及,OpenEthereum 客戶端在倫敦升級後會被棄用。
來源 | AllCoreDev Updates
作者 | Tim Beiko
冷萃財經原創,作者:Awing,轉載請註明出處:https://www.lccjd.top/2021/06/24/%e4%bb%a5%e5%a4%aa%e5%9d%8a%e6%a0%b8%e5%bf%83%e5%bc%80%e5%8f%91%e8%80%85%e4%bc%9a%e8%ae%ae%e6%9b%b4%e6%96%b0004/?variant=zh-tw
文章評論