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

我的网站

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

状态保质期是解决以太坊状态问题的重要方案,过期状态如何复活?(2)

时间:2021-08-23 13:47来源:未知 作者:admin 点击:
(点击 此处,查看 Ipsilon 的完整分析。) 免扩展的 PWA Vitalik 的文章 太长不看:找到一个未使用过的 4 个字节的前缀,并禁止在旧规则下使用该前缀创建

(点击 此处,查看 Ipsilon 的完整分析。)

免扩展的 PWA

  • Vitalik 的文章

太长不看:找到一个未使用过的 4 个字节的前缀,并禁止在旧规则下使用该前缀创建新的合约 / 地址。旧合约在传统模式下执行,只可根据旧规则创建新的地址。新类型的合约在 PWA 模式下执行,只可创建新的合约(其中,开头 4 个字节是预先选好的前缀,第 5 - 6 个字节代表当前时段,第 7- 20 个字节照例代表地址。)

  • 新的状态无需证明即可初始化。

  • 对 EVM 的修改相对较少。

  • 不需要转换表,用户只需要考虑一种地址。

  • 不会破坏现有工具(不过它们显示的可能是异或地址(xor'd address)而非原像?)

  • 发生地址冲突的概率较高,不再有反事实合约。

  • 不是一个很有吸引力的解决方案,可能会让地址扩展变得越来越难。

周期元数据

状态树元数据

这个想法应该还没有被正式定义(就算有也只是在 @adietrichs 的脑中),但它的大体思路是在状态树中的账户对象处增加一个新的字段来表示创建时间。这样可以解决因除外证明而导致新的存储项初始化成本过高的问题(尤其是在假设合约是为了在每个周期部署新的子合约而编写的情况下),但是不会改善为创建新账户而创建新账户的问题。

  • 如果是新合约,无需证明即可初始化新的存储项。

  • 非常简单。

  • 可扩展以保存其它元数据。

  • 不会因为外部映射而导致状态无限增长。

  • 不会破环现有工具。

  • 逃避了地址冲突问题。

  • 创建新账户的成本很高,需要除外证明来表明该账户自周期 0 以来就不存在。

外部时段注册表

这个想法也没有被正式定义,大体思路是引入一个新的注册表树来存储状态保质期的元数据。这个注册表不会过期,并且会存储合约的创建时段。另外,它还可以存储其它信息,如存储项的总数量。只要有效存储量等于合约的总存储量,合约时段就可以升级成当前时段。类似方案也可以应用于 EWA 提案,但是需要修改状态树。

  • 新的状态无需证明即可初始化。

  • 可扩展以保存其它元数据。

  • 不需要转换表,用户只需要考虑一种地址。

  • 不会破坏现有工具。

  • 新的状态树结构。

  • 无限增长(与使用中的地址数量呈线性关系)。

  • 逃避了地址冲突问题。 (责任编辑:admin)

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