以太坊交易所 以太坊交易所
Ctrl+D 以太坊交易所
ads
首頁 > Coinw > Info

以太坊 2.0 信標鏈如何進行狀態轉換?_EAC:Beacon ETH

Author:

Time:1900/1/1 0:00:00

信標鏈由區塊和不斷遞進的狀態組成;區塊被產出、簽名、傳遍網絡,然后用于更新狀態。下圖展示了主要的相互關系:

- 實線表示聚合關系,虛線表示依賴關系。即發出箭頭的部分是 聚合/依賴 于箭頭所指向的內容的 -

此圖基于以太坊 2.0 詳述的 0.10.1 版所繪。與剛發布的 0.11.0 版本相比,上圖描述的內容在計算 Domain 的部分有些微區別,但整體關系與前一版本一致。

創建一個新的區塊

創建區塊,要從當前的區塊鏈頂部開始。

如果當前存在一條短的分叉鏈(例如,某個時隙因為其中的區塊傳播速度太慢而被跳過,導致不同驗證者獲得的最新區塊有所區別),則由分叉選擇算法,幫你選出 “最合適”(獲得的驗證者見證消息權重越大則越 “合適”)的區塊鏈頭。

以太坊核心開發者:上海升級最后一個主網影子分叉計劃于下周進行:金色財經報道,以太坊核心開發者 Tim Beiko 發推總結最新一次的執行層會議討論內容,以太坊上海升級測試進入最后階段,最后一個主網影子分叉計劃于下周進行,并對最新版本進行跨客戶端 EVM 模糊測試。Lodestar 已經發布了一個新的(可選)版本,Prysm 也可能會在升級之前發布。

此前報道,以太坊基金會發布主網 Shapella 公告,將于 UTC 時間 4 月 12 日 22:27:35(北京時間 4 月 13 日 06:27:35)在 epoch 194048 處激活以太坊 Shapella 網絡升級。[2023/3/31 13:37:09]

此外,即使某些 slot 被跳過(沒有產生區塊),狀態仍會推進(但不執行任何操作)。

BeaconBlockBody (“信標鏈區塊區塊體”)會包含所有需要被執行的操作(保證金存入、見證消息、驗證者退出,等等)。這些操作會被用于改變狀態、生成新的 BeaconState(“信標鏈狀態”)。

Coinbase Support:正在處理以太坊網絡存款延遲問題:金色財經報道,Coinbase Support表示,正在處理以太坊網絡存款延遲問題。資金是安全的。[2023/1/5 10:23:02]

時隙、父區塊根、操作的根哈希(body root,區塊體根)會作為 BeaconBlockHeader(“信標鏈區塊區塊頭”)的組成元素被添加進狀態。要注意的是,BeaconBlockHeader 組成元素之一的狀態根是零(0x000…),因為狀態不能遞歸包含自己的哈希,否則會出現死循環。

最終狀態(帶有上述 0x000… 值的狀態)的根哈希被算出并加入區塊,然后區塊哈希得到 Block root(“區塊根”)并跟鏈的 Domain 放在一起,經過簽名后在網絡中傳播。Domain 的意義是防止區塊被傳播到其他主網或測試網上發生碰撞(collision)。

Michael J. Casey:向股權證明的重大轉變的影響并未計入以太坊市場:金色財經報道,CoinDesk首席內容官Michael J. Casey表示,向股權證明的重大轉變的影響并未計入以太坊市場。眾所周知,合并是加密貨幣歷史上對區塊鏈協議最重要的改變。投資者的問題是,以太坊的原生代幣ETH市場是否正在為這一重大轉變定價。我認為不是,主要是因為機構投資者最終會在“以太坊 2.0”中找到價值。我對更高的以太坊價格的期望并不一定意味著以太坊 2.0 將完全遵守最純粹的去中心化原則。它們是兩個不同的東西。

以太坊的投資者有多年的歷史先例,懷疑這件事能否繼續發展。即使合并確實進行了,在這個極其復雜且具有內在爭議的轉變中,故障和失敗的可能性很大。如果發生這種情況,DappRadar 警告說,去中心化金融 (DeFi) 協議和其他建立在以太坊之上的系統可能會產生負面的連鎖反應。[2022/9/3 13:05:47]

執行狀態轉換

動態 | 以太坊未確認交易87403?筆:根據etherscan.io數據顯示,目前以太坊的網絡未確認交易筆數為87403筆,相較此前網絡擁堵更為嚴重。[2018/11/17]

節點收到 SignedBeaconBlock (“經過簽名的信標鏈區塊”)后,要執行一些驗證,包含:確認簽名的有效性,及是否有對應父區塊的狀態(父區塊由 parent root “父區塊根” 指出)。

通過將狀態時隙推進到區塊所在時隙(可以是被跳過的時隙),然后執行 BeaconBlockBody 所包含的操作(比如保證金存入、見證消息、驗證者退出等等),我們便可以更新狀態。

要注意的是,出現被跳過的時隙時,也會產生新的內部狀態,并推進當前狀態至下一個時隙,區別只是不會有其他附帶的執行動作。

