LayerZero ホワイトペーパー:信頼を必要としない全チェーン相互運用性プロトコル
?原文标题:《LayerZero: Trustless Omnichain Interoperability Protocol》
原文作者:Ryan Zarick、Bryan Pellegrino、Caleb Banister
编译:0xMeta
要約
ブロックチェーンの広範な使用は、開発者に対して、アプリケーションの機能やスループットの要求、安全性およびコストの要件に基づいてスマートコントラクトを実行できるさまざまなプラットフォームを提供します。しかし、この自由の結果は深刻な分裂です。各チェーンは孤立しており、ユーザーは流動性を孤立させることを余儀なくされ、囲いのあるエコシステム間で流動性や状態を移動させる選択肢が制限されています。
この記事では、信頼を必要としない最初の全チェーン相互運用プロトコルLayerZeroを紹介します。これは、さまざまなクロスチェーンアプリケーションを構築できる強力な基盤通信原語を提供します。この新しい原語を使用することで、開発者は信頼された管理者や中継取引に依存せずに、クロスチェーンDEXやマルチチェーン収益集約器などのシームレスなクロスチェーンアプリケーションを実現できます。
簡単に言えば、LayerZeroはすべてのチェーンで直接取引を実現する最初の信頼を必要としないシステムです。取引がチェーン間で自由に流れることを許可し、ユーザーに分散した流動性を統合する機会を提供し、同時に個別のチェーン上のアプリケーションを最大限に活用します。Layer Zeroを通じて、私たちは未来の全チェーンエコシステムの基盤ネットワーク構造を提供します。
1. はじめに
ブロックチェーンの概念の中心には、分散化、透明性、不変性という三つの柱があります。ブロックチェーンを制御する単一の実体は存在せず、ブロックチェーン上の行動は検証可能で不可逆的です。これらの柱は、実体が他の実体を信頼せずに行動できる基盤を生み出します。この信頼の保証は、暗号通貨が法定通貨よりも魅力的である理由の一つです。

図1:LayerZeroはクロスチェーン取引を可能にします
すべてのユーザーとすべてのアプリケーションが統一されたブロックチェーン内で共存するならば、この記事は無意味です。(図1:LayerZeroはクロスチェーン取引を可能にします)しかし、ブロックチェーンの実用性は多様なアプリケーションの急増をもたらし、独自の複雑さと要求を持っています。多様な機能への要求は、専門チェーンの成長を放棄させました。
これらのチェーンのそれぞれは、自身のエコシステム内でアプリケーションの大きな成長を促進していますが、これらのエコシステム間の隔離は採用の重要な制約となっています。ユーザーと開発者は、異なるチェーン間で時間、リソース、流動性を分配することを余儀なくされています。執筆時点で109個に達する純粋な数量のレイヤーチェーンの自然な結果は、上記の三つの柱を拡張し、複数のチェーンにまたがる相互作用を同時に含む必要があることです。チェーン間の相互作用の要求の一例はトークンの移転であり、このセクションで後ほど議論します。
ブロックチェーン用語では、作業単位は取引であり、不変で不可逆的です。取引はブロックに整理され、ブロックチェーンシステムの安全な基盤を構成します。しかし、取引は常に単一チェーンの概念です;以下に述べるように、クロスチェーン相互作用は従来、通常のブロックチェーン暗号システムの外部にある第三者メカニズムを必要とします。対照的に、この記事では、ローカルなクロスチェーン取引を可能にする最初のメッセージプロトコルであるLayerZeroを説明します。
LayerZeroが提供する強力な通信原語を説明するために、トークンが一つのチェーンから別のチェーンに移転する例を見てみましょう。現在、二つのチェーン間でトークンを変換するには、ユーザーは集中型取引所またはクロスチェーン分散型取引所(DEX)(別名クロスチェーンブリッジ)を使用する必要があり、どちらも妥協を必要とします。集中型取引の場合、例えば:Binance.com[3]、ユーザーは預金と資金引き出しを追跡する取引所を信頼しなければなりません。この信頼関係は、ブロックチェーンのコンセンサスの根本的な非信頼性に反し、オンチェーンの自動化システムの安全性を欠いています。
DEXを使用する場合、例えばAnySwap[2]やTHOR-Chain[23]は、チェーン上での転送を通じて信頼の問題を軽減しますが、既存のDEXの実装は、ユーザーのトークンをプロトコル特定のトークンに変換することを含み、そのトークンは中間のコンセンサス層を通じて取引のコンセンサスを実現します。この中間のコンセンサス層は、通常安全な方法で実現されますが、実際にはユーザーがトークンの転送を促進するためにサイドチェーンを信頼する必要があります。この記事で示すように、この追加のオーバーヘッドは不必要です。ユーザーの需要は非常に高いですが、効率的かつ直接的でありながら、私たちがブロックチェーンを使用する最も核心的な理由である非信頼性を保持する解決策は存在しません。言い換えれば、LayerZeroの直接的なクロスチェーン取引は、開発者にこの取引を構築するためのツールを提供します。
注意すべきは、LayerZeroと上記の交換変更操作は、実装スタックの二つの異なるレベルであるということです。LayerZeroは異なる全チェーンアプリケーションをサポートする通信原語であり、交換はLayerZeroの上に再実装から利益を得るアプリケーションの一例です。第2部では、ブロックチェーン技術の展望を概説し、交換の例をさらに探ります。
LayerZeroの能力とそのブロックチェーンエコシステム内での役割を正しく説明するために、まず、私たちは正式なクロスチェーン取引に必要な基本的な通信原語を提案します。これを有効な配信(valid delivery)と呼びます(セクション3)。次に、LayerZeroがどのようにしてこの原語を非信頼的な方法で提供し、ブロックチェーンの安全な約束を維持するかを説明します。LayerZeroは、1層と2層のチェーン間での直接的なメッセージングをサポートする最初の非信頼的な全チェーン相互運用層です(図1)。

