IoTeX 主网 v1.8 发布公告

IoTeX Mainnet v1.8 Release Announcement

在 IoTeX 协议版本 1.7 发布两个月后,核心开发团队刚刚发布了新版本 1.8。此次发布代表了当前协议的 "硬分叉"。它将在区块 17,662,681(预计于 2022 年 5 月 30 日 UTC 11 点)激活,所有块生产者和代表应将节点软件升级至最新官方发布的 v1.8.0。完整节点安装说明可以在 这里 找到。

以下是此次发布的新功能的详细介绍。

通过 Metamask 进行 IoTeX 质押

让我们从最重要的功能开始:能够通过所有 以太坊钱包和软件库 访问 IoTeX 质押。这是一个重要目标,经过核心开发人员几个月的开发和准确测试,但对于通过向以太坊客户端暴露 IoTeX 自定义质押交易以完成以太坊兼容性是绝对必要的。

那么这到底是怎么回事呢?要理解这一点,需要知道 IoTeX 的质押行为,从创建质押,到选择委托节点,再到转移存款,都是作为区块链本地协议的一部分的自定义交易 实现的,而不像某些人认为的那样是智能合约。这个选择为 IoTeX 质押提供了良好的可扩展性,可以轻松处理数十万的质押存款。它也是极具成本效益的。每个质押行为不涉及执行昂贵的智能合约调用,而只是发送一个本地交易,其成本仅为 0.01 IOTX,正如简单的 IOTX 代币转移交易。一方面,这些特定类型的 "质押交易" 不属于以太坊协议。它们对以太坊客户端不可用。因此,直到现在,使用像 Metamask 或 Trust Wallet 这样的以太坊钱包与 IoTeX 质押交互是不可能的,只能通过 ioPay,即 IoTeX 区块链的本地钱包。

那么,这如何工作呢?尽管实施细节并不简单,但从高层来看,解决方案是简单的。通过此次更新,IoTeX 区块链现在拥有一个特殊的 "接收地址"(0x04C22AfaE6a03438b8FED74cb1Cf441168DF3F12),该地址是硬编码并由协议控制。它允许任何以太坊客户端通过正常的 IOTX 转账交易发送质押交易,其中质押行为数据编码在交易的有效负载中。内部,IoTeX 协议会拦截所有发送到这个特殊地址的交易,解码有效负载中的质押行为,并将其转换为本地质押交易以执行该行为。

关于这一新功能的所有细节可以在 IIP-12 改进提案中找到。

错误修复及更多

版本 v1.8.0 包含若干其他修复:

  1. 改善了 p2p 网络连接的健壮性,以解决部分代表在升级到 v1.7.1 后无法加入主网的问题
  2. 引入链服务构建器,以更好地管理服务的启动和关闭
  3. 对 API 模块进行多个代码重构和改进

您可以在 GitHub 的官方代码库中找到更详细的信息: https://github.com/iotexproject/iotex-core