一文でPolygonチームがzkEVMのために開発した新しいコンセンサスメカニズムPoEを理解する

ポリゴン
2022-02-14 17:35:25
コレクション
PoEコンセンサスメカニズムは、zk-rollupsのL2における分散化と無許可の検証者に関するいくつかの課題を解決することを目的としています。

著者:David Schwartz、Polygon Hermezプロジェクトリーダー; 開発者Jordi Baylinaとの共同執筆

編纂:バビット

私たちPolygon Hermezチームは現在、zkEVMの実装に取り組んでおり、この挑戦は私たちに分散型L2プロトコルのための新しいコンセンサスメカニズム、すなわちproof of efficiency(PoE)を研究・開発することを要求しています。

このコンセンサスメカニズムは、v1.0での既存のProof-of-Donation(寄付証明)の経験を活用し、最初の分散型zk-rollupを構築し、複数のコーディネーターの無許可参加をサポートすることを目的としています。これにより、L2でのバッチ生産が可能になります。

私たちはまだいくつかの選択肢を検討しており、v2.0(zkEVM)に向けてこのプロトコルを改善していますが、コミュニティと私たちの考えを共有し、フィードバックを受け取ることを楽しみにしています。

背景

zk-rollupsにおける分散化の課題は非常に大きく、これまでのところ良い解決策を見つけることは困難でした。この状況が発生するのは、PoSなどのプロトコルがL2上でいくつかの問題を抱えており、ネットワークがサービスレベルを維持できるようにするためには、高性能でzk有効性証明を生成する必要があるからです。取引バッチ(バッチ)(L2ブロック)を任意のランダムな検証者に割り当てることでは、これを保証できません。

寄付証明/燃焼証明(PoD/PoB)は、特定の時間範囲内にバッチを生成する権利を得るための分散型オークションモデルに基づいています。この場合、経済的インセンティブが設定されているため、検証者は非常に効率的でなければ競争力を持てず、これは大きな進歩を表しています。

このモデルの一つの問題は、特定の時間内にネットワークが悪意のある単一の参加者によって制御されることであり、影響を軽減する方法があっても、特にブートストラップ段階ではサービスレベルへの影響をゼロにすることは非常に困難です。

一方で、オークションプロトコルはコーディネーター/検証者にとって非常に高価で複雑であり、最も効率的な者だけが報酬を得ることができます。彼らは自動化を実現するのが難しく、オークションには事前に入札する必要があるため、予測の複雑性が非常に高くなります。

以前のプロトコルのもう一つの問題は、「勝者総取り」モデルの「最良」オペレーターに収束する選択の有効性です。これにより、わずかにパフォーマンスが劣るオペレーターが競争に参加することが許されません。その結果、この状況から生じる検閲制限により、ネットワークを制御するオペレーターが非常に中央集権的になってしまいます。

新しい要求

この新しいプロトコルは、L2 zk-rollupコンセンサスモデルに必要な重要な属性をカバーすることを目的としています:

  1. L2バッチの無許可アクセス
  2. 効率はネットワーク性能の鍵
  3. いかなる一方の制御も回避
  4. 悪意のある攻撃を防止
  5. ネットワーク内の価値に比例した総検証作業量

効率証明 (PoE) モデル

このバッチ生成プロトコルは、異なる当事者間で活動を分割する二段階モデルで構成されています。参加する第一の当事者はSequencer、第二の当事者はAggregatorです。

シーケンサー(Sequencers)

このモデルでは、SequencersはユーザーからL2取引を収集する当事者であり、彼らはすべての選択されたL2 TXデータを含むL1 TXを送信することで、ネットワーク内の新しいL2バッチを選択し、前処理します。誰でもSequencersになることができ、これは無許可の役割であり、ネットワークへのゲートウェイで構成されています。

興味深いことに、これらの提案されたバッチは、zk-rollupモデルのL1トランザクションに記録されます(またはValidiumの場合は異なるデータ可用性ネットワークに記録されます)。

このバッチ提案は、彼らが持つインセンティブに基づいて行われます:

  • 一つの可能性は、その資金プール内の取引の経済的価値です。
  • または、ユーザーのサービスレベルを満たす必要がある場合(手数料はSequencersが要求するため、相応に変動する可能性があります)。

ネットワークネットワークに新しいバッチを提案するために、SequencersはL1ネットワークのガス料金を支払う必要があり、すべてのバッチ取引データを含むTXを生成し、このプロトコルは必要な$MATICトークンの追加料金を定義します。これにより、Sequencersは有効な取引を持つ有効なバッチを提案するインセンティブを持ちます。

バッチ料金はネットワークの負荷に応じて変動し、プロトコルのスマートコントラクトによって自動的に呼び出されるパラメータに基づいて計算されます。

これらのバッチは、L1トランザクションの形式でCALLDATA内の情報を持ち、L2ネットワークのデータ可用性として使用され、任意の新しい無許可ノードが状態を同期でき、その情報から再構築することができます。

