本文作者為Tim Beiko,是以太坊核心開發者,這篇文章是他對于接下去上海升級的解讀。
歡迎閱讀有關 AllCoreDevs 在 2022 年的最后一次更新。
長話短說:
上海/ Capella 升級的內容已經敲定:提款,EOF,還有一些小改動……只要不耽誤提款即可 ?
Blobspace 即將到來: EIP-4844 將成為以太坊下一次升級的中心,其召喚儀式即將開始??
開發者們正在努力協調執行客戶端和共識客戶端升級過程的技術方面。我們還看到了關于更好地將社區的意見納入流程的積極討論?
在最近一次 AllCoreDevs 電話會議上,客戶端團隊就上海 / Capella 升級的最終范圍達成了共識。雖然升級的名稱可能仍有爭議,但團隊們已經清楚了升級的范圍,這次升級的主要任務是為質押者引入信標鏈提款。盡快解決這個問題是客戶端團隊的目標,因此升級中的其他功能需要同時準備好,或者有可能會被移除。
上海 EL 規范列出了所有包含的 EIP:
EIP-3540:EVM 對象格式 (EOF) v1
EIP-3651:Warm COINBASE?
EIP-3670:EOF - 代碼驗證?
EIP-3855:PUSH0 指令?
EIP-3860:限制和計量 initcode?
EIP-4200:EOF - 靜態相對 jumps?
EIP-4750:EOF - 函數?
EIP-4895:信標鏈推送提款操作?
EIP-5450: EOF -堆棧驗證?
雖然列表很長,但我們可以將它們分為三個不同的部分:小改進、EVM 對象格式以及提款。讓我們來逐一分析:
以太坊聯創Jeffrey Wilcke向Kraken轉入2.2萬枚以太坊:6月5日消息,據鏈上分析師余燼監測,以太坊聯合創始人 Jeffrey Wilcke 地址向 Kraken 轉入 2.2 萬枚以太坊,價值約 4113 萬美元。該地址上次轉賬是在 2021 年 1 月 6 日向 Kraken 轉入 1.5 萬枚以太坊。目前該地址仍持有超 15 萬枚以太坊。[2023/6/5 21:16:52]
該 EIP 修復了 EIP-2929 中的一個疏忽,該疏忽根據客戶端是否已將數據字段存儲在內存中(WARM)或需要從磁盤中檢索它們(COLD)來更改訪問某些數據字段的 gas 成本。
EIP-2929 在每個事務開始時,將客戶端內存中的兩段數據設置為 WARM:發送地址和接收地址。EIP-3651 在這個列表中添加了第三個地址,即 COINBASE 地址(又名 feeRecipient),因為它也是客戶端在處理區塊交易時在內存中的地址。
顧名思義,EIP-3855 引入了一個將值 0 推入堆棧的操作碼。Pushing 0 經常用于填充 EVM 中的值,此操作碼將提供一種更有效、更便宜的方法來實現這一點。
該 EIP 增加了 initcode的最大大小,并引入了基于其長度的 gas 計量。 大小限制為 EVM 添加了一個不變量,這將使推理和提出更改變得更容易。
引入了一個2 gas/32 字節的initcode 開銷,以說明客戶端在執行之前必須執行的 jumpdest 分析,這在以前的 gas 計劃中并沒有被考慮到。
上海升級包括的大多數 EIP 都是單一功能的一部分 : EVM 對象格式(EOF)。這項升級工作被分解為 5 個不同的 EIP,以幫助客戶端開發人員單獨地解釋每個更改,但為了提供更高層次的概述,本周發布了一個統一的規范。這 5個 EOF EIP 分別是:
瑞士銀行SEBA推出以太坊質押服務:金色財經消息,在以太坊網絡合并之前,瑞士加密貨幣平臺SEBA銀行,已經為大客戶提供以太坊質押服務。該銀行在一份聲明中說,允許其用戶按月對其持有的以太坊產生獎勵。據悉,合并后將可設置不同的鎖定期。而在以太坊“上海升級”之前,無法從以太坊的信標鏈中提取任何質押的以太坊。
該銀行技術和客戶解決方案負責人Mathias Schutz在聲明中表示:“我們推出以太坊質押服務將使機構投資者能夠在保障網絡的未來方面發揮關鍵作用。”(Blockworks)[2022/9/7 13:14:07]
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 月份,客戶端團隊同意為上海升級考慮兩個最小的 EOF EIP:EIP 3540 和 EIP 3670。它們將充當構建塊,但如果不引入 EIP 4200、EIP 4750 以及 EIP 5450 將無法提供全部功能。雖然有可能 擴展 EOF,但向后不兼容的擴展可能需要一次版本升級。 由于具有特定版本的前 EOF 或 EOF 合約必須始終可執行,因此每個新的 EOF 版本都意味著客戶端開發人員必須維護一組與舊規則并行的新 EVM 執行規則。
在 EOF 之前,客戶端一次只維護一組 EVM 規則。代碼庫還支持歷史 EVM 規則,這些規則可以改變每次網絡升級,但一旦它們到達鏈的頂端,就只能應用最新的規則。而使用 EOF,客戶端將維護兩個并行的 EVM 規則集,因此它們可以在 EOF 和非 EOF 合約中執行代碼。換句話說,EOF 版本bumps 增加了并行的數量,而不是順序的,必須維護的 EVM 規則集。
Optimism:EVME quivalence完全符合以太坊虛擬機規范,將成為L2下一個通用標準:10月28日消息,以太坊擴容方案Optimism發文,稱相信EVM Equivalence完全符合以太坊虛擬機規范,將成為L2領域的下一個通用標準。EVM Equivalence不是在Solidity中實現EVM,而是用更小、更簡單的指令集實現一個VM (Virtual Machine,虛擬機),并于欺詐證明期間在這個VM 中運行EVM,為此必須簡單地編譯一個現有的EVM解釋器,例如Geth解釋器,以便在更簡單的VM中運行。同時這允許Geth本身在一個爭議友好的環境中運行,由于 Geth 是 EVM 等效(EVM-equivalent)的,所以環境也是如此,這使其能夠繞過在鏈上重新實現 EVM,并使系統能夠適應未來對EVM的升級,目前Optimism團隊正在與編譯專家 George Hotz 一起工作以實現這個目標。[2021/10/28 21:04:10]
出于這個原因,在過去的幾個月里,客戶端團隊開始更喜歡一種“大 EOF” 方法。 這樣,雖然他們必須實施更大的變更集,但 EOF 版本將保持更長時間,從而減少要維護的“并行 EVM”的數量。因此,“大 EOF”被考慮并最終納入到接下來的上海升級中。
也就是說,更大的功能顯然更難以實施和測試,而客戶端團隊們并不希望看到 EOF 顯著延遲信標鏈提款。 因此,客戶端團隊們同意,如果到明年 1 月, EOF 實施不完整且相互之間無法快速互操作,則將 EOF 從上海移除。
在這個背景下,現在讓我們簡單地介紹一下各種 EOF EIP:
該 EIP 為 EOF 合約引入了“容器”。 它在合約中添加了區分代碼和數據部分的標記,并防止部署不符合格式的 EOF 合約。 這保證了任何鏈上 EOF 合約都將遵循有效的布局,從而簡化了與這些合約的交互以及對它們的靜態分析。
分析 | Chainalysis:以太坊是詐騙的首選加密貨幣:據bitcoin.com報道,根據區塊鏈監控公司Chainalysis最新的以太坊報告,在過去的兩年里,以太坊生態系統中的欺詐行為猖獗,并且由于各種原因成為了“詐騙的首選加密貨幣”。截至2018年,以太坊詐騙數量有所減少,但數量更大,更復雜,利潤更高。以太坊領域共發生了四種流行騙局,包括直接的欺詐,ICO退出騙局,龐氏詐騙和網絡釣魚的企圖。[2019/2/6]
EIP-3670 建立在 EIP-3540 引入的容器之上,確保合約 EOF 中的代碼有效,或阻止其部署。
這意味著未定義的操作碼無法在 EOF 合約中部署,這具有減少所需的 EOF 版本更新數量的額外好處。 如果添加了新的操作碼,只需更改驗證規則即可啟用它,并且可以保證沒有 EOF 部署的合約在其代碼部分引用它。
EIP-4200 引入了第一個 EOF 專用操作碼:RJUMP、RJUMPI 和 RJUMPV,它們將目標編碼為帶符號的即時值。編譯器可以使用這些新的 JUMP 操作碼來優化 gas 成本,因為它們消除了對現有 JUMP 和 JUMPI 操作碼所需的運行時 jumpdest 分析的需要。
EIP-4750 比 EIP-4200 的功能更進一步:它不允許 JUMP 和 JUMPI 操作碼,并為 RJUMP、RJUMPI 和 RJUMPV 無法復制的函數添加了替代方案。它通過在 EOF 字節碼中引入特定的函數部分來實現這一點,這些函數部分可以分別使用新的 JUMPF、CALLF 和 RETF 操作碼跳轉到、調用以及返回。
最后,EIP-5450 為 EOF 合約添加了另一個驗證檢查,這次是圍繞堆棧進行的。該 EIP 可防止 EOF 合約部署可能導致堆棧下溢,以及某些溢出情況的代碼。 有了這個,客戶端可以減少它們在執行 EOF 合約期間進行的驗證檢查的數量,因為它們可以更好地保證與堆棧相關的異常。
動態 | 多數以太坊智能合約仍用于交易 dApp未達預期:據CCN消息,SFOX的新數據,描繪了以太坊網絡上dApp開發現狀。根據對超過3000萬的Ethereum交易進行的分析得出的數據,網絡上排名前10位的智能合約主要由ICO和交易活動所主導,流行的CryptoKitties dApp只有一個單獨的位置。數據顯示,Ethereum并不能作為一個為智能合同提供動力的簡單而強大引擎,dApp開發者可以將其用于任何目的,成本和規模問題仍然是實現這一愿景的一個重大挑戰。到目前為止,絕大多數以太坊智能合約活動仍然致力于交易ETH和基于以太坊的代幣。dApps根本沒有像投資者希望的那樣成功。[2018/10/27]
作為一名非 EVM 專家,以上就是我能帶你走的最遠的地方! 如果你想深入了解 EOF,我推薦你們閱讀 Geth 的 lightclients 或 Solidity 的 Leo 的帖子。
最后但同樣重要的是,“Shapella”的主要組成部分是信標鏈提款。這一變化在共識層規范以及 EIP-4895 中都有規定。現在稍微有點過時的元規范將這些聯系在了一起。
下面簡單說說提款的工作原理:
當提出一個區塊時,驗證器通過驗證器索引線性掃描,找到前 16 個具有 0x01 憑據的驗證器,這些驗證器要么:
余額超過 32 ETH(即已累積驗證者獎勵)
可提款(即已完全退出驗證者集)
根據這些,驗證器將創建一個提款列表,以包含在他們的 ExecutionPayload 中。 該列表中的每一項都包含以下內容:
WithdrawalIndex:所有提款中的索引——這有助于區分從同一驗證器到同一地址的相同金額的提款;
ValidatorIndex:余額被提取的驗證器的索引;
ExecutionAddress: 需要發送提款的執行層 ETH 地址;
Amount: 要發送到 ExecutionAddress 的金額,以 gwei(不是 wei)為單位;
在構建或處理區塊時,EL 客戶端將在交易執行后應用這些提款。換句話說,處理提款類似于工作量證明獎勵的記入方式,并且不會與用戶交易爭奪區塊空間。
還有一些值得注意的細節:
在處理提款時,“全部”和“部分”提款在優先級/順序方面沒有區別。 一旦驗證器離開退出隊列,就會發生完全提款,當對驗證器集的線性掃描到達驗證器的索引時,部分提款會定期發生。
為了處理提款,驗證器必須使用 0x01 憑證,它代表一個 ETH 地址。 在信標鏈啟動時,只允許使用 BLS 密鑰對的 0x00 憑據。 為了啟用提款,具有 0x00 憑證的驗證器將需要簽署 BLSToExecutionChange 消息。 這些將作為 Capella 升級的一部分啟用。 驗證者可以期待多種工具的支持和教程來簽署此消息。
對驗證器集的掃描以每個區塊為界。 如果在掃描驗證器集的一個子集后,沒有 16 個提款需要處理,驗證器將停止掃描,下一個將從上次掃描的驗證器索引中提取。
與往常一樣,將有幾個開發者測試網(devnet)和測試網(甚至可能是一些新的!)供驗證者運行整個過程,并在主網上線之前解決所有問題。
不過,上海/Capella 升級并不是唯一取得進展的升級! 開發團隊們也一直在期待下一個升級。
上海升級的內容已定,但很多 CFI 的 EIP 沒有被納入,客戶端團隊開始討論下一次 Cancun 升級應該考慮納入什么 ??
在 CL 方面,EIP-4844 已被指定為 capella 后的第一個升級?。 EL 尚未支持這種布局規范,但 EL 團隊同意遵循類似的路徑,并將下一次升級圍繞 EIP-4844 進行。
按照使用 devcon 城市名稱進行升級的慣例,開發者創建了 cancun.md,并正式將 EIP-4844 包含在這次升級當中。
這個決定是在 2022 AllCoreDevs 電話會議的最后幾分鐘做出的,所以沒有時間討論其他提案。那些在上海升級獲得 CFI ,但沒有入選的 EIP,已被轉移到 Cancun 的 CFI 名單上,以太坊魔術師論壇已創建了帖子?來討論 Cancun 候選 EIP。明年初,關于 Cancun 范圍的討論將正式開始。
另一件與 Cancun 升級相關的事情是 KZG 儀式???,這是 EIP-4844 的一項要求。
儀式將生成驗證 blob 數據有效性所需的隨機性。 要使它被認為是安全的,必須只有一個參與者誠實地參與。
從明年 1 月開始,這個儀式將向所有人開放幾個月。 目標是獲得 10,000 名貢獻者,這計劃成為迄今為止規模最大的此類儀式! 如果你想確保自己不錯過它,請關注 Trent Van Epps?!
正如之前的更新中提到的,合并后的一個大的待辦事項是在 EL 和 CL 中協調以太坊的升級過程。 EL 使用黃皮書和 EIP 來指定更改,而 CL 使用可執行的 Python 規范。
EL 流程的優勢在于 EIP 被社區所熟知,并且其格式能夠清楚地呈現提案背后的原因。 大量數學的黃皮書與 EIP 相結合,并且需要將規范置于 EIP 的上下文中,這使得執行層規范既難以理解又難以擴展。
CL 方面有相反的問題:它有一個清晰易懂的規范,存在于一個單一的存儲庫中,但是更改不能明確地識別,并且提案被隱藏在存儲庫中的其他開放 PR 中。
隨著以太坊執行層規范的引入,我們有望彌合 EL 方面的差距。 而且,通過一些流程爭論,我們也許能夠將 EIP 作為 CL 流程的一部分引入……!
也就是說,隨著上海升級范圍的討論和最終確定,很明顯這個過程中可能會缺少另一個“部分”:讓社區表達他們對更改的相對偏好,參與關于升級整體范圍的討論(而不是單個 EIP),并將其納入 AllCoreDevs 和 CL 電話會議的決策中。
目前還不太清楚這是什么樣子的——我很樂意提供建議! - 但隨著積極參與協議更改的利益相關者數量以及 L1 變更對兩者影響的領域數量的增長,顯然需要一些東西。
幸運的是,我們并不是從頭開始:以太坊魔術師論壇已經存在多年,其 IRL 聚會以及臨時分組討論室或社區電話會議可能是擴展的良好起點。
期待 2023 年初,有關于這方面的更多更新!
2022 年就這樣結束了,多棒的一年啊!三個月前,我們甚至還沒有合并 ! 而現在,以太坊正在后臺默默地運行權益證明(PoS),重點已經轉移到即將發生的事情上。
隨著一月份假期的結束,你可以期待:
上海/Capella 開發者測試網(devnets)和影子分叉(shadow fork)?
KZG 儀式正在進行??
圍繞 Cancun 升級的討論,以及網絡升級過程應該如何演進以更好地捕捉社區的偏好??
謝謝閱讀!感謝在過去一年中花時間努力改進以太坊的每個人-我們做了很多工作。
DeFi之道
個人專欄
閱讀更多
金色財經 子木
金色早8點
去中心化金融社區
CertiK中文社區
虎嗅科技
區塊律動BlockBeats
深潮TechFlow
念青
Odaily星球日報
騰訊研究院
推特用戶DeFi Edge總結了在2022年學到的一些加密教訓。 1、鎖定代幣不值得 Ve類型的鎖定機制在DeFi中變得流行,你鎖定你的代幣一段時間,獲得額外的收益或效用作為交換.
1900/1/1 0:00:00體育運動員、電影明星、模特、音樂家;幫派都在這里,每個月都有更多的名人進入區塊鏈領域。這種趨勢會在 2023 年繼續嗎?加密世界仍在以閃電般的速度發展.
1900/1/1 0:00:009 月 4 日,推特用戶 Phantom X 發推稱朝鮮 APT 組織針對數十個 ETH 和 SOL 項目進行大規模的網絡釣魚活動.
1900/1/1 0:00:001.金色觀察 | 美國SEC起訴書披露SBF及其同伙如何欺詐投資者2022年12月21日美國證券交易委員會(SEC)指控兩位SBF同伙Caroline Ellison(Alameda Resea.
1900/1/1 0:00:00Web2的世界里,社交被譽為是互聯網皇冠上的明珠,大家也非常期待在社交賽道以后會出現一個千億級的大公司.
1900/1/1 0:00:00原文作者:neworder我們對以太坊生態系統的五個預測: 熊市還沒有過去; EigenLayer 將是以太坊最重要的創新;Blob 交易不會修復可擴展性問題;2023 年.
1900/1/1 0:00:00