當前以太坊設計中的向后兼容性所面臨的挑戰之一是區塊鏈歷史記錄的訪問需要對 Merkle 證明進行 EVM驗證,這還假設區塊鏈將永遠使用相同的格式和相同的密碼技術。 未來的分片(Sharding)設計更是增加了這一點的重要性,因為Rollup的欺詐證明和有效性證明將需要指向分片數據的指針。
這篇文章提出了一種更加面向未來的方法:我們可以添加執行驗證特定類型證明的抽象任務的預編譯,而不是要求在 EVM 中驗證歷史和分片的證明。 如果將來更改格式,預編譯邏輯將自動更改。 預編譯甚至可以具有條件邏輯,用于驗證過渡前插槽(slot)的一種證明和轉換后插槽的另一種證明。
def verifyHistoricalBlockRoot( slot: uint256, ? ? value: bytes32, ? ? proof: bytes )這種預編譯將嘗試以兩種方式之一解釋該proof:
NFT社交平臺Metalink完成600萬美元種子輪融資:3月15日消息,NFT投資組合管理和社交平臺Metalink完成600萬美元種子輪融資,Guy Oseary、Gary Vaynerchuk、MoonPay首席執行官Ivan Soto-Wright、The Sandbox創始人 Sebastien Borget、前Coinbase首席技術官Balaji Srinivasan、DJ Justin Blau、Social Capital、Arrington Capital、Sound Ventures、Gemini Frontier Fund、Dapper Labs的風投部門BallerVC和Genies的Human Ventures等參投。
Metalink還推出了其移動應用程序,創建了一個據稱是代幣門控的空間,NFT 收藏家可以在這里互動、匯總公告并跟蹤他們的投資組合表現。該應用程序還計劃在今年晚些時候推出交易功能,以便用戶可以買賣和交換數字資產。[2023/3/16 13:06:35]
如果這個proof為空,則直接檢查該value是否為保存在正確位置的歷史區塊根。 如果slot太舊,它將失敗。
阿里云擬于2023年一季度將推出區塊鏈節點服務:金色財經報道,阿里云擬通過提供平臺和工具來順應 Web3 發展并希望成為新加坡政府服務轉移到商業云環境路線圖的一部分。阿里巴巴已成了一支專注于國際市場 Web3 戰略的團隊,其 Web3 產品組合目前包括 20 多種無服務器服務以及私鑰和智能合約管理工具,下季度(2023 年一季度)還將推出一項新的區塊鏈節點服務,使 Web3 開發人員能夠訪問不同的區塊鏈協議,包括 Avalanche 和 Polygon。
據悉,阿里巴巴的區塊鏈節點服務是 API 驅動的,有助于縮短 Web3 開發人員的運營和維護時間。[2022/12/16 21:49:14]
如果這個proof是一個Merkle 分支,它會根據 history_roots 中的正確條目將其驗證為 Merkle 分支
V神:比起硬件錢包,我更傾向于社交恢復和多簽錢包:11月16日消息,加密用戶Geoffrey Miller在社交媒體上發文稱,加密Youtuber總是說,如果你不擁有私鑰,加密貨幣就不會真正屬于你,請立刻購買硬件錢包吧。好的,聽起來很有道理,但是有沒有實際數據來對比中心化交易平臺丟失的加密資產比例和人們因使用自托管方式而丟失的加密資產比例呢?
以太坊創始人Vitalik Buterin對此回復稱,比起硬件錢包、紙質記錄等方式,我更傾向于社交恢復和多簽錢包。并轉載了其2021年撰寫的文章《我們需要大規模采用社交恢復錢包的原因》。[2022/11/16 13:12:30]
def verifyHistoricalStateRoot( ? ? slot: uint256, ? ? value: bytes32, ? ? proof: bytes )驗證狀態根,使用與該區塊根相同的邏輯。
EthHub聯合創始人:Sepolia即將合并:金色財經報道,天使投資人、EthHub聯合創始人sassal.eth在社交媒體上稱,Sepolia即將合并。[2022/7/6 1:55:19]
def verifyHistoricalStateValue( ? ? slot: uint256, ? ? key: bytes32, ? ? value: bytes32, ? ? proof: bytes ) 驗證歷史狀態中的值。 這個proof包括三個要素:
表明狀態根正確性的證明
Patricia 或 Verkle 或其他證明該value實際上位于狀態樹中的位置key中的證明(這假設將所有帳戶內容映射到 32 字節key的提議方案已永久保存)
def verifyHistoricalTransaction( ? ? slot: uint256, ? ? txindex: uint256, ? ? tx: bytes, ? ? proof: bytes ) 驗證 tx 實際上是否在給定slot的區塊的 txindex 中。 證明內容如下:
表明區塊根正確性的證明
證明給定的tx實際上是給定位置的交易
def verifyHistoricalReceipt( ? ? slot: uint256, ? ? txindex: uint256, ? ? receipt: bytes, ? ? proof: bytes ) 驗證receipt實際上是給定slot的 txindex 處的交易接收。 證明內容如下:
證明區塊根正確性的證明
證明給定收據實際上是給定位置的receipt
def verifyShardBlockBody( ? ? slot: uint256, ? ? shard: uint256, ? ? startChunk: uint256, ? ?chunks: uint256, ? ? data: bytes, ? ? proof: bytes ) 驗證 data = body[32 * startChunk: 32 * (startChunk + chunks)] ,其中 body 是給定slot中給定分片的主體。 該證明將包括:
證明區塊子集的 Kate 證明
如果slot太舊(超過 128 個 epoch?),則在slot + 96 處的區塊根的 Merkle 證明,然后是從該slot到分片承諾數組中的位置的 Merkle 證明,顯示一個最終性承諾
當我們使用 BLS-12-381 Kate 承諾時,預編譯還將驗證數據是 32 字節chunk的列表,其中每個chunk都小于曲線子組順序。 如果沒有在給定位置保存分片區塊,則預編譯就像在該位置保存了對零長度數據的承諾一樣。 如果給定位置的value未確認,則預編譯總是失敗。
def verifyShardPolynomialEvaluation( ? ? slot: uint256, ? ? shard: uint256, ? ? x: uint256, ? ? y: uint256, ? ? proof: bytes ) 如果我們將給定 (slot, shard) 處的分片區塊視為多項式 P,其中字節 i*32 ... i*32+31 是 w**i 處的評估,這將驗證 P(x) = y。該proof與數據子集proof相同,除了 Kate 證明正在證明某個點(可能在域外)的評估而不是在證明一個位置子集的數據。
如果我們將來不再使用 BLS-12-381(例如,使用 32 字節二進制字段證明),則預編譯會將 SNARK 作為輸入,驗證數據完全由小于該曲線階數的值組成,并驗證對當前字段數據的評估。
這種預編譯對于等價協議的跨多項式承諾方案證明?很有用,可用于允許 ZK Rollup直接對分片數據進行操作。
作者:Vitalik Buterin
原文:https://ethresear.ch/t/future-proof-shard-and-history-access-precompiles/9781
Tags:ROOLOTSLOTUINBroovs TokenMETACLOTH價格Sleepy Sloth Financeuin幣價格
在 Uniswap V3 上線初期,很多最早加入為 V3 做市的 LP 們享受了極高的手續費收益率.
1900/1/1 0:00:00DeFi衍生品被認為是DeFi最具前景的市場之一,其中包括合成資產、期權、預測市場、永續合約、保險、利率衍生品等六大方向.
1900/1/1 0:00:00我寫這篇文章的時候,正是2021年的五一假期。這個五一可不得了,大街上空空蕩蕩,人們都出城去當群眾演員了.
1900/1/1 0:00:005月19日消息,BSC最大借貸平臺Venus被曝出發生大額清算,給Venus平臺造成了1億多美元的壞賬.
1900/1/1 0:00:00導讀:比特礦業(BTCM.US)宣布在哈薩克斯坦投建礦場,并簽署兩項哈薩克斯坦礦機托管協議。 據考拉財經記者了解,2021年5月24日,比特礦業(BTCM.US)宣布已與一家哈薩克斯坦公司(“合.
1900/1/1 0:00:00最近,以太坊聯合創始人 Vitalik Buterin 參加了博客主持人 Lex Fridman 的采訪.
1900/1/1 0:00:00