
要点
OpsideのNCRC(Native Cross Rollup Communication)プロトコルは、ロールアップ間の相互運用性に対する信頼性のある解決策を提供します。NCRCプロトコルは、各ロールアップに第三者の(別の)ブリッジを追加することなく、ZK-Rollupのネイティブブリッジをシステムレベルで変換することにより、異なるZK-Rollupのネイティブブリッジを直接利用してクロスロールアップ通信を行います。
このアプローチはよりシンプルで包括的であり、ネイティブブリッジの絶対的なセキュリティを継承しながら、サードパーティのブリッジに関連するシステムの複雑さと信頼コストを回避します。
なぜトラストレスなクロスロールアップ通信が必要なのか?
ロールアップは、ブロックチェーンのスケーラビリティを向上させ、トランザクションコストを削減し、全体的な効率を改善する能力から、大きな注目と実際に様々なプロジェクトやチェーンで採用されています。Opsideは、Web3アプリケーション向けのZK-RaaSサービスを提供し、Opside Rollup Launchbaseを通じて開発者が独自のロールアップを作製できるようにしています。
複数のロールアップが存在する時代において、さまざまなレイヤー2ソリューション間のシームレスな相互運用性が重要となることが予測されます。
現在、ロールアップ間の相互作用は比較的孤立しており、リアルタイムのクロスチェーン通信や資産の相互運用性が不足しています。この孤立状態により、資産は特定のロールアップ内に閉じ込められ、異なるネットワーク間での自由な流動性や利用が制限されています。
効率的なクロスロールアップ通信の欠如は、個々のロールアップの潜在能力だけでなく、全体的なユーザーエクスペリエンスにも影響を与えます。ロールアップ間で資産を移動したり、クロスチェーンのトランザクションを実行しようとするユーザーは、手間がかかり時間のかかるプロセスに直面します。
このような非最適なエクスペリエンスは、ロールアップの魅力を低下させ、レイヤー2スケーリングソリューションの普及を妨げる要因となっています。
既存のクロスロールアップブリッジングソリューションは、通常、ロールアップチェーン上に新しいインターチェーンコントラクトを展開し、マルチチェーンの流動性インセンティブを利用して資産のクロスチェーン機能を実現します。しかし、これらのソリューションは、メッセージベースのクロスチェーン相互作用には普遍的に適用できず、中央集権化による信頼性のリスクを伴います。
マルチロールアップ時代の潜在能力を十分に引き出すためには、トラストレスかつ普遍的なクロスロールアップ通信プロトコルが構築が急務です。
Opsideのソリューション:ネイティブクロスロールアップコミュニケーション
実際には、各ZK-RollupにはL1<>L2ブリッジが元々備わっており、私たちはこれをネイティブブリッジと呼んでいます。流動性ベースのスキームを利用するサードパーティのブリッジとは異なり、ネイティブブリッジはユニークな「ミントバーン」クロスチェーンメカニズムとして機能します。
ゼロ知識証明を通じてセキュリティを確保しながら、信頼性を維持します。ロールアップ上のすべてのアセットは、ネイティブブリッジを介した預入トランザクションから発生し、それによって究極のセキュリティ認証を受けます。
私たちはオッカムの剃刀の原理「必要以上に実体を増やしてはならない」という原則を固く信じています。サードパーティのブリッジはクロスチェーン体験をより安価で高速に提供するかもしれませんが、追加の信頼コストとセキュリティリスクを伴います。
最近のマルチチェーンプロジェクトの数多くがその例です。したがって、最初から、Opsideのクロスロールアップ通信のインスピレーションは明快でした:追加のサードパーティのブリッジを導入するのではなく、ネイティブブリッジを直接活用してマルチロールアップ間の相互運用性を実現する。
という考え方が生まれました。このコンセプトがNCRC(Native Cross Rollup Communication)プロトコルの誕生につながりました。
NCRCの前提条件
複数のロールアップ間でNCRCを有効にするためには、以下の2つの前提条件を満たす必要があります:
- これらのロールアップはZK-Rollupタイプに属している必要があります。
- これらのロールアップは同じL1上に存在している必要があります。
これらの2つの条件を満たすロールアップは、理論的には基になるL1と同じレベルのセキュリティを持っています。同様に、これらのロールアップ間のネイティブブリッジのセキュリティレベルも同じであり、互いに信頼を必要としません。
すべてのNCRCトランザクションは妥当性の証明によって検証され、NCRCのセキュリティ保証の基本的なソースとなります。
Rollup Recognition Contract(RRC)
2023年8月現在、Polygon zkEVM、zkSync era、Lineaなど、いくつかのZK-RollupがMainnetで稼働しています。しかし、これらのZK-Rollupは独立しており関連性がなく、ユーザーの資産が分断されています。
この問題の根本的な原因は、それらのL1(Ethereum Mainnet)上の契約が関連していないということにあります。これらの契約はお互いの存在を認識せず、ネイティブのRollupブリッジを介して直接通信することができません。
つまり最初のステップとして、Rollup同士が互いを発見し認識できるようにするために、L1上に専用の契約を展開することです。これがRRC(Rollup Recognition Contract)と呼ばれるものです。
RRCは、NCRC内のすべての参加するZK-Rollupの管理を担当し、Rollupの追加、一時停止、終了などを管理します。RRC内の各Rollupには専用のRollup IDが割り当てられますが、L1のIDは0のまま固定されます。
Rollup上のネイティブブリッジを介してクロスロールアップトランザクションを開始する際、アドレスは対象のRollup IDを指定することができます:
- Rollup IDが0の場合、それは引き出しなどのメッセージをL1に渡すことを意味します。
- Rollup IDが0以外の場合、それはメッセージを別のRollupに送信することを示します。
Opsideは、各L1レイヤーにRRC契約を展開し、対応するZK-Rollupが許可なく参加または終了できるようにします。このRRC契約は、各Rollup IDの情報を管理するために使用されます。
これには、L1上のブリッジ契約のアドレスも含まれます。重要なことは、RRC契約はデータの取得サービスのみを提供し、直接的にクロスチェーンの資産とはやり取りしません。
ネイティブブリッジスマートコントラクトおよびサービスとの互換性
一般的に、Rollupのネイティブブリッジは3つのコンポーネントに分かれます:L1上のブリッジコントラクト、L2上のブリッジコントラクト、およびメッセージリレーを担当するブリッジサービスです。NCRCプロトコルはこれらのコンポーネントを基礎レベルで活用し、より高レベルのカプセル化を追加します。主な変更点は以下の通りです:
- L2上のブリッジコントラクト:元のメソッドを維持しながら、bridgeAssetという新しいメソッドが追加されます。このメソッドでは、destinationNetworkパラメーターで対象のRollupのIDを指定できます。
- L1上のブリッジコントラクト:新しいメソッドがカプセル化され、新しいbridgeAssetメソッドのクロスチェーンメッセージを処理します。RRCコントラクトで見つかったRollup IDに基づき、ブリッジコントラクトは対象のRollupの情報を特定し、クロスチェーンアセットを対象のRollupのブリッジコントラクトに移動します。そこでクロスチェーンアセットは対象のRollupに預けられます。
- ブリッジサービス:メッセージリレーを担当し、クロスロールアップトランザクションに対してユーザーから手数料を請求します。
上記のNCRC関連の互換性適応が完了したら、RollupはRRCに登録してネイティブクロスロールアップ通信ネットワークに参加することができます。
ネイティブクロスロールアップトランザクションのプロセス
ユーザーにとって、NCRCの操作は完全にRollupのネイティブブリッジと同じです。Rollup1からRollup2へのクロスロールアップトランザクションの開始は、以下の手順を含む自動化されたプロセスです:
- イニシエーターであるUser1は、Rollup1上でネイティブブリッジのbridgeAssetメソッドを呼び出してクロスチェーン取引を開始します。この取引のdestinationNetworkパラメータは、Rollup2のRollup IDに設定されます。このRollup IDは、対応するL1ブリッジ契約アドレスを取得するために使用されます。Rollup IDが0の場合、それは対象ネットワークがL1であることを示します。
- その後、このトランザクションはRollup1のSequencer1によってパッケージ化されます。イニシエータであるUser1は、クロスロールアップトランザクションのコストを負担し、Rollup1上のSequencer1に支払います。Rollup1のブリッジサービスは、クロスチェーンアセットをL1上のRollup1ブリッジ契約に転送します。この時点で、Rollup1とL1の両方でアセットのバーンとリリースの操作が完了します。
- クロスロールアップアセットの転送を完了するために、Rollup1のブリッジサービスは、destinationNetworkパラメータに対応するターゲットのRollup2に関する情報をRRC契約に問い合わせます。この情報には、Rollup2のL1ブリッジ契約アドレスが含まれています。その後、Rollup2のブリッジ契約はこれらのアセットを制御し、bridgeAssetメソッドを介してRollup2にマッピングします。
- 最後に、トランザクションが正常にパッケージ化され、プルーフが生成されると、Rollup2のブリッジサービスはclaimAsset操作を実行します。その結果、Rollup1によって開始されたクロスチェーンアセットは、Rollup2上の指定されたアドレスに安全に到着します。
総じて特にお伝えしたいことは、クロスチェーンプロセス全体を通じて、ユーザーのアセットは次のパスをたどります:Rollup1 -> Rollup1のL1ブリッジ契約 -> Rollup2のL1ブリッジ契約 -> Rollup2。言い換えれば、ユーザーのアセットはいかなる第三者のプロトコルを通過することなく、Rollupのネイティブブリッジを利用しています。
この全プロセスは安全であり、信頼性がある。ということです。

