VER:V神发布以太坊状态到期和无状态路线图,同步实施以解决状态暴增问题

原作者:VitalikButerin,《状态到期和无状态路线图》

以太坊的状态规模正在迅速增长。目前仅状态大小大约有35GB,如果包括所有Merkle证明在内,则超过100GB,并且每年大约增加一半。状态存储也是以太坊经济学的一个弱点:它也是唯一一种机制,使得参与者支付一次就可变成节点永远的负担。为了保持以太坊的可扩展性和可持续性,我们需要一些解决方案。

有两种途径的解决方案,并且已经存在很长时间:弱无状态和状态到期:

状态到期:从状态中移除最近没有被访问过的状态,并需要见证人才能恢复过期状态。这会将每个人需要存储的状态减少到大约20-50GB。弱无状态:只需要区块提议者存储状态,并允许所有其他节点无状态地验证区块。在实践中实现这一点需要切换到Verkle树以减少见证人的规模。本文档描述了同时实施这两个想法的多阶段提案。事实证明,这比先后连续执行这两个解决方案要容易得多。没有Verkle树的状态到期需要非常大的见证大小来证明旧状态,而切换到没有状态到期的Verkle树需要就地转换程序,这几乎与仅实现状态到期一样复杂。然而,如果同时进行,这两项改革解决了彼此面对的挑战:状态到期涉及每年创建一个新的状态树,允许Verkle树随着时间的推移逐步引入而无需就地转换,而Verkle树解决了见证人规模的问题。

V神发推敦促俄罗斯总统普京不要入侵乌克兰:金色财经报道,以太坊创始人Vitalik Buterin 用他的母语在推特上敦促俄罗斯总统普京不要入侵该国的邻国乌克兰。V神称,入侵将会损害国家和整个人类,避免战争的选择完全在于普京和克里姆林宫。在他的推文中,V神标记了克里姆林宫的推特账户@KremlinRussia。目前该帐户尚未对该条推特进行回复。[2022/2/12 9:46:31]

相关链接:状态到期和无状态思想的发展历史

无状态客户端概念,最初的ethresear.ch帖子:https://ethresear.ch/t/the-stateless-client-concept/172?状态租金,2015年原始提案:https://github.com/ethereum/EIPs/issues/35?ReGenesis:https://medium.com/@mandrigin/regenesis-explained-97540f457807?Verkle树:https://notes.ethereum.org/_N1mutVERDKtqGIEYc-Flw?关于边界见证大小的演示:https://www.youtube.com/watch?v=qQpvkxKso2E?状态大小管理理论:https://hackmd.io/@vbuterin/state_size_management?复活冲突最小化状态边界:https://ethresear.ch/t/resurrection-conflict-minimized-state-bounding-take-2/8739?无状态和状态到期的一些路径:https://hackmd.io/@vbuterin/state_expiry_paths

V神发布“Verkle树和状态到期”详细计划,状态到期用状态树列表替换单个状态树:V神(Vitalik Buterin)表示,为Verkle树和状态到期写了一些更详细的计划(包括原始EIPs)。Verkle树:在现有的hexary Patricia树旁引入一个新的Verkle状态树。在硬分叉之后,Verkle树存储对状态的所有编辑以及所有访问状态的副本,并且hexary Patricia树不能再修改。这是向以太坊完全依赖Verkle树来存储执行状态多阶段过渡的第一步。状态到期:用状态树列表替换单个状态树,大约每一年一棵树。状态编辑存储在与当前期间相对应的树中,并且客户端不再存储超过最近两个期间的树。使用旧状态的交易,在最近两个期间没有修改,需要提供见证人。[2021/6/18 23:46:59]

回顾:状态到期是如何工作的?

