當前以太坊設計中的向后兼容性所面臨的挑戰之一是區塊鏈歷史記錄的訪問需要對 Merkle 證明進行 EVM驗證,這還假設區塊鏈將永遠使用相同的格式和相同的密碼技術。 未來的分片(Sharding)設計更是增加了這一點的重要性,因為Rollup的欺詐證明和有效性證明將需要指向分片數據的指針。
這篇文章提出了一種更加面向未來的方法:我們可以添加執行驗證特定類型證明的抽象任務的預編譯,而不是要求在 EVM 中驗證歷史和分片的證明。 如果將來更改格式,預編譯邏輯將自動更改。 預編譯甚至可以具有條件邏輯,用于驗證過渡前插槽(slot)的一種證明和轉換后插槽的另一種證明。
def verifyHistoricalBlockRoot( slot: uint256, ? ? value: bytes32, ? ? proof: bytes )這種預編譯將嘗試以兩種方式之一解釋該proof:
Avalanche生態保險協議Degis將集成Arbitrum:5月15日消息,Avalanche 生態保險協議 Degis 將集成 Arbitrum 網絡,為 GMX 等多個生態項目提供保險,為 Arbitrum 生態用戶提供更全面的加密資產保護。Degis 也將于近期開啟 Arbitrum 測試網激勵計劃,向合格用戶提供 $DEG 獎勵。Degis 是由香港科技大學 Crypto-Fintech Lab 孵化,Blizzard 基金領投,GBV、CMT Digital 等參投的 Avalanche 原生保險協議。Degis 提供的智能合約保險可保護用戶免遭黑客攻擊、智能合約漏洞、預言機故障等風險。如果發生風險事件,用戶可基于保單提出索賠,最高賠償金額根據合約決定。[2023/5/15 15:04:11]
如果這個proof為空,則直接檢查該value是否為保存在正確位置的歷史區塊根。 如果slot太舊,它將失敗。
英超聯賽正與Sorare協商,可能簽署每年3470萬美元的NFT交易協議:10月28日消息,據外媒報道,英超聯賽正與Sorare協商,雙方可能會簽署一份為期多年的NFT交易協議。據悉,該協議將包括一份為期多年的NFT形式的球員靜態圖像的合作。如果雙方成功簽署,每年交易金額總計約3470萬美元,并取代英超聯賽與ConsenSys的初步協議。(Theblock)[2022/10/28 11:51:11]
如果這個proof是一個Merkle 分支,它會根據 history_roots 中的正確條目將其驗證為 Merkle 分支
def verifyHistoricalStateRoot( ? ? slot: uint256, ? ? value: bytes32, ? ? proof: bytes )驗證狀態根,使用與該區塊根相同的邏輯。
美聯儲巴爾金:央行數字貨幣面臨的挑戰包括對銀行體系的影響:金色財經報道,美聯儲巴爾金表示,央行數字貨幣面臨的挑戰包括對銀行體系的影響,需要明確數字貨幣解決的問題。[2022/10/1 22:42:53]
def verifyHistoricalStateValue( ? ? slot: uint256, ? ? key: bytes32, ? ? value: bytes32, ? ? proof: bytes ) 驗證歷史狀態中的值。 這個proof包括三個要素:
表明狀態根正確性的證明
Patricia 或 Verkle 或其他證明該value實際上位于狀態樹中的位置key中的證明(這假設將所有帳戶內容映射到 32 字節key的提議方案已永久保存)
Tim Draper:美元出現某種擠兌,公眾將大舉進入比特幣:金色財經消息,在一次新的采訪中,億萬富翁Tim Draper表示,一旦意識到比特幣是日常購買的一種選擇,公眾就會開始大量使用比特幣。他說:“我是一個忠實的信徒。多年來,我一直在繼續購買比特幣,并覺得在某個時候美元會出現某種擠兌。當然,尼日利亞奈拉和墨西哥比索已經出現擠兌,但美元也將會出現擠兌,人們逃離美元并轉向比特幣。”(dailyhodl)[2022/7/7 1:56:21]
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
“唯有偏執狂才能生存下來。”?—— Intel 的 CEO Andy Grove在為?NFTs、swaps 和 zkEVM?上線做準備的過程中,我們注意到 zkSync 的用戶和資金量迎來了指數.
1900/1/1 0:00:00金色周刊是金色財經推出的一檔每周區塊鏈行業總結欄目,內容涵蓋一周重點新聞、行情與合約數據、礦業信息、項目動態、技術進展等行業動態。本文是項目周刊,帶您一覽本周主流項目以及明星項目的進展.
1900/1/1 0:00:00當前NFT市場熱度很高,一方面說明NFT技術確實具有解決包括確權、物品特定化、數字物品交易智能化等問題的能力,另一方面也說明通過NFT技術應用實現讓藝術家直接面對市場、讓消費者可以很方便地交易.
1900/1/1 0:00:00“暴漲暴跌”是比特幣等加密貨幣的自帶屬性。過去,加密貨幣只是一小撮人的游戲,如今,華爾街機構頻頻入場,加密貨幣市場格外躁動。也正因此,過去對加密貨幣睜一只眼閉一只眼的各國央行不得不注意它.
1900/1/1 0:00:001.元宇宙Metaverse是什么?為什么這么火爆?元宇宙Metaverse的概念最近火起來了,究竟.
1900/1/1 0:00:00上圖為BTC?2010-2020年至今的長期走勢,通過研究可以發現,以三次產量減半為時間分割點,從之前每一輪熊市的最低點一直延伸至各自周期內的產量減半時間點這一段時間周期.
1900/1/1 0:00:00