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

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

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

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

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

V神发布旨在解决“大区块链”中心化和信任问题的路线图:12月6日,以太坊创始人V神(Vitalik Buterin)发布文章《Endgame(最后阶段)》。考虑到一般的“大区块链”,即非常高的区块频率、非常大的区块规模、每秒数千笔交易,但也高度中心化的区块链,V神称,至少按照其标准,如何才能使这样的链可接受的无需信任和抗审查?文章提出了一个合理的路线图:1.添加第二层质押,以进行分布式区块验证;2.引入欺诈证明或ZK-SNARK,让用户直接(且低成本地)检查区块有效性;3.引入数据可用性采样,让用户检查区块可用性;4.添加二级交易渠道以防止审查。对于以太坊Rollup的未来,V神表示,没有任何一个Rollup能成功地与大多数以太坊活动保持一致。相反,它们都以每秒几百笔交易的速度达到极限。我们得到一个以太坊的多Rollup的未来,即Cosmos的多链愿景,但是在一个提供数据可用性和共享安全性的基础层之上,用户可以依靠跨Rollup桥接在不同Rollup之间切换,而不需要支付主链上的高额费用。这一切可能需要数年时间才能实现。人们需要数年的改进和审计才能完全放心地将其资产存储在运行完整EVM的ZK-Rollup中,跨域MEV研究也仍处于起步阶段。但是,可扩展区块链的现实而光明的未来可能会出现,这一点看起来越来越清晰。[2021/12/7 12:55:20]

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

V神发文探讨以低于市场出清价格销售以实现公平的替代方案:金色财经报道,8月22日,以太坊创始人V神发布关于《以低于市场出清价格出售以实现公平(或社区情绪或乐趣)的替代方案》的文章,V神表示,区块链为我们提供了一个独特的机会来重置社会规范。几十年来经济学家大喊“效率”失败的情况下,优步将激增定价合法化;当然,区块链也可以成为使机制设计的新用途合法化的机会,与其摆弄以市场价格与低于市场价格出售的粗粒度一维策略空间(也许还有拍卖与固定价格出售的第二个维度),我们可以使用更先进的工具来创建一种更直接地解决问题、副作用更少的方法,在所有这些情况下,解决方案的核心很简单:如果你想对人可靠公平,那么你的机制应该有一些明确衡量人的输入。人格证明协议可以做到这一点(如果需要,可以结合零知识证明来确保隐私)。因此,我们应该将市场定价和拍卖定价的效率收益,以及人格机制证明的平等收益,结合起来。[2021/8/22 22:29:12]

无状态客户端概念,最初的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神发5篇博文谈以太坊2.0未来将遇到的难题:据Coindesk文章报道,在以太坊Devcon大会期间,V神笔耕不辍,连发5篇博客文章,谈论以太坊2.0未来将遇到的难题。现整理如下:

1.在短期内(指如果ETH2.0发布),将ETH从以太坊2.0转移到以太坊1.0仍然存在这个可能。以太坊2.0开发人员Preston Van Loon表示,在ETH 2.0和 ETH 1.0之间创建双向桥的复杂性给两个链带来了“安全风险”。Buterin提出了两种可能的方法来在两个区块链之间建立“桥梁”。他承认,“如果以太坊2.0遭到破坏,这两项建议都需要在以太坊1.0方面采取紧急补救措施。”为了降低此类风险,Buterin建议在投票期间启用“人为干预”,以逆转从以太坊1.0网络进行的迁移。目前这仍然是项建议,研究人员还没在 ETH 2.0中设计迁移“桥梁”。

2.在ETH2.0和ETH1.0完全合并之前,以太坊2.0可能会与ETH1.0并行使用多年。区块链研究员Mihailo Bjelic表示,在开发人员确定其可靠性之前,以太坊2.0这样的复杂系统不应取代当前的以太坊主网。V神在博客文章中称,希望这种过渡是平稳的。

3.调用有关以太坊2.0区块链的数据将比以前更加昂贵。V神针对这些问题,在博客文章中建议开发人员可以在编写验证器时控制其规模等。

4.以太坊将失去原子交易的能力。ETH 2.0将破坏以太坊上原子交易能力,即一次完成所有交易(交易拆会在不同分片间完成)。V神认为,不同应用之间可以具备更强交互能力,但也会使一些活动受阻,使得更难吸引加密货币交易者。

5.V神在博客文章中提出ETH 2.0 在发布时分片数量会降低,先前为1024个分片,现在提出的为64个分片,主要好处是以太坊2.0的分片之间可以通信更快,更简单。[2019/10/25]

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

动态 | V神发表区块链方向开发应该集中在第一层还是第二层功能的看法:据AMBCrypto消息,对于区块链的开发应该集中在第一层还是第二层功能上的争议,V神发表了自己折中的意见。考虑到区块链的发展对未来的影响,V神说道:“我真的认为区块链将变得越来越成熟。第一层将变得更稳定,第二层将承担越来越多不断出现的发明和改变的重担。”[2018/8/29]

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

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

保持两个关键原则:

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

状态到期建立了一种混合状态机制:共识节点需要存储最近访问或修改的状态,但可以使用基于见证的无状态客户端方法来验证较旧的状态。也就是说,可以维护一个“归档节点”,它甚至可以存储历史状态树,或者是一个完全无状态的节点,它使用见证人来验证甚至最近的状态。然而,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:15ms0-7:995ms