IoTeX メインネット v1.8 リリース発表

IoTeX Mainnet v1.8 Release Announcement

IoTeXプロトコルのバージョン1.7のリリースから2ヶ月後、開発者のコアチームは新しいバージョン1.8をリリースしました。このリリースは現在のプロトコルの「ハードフォーク」を表しています。ブロック 17,662,681(おおよそ、2022年5月30日UTC 11時)で活性化され、すべてのブロックプロデューサーとディリゲートはノードソフトウェアを最新の公式リリース v1.8.0 にアップグレードする必要があります。フルノードのインストール手順はこちらにあります。

このリリースにおける新機能の詳細な内訳は以下の通りです。

MetamaskからのIoTeXステーキング

最も重要な機能から始めましょう:すべてのEthereumウォレットおよびソフトウェアライブラリからIoTeXステーキングにアクセスする能力。主要な目標であり、コア開発者による数ヶ月の開発と正確なテストが必要であったが、Ethereum互換性を完成させる上で絶対に必要でした。これにより、IoTeXのカスタムステーキングトランザクションをEthereumクライアントに公開しました。

しかし、これは何を意味するのでしょうか?これを理解するためには、IoTeXのステーキングアクション(ステークの作成、委任ノードの選択、預金の移転など)がブロックチェーンのネイティブプロトコルの一部として実装されたカスタムトランザクションであり、いくつかの人が考えるようなスマートコントラクトではないことを知ることが重要です。この選択は、IoTeXステーキングに大きなスケーラビリティを提供しており、ステーキング預金の数十万を簡単に処理できます。また、非常にコスト効率が高いです。各ステーキングアクションは高価なスマートコントラクト呼び出しの実行を伴わず、単にネイティブトランザクションを送信するだけで、これは単純なIOTXトークン転送トランザクションとまったく同じ0.01 IOTXのコストしかかかりません。一方で、これらの特定の「ステーキングトランザクション」はEthereumプロトコルの一部ではありません。彼らはEthereumクライアントには知られていません。この理由から、これまではMetamaskやTrust WalletのようなEthereumウォレットを使用してIoTeXステーキングと対話することはできず、ioPay、すなわちIoTeXブロックチェーンのネイティブウォレットを介してのみ行うことができました。

では、これはどのように機能するのでしょうか?実装の詳細は単純ではありませんが、高レベルでは解決策は簡単です。このアップデートにより、IoTeXブロックチェーンには今や特別な「受取アドレス」(0x04C22AfaE6a03438b8FED74cb1Cf441168DF3F12)がハードコーディングされ、プロトコルによって制御されるようになりました。これにより、任意のEthereumクライアントが、ステーキングアクションデータがトランザクションのペイロードにエンコードされている通常のIOTX転送トランザクションを用いて、ステーキングトランザクションを送信できるようになります。内部的には、IoTeXプロトコルはこの特別なアドレスへのすべてのトランザクションを傍受し、ペイロードからステーキングアクションをデコードし、アクションを実行するためにネイティブステーキングトランザクションに変換します。

この新機能に関するすべての詳細は、IIP-12の改善提案で見つけることができます。

バグ修正とその他

リリースv1.8.0には、いくつかの追加修正が含まれています:

  1. v1.7.1にアップグレードした後に一部のディリゲートから時折報告されるMainnetにフルノードが参加できない問題を解決するために、p2pネットワーク接続の堅牢性を改善しました。
  2. サービスの起動とシャットダウンをより良く管理するために、chainserviceビルダーを導入しました。
  3. APIモジュールのための複数のコードリファクタリングと改善。

詳細な情報は、公式リポジトリのGitHubで確認できます:https://github.com/iotexproject/iotex-core