金色观察|以太坊2.0的可执行信标链提案

金色财经报道,北京时间11月26日,以太坊核心开发人员Mikhail Kalinin在以太坊研究者论坛发起了一个从 Eth1 到 Eth2 的过渡提案“可执行信标链”提案,根据该提案,这个 eth2 执行模型,可替代可执行的分片,并支持信标链中包含的单个执行线程。该提案最初想法由以太坊创始人 Vitalik Buterin 提出,旨在通过将 eth1 数据(交易和状态根等)嵌入至信标区块中并让信标提议者生成可执行的 eth1 数据,以降低复杂性。

以下为该提案内容资料,经金色财经整理,内容有所删改。

Eth1的分片设计是假设通过信标链与数据分片进行通信。如果具有多个执行分片的第2阶段顺利推出,则此方法有意义。由于以rollup为中心的路线图,会将Eth1放在专用分片,给共识层增加了不必要的复杂性,并增加了在分片上发布数据和访问分片之间的延迟。

所以我们建议通过将eth1数据(交易,状态根等)嵌入信标块并让信标链验证者产生可执行的eth1数据来摆脱这种复杂性。

提案概述

Eth1引擎由系统中的每个验证器维护。当验证者打算提出一个信标块时,它要求eth1-engine创建eth1数据。然后将Eth1数据嵌入正在生成的信标块的主体中。如果eth1数据无效,它也会使携带该数据的信标块无效。

以太坊开发人员将注意力转向隐私、可扩展性和用户友好性:金色财经消息,在ETHSeoul 2022区块链的技术会议上,以太坊开发人员将注意力转向隐私解决方案、可扩展性和增强用户的友好性。[2022/8/10 12:15:36]

Eth1引擎修改

根据之前的内容,以Eth1 Shard为中心设计,eth1-engine和eth2-client松散耦合并通过RPC协议进行通信(检查eth1 + eth2客户端关系)。Eth1引擎不断维护需要自己的网络堆栈的交易池和状态下载器。它还应保留eth1块的存储。

当前的提议删除了eht1块的概念,eth1-engine有两种可能的方式来处理此更改:

从信标块携带的eth1数据中综合创建eth1块

修改引擎,使交易处理不需要eth1块,而使用eth1数据

我们使用可执行数据来表示包括eth1状态根,交易列表,coinbase,时间戳,块散列以及eth1状态转换功能所需的所有其他数据位的数据。

eth1-engine责任列表类似于我们以前对Eth1 Shard承担的责任。它的主要作用为:

Halborn 发现 Flow 编程语言 Cadence 中的高危漏洞,目前已修复:7月11日消息,区块链安全机构 Halborn 在 Twitter 上表示,在审计 Cadence 语言期间发现 Flow 编程语言 Cadence 中的高危漏洞,该漏洞使得 Cadence 可以允许访问被销毁的资源。该漏洞产生的原因是由于当资源被销毁时,解释器不会使对资源的引用无效,从而使得可以调用被销毁资源上的函数。目前 Cadence 解释器已更新,以便在创建对可选项的引用时检查内部值的类型。[2022/7/11 2:06:06]

交易执行。Eth2客户端将可执行数据发送到eth1引擎。Eth1引擎通过处理数据来更新其内部状态。

交易池维护。Eth1引擎使用ETH网络协议传播和跟踪线路中的交易。待处理的交易保留在内存池中,并用于创建新的可执行数据。

可执行数据创建。Eth2-client发送以前的块哈希和eth1状态根,coinbase,时间戳和创建可执行数据所需的所有其他信息(交易列表的一部分)。

状态管理。Eth1引擎维护状态存储以能够运行eth1状态执行功能。

注意:长时间的不确定性可能导致存储中产生大量垃圾,从而增加磁盘空间消耗。当无状态执行和“块创建”就位时,可以选择eth1引擎作为纯状态转换函数运行,并承担一点责任,即可以禁用状态存储,从而减少对磁盘空间的需求。

信标块处理

ExecutableData结构替换Eth1Data为信标块主体。此外,信标链和eth1的同步处理可实现即时存款。因此,可以从信标块主体去除沉积物。

在EVM中访问信标状态

我们更改了BLOCKHASH用于返回eth1块哈希的操作码语义。改为返回信标块根。这允许检查信标状态或块中包含的那些数据的证明。

异步状态读取有一个主要缺点。客户必须等待一个块,才能创建带有链接到该块的证明或它产生的状态根的交易。简而言之,异步状态访问至少要延迟一个插槽。

直接状态访问

假设eth1引擎可以访问表示整个信标状态的merkle树。然后,EVM可能带有操作码,可READBEACONSTATEDATA(gindex)提供对任何信标状态的直接访问。这种读取的复杂性取决于gindex价值,并且易于计算,因此可以轻松推断出gas价格。其次,返回数据的大小为32字节,完全适合EVM的32字节。

使用此操作码,可以创建更高级别的信标状态访问器库,从而为智能合约提供便捷的API。

该模型消除了状态访问延迟。因此,通过正确地排列信标链操作和eth1执行(后者遵循前者),N-1可以在插槽中访问到插槽分片数据的交叉链接N,从而允许rollup以最快的方式证明数据。而且,降低了信标状态读取的数据和计算复杂性。

直接访问的成本增加了eth1引擎的复杂性。读取信标状态的能力可以通过不同的方式实现:

传递状态以及可执行数据。这种方法的主要问题是处理大尺寸的状态副本。如果直接访问将被限制为状态数据的子集,而该状态数据的子集需要将一小部分状态传递给执行,则可能会起作用。

双工通信通道。拥有双工通道,eth1-engine将能够同步向信标节点询问EVM请求的状态。根据通道的设置方式,延迟可能会成为执行具有信标状态读取的交易的瓶颈。

嵌入式eth1引擎。如果将eth1-engine嵌入信标节点(例如,作为共享库),则它可以通过节点提供的主机功能从相同的存储空间读取状态。

可能有人会说,当前的提议一成不变地建立了执行模型,并降低了我们需要时引入更多可执行分片的能力。

另一方面,几个可执行分片引入了诸如跨分片通信,共享帐户空间之类的问题,而这些问题与执行模型的预期转变同样重要且难以解决。

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

金宝趣谈

TUSD中国各省区块链政策竞争力指数TOP10(2020年11月)

顺应着国家大力发展区块链的趋势,自2020年以来,全国迎来了区块链政策热潮,中央以及各地方政府纷纷颁布区块链相关政策。 此前,链塔智库发布过系列文章“中国区块链50城”,通过扫描城市经济发展水平、政府区块链政策及支持力度、区块链投融资事件、区块链创业企业名录等多个维度展现该城市区块链整体布局,以及该城市区块链创业活跃度,最终展示一座城市区块链竞争力。

DOT顶层设计已基本完备 数字货币将进入加速推进阶段

“北京作为全国科技创新中心和国家金融监管中心,具有发展现代金融业和金融科技产业的良好条件和现实需求”,北京市政府副秘书长张劲松在日前举行的2020北京国际金融安全论坛上表示,北京将持续推进建设法定数字货币实验区和数字金融体系。 今年9月份,国务院印发《中国(北京)自由贸易试验区总体方案》(下称《方案》)。

[0:15ms0-7:332ms