対話 Orbiter Finance:クロスチェーン攻撃事件が頻発していますが、異なるブリッジソリューションをどのように評価しますか?
出典:ETH 中文
今号のインタビュー内容は、クロスチェーンに関連する話題を中心に展開されます。クロスチェーンのセキュリティは、コミュニティの中で常に注目されており、クロスチェーン攻撃事件が頻繁に発生しているため、クロスチェーンのセキュリティに対する疑問の声も増えてきています。もちろん、異なるクロスチェーンソリューションは異なる技術を採用しているため、それぞれのセキュリティレベルも異なります。
マルチチェーンエコシステムとイーサリアムL2が徐々に成熟するにつれて、L1間およびL2間の取引の需要も高まっています。ユーザーや開発者にとって、クロスチェーンソリューションのセキュリティを評価する方法を理解することは非常に重要です。なぜなら、それは自身の資産の安全性に関わるからです。
今号の番組では、Orbiter Financeの技術チームからEricを招き、クロスチェーンとOrbiter Financeについて紹介してもらいます。Orbiter Financeは、イーサリアムのクロスロールアップに特化した分散型ブリッジソリューションであり、「事前信頼+紛争仲裁」という解決策に基づいており、イーサリアムネットワーク自体のセキュリティに依存しています。Orbiter Financeは、まもなく流動性提供メカニズムとMaker契約のテストを開始する予定です。
取り上げる話題は以下の通りです:
クロスチェーン攻撃事件およびその根本的なセキュリティ制限の考察
クロスチェーンの基本原理および異なるクロスチェーンの種類
Orbiter Financeの実装方法とプロジェクト紹介
Orbiter Financeの仲裁メカニズムはどのようにユーザーの資産の安全を守るのか?
Maker流動性提供契約の紹介とオープンプラン
データサービスL2データの紹介
クロスチェーンエコシステムの未来展望
なぜクロスチェーンには根本的なセキュリティ制限があると言えるのか?
Franci:クロスチェーンについて話すと、多くの人が持つ印象は、クロスチェーンプロトコルに対するハッカー攻撃が非常に多く、盗まれる金額も非常に大きいということです。例えば、昨年のChainSwapやPoly Networkの攻撃事件、今年のMultichain、Wormhole、Ronin Network、Nomadなど、これらの攻撃事件では、損失が数百万ドル、さらには数億ドルに達しています。
また、クロスチェーン取引には逆ネットワーク効果があり、取引活動が少ないときはネットワークが非常に安全ですが、取引が増えると攻撃リスクが高まります。つまり、クロスチェーンエコシステムが繁栄すればするほど、攻撃を受けやすくなります。これは資産の多いユーザーやクロスチェーンアプリケーションにとって致命的なリスクです。なぜこうなるのでしょうか?クロスチェーンブリッジはなぜそんなに簡単にハッキングされるのでしょうか?
Vitalikは、イーサリアム財団の第7回Reddit AMAで、彼がマルチチェーンのブロックチェーンエコシステムに対して前向きな態度を持ち、クロスチェーンアプリケーションに対して消極的な態度を持つ理由の一つは、ブリッジには根本的なセキュリティ制限があるからだと述べました。あなたはこの点についてどう思いますか?
Eric:実際、この例の多くは、契約内のロジックコードや検証証明の欠陥によるものですが、これらは技術の発展と成長に伴って解決されると思います。
しかし、確かにクロスチェーンプロトコルには根本的なセキュリティ制限があります。私が考えるに、それはチェーンのセキュリティです。クロスチェーンプロトコルのセキュリティ制限は、バケツ理論に合致していると思います。つまり、クロスチェーンは複数のチェーンを含むため、クロスチェーンプロトコルのセキュリティ性能の上限は、特定のチェーンのセキュリティ性能の下限によって決まります。もしあなたのクロスチェーンプロトコルに関与する特定のチェーンのセキュリティ性能が低いと、攻撃を受けやすくなります。その場合、あなたのクロスチェーンプロトコルのセキュリティ性能は保証されず、ユーザーはクロスチェーンの過程で資産を失いやすくなります。
例えば、2つの異なるチェーンがあるとします。そのうちの1つのチェーンのセキュリティ性能が低い場合、AチェーンからBチェーンに資金を移動させたり、クロスチェーンプロトコルを実行したりする際に、Bチェーンで何らかのセキュリティ問題が発生してロールバックが必要になった場合、Aチェーン上では処理できません。このような状況では、Bチェーンのセキュリティ性能のボトルネックが原因で、全体のクロスチェーンプロトコルのセキュリティが保証されなくなります。
Franci:あなたが言った話題を続けると、Vitalikはその後、この話題に基づいてさらに記事を書きました。彼は「共有セキュリティ」という概念を提唱しました。この文章を読んだ後の私の理解は、共有セキュリティエリアとは、あるチェーン(例えばチェーンA)から別のチェーン(チェーンB)に資産を使用する際に、元のチェーンのセキュリティを共有できるかどうかということです。この区分けに基づくと、cross-L1sとcross-L2sは異なる状況であり、クロスL2はクロスL1よりもはるかに安全です。なぜなら、彼らのセキュリティはロールアップのように、イーサリアムによって保証されているからです。Orbiterは実際にクロスL2のソリューションに特化しており、Vitalikが言った共有セキュリティについて、Ericはどう理解していますか?クロスL2はクロスL1よりも安全である一方で、明らかなセキュリティリスクもあるのでしょうか?
Eric:私は、クロスL2はL1のセキュリティメカニズムを共有し、L1ネットワークのセキュリティを継承しているため、明らかなセキュリティリスクはないと思います。しかし、非常に明確な欠点があります。ロールアップには退出時間の問題があります。これは通常、出金時間と呼ばれます。これはロールアップ自体の技術的特性によるもので、有効性証明には約4時間、詐欺証明には7日間が必要です。これにより、資産の流動性が大幅に制限され、ロールアップの発展が制約されます。
クロスチェーンの基本ロジック
Franci:クロスチェーンの基本ロジックは何ですか?一般的に、ユーザーはどのようにして2つの異なるチェーン間でクロスチェーン活動を実現するのでしょうか?
Eric:イーサリアムとブロックチェーンエコシステムを理解している人は、現在のブロックチェーンシステムには多くの異種のチェーンがあり、相互に関連付けることができないことを知っています。一部のチェーン間では、価値や情報を直接交換することができません。これは、ブロックチェーンの機能の発展を大きく制限します。
私たちが通常言うクロスチェーンとは、実際にはこれらの異なるブロックチェーンネットワーク間で情報を交換することを指します。また、これらの交換された情報を利用して、異なるブロックチェーン間の相互運用性や価値の移転を実現します。
ユーザーがクロスチェーンを使用する場合、基本的なロジックは次のようになります:現在、AとBの2つのチェーンがあり、ソースネットワークAチェーンからクロスチェーン情報を発信します。この情報は、信頼できる安全な方法を経て、ターゲットチェーンBチェーンに送信されます。この過程で、この情報の有効性を検証する必要があるかもしれません。つまり、このクロスチェーン情報が真実であることを保証する必要があります。そして、このメッセージがBチェーンに送信されると、Bチェーンでもこのメッセージの有効性証明などを確認する必要があります。その後、BチェーンはAチェーンのこのメッセージに基づいて何らかの処理を行います。処理が完了すると、Aチェーンで処理結果を得ることができます。これが実際のクロスチェーンの基本ロジックです。
異なるクロスチェーンの種類の紹介
Franci:あなたが先ほど言ったいくつかの点に注目しましたが、ユーザーがクロスチェーンを行う際、ターゲットチェーンはソースチェーンの取引の有効性を検証する必要があります。検証の技術選択には異なる方法があるかもしれませんが、いくつかの主流の方法を挙げて、これらの方法を通じてクロスチェーンの異なるソリューションの基本的な構造を理解できるでしょうか?
メッセージ伝達者のタイプ
Eric:クロスチェーンの基本ロジックの中で、実際には重要な役割がいくつかあります。この役割は、発信チェーン上の取引情報をターゲットネットワークに送信することです。この役割は信頼できるものでなければなりません。なぜなら、正しい取引を送信することを保証する必要があるからです。これはメッセージの伝達者に該当します。基本的に、クロスチェーンプロトコル内では、これはオフチェーンの役割です。そして、このリレイヤーは異なる実装方法を通じて、単一ノードである場合もあれば、複数ノードである場合もあり、Chainlinkのような第三者機関である場合もあります。
最も基本的なものは、完全に信頼されたリレイヤーモードです。通常のメッセージ伝達の中で、クロスチェーンプロトコル内にはリレイヤーの役割があります。この役割は、異なる方法で選別されます。投票によって選ばれる場合もあれば、資金のステーキングによって選ばれる場合もあります。そして、この役割は1つである場合もあれば、複数である場合もあります。これらの役割は、オフチェーンで発信チェーン上のクロスチェーン情報を検証し、パッケージ化します。この検証の過程は、マルチシグである場合もあれば、分散型署名の方法で安全性を保証する場合もあります。しかし、この方法には問題があります。大多数の署名メンバーが誠実である必要があります。
次に、Layer Zeroについて詳しく説明します。これは、信頼された中継者モデルに基づいて、別の役割を追加し、オラクルという役割を区別しました。オラクルは発信チェーンのブロックヘッダーの情報を提出するために使用され、リレイヤーは取引の検証証明を送信するためだけに使用されます。そして、オフチェーンでこれら2つをマッチングし、アルゴリズムを通じて証明します。
最後の一つは楽観的検証モードです。このモードにもオフチェーンのリレイヤーの役割があり、ウォッチャーとアップデーターという2つの役割があります。アップデーターは資金をステーキングする必要があり、資金をステーキングすることで発信チェーン上のクロスチェーン情報をパッケージ化する権利を持ちます。そして、リレイヤーは単にアップデーターの署名情報をターゲットチェーンに送信するだけです。さらに、ウォッチャーの役割があり、署名取引情報を監視し、アップデーターが悪事を働いた場合、ウォッチャーは迅速に反応し、他の証明方法を使用してアップデーターの悪事を阻止します。この方法は、セキュリティ面では最も高いです。なぜなら、誠実なアップデーターが1人でも動作すれば良いと仮定されるからです。しかし、詐欺証明の方法を使用しているため、時間コストが高くなる可能性があります。前の2つと比較すると、少し高くなります。
メッセージの有効性の検証方法
Eric:これらのメッセージがターゲットネットワークに届いたとき、その有効性はどのように検証されるか、検証方法も異なります。
第一の方法は、ターゲットネットワーク上の契約による検証です。この契約検証は、共通の検証と有効性の検証に分けられます。有効性の検証は理解しやすく、現在のロールアップはこの方法を使用しています。これは、詐欺証明と有効性証明の方法でL1のロールアップ契約でL2の状態を検証します。共通の検証は、ターゲットチェーン上でソースチェーンの共通性を検証する機能であり、この検証機能はソースチェーンが使用している共通のメカニズムに関わります。Powを使用しているのか、PoSプロトコルを使用しているのかという方法です。第二の方法は、オフチェーンで操作されるもので、外部の検証です。これらの外部の検証者は、何らかの方法で選挙された信頼できる検証者であり、これらの信頼できる検証者がマルチシグまたは共通アルゴリズムを実行する方法で統一します。オフチェーンで検証された後、ターゲットネットワークに提出されます。第三の方法は、前述の楽観的検証モードです。悪事を働いた場合にのみ、ウォッチャーがターゲットネットワークに詐欺証明を提出します。これが異なる検証方法の3つの可能性です。
Orbiterは、現在の事前信頼と紛争仲裁の解決策を使用し、私たちのセキュリティを完全にイーサリアムネットワーク自体のセキュリティに依存させています。そして、このセキュリティ性能を保証する前提の下で、クロスL2の開発に専念しています。
Orbiter Financeの実装方法
Orbiterのアーキテクチャの紹介
Eric:役割の観点から見ると、2つに分けることができます。一つは送信者の役割、もう一つはメイカーの役割です。つまり、クロスチェーンサービスを使用する役割と、クロスチェーンを助けるために流動資金を提供する役割です。
私はまず、ユーザーがOrbiter Financeを使用してクロスチェーンを行う際のプロセスを簡単に説明します。例えば、ユーザーがzkSyncネットワークからイーサリアムネットワークに資金を移動したい場合、Orbiterのウェブサイトのフロントエンドで操作を行い、zkSyncの自分のEOAアドレスから私たちが提供するサービスのメイカーアドレスに資金を移動します。
メイカーが資金を受け取った後、ターゲットネットワーク上で計算されたトークンをユーザーのアドレスに送信します。ここで関わるのはEOA間の送金ロジックです。このプロセスでは、メイカーに対して、Orbiterはクライアントを提供します。メイカーは自分でクライアントを展開し、バックエンドの自動化、つまり返金のプロセスを実現できます。このクライアントは、ユーザーのクロスチェーンの金額、通貨、ネットワーク状態などのデータを監視します。これは正常なプロセスですが、悪事が発生した場合は別のロジックがあります。
Orbiterは事前信頼のモデルを採用しており、これらのメイカーが資産を正しく処理し、ユーザーに正しく資金を返すことを前提としています。しかし、全体のプロセスの中で、メイカーには悪事を働く可能性があります。つまり、発信ネットワーク上でユーザーの資産を受け取った後、その資産を留保する可能性があります。
画像出典:Orbiter Finance
私たちは、悪事を防ぐために分散型のメカニズムを採用しています。主に3つの契約、MDC、EBC、SPVによってこの機能を実現しています。
その中でMDC契約は、メイカーが登録する契約です。この契約内では、クロスチェーンルールサービスを作成し、メイカーの保証金を保管し、送信者とメイカーに仲裁処理のルールを提供します。
EBC契約はイベントバインディング契約です。現在、私たちが主に使用しているのは資産移転に関するもので、EBC契約内では、発信チェーン、つまり送信者がメイカーに提供するこの取引を通じて、ソースチェーン取引からターゲットチェーン取引を推算します。
SPV契約は、ユーザーが提供する特定のチェーン上の取引がそのチェーン上で実際に存在するかどうかを証明するためのシンプルな取引検証契約です。
これら3つの契約を通じて、私たちはメイカーが悪事を働いた場合でも、ユーザーが資産を失わないことを保証するメカニズムを運用します。全体の申立て仲裁のプロセスを通じて、最終的に資産の補償を受けることができ、さらには超過補償を受けることも可能です。
おまけ
Franci:Orbiter Financeが設立されて以来、何か面白い話はありましたか?
Eric:面白い話といえば、昨年の年末にVitalikがGitcoinでクロスロールアップのバウンティを発表した時のことです。その時、これが非常に面白いと思い、いくつかのアイデアが浮かびました。そして、私と同僚の2人で20日以上かけてピザ契約を作成し、参加しました。そして最終的には勝利し、Vitalikから16ETHの報酬を得ました。これは私たちにとっても大きな励みになりました。