月亮链 月亮链
Ctrl+D收藏月亮链
首页 > USDT > 正文

ROO:为分片采用扫清障碍 V神提出新的以太坊向后兼容方法_INT

作者:

时间:1900/1/1 0:00:00

当前以太坊设计中的向后兼容性所面临的挑战之一是区块链历史记录的访问需要对 Merkle 证明进行 EVM验证,这还假设区块链将永远使用相同的格式和相同的密码技术。 未来的分片(Sharding)设计更是增加了这一点的重要性,因为Rollup的欺诈证明和有效性证明将需要指向分片数据的指针。

这篇文章提出了一种更加面向未来的方法:我们可以添加执行验证特定类型证明的抽象任务的预编译,而不是要求在 EVM 中验证历史和分片的证明。 如果将来更改格式,预编译逻辑将自动更改。 预编译甚至可以具有条件逻辑,用于验证过渡前插槽(slot)的一种证明和转换后插槽的另一种证明。

def verifyHistoricalBlockRoot( slot: uint256, ? ? value: bytes32, ? ? proof: bytes )这种预编译将尝试以两种方式之一解释该proof:

Circle CEO:美元是世界上最强大的货币:金色财经报道,Circle首席执行官Jeremy Allaire表示,美元是世界上最强大的货币。它确实有最好的基础。我们需要利用这一点,在此基础上,使其尽可能安全,使其尽可能地在全世界范围内使用。[2023/5/18 15:12:01]

如果这个proof为空,则直接检查该value是否为保存在正确位置的历史区块根。 如果slot太旧,它将失败。

如果这个proof是一个Merkle 分支,它会根据 history_roots 中的正确条目将其验证为 Merkle 分支

def verifyHistoricalStateRoot( ? ? slot: uint256, ? ? value: bytes32, ? ? proof: bytes )验证状态根,使用与该区块根相同的逻辑。

DeFi 2.0可持续质押产品Crucible现已上线Arbitrum:3月8日消息,Ferrum Network的DeFi 2.0可持续质押产品Crucible现已上线Arbitrum。[2023/3/8 12:50:06]

def verifyHistoricalStateValue( ? ? slot: uint256, ? ? key: bytes32, ? ? value: bytes32, ? ? proof: bytes ) 验证历史状态中的值。 这个proof包括三个要素:

表明状态根正确性的证明

Patricia 或 Verkle 或其他证明该value实际上位于状态树中的位置key中的证明(这假设将所有帐户内容映射到 32 字节key的提议方案已永久保存)

苏富比将举办首次现场NFT拍卖:9月14日消息,拍卖行苏富比将于美国东部时间9月14日下午4点在纽约举办首次现场NFT拍卖活动“Inside the World of MaxStealth: A Timeless Collection”,同时本次也是苏富比举办的首次单一所有者NFT拍卖活动。他们将拍卖NFT收藏家MaxStealth的26件NFT藏品,其中包括XCopy的“Departed”、Beeple的“Bull Run”、以及Pak、Hackatao、Andrés Reisinger等多位NFT艺术家的作品。[2022/9/14 6:56:21]

def verifyHistoricalTransaction( ? ? slot: uint256, ? ? txindex: uint256, ? ? tx: bytes, ? ? proof: bytes ) 验证 tx 实际上是否在给定slot的区块的 txindex 中。 证明内容如下:

非洲区块链市场2022 H1获得超3亿美元投资:金色财经报道,2022年上半年,非洲的区块链公司共获得了 3.04 亿美元的投资资金。此外,以加密货币为中心的支付也在增长,在 2020 年 7 月至 2021 年 6 月期间飙升了 1,200%。南非标准银行区块链 COE 负责人Ian Putter表示,肯尼亚、尼日利亚和加纳已经看到加密资产的迅速普及,以访问由区块链网络提供的更有效的支付路径,并通过与美元价值挂钩的比特币或稳定币等资产产生收入回报。此外,网络攻击在今年第二季度在非洲显着上升,共检测到 10,722,886 次网络钓鱼攻击。(thisdaylive)[2022/8/8 12:09:17]

表明区块根正确性的证明

证明给定的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

标签:ROOSLOTLOTINTROOM币SLOT币Lotto NationINT币

USDT热门资讯
比特币:S2F模型:预测2022比特币10万美金 5月被“打脸” 神奇会延续吗?_比特币价格历史走势图

2019 年 3 月 22 日,推特分析师PlanB 发表了《用稀缺性为比特币价格建模》一文。自S2F模型发布两年多以来,比特币价格一直以较高的精确度跟踪着模型的预测价格.

1900/1/1 0:00:00
GNO:Gnosis Safe:支持所有兼容 EVM 的网络_SIS

本文概述了我们将如何打造多链以太坊生态,包括我们对以太坊的愿景和 Gnosis Safe 将在其中发挥的作用。我们计划让所有兼容 EVM 的相关网络都能使用 Gnosis Safe.

1900/1/1 0:00:00
比特币:市场为何恐慌?美国FBI什么手段获得黑客私钥?击中比特币两大“软肋”_比特币莱特币

比特币目前最大威胁来自于安全性与政府监管,FBI以不透露的方式破获了黑客的私钥,这似乎同时击中了这两大软肋.

1900/1/1 0:00:00
GDP:ArthurHayes:以史为鉴 为什么做空整个加密市场是愚蠢的_COVID19

本文作者:BitMEX创始人Arthur Hayes以下所表达的任何观点均为作者个人观点,不应作为投资决策的依据,也不应被解释为对从事投资交易的建议或意见.

1900/1/1 0:00:00
比特币:主流经济学家如何看虚拟货币_usdt币提现到银行卡会冻结吗

自称“走进了比特币兔子洞”的用户体验研究者米克·莫鲁奇(MickMorucci)同时拥有人类学及经济学背景,最近他撰文讨论“为什么人类学家比经济学家对比特币更感兴趣”.

1900/1/1 0:00:00
区块链:科普:zkSync 的三重安全性方案_zkSync

“唯有偏执狂才能生存下来。”?—— Intel 的 CEO Andy Grove在为?NFTs、swaps 和 zkEVM?上线做准备的过程中,我们注意到 zkSync 的用户和资金量迎来了指数.

1900/1/1 0:00:00