図2:LayerZeroは、二つの独立した実体(オラクルとリレイヤー)が取引を確認することを要求することで、クロスチェーン通信の有効性を確保します。
チェーンAとチェーンB間のクロスチェーン取引は、A上の取引tA、AとB間の通信プロトコル、メッセージmで構成されます。tAが提出されて有効である場合にのみ、有効な配信はmが送信されたと見なします。LayerZeroを支える重要な考えは、二つの独立した実体が取引の有効性(この場合はtA)を確認すれば、チェーンBはtAが有効であると判断できるということです。図2はこのことを高いレベルで示しています。
二つの実体が共謀していないと仮定すると、(1)一つの実体がチェーンA上にtAを含むブロックのブロックヘッダーを生成でき、(2)もう一つの実体がそのブロック上のtAの証明(取引証明)を独立して生成でき、(3)ブロックヘッダーと取引証明が実際に一致している場合、通信プロトコルは、tAがチェーンA上で安定して提出されたことを保証しながら、mをチェーンB上のクライアントに送信できます。第4部で説明するLayerZero通信プロトコルは、受信者チェーン上の取引が送信者チェーン上の有効で提出された取引とペアリングされることを保証します。私たちは、ブロックヘッダーを提供するオラクル[7]と、上記の取引に関連する証明を提供するリレイヤーという二つの独立した実体を組み合わせることでこれを実現します。
LayerZeroのインターフェースは、LayerZeroエンドポイントと呼ばれる軽量のチェーンクライアントです。各(サポートされている)チェーン上にはLayerZeroエンドポイントが存在し、LayerZeroエンドポイントを持つチェーンは、LayerZeroエンドポイントを持つ他の任意のチェーンとの間でクロスチェーン取引を行うことができます。本質的に、これは完全に接続されたネットワークを作成し、各ノードが他のノードに直接接続できるようにします。少量のテンプレートコードで、任意のブロックチェーンがサポートされます。第5部では、このプロセスを示すケーススタディを通じて、Ethereumブロックチェーン上でLayerZeroを実装する方法を探ります。
ネットワーク上の他の任意のチェーンと直接クロスチェーン取引を行う能力は、以前は不可能だった大規模なアプリケーションの機会を提供します。例えば、クロスチェーン分散型取引所、マルチチェーン収益集約器、クロスチェーン貸付などです。第6節では、いくつかのそのようなアプリケーションを詳しく調査します。LayerZeroを通じて、ユーザーはチェーン間で流動性を自由に移動でき、単一の流動性プールが異なるチェーンやエコシステムにまたがる複数の分散型(DeFi)アプリケーションに参加できるようになります。これは、第三者システムや中間トークンを介さずに行われます。
2. 背景
LayerZeroの基盤を築くために、関連する既存のシステムを振り返り、なぜそれらが新興アプリケーションの要求を満たせないのかを説明します。この議論は、LayerZeroの上にクロスチェーン取引所を構築する利点を深く説明します。
2.1 関連作業
この部分では、クロスチェーン相互作用空間の重要な参加者に対する理解を構築し、なぜ彼らが信頼を必要としない有効な配信の理想に達していないのか、そしてLayerZeroがどのようにそのギャップを縮めるのかを説明します。
Ethereum(イーサリアム)[8]は、スマートコントラクトを通じて構築された分散型金融アプリケーションのための最も人気のあるプラットフォームです。イーサリアムは、チューリング完全なプログラミング言語を使用してその基盤となるブロックチェーンを拡張し、この言語により、分散型アプリケーションライブラリが開発者に優しい要約を通じて基盤チェーンの強力なセキュリティ特性を利用できるようにします。しかし、基盤となるブロックチェーンの低い取引率(約毎秒15-45取引)は、直接イーサリアムブロックチェーン上で実行されるアプリケーションの人気を制限する深刻なスケーラビリティのボトルネックであることが証明されています。
そのプログラミングモデルと人気のために、多くのクロスチェーン通信技術は、第三者チェーンとイーサリアムのインターフェースの周りに構築されています。LayerZeroは、中間者なしで直接イーサリアムに状態を転送し、イーサリアムから転送する能力を提供し、ユーザーとアプリケーションがイーサリアムチェーンの安定性と信頼性を利用できるようにしますが、以下に説明する解決策のコストやボトルネックに直面することはありません。
Ethereum 2.0[22]は、イーサリアムのスケーラビリティ、安全性、持続可能性を向上させるための一連のアップグレードです。イーサリアム2.0は、すべての取引を過負荷のイーサリアムメインチェーンに集中させるのではなく、負荷を分散させるシャーディングチェーンを導入します。プルーフ・オブ・ワーク(PoW)からプルーフ・オブ・ステーク(PoS)への移行は、51%攻撃の可能性を排除し、各取引のエネルギーを削減します。これらの進歩は、LayerZeroの発展と大いに一致しており、イーサリアムの人気を促進し、便利で安価なクロスチェーン通信の需要を生み出すことが確実です。
Polygon[17]、旧Maticネットワークは、イーサリアムのスループットと主権の課題を解決するための二層ネットワークです。最も人気のあるブロックチェーン開発プラットフォームであるにもかかわらず、イーサリアムは低いスループットに悩まされており[10]、特定のアプリケーションには適していません。Polygonは、イーサリアムと互換性のあるアプリケーション特定のサイドチェーンを提供し、独立したチェーンのスケーラビリティと独立性をイーサリアムのコミュニティとセキュリティと結びつけます。特定のまたはスループット集約型のアプリケーションはサイドチェーン上で実行され、定期的にメインのイーサリアムチェーンに統合されます。対照的に、LayerZeroは直接のクロスチェーン通信を実現する基盤プラットフォームであり、イーサリアムのメインチェーンに戻すための複雑なPolygonプロトコルを必要とせずに促進できます。
Polkadot[26]は、オープンなクロスチェーンエコシステムの潜在的な初期例です。Polkadotでは、多くのドメイン特化型のパラレルチェーン("parachains")が公共のリレーチェーンを介して接続されており、このリレーチェーンはトークンやデータがそれらの間で流れることを可能にします。しかし、クロスチェーン通信は常にこのリレーチェーンを経由するため、追加のコストが発生します。LayerZeroは、Polkadotと同じ基盤通信プラットフォームを提供し、オンチェーンの中間業者に必要な追加の取引を含みません。
THORChain [23]は、ペアの流動性プールを使用して第三者チェーン間でトークンを転送するDEXです。各流動性プールは、RUNEと呼ばれるTHORChainのネイティブトークンと特定の第三者通貨をバインドし、後者は公共の交換媒介として機能します。この共通の媒介がなければ、すべてのペア通貨には流動性プールが必要であり、流動性プールの数は通貨の数の二乗に増加します。不幸なことに、RUNEはこのスケーラビリティの問題を解決しましたが、取引プロセス中の冗長なオーバーヘッドにより、単純な操作がかなり複雑になります。これはTHORChainの取引アルゴリズムの複雑さに顕著に現れます。LayerZeroは、THORChain固有のスケーラビリティのボトルネックや煩雑な中間通貨、重量級プロトコルなしで直接のクロスチェーン通信を提供します。
AnySwap[2]は、THORChainに似たDEXで、シンプルなペアトークン交換を対象としています。AnySwapは、Fusion分散型制御権管理に基づく中間トークン--ANYに依存しています。THORChainと同様に、ANY中間トークンの使用は不必要なオーバーヘッド、遅延、および追加の転送コストをもたらします。
Cosmos[5]は、サポートされているチェーン間で任意のメッセージを送信することを可能にするブロックチェーンネットワーク技術です。Cosmosは、Cosmos Hub上のチェーン間のメッセージ伝達を促進するために、Tendermint BFT[21]に基づくブロックチェーン間通信(IBC[14])プロトコルを含みます。CosmosはLayerZeroと二つの重要な点で異なります:(1)IBCは完全なチェーン上の軽ノードを実行し、(2)IBCは迅速な終了を提供するチェーン間の直接通信のみを提供します[24]。
IBCのこれらの制限に加え、合意を促進するために中間チェーンを使用することは、AnySwap、THORChain、またはPolkadotのようなものに似ており、LayerZeroのような汎用通信層ではありません。Cosmosは、AnySwapやTHORChainと同様の特性を持つDEXである重力ブリッジ[12]も提供しています。CosmosとIBCと比較して、LayerZeroは信頼を必要としない全チェーンメッセージングを提供し、イーサリアムやビットコインのような確率的終了を提供するチェーンを含む、任意のチェーン上で実行できます。

