2020年8月は、RenVMにとって大きなマイルストーンとなりました。秘密計算技術(Secure Multiparty Computation、以下MPC)の初期版をオープンソース化しました。 これらの新しいコードベースは、他のリポジトリから抽出および改善されており、secp256k1ライブラリShamirの秘密共有ライブラリ、ECDSA秘密鍵を生成して署名を生成するために必要なすべてのアルゴリズムを実装するMPCライブラリ、およびこれらのアルゴリズムをできるだけ簡単に要約したMPCのwikiが含まれています 。

Trail of BitsによるMPC監査

Trail of Bits(米国セキュリティ企業)チームと共同でまとめた新しい監査レポートを見ることができます。 Trail of Bitsとともに、上記の3つのライブラリすべての監査を実施しました。想定される動きに対応するドキュメント/ガイドラインとして、RZLMPCペーパーとMPC wikiを用いて実施しました。 

コードの成熟度の評価(監査から直接引用):

  • 演算:
    「中程度。 演算に関するさまざまな調査結果を報告しました。 ただし、これらは主に改善を表しており、現在悪用可能な問題ではありません。」
  • 機能構成:
    「満足のいく内容です。 私たちは、コードを改善できるいくつかの方法(付録C)に言及しましたが、それ以外の点では、コードが単純であることがわかりました。」
  • キー管理:
    “強い。 鍵管理に関連する問題は報告されていません。」
  • 仕様:
    「満足です。 提供されたドキュメントはかなり徹底していました。 読みやすさを向上させるために、MPCにコメントを追加することができます。」
  • テストと検証:
    「満足です。 コードベース全体で強力なテストが行われていることがわかりました。Renが完全なテストカバレッジを完了することをお勧めします。」

これらのライブラリーの評価におけるハードワーク、専門知識、および勤勉さについて、Trail of Bitsに多大な感謝を表明したいと思います。 私たちのチームは結果を非常に誇りに思っており、報告されたすべての問題に対する修正をすでに準備しています。 これにより、RenVMのセキュリティに対する信頼性が高まりますが、監査では必ずしもすべてのバグが検出されるわけではなく、RenVMはまだ非常に新しいテクノロジーであることをコミュニティに伝えておく必要があります。

関連するコードベースをオープンソースにすることは、RenVM実装全体を段階的にオープンソース化するという幅広い取り組みの一環として行われています。 これらの手順を実行することで、コミュニティは実装の重要な部分を確認/検証し、責任を持って脆弱性を発見/報告する機会が得られると信じています。同時に、RenVMを過度のリスクやインセンティブにさらすことなく、公開によって脆弱性の解消を図ります。

また、先月は次の事項にも取り組んできました。

マルチチェーン

マルチチェーンに関しては、新しいブロックチェーン用の複数の新しいPRがあります。 他のプロジェクトからこの統合APIへの接続が増えているのは素晴らしいことです。マルチチェーンAPIは今月、以前の他のコミュニティからのPRからのフィードバックに基づいて改良され、よりクリーンで、理解しやすく、使いやすくなりました。

また、マルチチェーンを新しいステージング環境に展開し、これらの新しいネットワークに対してRenVMの次のメジャーリリースのテストを開始できるようにしました。 この次のリリースでは、Acala、Binance Smart Chain、DigiByte、Dogecoin、Filecoin、Solana、Terraのサポートが含まれる予定です(ただし、テストの方法によっては、これらのチェーンのすべてが次のリリースに組み込まれるとは限りません)。

トランザクションエンジン

新しいチェーンでは、チェーン間のすべてのニュアンスの違いに対処できる新しい実行モデルが登場します。 マルチチェーンの大部分、およびRenVMに関する最近の開発は、これらのニュアンスの違いを抽象化してきました。今月、私たちはこの作業を継続し、新しいチェーンを簡単にサポートできるようにトランザクションエンジンにいくつかの改善を加えました。つまり、チェーンがアカウントベースかUTXOベースかを把握する必要があります。私たちはこれらの変更のテストと改良を続けています。

ハイパードライブ

ハイパードライブの最新バージョンには、多くの簡略化と改善が含まれており、次の監査のラウンドででほぼ終わります。 今月、チームはハイパードライブをRenVMの次のバージョンに統合するさまざまな方法の実験を開始しました。この実験は、ノードが長期間オフラインになっているときにブロックとトランザクションを同期する方法を中心に行いました。
ハイパードライブの最新バージョンを使用して構築された実験上のブロックチェーンを構築して行いました。これは、HyperDriveの使用方法の例として役立つだけでなく、RenVM自体に取り込む前にアイデアをテストする場所としても役立ちます。

引き続き、開発チームはRenVMを次の段階に移行させるための技術的な課題に懸命に取り組んでいます。 私たちはこのエコシステムに相互運用性をもたらすために一生懸命取り組んでいますが、批評に対してオープンであり、私たちのコミュニティにとって新しいものに耐え、親切にすることを忘れずに行きたいと思います。これは技術の話だけではありませんね!

さあ、行こうか
— Loong, CTO