導入
Datachainはこれまで、CosmosのIBCプロトコルを用いて異なるブロックチェーン間のインターオペラビリティを可能にするHyperledger Lab YUIやクロスチェーントランザクションを可能にするCross Frameworkなどのプロダクト開発を通して、インターオペラビリティの課題解決に取り組んできました。YUIのうち、IBCのSolidity実装であるIBC-Solidityについては、Interchain Foundationからの助成金を受け開発を行っています。
また、それらの技術を用いて、Harmony等のパブリックブロックチェーンの他、NTTデータやJCBといった大手エンタープライズ企業と共に、IBCを用いたインターオペラビリティの実証を重ねてきました。
これらの実績と現状のクロスチェーンブリッジの課題を踏まえ、Datachainでは、現状のインターオペラビリティやクロスチェーンブリッジの課題を解決するために、新たなミドルウェアとして「LCP(Light Client Proxy)」を発表しました。
LCPは、あるチェーンの代わりに対象のチェーンに対するLight Client検証を行い、検証元のチェーン側でその妥当性を検証する「Proxy方式」を採用しています。これらは、TEEを用いてEnclave内でLight Client検証を実行することで実現しています。
チェーン間の通信プロトコルとしてはクロスチェーンの通信プロトコルスタックであるIBCをサポートします。LCP及びIBCを用いることで、安全性・ガス効率・拡張性に優れたクロスチェーンブリッジを構築することが可能になります。
今回のMediumでは、クロスチェーンブリッジの現状の課題と、それを解決するLCPの概要についてご紹介していきます。様々なプレーヤーと協力して開発を進めていきたいと考えておりますので、興味のある方は是非お声がけください。また、詳細については、ドキュメントを公開しておりますので、そちらをご覧ください。
この記事の英語版はこちらからご覧いただけます。
クロスチェーンブリッジの現状と課題
様々なブロックチェーンプラットフォームが立ち上がり、それに伴い各ブロックチェーンプラットフォームを跨いだクロスチェーン取引のニーズは日に日に高まっています。実際に、様々なクロスチェーンブリッジが既に利用されています。
それらを分類すると、以下のようになります。
- HTLC方式(トークンのアトミックスワップに特化)
例)Hop, Connext - External Validators方式(チェーン外の単一もしくは複数のPartyにより検証)
例)Multichain, Portal(Wormhole), Axelar, LayerZero - Light Client方式(互いのチェーンのコンセンサスを検証)
例)IBC
様々なブリッジがある中で、現在最も利用されているのは、2のExternal Validators方式です。ただ、双方のチェーンの他に新たなトラストを必要とする同方式は、セキュリティの穴となりやすく、様々な要因がありますが、2022年だけで総額1,000億円以上がクロスチェーンブリッジのハッキングにより喪失しました。このような中で、安全性に優れたブリッジソリューションが求められています。
3のLight Client方式は、お互いのチェーンでコンセンサスを検証し合う仕組みです。双方のチェーン以外に新たなトラストを必要としないため、最も安全なクロスチェーン手法と言われています。
ただ、Light Client方式には、以下の2つの課題があります。
- 拡張性が低い
- 検証コストが高い
お互いのチェーンでコンセンサスを検証し合うという性質により、新たなチェーンと接続する際には相手のチェーンに対応したLight Clientの実装が必要となります。つまり、拡張が容易ではない(拡張性が低い)という課題があります。また、検証コストについては、チェーン毎のコンセンサスアルゴリズムと検証環境における検証に必要な暗号プリミティブのサポートの有無に依存しています。これにより、例えばEVM系チェーンにおいて検証処理の実行コストの高さ(Gasコスト)がしばしば問題になります。
LCP(Light Client Proxy)の概要
前述のLight Client方式の2つの課題(拡張性の低さと検証コストの高さ)をTEEを用いたProxyにより解決したソリューションがLCPです。
冒頭でも触れたように、LCPは、対象チェーンの検証を代替するProxy方式を採用しています。検証対象のチェーンに対して、Proxyが検証側チェーンの代わりにLight Client検証を行い、その妥当性を低コストで検証可能にするProofを生成する仕組みです。
これにより、LCPは、Cross-chainの通信において、Light Client検証をオンチェーンで行うことと同等のセキュリティをより低コストで実現することを可能にします。
LCPの主な特徴は、以下の3点です。
1 Minimal trust assumptions
最も優れた検証方式であるLight Client方式の信頼仮定に加えて、TEEを信頼する必要がある。
2. Ultra efficient on-chain verification
検証コストの制約から、オンチェーン検証を行うことは難しいケースが多い。LCPでは、対象チェーンに対するon-chainでのLight Client検証は不要となる。代わりにEnclave内で生成された検証結果のCommitmentに対する1つの署名の検証のみ行う。すなわちオンチェーンでの署名検証コストの削減および検証トランザクションのサイズを削減することにより、効率的な検証を実現している。
3 Extensible
チェーンの組み合わせごとの各チェーン上のLight Client実装が不要であり、LCPノード内のEnclaveで実行可能なLight Client実装のみを必要とする。そのため、新たなチェーンへの対応が容易である。
なお、LCPを用いてToken SwapやTransferをはじめとするクロスチェーンアプリケーションを構築するには、チェーン間に通信プロトコルが必要となります。このためにLCPは最初にクロスチェーンの通信プロトコルスタックであるIBCをサポートします。
上図は、LCPを用いた2つのチェーン間のパケット送信時の検証の仕組みを示したアーキテクチャです。LCPを用いた検証は以下の流れで行われます:
- SourceチェーンがPacket送信のCommitmentを自身に書き込む
- RelayerがLCPノードに1のCommitmentとProofを送付
- LCPノードのEnclave内でLight Client検証を行い、検証結果を示すCommitmentと、Enclave内で生成された鍵による署名であるProofを生成
- 3で生成したCommitmentとProofを、Relayerを介してDestinationチェーンへ送付
- Destinationチェーンで、4で送付したCommitmentとProofを検証
なお、LCPの最初の実装では、TEEとしてIntel SGXを利用しています。
アーキテクチャやフローの詳細については、ドキュメントをご覧ください。
ロードマップ
LCPは、今後、以下のようなロードマップで開発を予定しています。
(時間軸については変更の可能性あり)
2022年のQ3に、初期のブリッジを構築するターゲットネットワークを確定させ初期設計を進めます。基本的には、Ethereum to X のブリッジを想定しています。2022年のQ4には、LCPを用いたクロスチェーンブリッジアプリケーションをテストネットでリリース予定です。そして、2023年のQ1には、同アプリケーションのメインネットローンチを予定しております。
また、メインネットローンチ後には、新たなネットワーク及びクロスチェーンアプリケーションへの対応に加え、ブリッジを構成するノードの分散化、そしてそのためのトークンエコノミクスの検討も進めていくことで、よりセキュアなブリッジ構築を目指していきます。
クロスチェーンの未来
LCPは、今後世の中のあらゆるチェーンを安全かつガス効率に優れた方法で繋いでいきます。この大きな絵を実現するためには、LCPのコアコントリビューターであるDatachainチームだけではなく、様々な開発者やパートナー企業とのコラボレーションが必要です。
例えば、以下のような企業やプロジェクトの方は、ぜひお声がけください。
- L1チェーン: LCPを用いて一緒にブリッジを構築したい方
- DeFi Application運営者: クロスチェーンのトークンスワップに対応したい方
- Bridge Application開発者: LCPを用いたBridge Application開発に興味のある方
一緒にクロスチェーンの未来を創っていきましょう!