Tas Dienes、EEAメインネットワーキンググループ
2020年12月
最近イーサリアムエコシステムの話題を追いかけているのであれば、おそらく高額の取引手数料とメインネットの限られた処理能力について聞いたことがあるでしょう。レイヤー2についても聞いたことがあるかもしれません。レイヤー2は、イーサリアム(レイヤー1)上で実行され、レイヤー1からセキュリティプロパティを継承し、トランザクション処理能力(スループット)を高め、トランザクション料金を下げる(運用コスト)、およびレイヤー1よりも高速なトランザクション確認。レイヤー2スケーリングソリューションはレイヤー1によって保護されますが、ブロックチェーンアプリケーションは、レイヤー1が対応できるよりもはるかに多くのユーザーまたはアクションまたはデータを処理できます。
レイヤー2は幅広い分野であり、多くのチームがさまざまなスケーリングソリューションを研究および構築しており、それらは時には競争力があり、時には補完的です。 L2ソリューションの主なカテゴリは次のとおりです。状態チャネル、側鎖 1 、プラズマ、楽観的なロールアップ、zkロールアップ、およびバリジウム。複数のカテゴリのプロパティを持つハイブリッドソリューションもいくつかあります。それぞれに、独自の長所、短所、およびトレードオフのセットがあります。各タイプのL2テクノロジーがどのように機能するか、およびそのトレードオフのニュアンスについて詳しく説明することは、この記事の範囲を超えていますが、他の多くの人がそれらについて書いています。 4,5,6,7
ほとんどのL2ソリューションは、サーバーまたはサーバーのクラスターを中心としており、それぞれがノード、バリデーター、オペレーター、シーケンサー、ブロックプロデューサー、または同様の用語と呼ばれる場合があります。実装に応じて、これらのL2ノードは、それらを使用する企業またはエンティティによって、サードパーティのオペレーターによって、または個人の大規模なグループ(Mainnetと同様)によって実行される場合があります。一般的に、トランザクションはL1に直接送信されるのではなく、これらのL2ノードに送信されます。次に、L2インスタンスはそれらをグループにバッチ処理してからL1に固定します。その後、それらはL1によって保護され、変更できなくなります。これがどのように行われるかの詳細は、L2テクノロジーや実装によって大きく異なります。
イーサリアムメインネットのオープンで分散化された性質が、より強力なセキュリティ/不変性、透明性、より低い運用コストなどの特定の利点を提供するという事実にもかかわらず、多くの企業は、プライベートエンタープライズイーサリアムの実装を含むプライベートブロックチェーン上でアプリケーションを構築または実験しています。 3 また、メインネット上にある他のすべてのアプリケーションと相互運用する機能(ネットワーク効果)。共通の参照フレームを共有することで、情報を相互に通信および共有または同期できない多数の孤立したサイロが不要に作成されることを回避できます。
これらの利点は、必要に応じてL2でも利用できます(透明度はオプションです)。 L2でのトランザクションは、L1によってアンパイアされ、保護されます。L1は、引き続き共通の参照フレームとして機能し、グローバルに一貫したトランザクションの順序付けと状態管理を保証します。アプリケーションはL2インスタンス内で簡単に相互運用でき、クロスチェーンメッセージングを介してL2間でトランザクションを実行できます。
エンタープライズ開発者やアーキテクトがパブリックチェーンではなくプライベートチェーンを構築することを選択した理由はたくさんあります。 2019年後半、ConsenSysのJohn Wolpertは、ビジネスでイーサリアムメインネットを使用するというアイデアに関する問題のリストを作成しました。 2 ここでは、Mainnetでの構築に対する問題または反対意見のリストの拡張バージョンを取り上げ、レイヤー2スケーリングソリューションが一部のアプリケーションのゲームをどのように変えることができるかを見ていきます。
ハイエンド:ステートチャネル、プラズマ、バリジウム、側鎖、および特定のハイブリッドソリューション。下端:zkロールアップと楽観的なロールアップ。速度と遅延の問題:CRMおよびERPシステムは、VisaまたはMastercardのような1秒あたりのトランザクション速度を必要としません(さらに、並列化によってこれらのTPSレートを取得できます...私をだましてはいけません)。ただし、ラウンドトリップとコンセンサスの待機時間が長いと、メインネットで行う可能性のあることがユーザーエクスペリエンスに悪影響を及ぼします。一部のL2ソリューションでは、トランザクションが次のL2ブロックに含まれることを経済的に保証する「即時」トランザクション確認を提供できます。
サイドチェーンは、サイドチェーン内でのブロック時間の短縮とファイナリティの高速化も提供できます(ただし、トランザクションはL1に固定されていません)。
L1セキュリティの利点を最大限に活用するためにL1でL2トランザクションを終了することは、依然としてL1ブロック時間に依存します。 L1のファイナリティ、L1の確認、またはL2の確認のみを待つ必要があるかどうかは、アプリケーションの詳細によって異なります。ファイナリティの問題:イーサリアムは「結果整合性」マシンです。それがEth2.0で変わっているとしたら、私にはわかりません…魔法のような速いファイナリティについての何か。私は知らないよ。私が知っていることは、私のすべてのシステムは、データへの変更が書き込まれた2番目に最終的なものであるということです。トランザクションはL2とL1の両方で終了する必要があるため、L2ではこれが少し複雑になる可能性があります。少なくとも、L1と同じレベルの複雑さです。
ただし、イーサリアム2.0は、新しいコンセンサスアルゴリズムであるCasperFFGを介してファイナリティを導入します。 Eth2への移行後、L1とL2の両方のトランザクションは、しばらくすると完了したと見なすことができます。ノイズの多いネイバーの問題:他のユーザーやネットワークアクティビティが私の操作を中断させてはなりません。予測可能な操作タイミングに依存するミッションクリティカルな操作を実行する企業として、私は「クリプトキティ」イベントが発生する可能性がないことを安心する必要があります。メインネットは公益事業ですが、メインネットでビジネスを行うために必要な読み取り、書き込み、および計算が他の人の活動によって這うように減らされないという合理的な保証があることを知っておく必要があります。 「ノイズの多いネイバー」がL1容量の大部分を消費することによって操作を混乱させる可能性がある程度は、L2テクノロジーのタイプとその実装方法によって異なります。プラズマやバリジウムなどの一部のテクノロジーは、L1にほとんどデータを書き込みません。このため、L2オペレーターは、トランザクションがL1でタイムリーに処理されるようにするために、必要に応じてより高いガス価格を支払うことができます。これらのソリューションは、「ノイズの多い隣人」に対して非常に耐性があります。
サイドチェーンもL1チェーンに依存しないため、この問題の影響を比較的受けません。ただし、トークンまたはデータをL1チェーンとの間で転送するには、L1の容量が必要です。
ロールアップスタイルのL2ソリューションは、L1の使用可能な容量によって制約され、メインネットの輻輳の影響をさらに受ける可能性があります。これらのL2トランザクションをL1に固定するためのL1ガスコストは、これらのトランザクションをL1で直接行うコストよりもはるかに低いため、オペレーターは、タイムリーな処理を保証するために、より高いトランザクション料金を支払うことができる場合があります。これらのソリューションは、前述のソリューションよりもノイズの多いネイバーに対する耐性が低くなりますが、L1で直接実行されるアプリケーションよりも耐性があります。
エンタープライズアプリケーションが他のアプリケーションとL2インスタンスを共有している場合、実装によっては、L2オペレーターは、そのL2インスタンスに関してある程度の保証されたスループットまたはSLAを提供できる場合があります。アプリケーションまたは企業は、独自のL2インスタンスをすべて所有している場合もあります。プライベートデータの問題:データの80%は、機密性の高い、内部または個人を特定できるクライアント、顧客、またはユーザーのデータと見なされます。暗号化だけでは不十分です。任意のデータは、任意の時間に匿名化および復号化できます。そして、フルノードを持っている人は誰でも、元帳のビットを永久に処理する必要があります。したがって、暗号化されたデータでさえパブリックチェーンに配置するのは好きではありません。特定のL2テクノロジー(バリジウム、サイドチェーン、Arbitrum SCSCなど)は、すべてのL2データをL2インスタンス内およびL1から除外することができます。
複数の企業が同じ共有L2インスタンスにデータを書き込んでいる場合、それらは(コンソーシアムのように)互いのデータを見ることができますが、企業が独自のインスタンスを持っている場合、データは非公開に保つことができます。セキュリティの問題:暗号化されたデータはまだデータ。 PIIとクライアントデータを暗号化されていてもピアツーピアプラットフォームに保存することはポリシーに違反します。ロールアップはすべてのトランザクションデータをL1に書き込みますが、他のソリューションは書き込みません。一部のL2ソリューションを使用すると、会社は、会社が管理するサーバー上で、すべてのL2データを自社に保持する独自のプライベートL2インスタンスを実行できます。
ブロックチェーンをデータベースとして使用することを避け、機密データをオフチェーンに保ちながらその長所を活用することに焦点を当てた設計パターンがあるため、最終的には機密データをブロックチェーンに配置する必要性を疑問視する必要があります。データの局所性の問題:GDPRでは次のことが可能である必要があります暗号化されている場合でも、PIIデータが保存されている場所を考慮します。そして、リクエストに応じてそのデータを完全に削除できるようにする必要があります。データがどこでも私によって制御されていない任意の数のノードに永続的に存在する場合…ええ。トランザクションデータをL1に書き込まない特定のL2ソリューションを使用すると、L2オペレーターは、既知の場所にL2データを保存するGDPR準拠のL2サービスを提供できます。必要なレベルのセキュリティを備えています。または、会社が独自のプライベートL2インスタンスを実行し、L2データを完全に制御することもできます。責任者の問題:私の法的構造では、データとビジネスロジックのすべての側面を処理する責任者が必要です。メインネットにデータを置くと、主要な責任者を失います。一部のL2ソリューションは、従来の方法でSLAとセキュリティを提供し、責任を負うことができるオペレーターによって実行されます。トランザクションコストの問題:イーサリアムガスの価格が上昇しています。 。何百万ものトランザクションを実行する必要がある場合、それはめちゃくちゃ高価になります。これは、L2が対処するために特別に設計されたもう1つの問題です。 L2トランザクションをL1に固定すると、L1で直接トランザクションを実行するよりもはるかに少ないガスを消費するため、L2トランザクションのコストははるかに低くなります。
正確な節約は、L2テクノロジーによって異なります。ステートチャネル、プラズマバリジウム、サイドチェーンなどのL2が最も経済的ですが、ロールアップなどのL1にトランザクションデータを格納するL2は、節約額が少なくなります(ただし、かなりの節約になります)。コストの予測不可能な問題:ガス価格が上下します。暗号価格は上下します。トランザクションの費用を予測するのは非常に困難です。特定のL2実装では、トランザクションごとに固定/保証価格を請求する可能性のあるオペレーターがいます。
サイドチェーンオペレーターは、チェーン運用のさまざまな期間(3か月、6か月、12か月)に対して定額料金を提供する場合があります。チェーン内のトランザクションはほとんどガスレスになります。
変動する市場ベースの価格設定の下でも、L2はトランザクションあたりのコストを大幅に削減します。 L2のタイプに応じて、L1のガス価格が変化するにつれてL2のトランザクションコストが直線的に変化する場合(ロールアップ)、またはL1に保存されるデータが少ないため(バリジウム、プラズマなど)、比較的分離される場合があります。全体的なコストが低いことを考えると、変動性の影響が軽減される可能性があります。暗号支払いの問題:私は暗号を保持し、暗号での取引の支払いをしなければなりません。私の会社の財務を暗号通貨での購入、保持、支払いに慣れることは悪夢です。L2インスタンスがサードパーティのオペレーターによって実行されている場合、オペレーターは、従来のフラットを含む、選択した任意の形式の通貨でL2トランザクションの支払いを受け入れることができます。
この問題は、フラットまたはトークンでの支払いを受け入れ、L1ネットワークにトランザクションを中継できるトランザクションリレー(別名ガソリンスタンド)によってL1で対処される場合もあります。戦略リーク問題:トランザクションメタデータを使用して、システムをゲーム化したり、収集/分析したりできます。戦略的防諜または企業。スパイ。 AIの時代では、永続的な公開元帳で行われたトレースアクティビティを使用して、Merkleの試行にわずかな変更を加えたとしても、誰が何をしているのかを把握できます。特定のテクノロジー(バリジウム、サイドチェーン、 Arbitrum SCSC)は、L2内およびL1外に含まれるL2トランザクションの詳細を保持できます。 L2は、許可されたエンティティへのアクセスを制限できます。会社が独自のプライベートL2インスタンスを実行している場合、トランザクションの詳細をプライベートに保つことができます(ただし、1つのエンティティのみが使用するL2のユースケースは限られている場合があります)。
ベースラインのようなアプローチを使用することも可能です。このアプローチでは、エンティティ間のトランザクションがプライベートに実行され、ZKの正当性の証明(バッチで収集)のみがL1またはL2のいずれかに送信されます。
zkzk-rollup(Aztec 2.0など)と呼ばれる新しいテクノロジーにより、L2内の機密トランザクションが可能になり、同じL2インスタンス上の他のユーザーがトランザクションを解読できないようになります。
また、レイヤー2内のTEE内を除いてデータをプライベートに保つために、アクセス権管理、分散キー生成、および信頼できる実行環境に依存するデータプライバシーおよび保管プロトコルも開発中です。機密コード問題: ZK-SNARKSのようなものでデータを隠し、企業の観点からはすべて問題ないと考えてください。多くのビジネス契約は、コード…ビジネスロジックで具体化されています。マシンがスマートコントラクトを実行できる場合、ロジックを逆コンパイルして確認する可能性があり、機密情報が漏洩する可能性があります。一部のL2は、スマートコントラクトとコードの実行をサポートしていません。
トランザクションでコードの実行が必要な場合は、ベースラインのようなアプローチを使用できる可能性があります。このアプローチでは、エンティティ間のトランザクションが非公開で行われ、ZKの正当性の証明のみがL1またはL2に送信されます。
zkzk-rollup(例:Aztec 2.0)と呼ばれる新しいテクノロジーにより、L2内の機密トランザクションが可能になり、同じL2インスタンス上の他のユーザーがトランザクションを解読できないようになります。 。私はそれに関連付けられたくありません。政府が公共のブロックチェーンを取り締まるとどうなるか心配です。イーサリアムの公共利用が増えるにつれて、どの政府もネットワークを検閲またはブロックすることが難しくなります。犯罪者による使用を排除または削減するための世界的な取り組みがあるかもしれませんが、分散型コンピューティングとパブリックネットワークの成長を未然に防ぐことはできません。共有プロトコル、デジタル通貨/トークン、信頼できない自動化された契約実行の利点、およびその他のWeb3の利点は、強力すぎて止められません。
L2でアプリケーションを実行すると、パブリックL1ブロックチェーンからある程度分離できます。 L2は、セキュリティと説明責任を備えた従来のビジネスITインフラストラクチャのように運用され、ビジネスと規制されていないアクティビティの間のバッファとして機能しますが、それでもL1はアンパイアとして機能し、不変性、相互運用性、および共通の参照フレームの利点があります。 L1が提供するもの。
イーサリアムメインネットのレイヤー2スケーリングソリューションは、過去数年間開発中であり、現在、実際のアプリケーションに対応できるようになっています。レイヤー2でアプリケーションを構築すると、すべての操作をレイヤー1で直接実行するよりもはるかに高いスループットを実現でき、トランザクションコストを最小限に抑えることができます。レイヤー2は、プライバシー、トランザクションの機密性、およびデータ管理に関連する問題の解決にも役立ちます。また、取引の支払い時に暗号通貨トークンや価格の変動に対処する必要性を回避するのに役立ちます。
多くのL2ソリューションがあり、それぞれに長所と短所、およびトレードオフがあります。選択する前に、アプリケーションの要件を慎重に検討し、利用可能なオプションを検討することをお勧めします。
本番環境に対応している、または間もなくリリースされるL2ソリューションの例は次のとおりです。
この記事にご意見をお寄せいただいたJohnWolpert、Ken Fromm、JackLeahyに感謝します。