結果狀態應該與區塊生產者得到的狀態相同,因此我們能通過計算新的 BeaconState(包含 0x000...)的哈希值,與收到的區塊所記載的狀態根進行校驗。

BeaconBlockHeader*

信標鏈狀態包含了四個區塊基礎組成信息中的三種 —— 時隙、父區塊根哈希,和 BeaconBlockBody (即要執行的操作)的根哈希。

在計算內部狀態時,最新的區塊時隙要和最新的狀態時隙要有所區別,因為如果出現被跳過的時隙,會使得最新的區塊時隙和狀態時隙不一致。比如,如果時隙 7 被跳過,則我們仍會以時隙 6 作為最新區塊,父區塊根和區塊體根哈希都仍將指向時隙 6 的區塊。

這幾個元素作為一個集群,使用和 BeaconBlockHeader 相同的結構,不過使用的區塊根狀態永遠為零(0x000...),因為狀態不能遞歸包含自己的哈希;在圖中表示為 “BeaconBlockHeader”。

這么做的好處是,我們可以輕易的計算出區塊根的狀態——通過計算狀態的根哈希,然后創建區塊頭的副本并插入正確的根狀態,最后計算整個區塊頭的哈希(這個值會與收到的區塊的哈希值相同)。

鏈接的區塊能增加信任

區塊鏈的重要特征就是,它以系統性信任(經由算法達成的處理器多數)取代了原來個體間的信任(交易對手或第三方)。

系統性信任又可以通過以下幾個特征描述:

1. 大量處理器(例如,公有鏈)—— 這些處理器去中心化程度越高,可信程度也越高。

2. 客戶端多樣性(例如,開發團隊)—— 如果有多種客戶端供使用者選擇,就越能避免算法被集中掌控。

3. 開源 —— 既可以讓公眾檢查算法,又可以進行分叉(如果大多數人都希望改變系統方向)。

將區塊鏈接在一起也可以增強系統信任 —— 因為越早產出的區塊,它具有的權重就越大。在一般的 分布式賬本/分布式數據庫 中,因為不需要系統性信任,所以不需要這種鏈接。

僅對最新區塊發動 51% 攻擊也許會成功,但是如果你想改動 100 個時隙之前的一個區塊,則攻擊者必須在這 100 個時隙都擁有控制著絕對多數的處理器(因此非常困難)。

對于短程的分叉攻擊,整個網絡可能會對 “哪條鏈才是主鏈” 產生疑惑 —— 例如,兩個競爭的區塊以不同的速度在網絡中傳播。

但好消息是,由于區塊被鏈接在一起,因此真正的主鏈會更快被確認,而其他分叉鏈都不再有機會反客為主。

如此一來,安全性可以得到保證,系統也可從容允許驗證者撤出自己的資金,不必擔心 “無利害關系(nothing at stake)” 攻擊。

原標題:科普 | 以太坊 2.0 信標鏈中的狀態轉換

原文鏈接:

https://sgryphon.wordpress.com/2020/03/17/eth-2-0-state-transition/作者: Sly Gryphon譯者&校對: IAN LIU& 阿劍

Tags:以太坊ACOEACBeacon以太坊價格最新行情分析BenjacoinpeacockcoinBeacon ETH

Coinw
密碼密鑰傻傻分不清?認識密碼學中的最高機密_KEY:PASS

密碼學為何稱之為密碼學?密碼和密鑰究竟有何區別?隱私保護方案中,密鑰的角色是否可以被替代?密鑰在使用過程中存在哪些風險?這里,我們將以密碼學中的密碼為起點.

1900/1/1 0:00:00
QE集團董事長邱實:中日區塊鏈產業各有優勢 應加深合作_BTC:區塊鏈的幾個大騙局是真的嗎

經過數年的洗禮,區塊鏈產業泡沫已經散去,真正有價值的區塊鏈應用開始落地。放眼世界,亞洲地區,特別是中國、日本、韓國、新加坡等國家已經在該領域占據主導地位.

1900/1/1 0:00:00
10萬 CoinEx DEX迎“里程碑時刻”_OIN:COI

4月19日,55320;4月20日,60682;4月21日,67852;4月22日,88370;4月23日,102290.

1900/1/1 0:00:00
金色趨勢丨BTC謹防短線回落_SYS:Kakashi Sensei

金色午報|12月17日午間重要動態一覽:7:00-12:00關鍵詞:ConsenSys、adidas、Coinbase、烏拉圭 1.

1900/1/1 0:00:00
金色觀察丨以太坊2.0升級將至 ETH期貨開始活躍_BIT:以太坊

金色財經 區塊鏈4月27日訊  由于新冠病疫情,今年三月加密貨幣市場出現普跌,3月12日 “黑色星期四”更是經歷了巨大動蕩.

1900/1/1 0:00:00
3分鐘了解Bancor公布 V2 重大更新_AMM:ANC

今天,Bancor 公布了 Bancor 協議的第二個重要版本更新:Bancor V2,其具體技術細節將于 2020 年第二季度 Bancor V2 發布之前公開.

1900/1/1 0:00:00
ads