V神发推声援Coinbase首席执行官:刚刚,V神发推声援Coinbase首席执行官Brian Armstrong,称Brian Armstrong用个人推特账户发表美国总统竞选相关消息,与其希望Coinbase保持独立并不冲突。今日早间消息,有报道称,在“远离”措施提出不久,Coinbase CEO发推站队美国总统竞选。随后,Ripple首席执行官反对Coinbase CEO的反立场。[2020/10/26]

这是对此处提议的机制以及本文档中提议的内容的描述。核心思想是每个时期都会有一个状态树,当新时期开始时,会为该时期初始化一个空状态树,任何状态更新都会进入该树。在一段时间内发生的所有写入都进入最新的树。

V神发推称赞EIP 1559 用户质疑该提案将会损害矿工利益:10月20日消息,今日上午V神发推称,EIP 1559正是当今世界所需要的。对此,有用户表示反对,称应该否决该提议,他表示虽然EIP 1559确实很有趣,但是似乎它会对矿工造成很大的伤害。并认为如果该提议获批将会影响大型矿工和矿业集团继续参与以太坊网络挖矿。目前V神尚未回复。

据悉,EIP 1559由V神于2018年首次提出,预计使以太坊区块链的收费市场更加可预测并缓解拥堵。[2020/10/20]

请注意,这些大约一年的状态到期时间在历史上有时被称为“时期”,但我正在切换到“周期”一词以避免与信标链时期混淆。

保持两个关键原则:

只能修改最近的树。所有旧树都不再可修改;旧树中的对象只能通过在新树中创建它们的副本来修改,并且这些副本取代了旧副本。全节点预计只持有最新的两个树,因此只有最新的两个树中的对象才能在没有见证人的情况下被读取。阅读较旧的树则需要提供见证人。“见证”是一个简短的证明,它证明一个值或一组值位于树中的某个位置,可以由只有树根的人进行验证。例如,可以做一个见证,证明账户0x124f...89ab的存储槽123在某个状态下包含值50,任何拥有该状态树根的人都可以验证该证明。

动态 | V神发布关于“跨分片交易”的新建议:10月29日,以太坊联合创始人Vitalik Buterin发表了一份关于“在以太坊网络上实现跨分片事务”提案。根据文章,第二阶段的主要要求之一是能够在分片之间快速移动ETH。V神补充说,虽然通过接收机制通常可以实现跨分片事务,但是跨分片ETH需要更多的协议活动。[2019/10/30]

状态到期建立了一种混合状态机制:共识节点需要存储最近访问或修改的状态,但可以使用基于见证的无状态客户端方法来验证较旧的状态。也就是说,可以维护一个“归档节点”,它甚至可以存储历史状态树,或者是一个完全无状态的节点,它使用见证人来验证甚至最近的状态。然而,gas成本结构和默认网络格式是围绕节点存储最新的两个状态树的假设构建的。

路线图

这种转换路线图分阶段实施。这些阶段包括:

周期1硬分叉:我们从周期1开始实施一个硬分叉。在此分叉之后,将有两个状态树:十六进制Patricia树和一个新的Verkle树原始EIP:https://notes.ethereum.org/@vbuterin/verkle_tree_eip

地址周期扩展:地址从20字节扩展到32字节,新的地址格式包括“地址周期”的概念。这允许新合约在不需要提供见证人的情况下填充新的存储槽。这可以在最终状态到期转换之前、周期1硬分叉之前或之后的任何时候完成。VB的提议:https://ethereum-magicians.org/t/increasing-address-size-from-20-to-32-bytes/5485

Ipsilon团队提案:https://notes.ethereum.org/@ipsilon/address-space-extension-exploration

周期2硬分叉:我们实施了开始周期2的硬分叉,并安排了未来阶段的开始。周期0十六进制Patricia树被替换为Verkle树,并且客户端只存储根,因此周期0树中的状态现在需要见证人来证明。在此之后,状态到期计划已全面实施。原始EIP:https://notes.ethereum.org/@vbuterin/state_expiry_eip

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

地球链

[0:46ms0-0:918ms