本文作者為TimBeiko,是以太坊核心開發者,這篇文章是他對于接下去上海升級的解讀。
歡迎閱讀有關AllCoreDevs在2022年的最后一次更新。
長話短說:
上海/Capella升級的內容已經敲定:提款,EOF,還有一些小改動……只要不耽誤提款即可?
Blobspace即將到來:EIP-4844將成為以太坊下一次升級的中心,其召喚儀式即將開始??
開發者們正在努力協調執行客戶端和共識客戶端升級過程的技術方面。我們還看到了關于更好地將社區的意見納入流程的積極討論?
上海/Capella升級
在最近一次AllCoreDevs電話會議上,客戶端團隊就上海/Capella升級的最終范圍達成了共識。雖然升級的名稱可能仍有爭議,但團隊們已經清楚了升級的范圍,這次升級的主要任務是為質押者引入信標鏈提款。盡快解決這個問題是客戶端團隊的目標,因此升級中的其他功能需要同時準備好,或者有可能會被移除。
上海EL規范列出了所有包含的EIP:
EIP-3540:EVM對象格式(EOF)v1
EIP-3651:WarmCOINBASE?
EIP-3670:EOF-代碼驗證?
EIP-3855:PUSH0指令?
EIP-3860:限制和計量initcode?
EIP-4200:EOF-靜態相對jumps?
EIP-4750:EOF-函數?
EIP-4895:信標鏈推送提款操作?
EIP-5450:EOF-堆棧驗證?
數據:以太坊全網算力觸及6個月新低:6月27日消息,據歐科云鏈鏈上大師周報數據顯示,截至6月26日以太坊全網算力為876.57TH/s,觸及自2022年1月1日以來的新低。與歷史最高點1055.34TH/s相比,下跌了16.94%。[2022/6/27 1:34:37]
雖然列表很長,但我們可以將它們分為三個不同的部分:小改進、EVM對象格式以及提款。讓我們來逐一分析:
小改進??
EIP-3651:WarmCOINBASE
該EIP修復了EIP-2929中的一個疏忽,該疏忽根據客戶端是否已將數據字段存儲在內存中或需要從磁盤中檢索它們來更改訪問某些數據字段的gas成本。
EIP-2929在每個事務開始時,將客戶端內存中的兩段數據設置為?WARM:發送地址和接收地址。EIP-3651在這個列表中添加了第三個地址,即?COINBASE?地址,因為它也是客戶端在處理區塊交易時在內存中的地址。
EIP-3855:PUSH0指令
顧名思義,EIP-3855引入了一個將值0推入堆棧的操作碼。Pushing0經常用于填充EVM中的值,此操作碼將提供一種更有效、更便宜的方法來實現這一點。
EIP-3860:限制和計量initcode
該EIP增加了?initcode的最大大小,并引入了基于其長度的gas計量。大小限制為EVM添加了一個不變量,這將使推理和提出更改變得更容易。
引入了一個2gas/32字節的initcode?開銷,以說明客戶端在執行之前必須執行的jumpdest分析,這在以前的gas計劃中并沒有被考慮到。
數據:以太坊上DeFi協議總鎖倉量590億美元:據歐科云鏈OKLink數據顯示,截至今日16時,以太坊上DeFi協議總鎖倉量約合590億美元。
近24小時鎖倉量增幅前三名的DeFi協議分別是Basis Coin(+10.09%),Pool Together (+9.49%%)以及YFDAI(+8.4%)。
當前鎖倉量排名前三的DeFi協議分別是WBTC 77.4億美元(-3.96%),Maker 69.8億美元(-4.46%)以及Compound 64.7億美元(-5.51%)。[2021/3/15 18:46:10]
EVM對象格式?
上海升級包括的大多數EIP都是單一功能的一部分:EVM對象格式(EOF)。這項升級工作被分解為5個不同的EIP,以幫助客戶端開發人員單獨地解釋每個更改,但為了提供更高層次的概述,本周發布了一個統一的規范。這5個EOFEIP分別是:
1、EIP-3540:EVM對象格式(EOF)v1
2、EIP-3670:EOF-代碼驗證
3、EIP-4200:EOF-靜態相對跳轉
4、EIP-4750:EOF-函數
5、EIP-5450:EOF-堆棧驗證
值得注意的是,EOF的第一步是在倫敦升級中使用EIP-3541,它為EOF合約保留了?0xEF00?前綴。在過去的幾個月里,上海EOF升級的范圍也發生了變化。
2月份,客戶端團隊同意為上海升級考慮兩個最小的EOFEIP:EIP3540和EIP3670。它們將充當構建塊,但如果不引入EIP4200、EIP4750以及EIP5450將無法提供全部功能。雖然有可能擴展EOF,但向后不兼容的擴展可能需要一次版本升級。由于具有特定版本的前EOF或EOF合約必須始終可執行,因此每個新的EOF版本都意味著客戶端開發人員必須維護一組與舊規則并行的新EVM執行規則。
Bitfinex首席技術官:Bitfinex始終選擇部署自己的以太坊節點:8月11日,針對網友提問交易所如何運行以太坊節點,Bitfinex首席技術官Paolo Ardoino發推回應稱,如果第三方不誠實,則使用第三方節點管理存取款,可能導致該服務提供商的API響應中發生交易或余額注入。因此Bitfinex始終選擇部署自己的節點。[2020/8/11]
在EOF之前,客戶端一次只維護一組EVM規則。代碼庫還支持歷史EVM規則,這些規則可以改變每次網絡升級,但一旦它們到達鏈的頂端,就只能應用最新的規則。而使用EOF,客戶端將維護兩個并行的EVM規則集,因此它們可以在EOF和非EOF合約中執行代碼。換句話說,EOF版本bumps增加了并行的數量,而不是順序的,必須維護的EVM規則集。
出于這個原因,在過去的幾個月里,客戶端團隊開始更喜歡一種“大EOF”方法。這樣,雖然他們必須實施更大的變更集,但EOF版本將保持更長時間,從而減少要維護的“并行EVM”的數量。因此,“大EOF”被考慮并最終納入到接下來的上海升級中。
也就是說,更大的功能顯然更難以實施和測試,而客戶端團隊們并不希望看到EOF顯著延遲信標鏈提款。因此,客戶端團隊們同意,如果到明年1月,EOF實施不完整且相互之間無法快速互操作,則將EOF從上海移除。
在這個背景下,現在讓我們簡單地介紹一下各種EOFEIP:
EIP-3540:EVM對象格式(EOF)v1
該EIP為EOF合約引入了“容器”。它在合約中添加了區分代碼和數據部分的標記,并防止部署不符合格式的EOF合約。這保證了任何鏈上EOF合約都將遵循有效的布局,從而簡化了與這些合約的交互以及對它們的靜態分析。
動態 | 以太坊團隊考慮在伊斯坦布爾升級中實施EIP-2025,遭到開發人員的反對:據EWN7月23日消息,以太坊團隊正在考慮將EIP-2025作為伊斯坦布爾升級的一項改進。由于通貨膨脹率將相應提高,這一舉措已引起開發者相當大的爭議。因此,該提案引發一系列開發人員的爭論和反對。EIP-2025建議在18個月內每個區塊增加0.0055 ETH,作為開發者區塊獎勵,保留用于資助Etherum1.X開發。此舉將在規定的時間范圍內增加區塊獎勵。 Gnosis產品研究員Eric Conner認為此舉是荒謬的,社區不應該允許它發生。Spankchain首席執行官Ameen Soleimani也表示反對,因為他認為以此目的增加區塊獎勵將削弱以太坊作為價值儲存的外觀。其他批評聲音包括:加密投資公司Mythos Capital創始人Ryan Adams,RealT平臺運營主管David Hoffman以及SetProtocol營銷部門的Anthony Sassano。[2019/7/23]
EIP-3670:EOF-代碼驗證
EIP-3670建立在EIP-3540引入的容器之上,確保合約EOF中的代碼有效,或阻止其部署。
這意味著未定義的操作碼無法在EOF合約中部署,這具有減少所需的EOF版本更新數量的額外好處。如果添加了新的操作碼,只需更改驗證規則即可啟用它,并且可以保證沒有EOF部署的合約在其代碼部分引用它。
EIP-4200:EOF-靜態相對JUMPs
EIP-4200引入了第一個EOF專用操作碼:RJUMP、RJUMPI和RJUMPV,它們將目標編碼為帶符號的即時值。編譯器可以使用這些新的JUMP操作碼來優化gas成本,因為它們消除了對現有JUMP和JUMPI操作碼所需的運行時jumpdest分析的需要。
動態 | 過去24小時以太坊總交易額約228.47萬ETH:根據amberdata.io數據顯示,過去24小時內以太坊總交易額為228.47萬ETH,較此前數據上升10.66%;日活躍用戶量151665,用戶活躍上升0.97%;新增合約37168個,較此前數據下降7.01%;平均交易費用為10.98GWEI,下降5.60%;最活躍合約為FAS(FAS);通證代幣交易總額為379499,較此前數據下降6.10%。[2019/3/15]
EIP-4750:EOF-函數
EIP-4750比EIP-4200的功能更進一步:它不允許JUMP和JUMPI操作碼,并為RJUMP、RJUMPI和RJUMPV無法復制的函數添加了替代方案。它通過在EOF字節碼中引入特定的函數部分來實現這一點,這些函數部分可以分別使用新的JUMPF、CALLF和RETF操作碼跳轉到、調用以及返回。
EIP-5450:EOF-堆棧驗證
最后,EIP-5450為EOF合約添加了另一個驗證檢查,這次是圍繞堆棧進行的。該EIP可防止EOF合約部署可能導致堆棧下溢,以及某些溢出情況的代碼。有了這個,客戶端可以減少它們在執行EOF合約期間進行的驗證檢查的數量,因為它們可以更好地保證與堆棧相關的異常。
作為一名非EVM專家,以上就是我能帶你走的最遠的地方!如果你想深入了解EOF,我推薦你們閱讀Geth的lightclients或Solidity的Leo的帖子。
信標鏈提款
最后但同樣重要的是,“Shapella”的主要組成部分是信標鏈提款。這一變化在共識層規范以及EIP-4895中都有規定。現在稍微有點過時的元規范將這些聯系在了一起。
下面簡單說說提款的工作原理:
當提出一個區塊時,驗證器通過驗證器索引線性掃描,找到前16個具有0x01憑據的驗證器,這些驗證器要么:
余額超過32ETH
可提款
根據這些,驗證器將創建一個提款列表,以包含在他們的?ExecutionPayload?中。該列表中的每一項都包含以下內容:
WithdrawalIndex:所有提款中的索引——這有助于區分從同一驗證器到同一地址的相同金額的提款;
ValidatorIndex:余額被提取的驗證器的索引;
ExecutionAddress:需要發送提款的執行層ETH地址;
Amount:要發送到?ExecutionAddress?的金額,以gwei為單位;
在構建或處理區塊時,EL客戶端將在交易執行后應用這些提款。換句話說,處理提款類似于工作量證明獎勵的記入方式,并且不會與用戶交易爭奪區塊空間。
還有一些值得注意的細節:
在處理提款時,“全部”和“部分”提款在優先級/順序方面沒有區別。一旦驗證器離開退出隊列,就會發生完全提款,當對驗證器集的線性掃描到達驗證器的索引時,部分提款會定期發生。
為了處理提款,驗證器必須使用0x01憑證,它代表一個ETH地址。在信標鏈啟動時,只允許使用BLS密鑰對的0x00憑據。為了啟用提款,具有0x00憑證的驗證器將需要簽署BLSToExecutionChange消息。這些將作為Capella升級的一部分啟用。驗證者可以期待多種工具的支持和教程來簽署此消息。
對驗證器集的掃描以每個區塊為界。如果在掃描驗證器集的一個子集后,沒有16個提款需要處理,驗證器將停止掃描,下一個將從上次掃描的驗證器索引中提取。
與往常一樣,將有幾個開發者測試網和測試網供驗證者運行整個過程,并在主網上線之前解決所有問題。
不過,上海/Capella升級并不是唯一取得進展的升級!開發團隊們也一直在期待下一個升級。
Cancun升級
上海升級的內容已定,但很多CFI的EIP沒有被納入,客戶端團隊開始討論下一次Cancun升級應該考慮納入什么??
在CL方面,EIP-4844已被指定為capella后的第一個升級?。EL尚未支持這種布局規范,但EL團隊同意遵循類似的路徑,并將下一次升級圍繞EIP-4844進行。
按照使用devcon城市名稱進行升級的慣例,開發者創建了?cancun.md,并正式將EIP-4844包含在這次升級當中。
這個決定是在2022AllCoreDevs電話會議的最后幾分鐘做出的,所以沒有時間討論其他提案。那些在上海升級獲得CFI,但沒有入選的EIP,已被轉移到Cancun的CFI名單上,以太坊魔術師論壇已創建了帖子?來討論Cancun候選EIP。明年初,關于Cancun范圍的討論將正式開始。
KZG儀式??
另一件與Cancun升級相關的事情是?KZG儀式???,這是EIP-4844的一項要求。
儀式將生成驗證blob數據有效性所需的隨機性。要使它被認為是安全的,必須只有一個參與者誠實地參與。
從明年1月開始,這個儀式將向所有人開放幾個月。目標是獲得10,000名貢獻者,這計劃成為迄今為止規模最大的此類儀式!如果你想確保自己不錯過它,請關注?TrentVanEpps?!
合并后升級過程
正如之前的更新中提到的,合并后的一個大的待辦事項是在EL和CL中協調以太坊的升級過程。EL使用黃皮書和EIP來指定更改,而CL使用可執行的Python規范。
EL流程的優勢在于EIP被社區所熟知,并且其格式能夠清楚地呈現提案背后的原因。大量數學的黃皮書與EIP相結合,并且需要將規范置于EIP的上下文中,這使得執行層規范既難以理解又難以擴展。
CL方面有相反的問題:它有一個清晰易懂的規范,存在于一個單一的存儲庫中,但是更改不能明確地識別,并且提案被隱藏在存儲庫中的其他開放PR中。
隨著以太坊執行層規范的引入,我們有望彌合EL方面的差距。而且,通過一些流程爭論,我們也許能夠將EIP作為CL流程的一部分引入……!
也就是說,隨著上海升級范圍的討論和最終確定,很明顯這個過程中可能會缺少另一個“部分”:讓社區表達他們對更改的相對偏好,參與關于升級整體范圍的討論(而不是單個EIP),并將其納入AllCoreDevs和CL電話會議的決策中。
目前還不太清楚這是什么樣子的——我很樂意提供建議!-但隨著積極參與協議更改的利益相關者數量以及L1變更對兩者影響的領域數量的增長,顯然需要一些東西。
幸運的是,我們并不是從頭開始:以太坊魔術師論壇已經存在多年,其IRL聚會以及臨時分組討論室或社區電話會議可能是擴展的良好起點。
期待2023年初,有關于這方面的更多更新!
下一步
2022年就這樣結束了,多棒的一年啊!三個月前,我們甚至還沒有合并!而現在,以太坊正在后臺默默地運行權益證明,重點已經轉移到即將發生的事情上。
隨著一月份假期的結束,你可以期待:
上海/Capella開發者測試網和影子分叉?
KZG儀式正在進行??
圍繞Cancun升級的討論,以及網絡升級過程應該如何演進以更好地捕捉社區的偏好??
謝謝閱讀!感謝在過去一年中花時間努力改進以太坊的每個人-我們做了很多工作。
撰寫:Nomatic 編譯:深潮TechFlowWeb3游戲雖仍處于早期階段,但發展迅速。這些游戲即將到來,但其中許多項目仍處于開發的早期階段.
1900/1/1 0:00:00屬于內容創作者們的黃金時代,或許真的不遠了01創作者生態,“權力”的過度微軟的創始人比爾蓋茨在上個世紀末,互聯網還未興起時發表的文章中,對未來互聯網的發進行了展望并給予了忠告.
1900/1/1 0:00:00一夕之間,ChatGPT?突然火了,并在互聯網上掀起了一場“AI?風暴”所謂?ChatGPT,是在今年?11?月?30?日,由人工智能實驗室?OpenAI?上線的新模型.
1900/1/1 0:00:00背景 9月4日,推特用戶PhantomX發推稱朝鮮APT組織針對數十個ETH和SOL項目進行大規模的網絡釣魚活動.
1900/1/1 0:00:00摘要: 2022年10月30日,香港政府有關部門發布《有關香港虛擬資產發展的政策宣言》,一石激起千層浪.
1900/1/1 0:00:00原文標題:《TheCurrentStateofCryptoInsurance》原文作者:JooKian,加密研究員原文編譯:Evelyn.
1900/1/1 0:00:00