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

我的网站

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

以太坊 EVM 的这些功能值得考虑删除(4)

时间:2021-03-11 08:45来源:未知 作者:admin 点击:
它加剧了区块大小的波动,使一个区块实际上的理论最大 gas 消耗量几乎是字面意义上区块 Gas 上限的两倍。这并不致命,但仍然不可取,特别是考虑到,

  • 它加剧了区块大小的波动,使一个区块实际上的理论最大 gas 消耗量几乎是字面意义上区块 Gas 上限的两倍。这并不致命,但仍然不可取,特别是考虑到,在 EIP-1559 实施后,退款机制可以使网络的实际 Gas 使用量长期维持高水平,阻碍 1559 机制的运行。

  • 如何移除?

    只要把退款功能从协议中完全删除。

    移除有何副作用?

    • 我们可以相当确信,没有任何应用会因此无法使用,因为退款只在执行结束后触发,所以取消退款并不会改变任何执行的可用 gas 数量。

    • GasToken 将变得毫无用处

    • 在 gas 价格反常时,应用失去了降低费用的能力。好在这个功能目前最主要的用户是 defi 的套利机器人,而套利机器人之间的 gas 价格竞争是一种零和活动,不过还不清楚移除这个它们用于竞争的武器会造成什么全局性的不利影响。

    如何消除顾虑?

    • Gastoken 在他们的网站上已经警告过,未来的协议变更可能会使 GasToken 无效,所以用户不会觉得惊讶

    • 我们可以提前公布变更时间

    其他候选功能(推测)

    相比上面列举的,我对移除以下功能会带来多少价值缺乏信心,不过还是值得列出一个清单。

    RIPEMD160 预编译:这是一个非标准的哈希函数,很少有项目使用(除了与比特币交互的应用)。我们可以用链上部署的合约进行替换,对于真正需要高效验证的项目,可以直接使用 ZK-SNARK。

    动态跳转:使用变量作为跳转目标会使代码的分析和操作变得更加困难(例如,无法简单地替换操作码序列,或者预置一些代码)。去掉动态跳转,只允许相对偏移的静态跳转,并且为子程序提供一些专用的指针方案(指针不作为整型暴露)可以解决这个问题。然而,这将是一个底层的改变,可能会破坏许多自定义的合约,所以其收益 / 成本比似乎不如这个列表中的其他项目。

    MODEXP 预编译:对于大整数计算来说,这显然是一个错误的 「基本元件」,并且其 gas 消耗的计算方案也相当复杂。更好的选择是:(i) 用预编译的 ADD、MUL 和 MOD 作为替代的基本原语,并用这些预编译的指令编写用于替代 MODEXP 的实现,或者 (ii) 将 EVM384 扩展到更多的长度(256,384,512,768,1024 ... 8192)

    特别感谢 Micah Zoltu 提出的一些建议

    来源链接:hackmd.io

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