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 的臨界值來激活的。這意味著我們不需要“等待”難度炸彈爆炸才能把以太坊過渡到權益證明。同樣地,如果我們在過渡上遇到問題,我們可以決定再次推遲難度炸彈。
Tether將與火必進行4億USDT鏈交換,從以太坊轉換為Tron:1月13日消息,Tether將與火必協調執行鏈交換,從以太坊ERC20轉換為Tron,價值4億美元。 USDT總供應量在此過程中不會發生變化。[2023/1/14 11:11:23]
希望 Arrow Glacir 將是 PoW 以太坊??到合并之前最后一次網絡升級!
合并后的架構?
合并的架構利用了以太坊用于執行鏈 (Eth1) 和信標鏈 (Eth2) 久經實戰的客戶端。由于它們已經存在了,繼續使用它們是合理的。
概括來說,在合并過程中,客戶端將從根據 PoW 鏈轉為根據 PoS 鏈來決定以太坊的最新有效區塊。此外,客戶端大多數的功能,以及更重要的 EVM、它的狀態,和它是如何執行交易的,都保持不變。
合并后,現在的 Eth1 和 Eth2 客戶端分別變成以太坊的執行層和共識層 (或叫做引擎)。這意味著 Eth1 或信標鏈客戶端的節點運行者將需要運行堆棧的“另一半”,以擁有一個完整的驗證節點。Danny Ryan 制作了非常好的圖表對其進行說明。它們都已經被鑄造成 NFT 了,所有的收益都將用于獎勵合并工作的工程師和研究員。
以太坊聯創Taylor Gerring的地址收到約1萬枚ETH:金色財經消息,據歐科云鏈OKLink多鏈瀏覽器顯示,以太坊聯合創始人Taylor Gerring的以太坊地址tgerring.eth于9月5日08:06:24收到約1萬枚ETH,價值約1580萬美元。[2022/9/5 13:09:03]
合并后的客戶端架構。NFT 藝術家:Danny Ryan
上圖展示了合并后一個完整的以太坊客戶端的樣子。讓我們以此為起點,深入到每個組件。
信標節點?
現在,信標節點是對空區塊 (從終端用戶角度來看) 達成共識的。這些區塊包括與共識相關的信息,稱為操作 (Operations),比如證明 (attestations)、存款合約根和驗證者的罰沒/退出,但不包括 Eth1 意義上的交易信息 (例如,發送 ETH 或與智能合約交互)。合并將改變這個情況。
在合并發生時,信標節點將監測當前的 PoW 鏈,并等待它觸達預設定的 total difficulty (總難度) 閾值,被稱為 TERMINAL_TOTAL_DIFFICULTY (終結總難度)。一旦出了一個區塊的 total difficulty >= TERMINAL_TOTAL_DIFFICULTY,該區塊將會被視為最后的 PoW 區塊。隨后的區塊都開始由信標鏈上的驗證者構建和證明。
以太坊未確認交易為95,719筆:金色財經消息,據OKLink數據顯示,以太坊未確認交易95,719筆,當前全網算力為240.55TH/s,全網難度為3.25P,當前持幣地址為48,239,043個,同比增加130,831個,24h鏈上交易量為2,255,674.34ETH,當前平均出塊時間為13s。[2020/10/5]
要做到以上內容,信標節點將需要與它們的執行引擎 (以前的 Eth1 客戶端) 通信,并請求它生成或驗證 ExecutionPayloads (執行數據)。這些數據是 Eth1 區塊合并后的等同物。它們包含這些信息:父塊的哈希值 (parent's hash)、狀態根 (state root)、基本費用 ( base fee)、需要執行交易列表。一旦這些信息都被生成或驗證了,信標節點將在 p2p 網絡與其他節點分享。
合并后的區塊:共識層 (即信標節點) 驗證所有現在屬于信標鏈區塊的欄位。當它在網絡上收到 ExecutionPayloads 時,它會將其傳送到執行層進行驗證。
為了在共識層和執行層建立通信,會引入一組新的 JSON RPC 端點:Engine API (引擎應用程序接口)。
動態 | 以太坊鏈上超656萬枚PAX被銷毀 價值約658萬美元:Whale Alert監測數據顯示,北京時間10:04,以太坊鏈上共計6,561,009枚PAX被銷毀,按當前價格計算,價值約658萬美元。銷毀哈希為:0x78f0258c7a77cd1b0efecde01d515f3c810a175c538766aa316467e2066e2e38。[2020/1/13]
Engine API ??
Engine API 是共識層和執行層間的通信接口。它不在執行層的公共 JSON RPC API,而在一個獨立的端口。為了簡單,對 API 的調用總是由共識層發起,而 API 只引入三個方法:engine_executePayload、 engine_forkchoiceUpdated 和 engine_getPayload。讓我們逐個看看它們是做什么的:
engine_executePayload (引擎執行數據) 要求執行層驗證 ExecutionPayload 是否符合所有協議規則。
在通過這個調用接收到數據后,執行層將返回 VALID/INVALID (有效/無效) 或,如果它還沒同步完鏈頭,則返回 SYNCING (同步中)。因為一個區塊的有效性是取決于它的父塊有效性的,如果執行層缺乏歷史數據來評估數據的有效性,它將從網絡上獲取這些數據。
ZBTC公告:食安幣升級為以太坊代幣:ZBTC公告稱,食安幣(FSC)升級為以太坊代幣(NFSC)合約地址為:0xf3871f565a6a216fbe0ea3cf806ab15a32830c1c,請各用戶充幣提幣的時候注意。[2018/6/20]
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:以太坊PAYETHLOA以太坊價格美元實時TokenpayEthereum Message SearchLOAN幣
在今年央行發布的《中國數字人民幣的研發進展白皮書》(以下簡稱“白皮書”)中,對于數字人民幣硬錢包是這樣介紹的:數字人民幣按照載體可以分為軟錢包和硬錢包.
1900/1/1 0:00:0011月2日,以太坊域名系統 ENS (Ethereum Name Service)正式宣布發行治理代幣 ENS,并且開放了 DAO 代表申請,以推動項目的去中心化和持續發展.
1900/1/1 0:00:00虧損厭惡每時每刻都在影響著投資人的決策。而這種偏見,導致投資人忍受不了割肉的痛,忍受不了短期虧損,浮盈過早落袋為安。經常買在高位,賣在低位.
1900/1/1 0:00:0010 月15 日,美國首支比特幣期貨ETF 獲批。美國證監會批準ETF 巨頭ProShares 申請的比特幣期貨ETF 上市,代碼BITO.
1900/1/1 0:00:00臉書、微軟、耐克......世界上最大的品牌正在轉向元宇宙。 然而,毫無疑問,這些公司之所以這樣做,正是因為他們的品牌.
1900/1/1 0:00:00作為加密世界近半年的風口之一,GameFi賽道正呈現出百花齊放的局面,角色扮演、虛擬空間、戰斗養成、卡牌收集等各類鏈游輪番上線,更多創新性玩法也在不斷涌現.
1900/1/1 0:00:00