90%合并,10%難度炸彈?
正如在上一篇更新里承諾的,這篇更新會深入介紹合并后的以太坊客戶端架構。隨著Amphora 互操作性活動取得的進展,合并的規范現在已經接近最終敲定 ?
在我們深入合并的內容之前,先簡單介紹一下難度炸彈的最新情況!
Arrow Glacier ??
在第 124 次的核心開發者會議里 (視頻、推文),我們對難度炸彈的兩個時間達成共識:升級在 2021 年 12 月進行,推遲到 2022 年 6 月。為此,我們需要一次網絡升級——Arrow Glacier,它將僅包括關于推遲難度炸彈的 EIP-4345。
Arrow Glacier 計劃在區塊 13,773,000 激活,預計時間會在 2021 年 12 月 8 日。
在核心開發者會議上,我們對冰河時期推遲的多個選項進行了討論。之所以選擇 6 月,是因為我們有信心“合并”能在此前實現,而且我們想避免在此前再組織一次難度炸彈推遲。
當然,合并和難度炸彈是分開的:它需要單獨的一次網絡升級,且是基于 PoW total difficulty 的臨界值來激活的。這意味著我們不需要“等待”難度炸彈爆炸才能把以太坊過渡到權益證明。同樣地,如果我們在過渡上遇到問題,我們可以決定再次推遲難度炸彈。
Vitalik:Rollup有可能使以太坊TPS達到每秒10萬筆交易,甚至更多:7月24日,“2021世界區塊鏈大會·杭州”在杭州未來科技城學術交流中心開幕。以太坊創始人Vitalik Buterin(V神)受邀出席并發表主題演講《以太坊進入2.0之后,會發生什么?》。他表示,現階段, Rollup可以擴展到每秒大約4000到5000筆交易。假設整個以太坊生態都可以用上Rollup,然后有了數據分片之后,我們可能有20到50倍更多的空間。Rollup有可能使以太坊TPS達到每秒10萬筆交易,未來甚至更多。分片首先會添加一些基礎的安全性,然后再增加更多的安全性,然后分片會迎來越來越多的改進。(巴比特)[2021/7/24 1:12:51]
希望 Arrow Glacir 將是 PoW 以太坊??到合并之前最后一次網絡升級!
合并后的架構?
合并的架構利用了以太坊用于執行鏈 (Eth1) 和信標鏈 (Eth2) 久經實戰的客戶端。由于它們已經存在了,繼續使用它們是合理的。
概括來說,在合并過程中,客戶端將從根據 PoW 鏈轉為根據 PoS 鏈來決定以太坊的最新有效區塊。此外,客戶端大多數的功能,以及更重要的 EVM、它的狀態,和它是如何執行交易的,都保持不變。
合并后,現在的 Eth1 和 Eth2 客戶端分別變成以太坊的執行層和共識層 (或叫做引擎)。這意味著 Eth1 或信標鏈客戶端的節點運行者將需要運行堆棧的“另一半”,以擁有一個完整的驗證節點。Danny Ryan 制作了非常好的圖表對其進行說明。它們都已經被鑄造成 NFT 了,所有的收益都將用于獎勵合并工作的工程師和研究員。
以太坊核心開發者會議確認倫敦升級不會推遲,仍將在區塊12,965,000進行:以太坊開發者trent表示,以太坊核心開發者會議正在進行中,與會人員都堅持倫敦網絡升級的區塊12,965,000進行。[2021/7/24 1:12:21]
合并后的客戶端架構。NFT 藝術家:Danny Ryan
上圖展示了合并后一個完整的以太坊客戶端的樣子。讓我們以此為起點,深入到每個組件。
信標節點?
現在,信標節點是對空區塊 (從終端用戶角度來看) 達成共識的。這些區塊包括與共識相關的信息,稱為操作 (Operations),比如證明 (attestations)、存款合約根和驗證者的罰沒/退出,但不包括 Eth1 意義上的交易信息 (例如,發送 ETH 或與智能合約交互)。合并將改變這個情況。
在合并發生時,信標節點將監測當前的 PoW 鏈,并等待它觸達預設定的 total difficulty (總難度) 閾值,被稱為 TERMINAL_TOTAL_DIFFICULTY (終結總難度)。一旦出了一個區塊的 total difficulty >= TERMINAL_TOTAL_DIFFICULTY,該區塊將會被視為最后的 PoW 區塊。隨后的區塊都開始由信標鏈上的驗證者構建和證明。
以太坊未確認交易為120,340筆:金色財經消息,據OKLink數據顯示,以太坊未確認交易120,340筆,當前全網算力為269.98TH/s,全網難度為3.59P,當前持幣地址為51,549,342個,同比增加167,251個,24h鏈上交易量為2,330,808.7ETH,當前平均出塊時間為13s。[2020/12/16 15:25:56]
要做到以上內容,信標節點將需要與它們的執行引擎 (以前的 Eth1 客戶端) 通信,并請求它生成或驗證 ExecutionPayloads (執行數據)。這些數據是 Eth1 區塊合并后的等同物。它們包含這些信息:父塊的哈希值 (parent's hash)、狀態根 (state root)、基本費用 ( base fee)、需要執行交易列表。一旦這些信息都被生成或驗證了,信標節點將在 p2p 網絡與其他節點分享。
合并后的區塊:共識層 (即信標節點) 驗證所有現在屬于信標鏈區塊的欄位。當它在網絡上收到 ExecutionPayloads 時,它會將其傳送到執行層進行驗證。
為了在共識層和執行層建立通信,會引入一組新的 JSON RPC 端點:Engine API (引擎應用程序接口)。
加密社區就以太坊確切供應量問題引發爭論:過去幾天,關于以太坊的確切供應量問題在推特引發討論,目前似乎仍沒有達成共識。MakerDAO開發商Marc AndréDumas經過初步計算得出,以太坊供應量為1.1243億,在報告腳本中存在錯誤后,他將數字更正為1.12093億。隨后Pierre Rochard對這個數字表示質疑。
對此,以太坊聯合創始人Vitalik Buterin表示,這個數字是已知的,Pierre Rochard則要求ETH社區提供確切的數字及其計算證明。比特幣安全專家Andreas Antonopoulos表示,“ETH供應”是一個愚蠢的陷阱,如果了解以太坊的工作原理,就沒有多大意義了,因為其運作方式難以對“什么是ETH供應”給出具體答案。Morgan Creek Digital聯合創始人Anthony Pompliano?則表示,以太坊社區無法弄清該資產總供應量是一個重大問題,因為“可證明的稀缺性”非常重要。(CryptoNews)[2020/8/11]
Engine API ??
Engine API 是共識層和執行層間的通信接口。它不在執行層的公共 JSON RPC API,而在一個獨立的端口。為了簡單,對 API 的調用總是由共識層發起,而 API 只引入三個方法:engine_executePayload、 engine_forkchoiceUpdated 和 engine_getPayload。讓我們逐個看看它們是做什么的:
動態 | 由安永開發的葡萄酒市場在以太坊區塊鏈上啟動:金色財經報道,11月14日,安永(EY)開發的TATTOO葡萄酒市場在以太坊公共區塊鏈網絡上啟動,相關技術利用了安永(EY)推出的EY OpsChain平臺,實現了可追溯性。消費者可以通過公司網站以常規方式訪問該服務。該計劃是新加坡初創公司Blockchain Wine的創意。Blockchain Wine的創始人表示,“在TATTOO葡萄酒市場上,每瓶酒都可以追溯到從起源到直接交付再到消費者的整個過程。”(Ledgerinsights)[2019/11/14]
engine_executePayload (引擎執行數據) 要求執行層驗證 ExecutionPayload 是否符合所有協議規則。
在通過這個調用接收到數據后,執行層將返回 VALID/INVALID (有效/無效) 或,如果它還沒同步完鏈頭,則返回 SYNCING (同步中)。因為一個區塊的有效性是取決于它的父塊有效性的,如果執行層缺乏歷史數據來評估數據的有效性,它將從網絡上獲取這些數據。
engine_forkchoiceUpdated (引擎分叉選擇更新)?是共識層在網絡上告知執行層新的鏈頭和最終敲定的區塊的方式。如果共識層需要執行層在最新的鏈頭區塊上生成一個新的 ExecutionPayload,它會和這個調用一起傳送一個 payloadAttributes ?欄位。
payloadAttributes 欄位包含與執行引擎生成一個 ExecutionPayload 的相關信息,特別是 timestamp (時間戳), random (亂數) 和 feeRecipient (相當于以前的 coinbase) 的值。在接收到這個調用時,執行層將更新它的鏈頭,根據需要進行同步,以及,如果有需要的話,開始用 payloadAttributes 的數值構建一個 ExecutionPayload。
engine_getPayload (引擎獲取數據)請求執行層返回它的最佳 ExecutionPayload,它的構建過程已在之前對 engine_forkChoiceUpdated 的相關調用時啟動了。
這就是當驗證者必須出塊時,它從它的執行引擎獲取一個有效區塊的方式。其他節點在從 p2p 層接收到該區塊后將調用 engine_executePayload 來評估其有效性。
......就是這樣!有了這三個新的端點,共識層和執行層可以就鏈的狀態和交易數據進行通信。現在,讓我們深入了解執行引擎的工作原理。
執行引擎?
如上文所述,執行引擎就是合并后的 Eth1 客戶端。在這點上,任何與共識相關的內容都從它們的權限中移除了。它們的主要重點變成狀態管理、區塊構建和驗證,這些都稍有修改。大部分的修改都寫在了 EIP-3675。
第一,合并將需要對區塊格式進行一些修改。有些僅與 PoW 而非 PoS 相關的欄位會被設為 0 (或它們的數據結構的等同物)。這些欄位不是與挖礦 (difficulty, mixHash, nonce) 就是與 ommers (ommers, ommersHash) 有關,它們在 PoS 上都是不存在的。主網上 extraData 的長度也將被限制在 32 個字節上。
第二,由于合并后代幣增發僅會在信標鏈上發生,執行層將不再處理區塊和叔塊獎勵。也就是說。執行引擎將仍然負責處理交易費。事實上,當它創建 ExecutionPayload 時,執行引擎會確保所有交易發送者至少可以支付當前的 baseFeePerGas (每單位gas 的基本費用),且任何額外費用都會被發送到 feeReceipient (費用接收者)。請注意,feeReceipient 指的是“傳統”的以太坊地址,而不是信標鏈驗證者。
第三,當 PoS 取代了 PoW,執行引擎將不再廣播區塊。這意味著將棄用在 p2p 網絡上的 NewBlockHashes (0x01) 和 NewBlock (0x07) 的處理程序。同樣,執行層將仍然負責同步網絡狀態,廣播交易和維持它的交易池。
下圖同樣由 Danny Ryan 制作,它展示了當合并發生時執行層棄用 PoW 轉而依賴信標鏈的過程。
PoW 區塊不再生成,而信標鏈區塊在合并后開始包含 ExecutionPayloads。
我們現在已經介紹了客戶端如何處理區塊以及合并后進行內部通信的核心組件了。現在,讓我們簡單談談系統的的各種相對“邊緣”的組件。
P2P 網絡、用戶 API 和 同步?
如本文第一張圖表所示,合并后,執行和信標鏈層都在 p2p 網絡里。除了執行層上區塊廣播被棄用外,p2p 網絡上的所有東西保持不變:在它們各自獨立的 p2p 網絡上,信標節點將廣播證明、罰沒等,而執行層將分享交易、同步狀態等。
同樣,信標鏈 和 執行層 上的用戶 API 都將保持獨立,除了新創建的 Engine API。
有一個組件是跨越兩個層的,就是同步。我們正在為合并前和合并后各種可能的邊緣情況開發各種同步策略。它們仍在完善和測試中,并可能成為未來的深入研究主題?
后續工作?
Amphora 工作坊后,工作重心一直放在規范的完善和開發測試網的測試中。在未來幾周內,預計規范將確定下來,即我們預期不會再有大修改的地步。
同時, Pithos 測試網構建并運行起來了,有多個客戶端組合每天在上面做測試,計劃下周有一個社區會議,讓基礎設施和工具提供商快速了解合并。到時見??
在 Pithos 測試網上運行的各種客戶端組合
來源:https://pithos-explorer.ethdevops.io/charts
來源 |?AllCoreDev Updates
作者 |?Tim Beiko
Tags:以太坊LOALOADPAY以太坊幣今日價格行情非小號LOA幣onekeydownloadsShiba Inu Pay
1.DeFi總市值:1456.41億美元 DeFi總市值數據來源:Coingecko2.過去24小時去中心化交易所的交易量:63.
1900/1/1 0:00:0011月8日以太坊域名系統ENS(Ethereum Name Service)官方發文表示,ENS將于美國東部時間11月8日晚7點(北京時間11月9日8點)開啟治理代幣ENS空投.
1900/1/1 0:00:00元宇宙,現在我們所耳熟能詳的一個詞,Facebook 改名 “Meta”(Metaverse 元宇宙)再次引爆了這一輪熱點,元宇宙似乎一夜之間成為了巨頭們競相爭搶的新大陸.
1900/1/1 0:00:00區塊鏈最初應用是作為支持BTC的機制,為了解決數字貨幣的互操作性的問題,中本聰設計了一種不可篡改的分類賬,并用加密技術將數據區塊鏈接在了一起.
1900/1/1 0:00:00“元宇宙”好比現實人生,沒有重置、暫停或結束,而是“無限期地持續”。北京時間10月26日,Facebook發布了2021年第三季度財報。財報顯示,該公司第三季度利潤超預期,其股價盤后漲超1%.
1900/1/1 0:00:002021年10月31日Vitalik發布文章“加密城市”,認為加密技術將改變城市,介紹一些加密城市項目,他認為加密城市的時代已經到來.
1900/1/1 0:00:00