以太坊Metropolis硬分叉:三大值得期待的变化
许多人都对即将到来的以太坊Metropolis硬分叉充满期待。与任何重大开发更新一样,Metropolis将带来诸多变化和新特性。从社区反馈来看,其中一些新特性尤为令人兴奋。以下是Metropolis发布时许多人期待的三大变化。
开发者视角下的新特性
从开发者的角度来看,Metropolis将带来一些有趣的变化。开发者可能需要注意的两个操作码是REVERT和新的RETURNDATA*选项。具体来说,通过使用新的RETURNDATA*操作码,开发者可以让智能合约返回可变大小的值。虽然之前通过变通方法已经可以实现这一点,但远非便利之举。
此外,合约也将从REVERT操作码中受益匪浅。这一特性允许合约回滚和失败,但不会耗尽所有gas。结合RETURNDATA*选项,开发者终于可以妥善处理异常。此外,合约还会“解释”失败的原因。“gas耗尽”代码并不提供详细信息,预计会有更详细的响应。
账户抽象化
如果不使用技术术语,很难解释账户抽象化。账户抽象化允许用户以智能合约的形式“定义”他们拥有私钥的钱包地址。对于许多非开发者来说,这听起来可能并不特别令人兴奋,但使用这一新特性确实有一些好处。特别是那些非常重视账户安全的用户可能会想了解这一变化。
具体来说,这一变化意味着用于控制外部账户的私钥将不易受到量子计算机对当前使用的签名方案发起的攻击。用户可以从其他安全方案中受益,例如哈希梯。除了安全变化外,账户抽象化还允许合约支付gas。后者需要一段时间才能被网络正确使用,因为目前没有客户端标准支持这一概念。
交易隐私增强
虽然这一变化已经酝酿了相当长的时间,但以太坊将获得更多的交易隐私特性。在第一阶段,Metropolis硬分叉将引入zk-SNARKS的构建模块,这是在正确方向上迈出的重要一步。具体来说,硬分叉将为该技术提供密码学原语,尽管这并不意味着从第一天起就能实现完全的交易隐私。
尽管如此,引入零知识SNARKS的构建模块是以太坊的一大步。它将允许更好的隐私,甚至在需要时实现匿名性。有人可能会认为以太坊很快将具备类似ZCash的交易功能,尽管这些变化需要一些时间才能向整个社区提供。显然,这对非开发者来说是最具吸引力的变化。