ユーザーがRollup1上でクロスチェーン操作を実行し、Rollup2を目的地として選択する場合、技術的なプロセスは実際にはRollup1、L1、Rollup2の3つのエンティティが関与します。ただし、ユーザーはこのプロセスでL1の存在を意識する必要はありません。
彼らの体験は単にRollup1からRollup2への直接の繋がりです。基本的な実態としては、クロスチェーンアセットがL1上で2つのブリッジング操作を経ており、ユーザーの認識ではRollup1からRollup2へのシームレスな接続が作成されているということです。
このプロセスでは、L1上での操作は自動的に処理され、ユーザーは追加のアクションを実行する必要はありません。ユーザーの視点からは、現在のRollupはL1および他のどのRollupに対してもクロスチェーン操作を実行できるということです。
この設計により、ユーザーエクスペリエンスの流動性が向上し、内部で実行されている複雑さが隠されるので、簡単に処理しているようにも見えるのです。
NCRCは現在Opsideのテストネットで利用可能です!
Opsideはテストネット上でネイティブなクロスロールアップ通信を正常に実装しました。誰でも公式ウェブサイトで体験することができます。
https://pre-alpha-assetshub.opside.network/
私たちは、信頼できるネイティブなクロスロールアップ通信が、すべてのロールアップ間での流動性を安全に共有するだけでなく、トラストレスでシームレスなマルチロールアップの相互運用性を提供し、分散型アプリケーションやDeFiプロトコルの新たな可能性を開くと信じています。
サービスのご利用・お問い合わせに関しては、直接サービス提供会社へご連絡ください。CoinPostは本稿で言及されたあらゆる内容について、またそれを参考・利用したことにより生じたいかなる損害や損失において、直接的・間接的な責任を負わないものとします。ユーザーの皆さまが本稿に関連した行動をとる際には、必ず事前にご自身で調査を行い、ご自身の責任において行動されるようお願いいたします。