撰文:Tim Beiko
編輯:南風
https://tim.mirror.xyz/CHQtTJb1NDxCK41JpULL-zAJe7YOtw-m4UDw6KDju6c
https://tim.mirror.xyz/CHQtTJb1NDxCK41JpULL-zAJe7YOtw-m4UDw6KDju6c
https://github.com/ethereum/execution-specs/blob/master/network-upgrades/mainnet-upgrades/merge.md
https://github.com/ethereum/execution-apis/tree/main/src/engine
ExecutionPayloads
, 這是當前 PoW 鏈的區塊在合并之后的等價物。下圖展示了這種關系:ExecutionPayloads
是與以太坊發生交互的地方。在這一層上面的交易將依舊被執行層客戶端 (Besu、Erigon、Geth、Nethermind 等) 處理。幸運的是,由于執行層的穩定性,合并只會引入最小的破壞性更改。https://eips.ethereum.org/EIPS/eip-3675#block-structure
difficulty
和nonce
是 PoW 具有的特征,它們將被設置為 0,同時賦予它們字節大小值。mixHash
將不會被設置為 0,而是將包含信標鏈的 RANDAO 值。下文將更加詳細地對此進行闡述。BLOCKHASH
&DIFFICULTY
操作碼變更BLOCKHASH
操作碼將仍然可以使用,但鑒于它將不再通過 PoW 哈希過程締造,因此此操作碼提供的偽隨機性將會弱得多。DIFFICULTY
操作碼(0x44) 將被更新并重命名為RANDOM
。合并后,此操作碼將返回信標鏈提供的隨機信標的輸出 (output)。因此,與BLOCKHASH
相比,這個操作碼將成為應用程序開發者們使用的一個更強大的 (盡管仍然存在偏差的) 隨機性來源。RANDOM
公開的值將存儲在ExecutionPayload
中,其中存儲了與 PoW 計算相關的mixHash
值值。該 payload 的mixHash
字段也將被重命名為random
。DIFFICULTY
&RANDOM
操作碼在合并前和合并后如何運作的圖解:0x44
操作碼會返回區塊頭的difficulty
字段。合并之后,此操作碼重命名為RANDOM
,并指向先前包含mixHash
的區塊頭字段,現在存儲來自信標鏈狀態的random
值。https://eips.ethereum.org/EIPS/eip-4399
此外,此 EIP 提議的更改將允許智能合約確定是否已經升級到 PoS。這可以通過分析DIFFICULTY 操作碼的返回值來確定。如果該返回值大于 2**64
,則表示交易正在 PoS 區塊中被執行。
https://docs.google.com/presentation/d/1MUVaFyd9ce3hPQ5L-UhqVSfxf1ajMYFbkActkp5xNKI/edit#slide=id.gf1d0105ca5_0_147
latest
(最新) 區塊時默認返回安全頭部區塊。在正常的網絡條件下,安全頭部區塊和區塊鏈的頂端將是等同的 (安全頭部區塊會落后幾秒鐘)。與當前 PoW 的latest
(最新) 區塊相比, PoS 中的安全頭部區塊將更不可能被重組。為了顯露出 PoS 鏈的實際頂端,將向 JSON RPC 添加一個unsafe
標志。 finalized
(被敲定) 標志來顯露出來。這些可以作為 PoW 確認的一個強大的替代方式。下表對此進行了總結:https://github.com/ethereum/pm/issues/419
*本文首發于UnitimesApp*
-END-
【發布文章僅為傳播更有價值的信息,文章版權歸原作者所有,其內容與觀點不代表Unitimes立場。本微信平臺出現的圖片均在互聯網收集而來,版權歸版權所有人所有,若版權者認為其作品不宜供大家瀏覽或不應無償使用,請添加微信unitimes2018聯系我們,本平臺將立即更正。】
來了就點個“贊”唄
文章轉發自Unitimes微信公眾號,版權歸其所有。文章內容不代表本站立場和任何投資暗示。
Copyright © 2021.Company 元宇宙YITB.COM All rights reserved.元宇宙YITB.COM