RenVMの分散化への道
これを書いている時点では、RenVMはチェーン間で$ 3億5000万以上の金額が移動し、合計で1億1000万ドル以上の資産をロックしています。 これは大きな成果ですが、RenVMのセキュリティと分散化に向けた進捗状況を理解することは、ますます重要になってきます。
- 当初から、RenVMは段階的にリリースされ、集中管理型から分散型へと徐々に移行する計画でした。 これは、1月にa16zによって公開された記事に準じるものであり、RenVMが新しい技術であるにもかかわらず、可能な限り安全性を維持できるようにするためのものです。
- このブログ記事では、RenVMが進むさまざまなフェーズの概要と、開始フェーズのより詳細な内容を確認することができます。
- こちらの記事では、それぞれのフェーズについて記述しています。 ここでは、各フェーズで何をするか、これが中央集権と分散化、およびセキュリティにとって何を意味するかについて、さらに詳しい情報を読むことができます。
ドキュメント
2019年9月| 初回リリース計画:https://medium.com/renproject/renvm-mainnet-release-plan-761f1c2c0752
2020年3月| フェーズサブゼロのより詳細なリリース計画:https://medium.com/renproject/the-road-to-release-25d3feba56b2
2020年7月| 集中型から分散型に移行する際のRenVMの3つのリリースフェーズの詳細:https://renproject.jp/phase/
現在の状況
RenVMが完全な分権化への道のりにおいて、今日どういう状況かについてお伝えしたいと思います。リリース計画とwikiドキュメントに従って、RenVMは2020年5月27日午前11:00 GMTにフェーズサブゼロがリリースされました。フェーズサブゼロでは、コンセンサスと実行を担当するノードのグループは1つだけです。このグループをグレイコアと呼びます。
現在、RenVMはフェーズゼロの初期段階にあり、グレイコアはRenチームによって運営されています。フェーズサブゼロの過程で、チームが実装の正確性に確信を持った段階で、他のメンバーがグレイコアに招待されます。これには、Polychain、Infinite Capital、Curve Financeなどのグループが含まれます。
一般的に、このwikiは、静的なホワイトペーパー/イエローペーパーに変わる動的な基礎文書を目指しています。これは最終段階になるまで、RenVMの最新の設計をアップデートし続ける場所になります。これは、レンの設計を理解し、批評し、改善できるようにするためです。 Wikiの段階的なセクションでは、RenVMが成熟するにつれて、この設計のどの部分を有効/無効にするかについて説明していきます。これにより、すべての警告を1か所にまとめて、簡単に解消していくことができるようにします。
安全性と分散
2020年1月、a16zは、分権化に関してプロジェクトが直面する課題と、これらの課題を克服するために実行できることについて書きました。核心は取り置いておけ:分散化して始めるなと。中央管理のレベルから始めて、必要に応じてゆっくりと分権化に進めと。詳しくはこちらを読んでください。
この考え方に従い、RenVMはそれが証明され、コミュニティが新しいトランザクションフローとベストプラクティスに慣れるに従って、集権状態から分散化に進むことで、RenVMのユーザーをできるだけ安全に保つことができます。
- 問題が見つかった場合、Renチームは迅速に修正を調整して、資産がリスクにさらされないようにすることができます。ネットワークが完全に分散化されている場合、これは困難です(場合によっては不可能です)。すべてのソフトウェアにおいてバグがありえますから、これは重要です。 RenVMは複数の監査を受けていますが、監査ですべての問題を把握することはできません。
- ユーザー/開発者がRenVMの使用時にミスを犯した場合、Renチームは、誤った誤用によって失われた資産の回収を支援できます。誰もが、その複雑で分散化された性質のために、ブロックチェーン空間で資産を失ったという話を知っています。 RenVMは新しいネットワークであり、ユーザー/開発者向けの独自の学習曲線を経験していくことになります。チームはすでに、この方法でユーザーと開発者の両方に資産を回収するのを支援することができる状態です。初めにある程度の制御がなければ、これは不可能です。
プロジェクトを立ち上げ、すぐに完全に分散化しようと試み、その後、見逃されたセキュリティ問題のためにシャットダウンしなければならない例が数多く見られます。 YAMは最近の例で、tBTCは少し前の事例です。これらのプロジェクトは両方とも、最初から可能な限り分散化することを試みました。 YAMはバグから回復できず、tBTCはすぐにシャットダウンし、次のイテレーションで集権的な緊急停止を実装しました。これらのプロジェクトで見つかったバグがそれほど深刻でなかったことは、信じられないほど幸運です。それらがあった場合、より多くの資金が失われた可能性があり、それぞれのチームが問題に対応したり、問題を修正したりすることができません。分散化は必ずしも資産が安全であることを意味するわけではありません。これは重要であり、セキュリティを向上させることができますが、基礎となるテクノロジが十分に耐久テストされている場合に限ります。それまでは、コミュニティが迅速かつ調整された方法でバグを修正することが困難になるため、セキュリティが低下します。
それどころか、私たちは多くのリスク回避の手順を踏んだプロジェクトも見てきました。Compoundは最近の例で、集中管理から始まり、プロトコルの準備が整ったときに分散化されました。これらのプロジェクトは、プラットフォームの初期段階で一定のレベルの統制を維持し、技術が実際に実証された後に分散化を拡大しています。
MPCを用いる
相互運用プロトコルは、多くの場合、資産をアドレス(1つ以上のキーで使用可能)にロックし、他のチェーンにおいてそれらのロックされた資産をトークン化することによって機能します。 RenVMでは、これらのアドレスはゲートウェイアドレスと呼ばれ、シャードごとに1つあります。資金をゲートウェイアドレスから使用するには、2つの署名が必要です。1つはシャード自体から、もう1つはグレイコアからです。シャードとグレイコアは、MPCアルゴリズムを使用してそれぞれのキーを生成および管理し、単一のノードがキーにアクセスできないようにします。
ただし、RenVMはフェーズサブゼロの初期段階にあるため、現在のところシャードはありません。つまり、ゲートウェイアドレスは1つしかなく、グレイコアはそのアドレスで必要な唯一の署名者です(グレイコアは引き続きMPCアルゴリズムを使用しています)。これは、ゲートウェイアドレスを定期的に変更する必要がないことも意味します。ゲートウェイアドレスの変更は、グレイコア(またはシャード)のメンバーが変更された場合にのみ必要です。したがって、グレイコアのメンバーが変更されるか、シャードが有効にされない限り、アドレスは変更されません。
注:MPCアルゴリズムを実行するノードが変更されていない場合、アドレスを変更しても影響がないため、これはセキュリティに悪影響を及ぼしません。
フェーズサブゼロの過程で、新しいメンバーがグレイコアに追加されます。これが発生するたびに、基盤となるゲートウェイアドレスが変更されます。さらに、フェーズゼロでシャードが有効になると、複数のゲートウェイアドレス(シャードごとに1つ)が定期的にローテーションします(シャードがシャッフルされるたびに)。
詳細については、リリースブログとドキュメントをご覧ください。
初回リリース計画:https://medium.com/renproject/renvm-mainnet-release-plan-761f1c2c0752
フェーズサブゼロの詳細なリリース計画:https://medium.com/renproject/the-road-to-release-25d3feba56b2
グレイコア情報:https://github.com/renproject/ren/wiki/Greycore
シャード情報:https://github.com/renproject/ren/wiki/Shards
フェーズ情報:https://github.com/renproject/ren/wiki/Phases
セキュリティの実行
現在、RenチームはGreycoreのすべてのノードを実行していますが、フェーズ0の過程でこれが変更され、新しいメンバーが加わります。 ただし、当面は、これらのノードがどのように保護されているかを理解することが重要です。
- グレイコアには13xのノードがあります。
- すべてのノードは、地理的にランダムに選択された世界中の場所にあります。 これらのノードは、AWSとDigital Oceanの両方で3つの異なるアカウントで実行されています。
- すべてのノードはMPCアルゴリズムを使用して、ロックされた資産を生成および保護します。 つまり、どのノードも資産をロックする秘密鍵にアクセスできません。
- すべてのノードは、自動アラートシステムによって監視されます。 ノードがなんらかの理由で実行を停止した場合、チームは(時間に関係なく)すぐに警告を受けます。
- すべてのノードには、異なるアクセスキーを使用してアクセスし、ルートアカウントを無効にします。グレイコアを危険にさらすのに十分なノードに、チームメンバーがアクセスすることはできません。
もちろん、フェーズサブゼロ以降に進むまでは、Renチームは内部で共謀することができます。 チームには、そうしないようにする明確かつ強力なインセンティブがあります。私たちは何年ものハードワークと評判を捨て、法的に追求され、必然的にブラックリストに登録された資産を使う方法はなくなり、 RenVMを最終的な自律型設計に成功させることで将来獲得できるすべての価値を失うことになります。。 チームは一時的にRenVMの制御を維持していますが、ネットワークの初期の段階では、これを最大限に安全に保つために必要なステップであると考えています。
この記事がRenVM、リリースフェーズの進捗状況、およびチームのセキュリティプラクティスについての理解促進のお役に立つことを願っています。 誰よりも、一歩下がってコミュニティ全体がネットワークを所有できるようになればと思っています。 これまでもそうであったように、RenVMを改善し、ユーザーを可能な限り安全に保つために、分権化を前進させるものにする計画です。 毎週、より多くのコードをオープンソース化し、ドキュメントを改善し、適用が進んでいることを確認できます。