摘要:除可執行分片之外,可執行信標鏈作為替代的 eth2 執行模型,通過在信標鏈上添加單個執行線程的支持來實現
Vitalik 此前發布的文章《以 rollup 為中心的路線圖》中提到,數據分片作為 eth2 執行中的主要擴容因素,允許在單個執行分片上進行擴容,并簡化了總體設計。
Eth1 分片設計基于其通過信標鏈與數據分片通信。如果階段 2 的多執行分片功能將在之后推出,那么這個方法就有意義了。有了以 rollup 為中心的路線圖,將 Eth1 放在專門的分片上 (即獨立于信標鏈、且頻繁與信標鏈交互) 會給共識層帶來不必要的復雜性,并增加在分片上發布數據和在 eth1 中訪問數據之間的延遲。
我們提議將 eth1 數據 (交易、狀態根等) 嵌入到信標區塊中,并且要求信標鏈區塊提議者生成可執行的 eth1 數據,以消除這種復雜性。也就是說將 eth1 執行和有效性作為共識核心的一等公民。
提案概覽
Eth1-引擎由系統中的驗證者維持。
當驗證者打算提議一個信標區塊時,他會通過 eth1-引擎創建 eth1 數據。然后 eth1 數據將被嵌入到其提議的信標區塊中。
如果 eth1 數據無效,其所在的信標區塊也同樣無效。
Eth1 引擎的修改
根據前面的介紹,eth1 分片為中心的設計中,eth1-引擎和 eth2-客戶端是松散耦合的,并通過 RPC 協議實現通信 (查看文章 eth1+eth2 客戶端關系 以了解更多信息)。eth1-引擎不斷維護著其交易池和狀態下載器,這需要它自己的網絡堆棧。它還應該存儲 eth1 區塊。
比特幣漲至近一年來新高,今年迄今漲幅超80%:金色財經報道,盡管加密行業面臨一系列挑戰,但人們對數字資產的熱情重新燃起。比特幣漲破年內峰值31013美元,達到自2022年6月以來的最高水平。目前比特幣價格一度攀升至逾31400美元,自年初以來漲幅超過80%。其他加密貨幣也紛紛跟隨上漲,這是一個引人注目的發展,也顯示出了加密市場的彈性。
FRNT Financial數據和分析主管Strahinja Savic表示,從狂熱的比特幣愛好者的角度來看,這種代幣最基本的投資論點正在發揮作用:通貨膨脹、貨幣管理不善、銀行危機、主權債務焦慮、美元儲備地位問題,都在給比特幣愛好者創造機會說我告訴過你。如果比特幣升至歷史高位,我不會說盡管環境充滿挑戰,我會說因為環境充滿挑戰。[2023/6/24 21:57:01]
當前的提案取消了 eth1 區塊的概念,eth1-引擎有兩種可能的方式來處理這一變化:
通過合成的方式,從信標鏈區塊的 eth1 數據中創建 eth1 區塊
修改引擎:交易處理過程不a需要使用 eth1 區塊,而是使用 eth1 數據
信標區塊根可用于保存當前狀態管理所需要的鏈的概念
兩者相比,后者為比較長期的選項。它允許 eth1 客戶端更快地轉換為 eth1-引擎,且 eth1 分片概念證明 (PoC) 已經證明了這一點。
我們使用術語“可執行數據” (executable data) 來表示包含 eth1 狀態根、交易清單 (包括收據根“receipts root“和 bloom filter)、coinbase、時間戳、區塊哈希以及 eth1 狀態遷移函數所需要的所有其他數據位。可執行數據在 eth2 規范中表示如下:
Galaxy Digital CEO:比特幣價格或將在本季度末達到3萬美金:2月16日消息,根據彭博社報道,Galaxy Digital首席執行官Mike Novogratz在美國銀行會議上發表講話表示,如果2022年BTC的價格達到30,000美元,他將是“最幸福的人”。他補充道,當我看到價格走勢時,當我看到客戶打電話時的興奮,以及FOMO的增加,如果我們在本季度末達到30,000美元,我不會感到驚訝。[2023/2/16 12:11:34]
class?ExecutableData(Container):????coinbase:?bytes20??#?Eth1?address?that?collects?txs?fees????state_root:?bytes32????gas_limit:?uint64????gas_used:?uint64????transactions:?[Transaction,?MAX_TRANSACTIONS]????receipts_root:?bytes32????logs_bloom:?ByteList[LOGS_BLOOM_SIZE]Eth1-引擎的職責清單與此前 eth1 分片的職責類似。主要有:
交易執行。Eth2-客戶端向 eth1-引擎發送一筆可執行數據。Eth1-引擎通過處理該數據來更新其內部狀態,并且如果通過了共識檢查則返回 true ,否則返回false。諸如即時存款處理之類的高級用例也可能要求結果中包含完整的交易收據。
交易池維護。Eth1-引擎使用 ETH 網絡協議來廣播信息并跟蹤網絡上的交易。等待被打包的交易 (pending transactions) 保存在交易池中,然后用于創建新的可執行數據。
Circle通過Circle U為HBCU帶來加密素養課程:金色財經報道,Circle推出了Circle U試點計劃,這是一項免費的加密貨幣掃盲計劃,有助于促進數字金融知識和金融福祉。Circle U是一個知識庫,提供基于區塊鏈的金融服務的全面概述,以及隨后處理及時主題的電子學習和微學習。該課程包含七個模塊和評估,涉及基本概念,包括貨幣的演變、比特幣和區塊鏈技術、以太坊和代幣化、分層和互操作性、Web3和應用程序、政策和監管以及Web3教程。完成Circle U課程并達到高標準的學生將有機會獲得早期申請Circle實習和就業的機會。(prnewswire)[2022/9/29 5:59:41]
可執行數據創建。Eth2-客戶端發送之前的區塊哈希、eth1 狀態根、coinbase、時間戳和創建可執行數據的所有其他信息 (交易清單的一部分)。Eth1-引擎返回一個 ExcecutableData 實例。
狀態管理
Eth1-引擎維護狀態存儲以便能夠運行 eth1 狀態執行函數。
它涉及在最終確定性上觸發的狀態樹修剪機制 (pruning mechanism),該機制要求基于信標區塊鏈的狀態樹版本控制。
注意:長期無區塊敲定會造成大量垃圾數據的堆積,從而消耗額外的磁盤空間。
當無狀態執行和”區塊創建“完成時,eth1 引擎可以選擇作為純狀態遷移函數運行,并在此基礎上承擔一些責任,如,可以禁用狀態存儲,從而減少使用磁盤空間的需求。
JSON-RPC 支持。為了可用性和應用性,保留以太坊 JSON-RPC 的支持十分重要。該責任將由 eth2-客戶端和 eth1-引擎共同承擔,因為 eth1-引擎可能失去了單獨處理 JSON-RPC 終端子集的能力,如那些基于區塊號和哈希的調用。這種分離將在之后解決。
Fantom基金會將通過Gitcoin新贈款協議Grants Protocol推出資助計劃,目前開放申請:11月15日消息,Fantom基金會宣布將通過Gitcoin新贈款協議Grants Protocol推出資助計劃,允許Fantom內的生態系統建設者參與Gitcoin新贈款協議的測試輪。目前允許項目方在Gitcoin Grants Hub進行申請。[2022/11/15 13:08:02]
信標區塊處理
可執行數據 ExecutableData 結構代替了信標區塊體中的 Eth1Data 。此外,信標鏈和 eth1 的同步處理允許即時存款。因此,存款可以從信標區塊體中移除。
以下是更新了的信標區塊體:
class?ExecutableBeaconBlockBody(Container):????randao_reveal:?BLSSignature????executable_data:?ExecutableData??#?Eth1?executable?data????graffiti:?Bytes32??#?Arbitrary?data????#?Operations????proposer_slashings:?List[ProposerSlashing,?MAX_PROPOSER_SLASHINGS]????attester_slashings:?List[AttesterSlashing,?MAX_ATTESTER_SLASHINGS]????attestations:?List[Attestation,?MAX_ATTESTATIONS]????voluntary_exits:?List[SignedVoluntaryExit,?MAX_VOLUNTARY_EXITS]我們修改了 ?process_block 函數:
Synthetix創始人:當前DeFi治理比一年前更糟,社區投票需直接與多重簽名聯系起來:金色財經報道,Synthetix創始人Kain Warwick在最近的訪談中表示,當前DeFi治理實際上比一年前(牛市時)更糟糕。許多DAO工具的“閃亮外表”只是一種倉促的、僅限于牛市的治理解決方案。加密行業需要花時間將社區的投票直接與多重簽名聯系起來,才能真正控制項目的資金。
Warwick提出了一個Governance theater 的概念,旨在確保Token持有者、項目所有者、項目控制者、決策者能夠非常清楚地表達自己的偏好能落實到項目中。(Decrypt)[2022/10/9 12:50:26]
def?process_block(state:?BeaconState,?block:?BeaconBlock)?->?None:????process_block_header(state,?block)????process_randao(state,?block.body)????#?process_eth1_data(state,?block.body)?used?to?be?here????process_operations(state,?block.body)????process_executable_data(state,?block.body)在 process_operations 完成之后處理可執行數據是合理的,因為在很多情況下,operation processing 可能會使整個區塊無效。雖然,這種方法可能不是最優的,無法讓客戶端優化達到最優效果。
訪問 EVM 的信標狀態
我們更改了 BLOCKHASH 操作碼 (此前用于返回 eth1 區塊哈希) 的語義,現在用來返回信標區塊根。這允許驗證被打包進信標狀態或區塊的數據 (包括從前 256 個 slot 到最近一個 slot 的數據)。
異步狀態讀取有一個主要的缺點。客戶端必須要等待一個區塊產生,才可以使用鏈接到該區塊的證明或使用該區塊的狀態根創建一個事務。簡單地說,異步狀態訪問至少要延遲一個 slot。
直接狀態訪問
假設 eth1-引擎可以訪問代表整個信標狀態的默克爾樹。那么 EVM 可能可以憑借 READBEACONSTATEDATA(gindex) 操作碼,以提供直接訪問信標狀態任何部分的功能。這個操作碼有幾個良好的屬性。首先,這種讀取復雜性取決于 gindex 值并且易于計算,因此可以輕松地計算 gas 費。第二,返回數據的容量為 32 字節,完全適合 EVM 的 32 字節字。
使用此操作碼,就可以創建更高級別的信標狀態訪問庫,從而為智能合約提供便捷的 API。如:
v?=?create_validator_accessor(index)?#?creates?an?accessorv.get_balance()?#?returns?balance?of?the?validatorv.is_slashed()??#?returns?the?value?of?slashed?flag該模型消除了狀態訪問延遲。因此,通過對信標鏈操作和 eth1 執行進行適當的排序 (eth1 執行在后),并且在 slot N上可以訪問 slot N-1 分片數據的交聯,可以允許 rollup 以最快的方式對數據打包進行證明。
此外,使用這個方法不需要將證明廣播至網絡并進一步由合約驗證,從而減少了信標狀態讀取在數據和計算方面的復雜性。
注意:在一開始使 READBEACONSTATEDATA 操作碼的語義獨立于特定的承諾方案 (即默克爾樹) 是有意義的,這有益于更輕松地實現升級。
直接訪問的成本提高了 eth1-引擎的復雜性。讀取信標狀態可以通過不同的方式實現:
將可執行數據和狀態一起傳遞。該方法的主要問題是處理大容量的狀態副本。如果將直接訪問限制為狀態數據的一個子集,而該狀態數據的子集需要將一小部分狀態傳遞給執行,那么它可能會起作用。
雙工通信通道。有了雙工通道,eth1-引擎將能夠同步向信標節點詢問 EVM 請求的狀態。根據通道設置的方式,延遲可能會成為執行那些具有信標狀態讀取的交易的瓶頸。
嵌入式的 eth1-引擎。如果將 eth1-引擎嵌入到信標節點中,它可以通過節點提供的托管功能從同一個內存空間讀取狀態。
分析
網絡帶寬
當前提案通過可執行數據的容量來擴大信標區塊。不過,由于該提案允許使用更高級的存款方案,因此很有可能刪除 Deposit 操作。
取決于區塊利用率,根據 eth1 平均區塊容量 (這略微影響網絡接口的需求),預期的增長在 10% 到 20%之間。
值得注意的是,如果 CALLDATA 由 rollup 利用,那么在最壞的情況下,eth1 區塊容量可能會增長到 200kb (gas limit 為 1200 萬時),使得可執行信標區塊容量增長 60% ,容量變為 300kb 。
區塊處理時間
平均處理時間:
Toledo 上的 Lighthouse 有 1.6 萬驗證者,主網上的 Go-ethereum 的 gas limit 為 1200 萬。
很難推斷出信標鏈的處理時間,尤其是,特別是在驗證者子集相對較大以及需要處理交聯的情況下 (如果分片上線)。也許在某個時候,epoch 處理將與 eth1 執行幾乎同時進行。
減少時段邊界 (epoch boundary) 處理時間的方法是,提前處理 epoch,而不是等到下一個 slot 的開始,以防最近一個 epoch 的最后一個區塊準時產生。
異步狀態訪問模型允許另一種優化方式。在這種情況下,process_executable_data 可能與主要的 process_block ,甚至 process_epoch 的有效負載并行運行。
固化該設計
有人可能會說,當前提案將執行模型固定下來,并削弱了引進更多可執行分片的能力 (一旦我們需要它們)。
另一方面,一些可執行分片會帶來諸如跨分片通信、共享賬戶空間等問題。還有一些其他的問題,而這些問題與執行模型的預期轉變同樣重要且難以解決。
原文鏈接:https://ethresear.ch/t/executable-beacon-chain/8271
ECN的翻譯工作旨在為中國以太坊社區傳遞優質資訊和學習資源,文章版權歸原作者所有,轉載須注明原文出處以及ETH中文站。若需長期轉載,請聯系eth@ecn.co進行授權
來源 |?ethresear.ch
作者 | Mikhail Kalinin
特別感謝最初提出該想法的 Vitalik Buterin @vbuterin,感謝 Danny Ryan @djrtwo、@zilm 等給本文提供的寶貴意見。
原文標題:《Nansen | 數據的背后:以太坊 2.0 會帶來什么改變?》零售和機構用戶對以太坊 2.0 的質押興趣繼續上升,他們的每一筆存款都會推動以太坊 2.0 走向或遠離去中心化.
1900/1/1 0:00:002021年,整個行業都一直保持著高漲的情緒,NFT在這一年成了加密世界的寵兒,且這波熱潮在游戲元宇宙等要素助力下,顯然沒有停下來的意思.
1900/1/1 0:00:00元宇宙這個術語是由科幻作家尼爾·斯蒂芬森在他1992年的小說《雪崩》中創造的。如果你是一個科幻迷,這可能會讓你想起一些東西,所以這只是一點瑣事。 加密元宇宙將成為一個數十億美元的產業.
1900/1/1 0:00:00“樂壇教父”羅大佑發行數字藏品,音樂為何具有穿透時代的力量?提起華語樂壇鮑勃迪倫一樣的人物,一個繞不過的名字就是羅大佑.
1900/1/1 0:00:00在2021年年初,NFTs只被加密貨幣社區中的一個小眾群體所知。到年底,市場已經暴漲到超過400億美元(1),由于投資者需求的迅速激增,甚至對非加密貨幣采用者來說,已經成為一種火爆的現象.
1900/1/1 0:00:00在Flow上創建NFT比人們進行谷歌搜索或在Instagram發布帖子所消耗的能量更少。——德勤(加拿大站)最新行業報告 眾所周知,Proof of Work(POW/工作量證明)的區塊鏈機制對.
1900/1/1 0:00:00