図3:LayerZeroはクロスチェーンアプリケーションの構築ブロックです。この図は、集中型取引所、分散型取引所、およびLayerZeroを基盤通信原語として使用して構築されたクロスチェーンブリッジ間のアーキテクチャの違いを示しています。
Chainlink[7,4]は、分散型オラクルネットワーク(DONs)に接続するためのフレームワークです。スマートコントラクトは改ざん防止ですが、そのオンチェーンの性質は、契約の実行に必要なオフチェーンデータ(株価、IoTデバイスの測定、セキュアなオフチェーン計算の出力など)への基本的な接続を妨げます。DONは、契約が依存するデータソースや外部リソースに対してスマートコントラクトの改ざん防止属性を拡張し、中央の実体を信頼することなく機能します。DON内では、ユーザーのスマートコントラクトがChainlinkインターフェーススマートコントラクトにオンチェーンリクエストを発行し、そのスマートコントラクトが多くの独立したオラクルノードにイベントを送信します。
各オラクルノードは、要求された情報を取得するために複数のデータソースを照会し、誤ったデータや悪意のあるデータソースをフィルタリングするためにデータを集約し、データに対してオプションの信頼最小化計算を実行します。オラクルノードはChainlinkインターフェーススマートコントラクトに応答し、そのスマートコントラクトが誤ったまたは悪意のあるオラクルをフィルタリングするために二次的な集約を実行します。この二重フィルタリングは、最終的なデータに対する信頼を保証し、個々のオラクルやデータソースを信頼する必要がなくなります。したがって、Chainlinkは強力な情報取得ネットワークと安全なオフチェーン計算ソリューションを提供し、業界で広く利用されています。LayerZeroプロトコルはChainlink DONフレームワークを活用することで、異なるチェーン間での信頼を必要としないメッセージングを確保する能力を得ています。
2.2 実践におけるLayerZero
開発者はLayerZeroを使用して、信頼を必要とせず、複雑な中間チェーン/スマートコントラクトを導入することなく、複雑なクロスチェーンアプリケーションを構築できます。図3は、LayerZeroを使用して取引所を構築する際の機能を示しています。
左側の図に示すように、集中型取引所は、ユーザーがトークンを中央の信頼できる第三者に預け、オフチェーンで預金を追跡し、ユーザーの要求に応じて他のチェーンでコインを授与することを要求します。この権威への信頼は、ブロックチェーンを使用する目的に反し、分散型取引の出現をもたらしました。
中央の図は、典型的な分散型交換がどのように機能するかを高いレベルで示しています------スマートコントラクトが管理する合意プロトコルを使用することで、Bチェーン上のコインの自動鋳造を促進し、DEXは集中型の信頼できるオフチェーン仲介者の必要性を克服できます。
しかし、重要な制約は、DEXが中間トークンと中間チェーンを含み、Bチェーン上で中間トークンまたは包装トークンを鋳造するだけで、ユーザーが望む実際のトークンではないことです。その後、ユーザーは追加の取引で中間トークン(例えばRUNE)または包装トークン(例えばANY)を希望するトークンに交換する必要があります。この中間/包装トークン、二回目の取引、および中間チェーンは、理想的な単一のシームレスな取引にとって不必要なオーバーヘッドです。
図3の右側は、LayerZero上に構築された取引所の姿を示しています。チェーンAは単一のクロスチェーン取引を開始し、チェーンB上のローカルトランザクションを促進し、チェーンB上のアプリケーションにユーザーにトークンを安全に授与できることを通知します。このアプリケーションでは、LayerZeroは中間トークンを含まないクリーンで最小限の単一取引交換を実現します。実際の交換プロトコルは、クロスチェーン取引の両端にあるスマートコントラクトによって処理され、LayerZeroは両者の間でメッセージを伝達します。これにより大きな柔軟性が提供され、エンドツーエンドの原則[18]に従い、ほとんどの高度な交換ロジックはソースチェーンと目的チェーン上のスマートコントラクトによって処理されます。
3. 有効な配信
この部分では、信頼を必要としないクロスチェーン通信の基本的な特性を説明します。異なるチェーン上で取引を検証する問題を正式に説明するために、有効な配信の概念を定義します。有効な配信は、以下の保証を提供することによってクロスチェーントークン転送を実現する通信原語です:
ネットワークを介して送信される各メッセージmは、送信元チェーン上の取引tに結びついています。
関連する取引tが有効であり、送信元チェーン上で提出されている場合にのみ、メッセージmは受信者に転送されます。
集中型スイッチは有効な配信を保証します。なぜなら、顧客と取引所間の合意は、顧客がトークンを一つのチェーンから取引所に移転し、取引所がトークンを受け取った後にいくつかの残高(非暗号通貨)を発行することだからです。この非暗号通貨の残高は、その後、利用可能な任意のチェーンから引き出すことができ、この便利さは、各サポートチェーン上の取引所が広範な流動性プールを維持しているために可能になります。取引所は取引の中間者として機能し、ユーザーは彼らが取引を維持できると信じなければなりません。しかし、悪意のあるまたは破壊的な取引所は、クライアントからトークンを取得し、残高を発行し、他のチェーンから残高を引き出すことを拒否することができ、実際にはユーザーからトークンを盗むことになります。
ユーザーが暗号通貨取引所を信頼する意志があったとしても、近年、多くの成功したハッキング攻撃や暗号通貨取引所の破壊の試みが発生しています[15]。したがって、ユーザーに信頼できる中間者を必要としない解決策を提供する方が良いでしょう。より高いレベルで、暗号通貨の核心的な機能の一つは、銀行のような中央の実体から独立していることです。したがって、中央取引所に依存することは、それらの目的に反します。
集中型取引所を使用する別の選択肢は、THORChain[23]やAnySwap[2]のような分散型取引所です。すべての既存のDEXは、中間トークン、例えばTHORChainのRUNEやAnySwapのANYを取引tとして使用します。これらの中間トークンは各DEXのそれぞれのプロトコルによって制御されているため、DEXは有効な配信を保証できます。なぜなら、悪意のあるユーザーが中間トークンを偽造することは不可能だからです。
既存のDEXの解決策は理想的ではありません。なぜなら、二つの中間取引を含むからです------一つは送信者のトークンを中間トークンに変換するものであり、もう一つは中間トークンを受信者チェーン上の必要な「本物」のトークンに変換するものです。それに加えて、ユーザーはソースチェーン上の取引を確認し、目的チェーンのトークンを作成することを伝える中間合意層を完全に信頼する必要があります。既存の交換は確かにクロスチェーントークン転送を実現できますが、その代償は不必要な複雑さとコストです。このアプローチの欠点は明白であり、クロスチェーンアプリケーションはまだ広く採用されていません。クロスチェーン取引問題の理想的な解決策は、信頼できる中間実体を含まない単一のクロスチェーン交換取引を使用することです------言い換えれば、信頼を必要としない有効な配信です。
私たちの作業では、任意のユーザーデータの信頼を必要としない有効な配信を提供する汎用メッセージングプロトコルを実現しました。分散型交換や他のDeFiアプリケーションは、私たちのメッセージング原語を使用してクロスチェーン取引を実現します。基盤層メッセージングプロトコルが提供する柔軟性により、高度なアプリケーションは以前は不可能だった広範な機能を実現できます。
4. 設計
LayerZeroの核心は、信頼を必要としない有効な配信を提供する通信プロトコルです。私たちのプロトコルは、第4.1節で紹介する一連のコンポーネントに基づいています。第4.2節では、配信プロトコルの通信フローについて議論し、第4.3節では、LayerZeroがどのようにして信頼できる中間サービスを介さずに有効な配信を実現できるかを説明し、第4.4節では、私たちの新しい低コストのスマートコントラクトに基づく軽ノードクライアント設計を紹介します。
4.1 LayerZeroの構成要素
LayerZeroエンドポイントは、LayerZeroのユーザーインターフェースです。LayerZeroネットワーク内の各チェーンには、エンドポイントが存在し、一連のチェーン上のスマートコントラクトによって実装されています。エンドポイントの目的は、ユーザーがLayerZeroプロトコルバックエンドを使用してメッセージを送信し、有効な配信を保証できるようにすることです。
LayerZeroエンドポイントは、Communicator(通信器)、Validator(検証器)、Network(ネットワーク)、Libraries(ライブラリ)の四つのモジュールに分かれています。Communicator、Validator、Networkモジュールは、エンドポイントのコア機能を構成します(図4)。LayerZeroがサポートする各新しいチェーンは、追加のライブラリとして追加されます。この設計により、三つのコアモジュールを変更することなく、新しいチェーンのサポートを追加できます。第4.4節では、各モジュールの機能を説明します。
オラクルは、LayerZeroの他のコンポーネントとは独立したメカニズムを提供する第三者サービスであり、一つのチェーンからブロックヘッダーを読み取り、別のチェーンに送信します。理論的には、このオラクルはこのメカニズムを提供する任意の第三者サービスであり得ますが、実際には、現在の分散型オラクルネットワークの業界リーダーであるChainlink[7,4]を使用したいと考えています。