一度掘削されると、これらのデータ可用性L1トランザクションは、実行されるL2 TXと特定の順序を定義します。これにより、ネットワークノードがそれを仮想的な未来の状態として計算できる決定論的な新しい状態が作成されます。

もちろん、新しい状態(ZKP)の有効性証明がL1で生成され、掘削されると、この新しい状態は解決されます。これはプロトコルの第二部に対応します。

アグリゲーター(Aggregators)

もちろん、zk-rollupsの主な利点の一つは、有効性証明が提供する取引の迅速な決定性です。このプロトコルは、これらの証明の有効性を向上させることを試みています。

Aggregatorsは、効率証明コンセンサスプロトコルに無許可で参加する当事者です。

このメカニズムでは、L2の新しい状態の有効性証明を生成する権利(もちろん、txsの一部の手数料を徴収することを含む)は、最初のAggregatorsになることで得られます。

その動作は次のようになります:L1のSequencersが提案したバッチは、L1での出現位置に従って並べ替えられ、取引データを含みます。PoEスマートコントラクトは、新しい有効状態への更新を受け入れる最初の有効性証明を受け入れ、1つ以上の提案されたバッチを含みます。

ネットワークAggregatorsは、証明生成をトリガーするために目標を定義し、自身の戦略に基づいて競争します。

例えば、少数のTXを含むバッチがある場合、一部のAggregatorsは、より多くの価値が生成される前に証明を生成し、N個の提案バッチを含む状態変化の証明を生成することが興味深くないと感じるかもしれません。他のAggregatorsは異なる戦略を持つかもしれません。

競争に遅れたAggregatorsの場合、送信された証明が新しい状態を提案しない場合、スマートコントラクトはRevertを使用して実行し、全体の状態データベースのメルクルツリーハッシュを使用してチェックします。したがって、最初になることができないのは証明生成のコストですが、大部分のガス料金は回収されます。

もちろん、Aggregatorsが提案されたバッチを正しく処理した場合にのみ、証明が存在します。これは、彼らに順序があり、すべてを処理する必要があることを意味します。これは、Polygon Hermez v1.0で実装された「Force tx」に類似したメカニズムであり、この場合、検閲を回避するのに役立ちます。

このメカニズムは、一方の制御や多くの潜在的な攻撃を回避します。なぜなら、任意のSequencerがバッチを提案できるからですが、これはコストがかかります。Aggregatorsも無許可で参加することを選択できますが、そうしない場合、経済的価値に興味を持つ人が必ずやってくるでしょう。

私たちの例では、Polygon Hermezネットワークは、ブートストラップ段階で特定の頻度の新しい有効性証明をサポートするためにAggregatorsを起動します。

料金は次のように配分されます:

  • L2 TXからの料金は、有効性証明を生成した同じAggregatorによって処理され、配分されます。
  • すべてのTX料金は、各バッチに対応するSequencerに送信されます。
  • Sequencersがバッチを生成するために預けた料金は、Aggregatorに送信され、そのAggregatorはそのバッチを有効性証明に含めます。

結論

PoEコンセンサスメカニズムは、zk-rollupsのL2における分散化と無許可検証者のいくつかの課題を解決することを目的としています。

それは二段階モデルを定義し、次のことをサポートします:

  • 無許可のSequencerがプロトコルの参加者として利益を得ており、ネットワークのスケーラビリティの源でもあります。
  • Volition(zk-rollupとValidium)モードと完全に互換性のあるデータ可用性モデルが、ユーザーに異なるサービスレベルを提供できます。
  • データ可用性と有効性証明に基づく「最終」状態から「仮想」状態を計算します。このアーキテクチャは、異なる基準に基づいて有効性証明の頻度を設定することで、分散型zk-rollupのコストを大幅に削減できますが、取引を確認する唯一の解決策ではありません。
  • 無許可のアグリゲーターが、暗号証明生成の専門的なタスクを実行するためのスペースとして機能し、zkEVMプロトコルにとってコストが高いと予想されます。彼らにとって、インセンティブと報酬を管理するための非常にシンプルで直接的なモデルを提供します。
  • L2ネットワークの問題に対するネイティブな保護:例えば、悪意のある行為者からの攻撃や選定された検証者の技術的問題。
  • インセンティブモデル:ネットワークの最終性の性能を最大化するために。
ChainCatcherは、広大な読者の皆様に対し、ブロックチェーンを理性的に見るよう呼びかけ、リスク意識を向上させ、各種仮想トークンの発行や投機に注意することを提唱します。当サイト内の全てのコンテンツは市場情報や関係者の見解であり、何らかの投資助言として扱われるものではありません。万が一不適切な内容が含まれていた場合は「通報」することができます。私たちは迅速に対処いたします。
チェーンキャッチャー イノベーターとともにWeb3の世界を構築する