イーサリアム Layer 2 アセットブリッジ方案解析:Arbitrum、zkSync と DeGate Bridge
この記事の著者:DeGate。
イーサリアムは2015年の誕生以来、急速に成長し、最も活発で最も忙しいブロックチェーンとなりました。アプリケーションの豊富さ、チェーン上の資産規模、取引量、安全性などの指標から見ても、イーサリアムは現在、疑いの余地のないパブリックチェーンの王者です。しかし、イーサリアムエコシステムの急速な発展、特にDeFiの爆発的な成長により、元々設計されたスループットが深刻に不足しています。etherscan.ioの毎日の取引データによると、現在のイーサリアムのTPSは約17(契約操作の割合が大きく、この数値を低下させています)で、数十ドル、さらには数百ドルに達するガス代と超長い取引待機時間が、イーサリアムエコシステムのさらなる発展と主流世界への進出を制限する主な要因となっています。
長い間、イーサリアムコミュニティ全体がスループットと高額な手数料の問題を解決するために努力してきました。その主要な解決策の一つがイーサリアム2.0であり、これにより1秒あたりの取引数が大幅に増加し、最速で2021年末にリリースされる予定です。また、EIP-1559提案は、取引手数料の請求方法を調整し、間接的にガス代を削減することを目指しています。
同時に、ある声が上がりました:本当にすべての取引をメインチェーン上で計算処理する必要があるのでしょうか?
Layer2の紹介
本来イーサリアムのメインチェーンであるLayer 1(L1)上で処理されるべき取引をLayer 2(L2)に移し、その結果をL2からL1に戻して確認する、このような解決策を私たちはイーサリアムLayer 2と呼びます。L2の理論TPSは2000-4000に達し、これはVisaの処理能力(毎秒1700件の取引)を超えています。そのため、多くの人々はL2ソリューションがイーサリアムが主流ユーザーを獲得する鍵であると考えています。
現在存在するL2ソリューションには、主に以下のものがあります:
Optimistic Rollups:データをチェーン上に、詐欺証明。アプリチームにはOptimism、Offchain Labs Arbitrum rollup、Fuel Networkが含まれます;
ZK Rollups:データをチェーン上に、ゼロ知識証明。アプリチームにはLoopring、Starkware、Matter Labs zkSync、Aztec 2.0が含まれます;
Validium:データをチェーン外に保存、ゼロ知識証明。アプリチームにはStarkware、Matter Labs zkPorterが含まれます;
Plasma:データをチェーン外に保存、詐欺証明。アプリチームにはOMG Network、Matic Network、Gazelle、Leap DAOが含まれます;
State Channels:アプリチームにはConnext、Raiden、Perunが含まれます。
重要な点として、サイドチェーンソリューションはそのコンセンサスの安全性がL1を引き継いでいないため、私たちはサイドチェーンをL2ソリューションに含めていません。
多くのソリューションの中で、Rollupsは徐々に市場の認知を得ており、イーサリアムの最も信頼できるスケーリングソリューションとなっています。一方で、このソリューションはL1のコンセンサスメカニズムと安全特性を直接引き継ぎ、他方でL1の安全性と主権を損なうことはありません。実際、Vitalikは率直に言っています。Rollupはイーサリアムの長期的なスケーリングソリューションの中で最も早く実現可能なものです。Rollupsの2つのソリューションであるOptimistic RollupsとZK Rollupsの最大の違いは、それぞれ詐欺証明(fraud proofs)と有効性証明(validity proofs)を使用してバッチ内の後状態根(post-state root)の正確性を保証している点です。
Rollupsソリューションにとって、L1からL2に資産を預け、L2からL1に戻す方法、さらに、あるL2ネットワークから別のL2ネットワークに資産を移動する方法は核心的な問題であり、この責任を担うインフラストラクチャをブリッジ(Bridge)と呼びます。
ネイティブブリッジの実装
私たちは現在の主流のRollupソリューションのネイティブブリッジの実装原理を研究し、OptimisticとzkSyncの各ソリューションから1つずつ代表を選び、比較しました。
Arbitrum
Arbitrumプロトコルは、L1とL2間の通信能力を利用して、理論的には信頼なしに任意の形式のイーサリアム資産(Ether、ERC20、ERC721など)をL1とL2間で移動できます。資産をL1からL2に移すと、資産はL1上のArbitrumブリッジコントラクトに預けられ、その後同じ数量の資産がL2上で鋳造され、指定されたアドレスに送られます。一方、資産をL2からL1に戻すと、L2上で資産が消失し、その後同量の資産がL1のブリッジコントラクトで利用可能になります。さらに、L2からL1に資産を引き出す際の重要な違いは、ユーザーが取引を送信した後、最終的にL1で実行されるまでにチャレンジ期間の終了を待たなければならないことです。これはOptimistic Rollupの安全モデルによって決定されます。
公式には、L1とL2間の通信には「再試行可能なチケット(Retryable Tickets)」メカニズムの使用が推奨されています。再試行可能なチケットの運用方法は大まかに次のようになります:L1からL2に送信された取引は最初にインボックスに保存され、calldata、callvalue、gas情報などの取引パラメータが付加されます。この取引が最初に実行に失敗すると、それはL2の「再試行バッファ(retry buffer)」に入れられます。これは、一定の期間(通常はチャレンジ期間、約1週間)内に誰でもこの取引を再実行してチケットを引き換えることができることを意味します。L2からL1への再試行取引には時間制限がなく、争議期間終了後の任意の時点で行うことができます。
このメカニズムの設計は、次のようなシナリオに対応するためです:あるユーザーが特定のトークンをL1からL2に預けたいと考えた場合、最初にこれらのトークンをL1のブリッジコントラクトに預け、同量のトークンをL2で鋳造します。L1上の取引が完了したと仮定しますが、L2上の取引が手数料不足で失敗した場合、深刻な問題が発生します:ユーザーはL1上でトークンを転送しましたが、L2上ではトークンを受け取っていません。実際、これらのトークンはL1のコントラクトにロックされています。再試行可能なチケットメカニズムを通じて、ユーザー(または他の誰でも)は、1週間以内に十分な手数料を使用してこの取引を再実行し、最終的にL2でトークンを取得できます。
以下はArbitrumネイティブブリッジの基本的なステップです:
L1 -> L2
ユーザーがL1からDeposit取引を開始します。
資産がL1コントラクトに預けられ、取引がインボックスにバッチで保存されます。
取引がL2で実行され、資産が指定されたアドレスに鋳造されます。
取引が失敗した場合、取引はL2の再試行バッファに保存され、ユーザーはチャレンジ期間内に再試行を開始できます。
L2 -> L1
ユーザーがL2からWithdraw取引を開始します。
L2チェーンは一定の時間内に収集した取引をパッケージ化し、マークルツリーを生成し、ルートノードをOutboxEntryとしてL1のOutboxに公開します。
ユーザーまたは誰でもルートノードと取引情報をマークル検証できます。
チャレンジ期間が終了した後、ユーザーはL1で取引を完了できます。取引が失敗した場合、ユーザーは再試行を開始できます。
詳細は公式文書を参照してください。
zkSync
ブリッジの実装において、zkSyncはArbitrumと比較して、主な違いはWithdraw時に取引の検証にゼロ知識証明に基づく有効性証明を使用している点です。その基本的なステップは次のとおりです:
L2 -> L1
ユーザーがL2でWithdraw取引を開始します:取引データをバイト列にエンコードし、正しいzkSyncプライベートキーでそのバイト列に署名し、取引説明のためにEthereum署名を生成するか、EIP-1712署名を提供し、対応するJSON RPCメソッドを通じて取引を送信します。
取引をL1に送信します:取引はzkSyncオペレーターが作成したブロックに入り、L1上のzkSyncスマートコントラクトに公開されます。
ブロックを検証します:数分後、そのブロックの正確性を証明するZK証明が生成され、その証明は検証取引を通じてL1に公開されます。この検証取引が完了するまで、Withdraw取引は完了しません。
詳細は公式文書を参照してください。
退出時間に関して、zk Rollupソリューションは明らかにOptimistic Rollupソリューションよりも優れていますが、zk Rollupが完全にEVMと互換性を持つにはまだ時間がかかるため、Optimistic Rollupは引き続き初期の主流L2ソリューションになると予想されます。そのため、第三者のブリッジを利用してOptimistic Rollupの退出期間が長すぎる問題を解決し、ユーザーにより良い使用体験を提供することがいくつかのチームの努力の目標となっています。
DeGate Bridgeの設計理念と実装原理
DeGate Bridgeの目標は、Rollupエコシステムの初期にイーサリアム資産の移行のハードルを最大限に低下させ、イーサリアム Rollupに基づく二層インフラストラクチャのアプリケーションの大規模な展開を支援することです。私たちは、現段階のインフラストラクチャの条件下で、優れたかつ十分な流動性ソリューションは以下の要件を満たす必要があると考えています:
第一に、異なるレイヤーの流動性分布を市場方式で自動調整できること。
第二に、資金効率を最大化する0資金凍結の非前払いソリューションを実現できること。
第三に、最低のガス消費と最適なユーザー体験も非常に重要です。
DeGate Bridgeは、最適化されたステーブルコインAMM曲線と取引市場の方式に基づいて、クロスレイヤー資産移転の迅速な通路を実現します。L2の状態を提供するオラクルの不完全さに制約され、初期のDeGate Bridgeは中央集権的な資産管理の方式で実現されます。イーサリアムL2上に成熟したオラクルサービスが登場した際には、DeGate Bridgeは去中心化の方式で資産のブリッジを実現します。
DeGate Bridgeの詳細な設計については、記事を参照してください:低スリッページAMM曲線に基づくクロスRollup流動性ソリューション
ブリッジソリューションの比較
この小節では、すでに稼働しているネイティブブリッジとDeGate Bridgeを実測し、主に以下の指標を考察します:
上下ブリッジのガス費用;
上下ブリッジの時効性;
操作の複雑さ;
私たちはテスト中にERC20トークンを使用し、ETH(ETHは承認が不要で、手数料も安いため)ではなく使用しました。また、ETHの価格を$4000、ガス価格を100Gweiとして手数料をフィッティングしました。
最終的な比較結果は以下の通りです。
Withdraw手数料計算方法の説明:
Optimism(SNX):出金操作は複数の取引を集約し、総手数料を取引数で割って計算します。
Arbitrum (Testnet):二層の費用は考慮せず、一層の取引消費ガス費用のみを計算します。
zkSync:費用は二層で複数のトークンで支払い、一層の取引計算で概算コストを算出します。
DeGate Bridge:費用は二層で複数のトークンで支払い、一層の取引計算で概算コストを算出します。
比較から次のことがわかります:
時効性:Optimistic Rollup(OptimismとArbitrumを含む)の下ブリッジ時間は一般的に2日から1週間かかり、パフォーマンスが悪いのに対し、DeGate Bridgeはパフォーマンスが良く、ほぼ即時です;
ガス費用:Optimismは最も悪く、DeGate Bridgeは手数料消費が最も少なく、特に承認の手数料も節約されます;
操作の複雑さ:DeGate Bridgeはユーザーが承認を必要とせずに直接取引でき、ユーザー体験がより良好です;
展望
私たちはLayer2とイーサリアム2.0の相次ぐ実現が、イーサリアムの二次成長曲線となり、イーサリアムが数兆ドル規模の経済バンド幅を支えるよう進化する機会をもたらすと信じています。そしてL2ブリッジはブロックチェーンインフラストラクチャの一部として、このプロセスで重要な役割を果たすでしょう。