図4:単一のLayerZeroクロスチェーントランザクションにおける通信フロー。
リレイヤーは、オフチェーンサービスであり、オラクルと似た機能を持ちますが、ブロックヘッダーを取得するのではなく、指定された取引の証明を取得します。
有効な配信を確保するための唯一の要件は、LayerZeroプロトコルを使用して送信される任意のメッセージに対して、オラクルとリレイヤーが互いに独立している必要があることです。プロトコル自体は特定のリレイヤー実装を必要とせず、理論的には、LayerZeroのユーザーは自分自身のリレイヤーサービスを実装することもできます。この設計により、ユーザーはリレイヤーがオラクルと共謀しないことを保証でき、この独立性により、信頼を必要としない検証配信を実現できます(第4.3節参照)。実際には、LayerZeroはリレイヤーサービスを提供し、オラクルはChainlinkの分散型オラクルネットワークと関連する合意メカニズムによって処理されます。
4.2 LayerZeroプロトコル
図4は、単一のLayerZeroメッセージの有効な配信に関与するステップを示しています。図中の各円で囲まれた数字は、プロトコルの一つのステップを表し、このセクションの段落に対応しています。この部分では、チェーンA(チェーンA)上のユーザーアプリケーションがLayerZeroを介してチェーンB(チェーンB)上のユーザーアプリケーションに単一のメッセージを送信する例を紹介します。第5節では、二つのイーサリアム仮想マシン間でメッセージを送信する場合に、さまざまなコンポーネントとプロトコルステップをどのように実現するかを説明します。
ステップ1:チェーンA(アプリA)上のユーザーアプリケーションは、取引Tの一部として一連の操作を実行できます。取引Tを一意に識別するために、取引識別子tを使用します。この識別子の形式は、チェーンAのタイプによって異なる場合があります。取引Tに















