今回は、Omnichain相互運用性プロトコルを標榜する「LayerZero」について紹介・解説していきたいと思います。
執筆時点では、StargateというLayerZero上で稼働するDeFiがローンチされていたり、Gh0stly Gh0stsやLayer Zero PunksなどがOmnichainNFTとしてローンチされており、徐々に頭角を現しながら話題になってきています。
「Omnichain NFT」を完全に理解しました。
— でりおてんちょー|derio (@yutakandori) April 11, 2022
今回は以下を試してみましたが、すごく簡単で感動しました👏
💡Omnichain NFTをBSCテストネットでmint
💡Mumbaiテストネットにトークンを転送
Omnichain NFTの概要/ポイント/使い方など記事にする予定なので、お楽しみに。@LayerZero_Labs @PrimordialAA pic.twitter.com/bpgF065oj0
後の項で試してみますが、OmnichainNFT自体は実装が簡単なので、今後もOmnichainNFTを標榜するNFTプロジェクトは多数出てきて、「フルオンチェーンNFT」のようにマーケティング用語化するのではないかと予想しています。
フルオンチェーンNFTというのは、画像データがsvg形式などによって直接ブロックチェーン上に保持されているタイプのNFTのことです。
— でりおてんちょー|derio (@yutakandori) October 20, 2021
一方で、一般的なサーバー保管型NFTは、NFTの画像部分がデータベースへのリンクになっていて、要はブロックチェーンの外の世界から画像情報を引っ張ってきています。 pic.twitter.com/LXWDbrQ5ZJ
ということで今回は、執筆時点で徐々に頭角を現しつつある「LayerZero」「OmnichainNFT」を中心に取り上げていき、その概要やコンセプトなどを紐解いていくことで、実態を理解していただくことを目的とします。
でははじめに、この記事の構成について説明します。
まずは、LayerZeroの概要やコンセプトなどについて、完結かつ抽象的な表現も交えつつ可能な限り分かりやすく解説してまいります。
次に、LayerZeroのモデルが既存のクロスチェーン/マルチチェーン・L2(Layer2)とどのように違うのかについて解説してまいります。
最後に、皆様にLayerZero/OmnichainNFTについての理解を深めていただくことを目的とし、Hardhatを使って実際にコントラクトをデプロイしたり、NFTを別チェーンに転送してみるまでの一連の流れを解説いたします。
本記事が、「LayerZero」「OmnichainNFT」の概要やコンセプト・開発の一例などについて理解したいと思われている方にとって、少しでもお役に立てれば幸いです。
※本記事は一般的な情報提供を目的としたものであり、法的または投資上のアドバイスとして解釈されることを意図したものではなく、また解釈されるべきではありません。ゆえに、特定のFT/NFTの購入を推奨するものではございませんので、あくまで勉強の一環としてご活用ください。
イーサリアムnaviの活動をサポートしたい方は、「定期購読プラン」をご利用ください。
LayerZeroとは
LayerZeroは、「Omnichain相互運用性プロトコル」であることを標榜するプロトコルであり、開発主体はカナダのバンクーバーを拠点とするチーム「LayerZero Labs」です。
多くの異なるユーザーアプリケーション(LayerZeroを使用してブロックチェーン間でメッセージを送受信するコントラクト)が、ベースレイヤー(Layer0)として使用できるようにするための基盤プロトコルであることを提唱しています。
少しイメージが湧きづらい方は、まずは既存の暗号資産における中央集権取引所(CEX)の挙動をイメージしてみてください。
例えば、BTCを売却してETHを購入するというシーン。
本来であれば、この行為を直接的におこなうことはブロックチェーンの違いにより難しいのですが、CEXを使うことで即座にエクスチェンジすることができますよね。
これは、CEXが裏側でBTCとETHを保有して、さらに交換業務を担っているからこそ為せるのですが、このシーンはイメージしやすいでしょう。
LayerZeroは、このCEXが裏側でおこなっているような仕組みを、それぞれ独立したオラクル/リレイヤー・ULN (Ultra Light Node)を用いることにより、トラストレスかつシームレスに実現するというコンセプトです。
異なるチェーン上のユーザーアプリケーション間で、オンチェーンかつマルチチェーンにメッセージ検証をおこないます。
仕組みとしては、異なるチェーン(ここではA, B)のブロックヘッダーを伝達するオラクル(Oracle)と、 トランザクションの証明を取得するリレイヤー(Relayer)という2つの独立したエンティティを組み合わせることで実現しています。
ここで、以下のように疑問に思われる方もいらっしゃるかもしれません。
トラストレスとはいえ、オラクル/リレイヤーに依存したモデルでは?
これは非常に的を得た批判かと思いますし、筆者も最初に本プロトコルを見たときにそのように思いました。
実際にその指摘は的を得ている側面もありますが、LayerZeroではオラクル/リレイヤーをそれぞれ「独立」させることにより、以下のような効果を生み出しています。
- オラクルとリレイヤーが結託して悪事をはたらくことを防ぐ
- 被害を受けた際の被害を最小限に止める
つまり、オラクルとリレイヤーが共謀することを防ぎつつ、かつそれが起きた際でも被害が最小限に止まるように設計されています。
クロスチェーンブリッジ(ミドルチェーン設計)では、単一の脆弱性が全ペアネットワーク・全流動性を危険にさらす可能性があるのに対し、LayerZeroでは悪用されるリスクを、悪用される特定のオラクル/リレイヤーペアに制限します。
この設計によって、高いセキュリティを保ちつつも、各チェーンを跨いだトークンの転送が可能になり利便性向上が見込めるという利点が挙げられます。
またその他のメリットとして、統一した標準規格/ルールを設けることによって、開発者が異なるチェーン間(※EVM互換性を問わない)で通信するための実装における「車輪の再発明」をなくすことが期待されるでしょう。
初期のフェーズではEVM互換性のあるチェーン(Ethereum/Arbitrum/Avalanche/BSC/Fantom/Optimism/Polygon)のみをサポートしていますが、将来的にCosmos Hub/Terraなどの非EVMチェーンのサポートも追加する予定となっています。
既存モデルとの違いを比較
本章では、Omnichain相互運用性プロトコルを標榜するLayerZeroと、以下の既存モデルとの違いを比較していくことで、LayerZeroについての理解をより深めていくことを目的とします。
- クロスチェーン/マルチチェーン
- L2(Layer2)
クロスチェーン/マルチチェーンとの違い
昨今ではDeFi領域を中心に、シングルチェーンからマルチチェーンへとトレンドが変わりつつある状況ですが、その中で以下のような課題が挙げられています。
- 流動性がサイロ化され分散してしまうことで生じる資本効率・UXの悪さ
- 独立するそれぞれのチェーン間での非効率的な通信
- ブリッジ機能を一元的に備えたコントラクトのハッキングリスク
これらの課題に対するソリューションとして登場したのがLayerZeroであり、現在大きな注目を集めているといった背景があります。
まず前提として、既存のNFTにおける主なクロスチェーンブリッジと今回取り上げているLayerZero(Omnichain NFT)では、どちらもMint/Burn方式が採用されています。
既存のNFTにおける主なクロスチェーンブリッジの仕組みでは、ブリッジ機能を備えたスマートコントラクトを介して対象のNFT「X」をロックし、それを担保に転送先のチェーンで新たにNFT「X’」をMintします。
これに対して、LayerZeroプロトコルならではの特筆すべきポイントは、「2つ以上のチェーンが同時にメッセージング・ステートを共有できる点」です。
LayerZeroプロトコルを活用したOmnichain NFTの場合は、複数のチェーンを跨いでNFTをmintすることが可能になりますが、NFTが存在しユーザーが保有できる(owner権限が与えられる)のは単一のチェーンのみとなり、転送元チェーンにあったNFTはburnされる仕様です。
つまり、既存のNFTクロスチェーンブリッジとは異なり、特定のコントラクトに対してロックする必要がありません。
これは先述の通り、それぞれ独立したオラクル/リレイヤー・ULN (Ultra Light Node)を用いることで可能になっていますが、それにより以下のような新たなユースケースを生まれるのではないかと期待されています。
- 統一流動性ブリッジ
- 効率的なクロスチェーンスワップ
- マルチチェーンイールドアグリゲーター
ちなみに、既にデプロイされたNFTコレクションであっても、Parakeet DAOの投票によって可決されwhitelist入りすれば、LayerZeroのサポートするOmnichain NFTに仲間入りできるそうです。
こちらは先日「Pudgy Penguins」というNFTプロジェクトが対象となり、LayerZeroのサポートするOmnichain NFTになることが決定されました。
We’re proud to announce that @pudgypenguins will be the very omnichain #NFT collection supported by @ParakeetDAO ! https://t.co/sH3dhzXCmU
— parakeet.dao 🦜 Omnichain NFT Bridge (@ParakeetDAO) April 5, 2022
L2(Layer2)との違い
LayerZeroが異なるチェーン間でネイティブな直接通信を実現するのに対して、Layer2は単一のL1チェーンと繋がるものであるという明確な違いがあります。
例えば、Arbitrum/Optimism/StarkNetなどはL1(Ethereum)と繋がるL2ですが、それぞれに異なるプールが存在していてサイロ化された構造となっており、資金効率やUXの面で課題となっています。
この課題を解決するために、ミドルチェーンによるブリッジングソリューションが試みられてはいるものの、セキュリティリスクの高さなどがネックとなっています。
この問題を根本から(Layer0ベースで)解決しようと試みるのがLayerZeroのアプローチであり、完結かつ抽象的に表現すると、L2が建物であればLayerZeroは土地である程の明確な構造的違いがあると言えます。
LayerZeroのOmnichainコントラクトをデプロイ/転送してみる
本章では、LayerZeroの大まかな概念を理解した次のステップとして、実際にLayerZeroのOmnichainコントラクトをデプロイしてみることで理解を深めることを目的とします。
今回、筆者の作業実行環境は以下です。
- macOS Big Sur v11.6.2
- Node.js v16.14.2
- コード エディター:Visual Studio Code
- Solidity開発環境:Hardhat
この続き: 3,711文字 / 画像16枚
まとめ
本記事では、執筆時点で徐々に頭角を現しつつある「LayerZero」「OmnichainNFT」を中心に取り上げていき、その概要やコンセプトなどについて私見を交えながら解説しました。
本記事が、「LayerZero」「OmnichainNFT」の概要やコンセプト・開発の一例などについて理解したいと思われている方にとって、少しでもお役に立ったのであれば幸いです。
また励みになりますので、参考になったという方はぜひTwitterでのシェア・コメントなどしていただけると嬉しいです。
🆕記事をアップしました🆕
— イーサリアムnavi (@ethereumnavi) April 15, 2022
今回は、Omnichain相互運用性プロトコルを標榜する「LayerZero」および「Omnichain NFT」について解説しました⛓
✅クロスチェーン/マルチチェーンとの違い
✅L2との違い
✅Omnichain NFTのデプロイ/転送方法
などについて、ぜひご参考ください✍️https://t.co/3hFsU1T3E1
イーサリアムnaviを運営するSTILL合同会社では、web3/crypto関連のリサーチ代行、アドバイザー業務、その他(ご依頼・ご提案・ご相談など)に関するお問い合わせを受け付けております。
まずはお気軽に、こちらからご連絡ください。
- 法人プランLP:https://ethereumnavi.com/lp/corporate/
- Twitter:@STILL_Corp
- メールアドレス:info@still-llc.com