Delin Capital Research Institute: イーサリアム拡張のレイヤー 2 ロールアップ拡張ソリューションに関するディスカッション
編集者注: この記事は以下から引用しましたDealean Capital Research、許可を得てOdailyによって転載されました。
編集者注: この記事は以下から引用しました
、許可を得てOdailyによって転載されました。
2020 年 5 月、イーサリアム ネットワークでいわゆる「暗黒の木曜日」が起こりました。イーサリアムが過密状態になり、MakerDAO が期待どおりに動作できなくなりました。この場合、さまざまな参加者が「担保不足の資産」に入札する可能性があります。これは、1 人の参加者が 450 万ドル相当の ETH を 0 ドルで入札できることを意味します。 MakerDAO の大失敗は、スケーラビリティが不十分な場合の結果を示しました。
「暗黒の木曜日」が証明したように、イーサリアムの混雑によって引き起こされるこの種のセキュリティ上の脅威は、今日非常に深刻な問題となっています。)スケーラビリティの問題を解決するために、これらのソリューションは基本的にブロックチェーンを信頼のアンカーとして使用します。レイヤ 2 拡張テクノロジは、トランザクションをオフチェーンに移行します (基盤となるチェーンのトランザクション スループットを向上させるレイヤ 1 拡張テクノロジとは対照的です)。レイヤー 2 スケーリング ソリューションを構築すると、ブロックチェーンの利点の多く (セキュリティ、不変性、分散化など) を活用でき、必要なトレードオフや前提条件が少なくなります。イーサリアムレイヤー2拡張ソリューション
、今回のテーマは、Layer2 の理解に基づいて、イーサリアム コミュニティで人気のあるロールアップ拡張ソリューションについて話すことです。
副題
そもそもロールアップとは何でしょうか?
Rollup は、Plasma と同様のレイヤー 2 拡張ソリューションであり、Plasma から多くの概念を借用しています。 Rollup はある意味 Plasma に似ており、オフチェーンからメイン ネットワーク (つまりレイヤー 1) によって保護されているレイヤー 2 サイドチェーンにトランザクションを移行することでイーサリアムを拡張します。どちらのスケーリング シナリオでも、サイドチェーンに預けられたすべての資金とサイドチェーンの現在の状態の証拠を含むスマート コントラクトをメインネットにデプロイします。サイドチェーンのユーザーとオペレーターはサイドチェーンを維持し、有効な状態遷移がメインネット コントラクトに確実に送信されるようにします。
Rollup は「シャドウ チェーン」のアイデアに基づいて構築されており、オフチェーンで状態を強制し、イーサリアム ブロックチェーンのみを使用することでデータの可用性を実現します。 Rollup のブロック リリースまたはステータス更新は、tx CALLDATA を通じて各トランザクションのメイン チェーンに一部のデータのみをパブリッシュするため、スループットが向上し、サイド チェーンのデータ保留攻撃の問題が克服されます。
ロールアップには、オプティミスティック ロールアップと ZK ロールアップの 2 種類があります。これらは、サイドチェーン ブロックの有効性を保証するために採用するアプローチが異なります。オプティミスティック ロールアップの場合、有効性は不正証明と同期性の仮定によって保証されますが、ZK ロールアップの場合、有効性はゼロ知識証明によって保証されます。
副題
楽観的ロールアップとは何ですか?
OptimisticRollupのアイデアは、2019年7月のイーサリアム財団研究フォーラムでジョン・アドラーによって初めて提案され、OptimisticRollupはシャドウチェーンの元々のアイデアの概要に近いものです。 Optimistic Rollup に取り組んでいるチームには、Optimism (旧 Plasma Group)、Fuel Labs、Arbitrum などが含まれます。
オプティミスティック ロールアップとは、イーサリアム オプティミスティック仮想マシン (OVM) の使用を指します。技術的に言えば、これはイーサリアム仮想マシン (EVM) の統合であり、レイヤー 2 のデータ状態予測に基づいてレイヤー 1 の「楽観的」状態を実行します。これは次のように理解できます: Optimistic Rollup Layer2 チェーンでは、ユーザーはトランザクションとスマート コントラクトを処理するためのマシン (OVM) を持ち、日常の操作はすべて Layer2 マシンで実行されますが、Ethereum Layer1 チェーンでは、ユーザーは同じ OVM を持っていますOVM マシンですが、緊急事態が発生しない限り使用しません。レイヤ 2 OVM 操作が不正であると考える人は、レイヤ 1 OVM コンピュータ上で操作を再実行して、操作の信頼性を証明できます。オプティミスティック ロールアップ レイヤ 2 ノードになるには、ユーザー (A) のパフォーマンスが悪く、他のユーザー (B) が最終的にパフォーマンスを証明した場合、ユーザー (A) はレイヤー 1 スマート コントラクトに一部の資金をロックする必要があります (「ボンド アグリゲーター」になります)。ユーザー(A)の操作が不正であると判断した場合、ユーザー(A)のデポジットは減額され、ユーザー(B)はその減額された額と同額のデポジットを報酬として受け取ります。
Optimistic Rollup は単純な支払いと複雑なスマート コントラクトをサポートでき、既存のコード ベースのほとんどを Optimistic Rollup に簡単に移植できるため、Optimistic Rollup は直接的なソリューションとみなされます。一方で、スマートコントラクトをイーサリアムのメインチェーンからZKロールアップにシームレスに移行することは比較的困難です。
副題
ZKロールアップとは何ですか?
つまり、ZK Rollup はレイヤー 2 スケーリング ソリューションであり、すべての資金がメイン チェーン上のスマート コントラクトによって保持される一方、オフチェーンの計算と保存が実行され、サイド チェーンの有効性がゼロ知識証明によって検証されます。確認する。
ZK ロールアップは、もともと 2018 年に Barry Whitehat によって提案されました。そのセキュリティ保証は、基盤となる Layer1 (つまり、イーサリアム) のセキュリティ保証と同じであり、1 分以内にブロックを生成し、スループットを 2,000 tps に向上させることができます。 ZK Rollup によって実装されたプロジェクトには、Matter Labs と Starkware が含まれます。
ZK Rollup は、シャドウ チェーン内のブロックを完成させるまでに 2 週間待つ代わりに、不正行為のチャレンジをゼロ知識証明に置き換えます。口座と残高は個別のマークル ツリーで表されます。これらのマークル ルートにより、誰もデータを改ざんできないことが保証されます。各マークル ツリーのルート (1 つはアカウント用、もう 1 つは残高用) は、サイドチェーンの状態の「単純な表現」のみを提供するイーサリアム上のスマート コントラクトに保存され、他のすべてのデータはオフチェーンに保存されます。
ZK ロールアップは、ブロックを構築して状態を更新する人 (リレーラーと呼ばれる) と話しているようなものです。状態変化はハッシュ化されます。これは SNARK (ゼロ知識証明) の入力プロセスであり、ロールアップ ブロック内の各トランザクションの有効性証明が含まれます。トランザクションは集約され、ヘッダーのみが署名されてメインチェーンにコミットされます。したがって、イーサリアムチェーンに保存されるデータの量は減少します。すべての署名は、ZK-SNARK として知られるゼロ知識証明に置き換えられ、集約されたトランザクション レコードの圧縮が可能になります。
各署名の検証が単一の SNARK に置き換えられるため、計算も改善されます。情報のごく一部 (アドレス帳の 2 つのマークル ルートと残高/ノンス、両方とも 32 バイト) のみがメイン チェーンに追加され、それらは CALLDATA を介してオンチェーンで公開されるトランザクション データのごく一部にすぎません。ブロックまたは状態の更新を送信した後、ユーザーはゼロ知識証明の有効性を検証できます。挑戦的なトランザクションによって一部のデータが正しくないことがスマート コントラクトに伝えられた場合、そのブロックは最終的に無効になります。
これらのチャレンジは、ZK ロールアップの ZK-SNARK に置き換えられ、無効または不正な状態を送信することはできません。 SNARK は、この一連の取引が所有者によって正しく署名されたこと、および古いマークル ルートから新しいマークル ルートへの口座残高の更新が正しいことを証明します。したがって、中継者が無効または操作された状態をコミットすることは不可能です。
ZK Rollup は、ZK SNARK 証明をメインネット ロールアップ契約に送信します。メインネットのスマート コントラクトは、有効な証明を検証して受け入れます。このプロセスはほぼ瞬時に大規模に行われます。比較すると、オプティミスティック ロールアップは、レイヤー 2 のスマート コントラクトに適応するために常にある程度のスケーラビリティを犠牲にし、ユーザーがボンド アグリゲーターの無効なブロックに異議を唱える時間を確保できるように、そのプロセスもわずかに遅延します。


