织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 竞争币 > 以太坊

以太坊状态规模日益恶化,Vitalik 系统性梳理了可能的解决方案(7)

时间:2021-02-18 08:49来源:未知 作者:admin 点击:
访问近期状态的 Gas 开销也需要进一步提高 包含了见证消息的区块大小上限可能非常之大,如果一个区块里满是访问老旧状态的事务的话(大概是 800 byt

  1. 访问近期状态的 Gas 开销也需要进一步提高

  2. 包含了见证消息的区块大小上限可能非常之大,如果一个区块里满是访问老旧状态的事务的话(大概是 800 bytes * 12.5 m gas / 2400 gas per access ~= 4.1 MB,已假设实行了 EIP-2929,转成了二进制树)

如果我们想避免这些不利因素,就需要在共识中跟踪哪些状态对象(包括尚未填满的地址空间区域)是活跃状态,这又会让我们回到接近于状态过期方案的属性。这再一次地说明了,「无状态性 vs. 状态过期(状态租金)」 是一条光谱,是一个复杂的权衡空间,而不是一个非此即彼的选择。

Rollup 也需要,也可以,使用同样的解决方案

以太坊的一种重要的中期可扩展性解决方案是 rollups。不过,rollup 本身并非不再需要担忧状态数据规模问题;实际上,rollup 系统的状态规模问题,与以太坊链本身的,性质完全相同。

幸运的是,如果我们能推出一种解决方案,则至少 EVM rollup (尝试最大程度复制以太坊运行环境的 rollup 方案)能够使用同样的解决方案,来解决其内部状态的规模问题。因此,状态规模管理方案,与 rollup 和 分片等可扩展性方案是互补的(state size management is complementary to rollups, sharding and other scaling strategies)。

(译者注:个人认为此处的「互补」一词有严重误导性。)

结论

状态规模是一个日益恶化的问题,而状态规模的解决方案也能为大幅提高区块 Gas 上限铺平道路。我们应该对某种形式的状态过期方案达成共识并加以实现。不过,不同的解决方案之间存在重大技术权衡,尤其如果我们还想要保持当前设计的一些重要属性的话。

一些我们可能需要牺牲的属性包括:

  • 用户可以离线生成账户并以该地址接收资金、并且在使该地址在链上显明之前可以静默任意时长的属性

  • 地址保持 20 字节的长度(rolling state expansion 方案需要更大的地址空间,虽然地址的长度可能本来就需要为抗碰撞的缘故很快改变)

  • 状态可以被视为「纯粹的」键值对存储的属性,以及无需在状态树上每个节点内存储元数据的属性

  • 现有的应用需要程度不等的重写,以保证用户无需存储全部失活状态就能生成见证数据

  • Gas 消耗量;或者创建新合约、写入新存储槽的难度

我们如果已经准备好作出牺牲,有些方案可以很快开始着手实现。另一方面,也许假以时日,我们能修补或者更好地汇总这些观念,减少问题,尤其是使它们在技术上更容易实现(例如,允许使用「纯粹的」键值对存储)。我们应该更深入地理解我们 更愿意 / 更不愿意 接受哪些方面的牺牲,并继续积极研究改进提案。 (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容