イーサリアムプロトコルの可能性のある未来、パート1: ザ・マージ

上級10/22/2024, 4:19:33 AM
この記事では、Ethereumの「Merge」について取り上げ、証明ステークの技術設計の改善領域やこれらの改善を実現するための潜在的な方法について探求します。

元々、「the Merge」とは、イーサリアムプロトコルの歴史上で最も重要なイベントを指していました。それは、プルーフ・オブ・ワークからプルーフ・オブ・ステークへの待ち望まれた移行でした。今日、イーサリアムはほぼまったく2年間、安定して稼働しており、このプルーフ・オブ・ステークは非常に優れたパフォーマンスを発揮しています。安定性, パフォーマンスと中央集権リスクを回避するただし、証明書のステークにはまだ改善が必要な重要な領域がいくつか残っています。

2023年の私のロードマップ図は、技術的な安定性、パフォーマンス、および小規模な検証者へのアクセシビリティの向上など、バケツに分けられました。また、中心化のリスクに対処するための経済的な変化も行われました。前者は「合併」の見出しを引き継ぐことになり、後者は「スカージュ」の一部となりました。

マージ、2023年ロードマップ版。

この投稿では、「マージ」の部分に焦点を当てます:証明のステークの技術的デザインでまだ改善できる点は何か、そしてそこに到達するためのいくつかの方法は何ですか?

これはステークの証明に行われる可能性のあることの完全なリストではなく、積極的に検討されているアイデアのリストです。

マージ:主要な目標

  • 単一スロット最終性
  • できるだけ速やかにトランザクションの確認と最終化を行いながら、分散を保つ
  • ソロステーカーのステーキングの持続可能性を向上させる
  • 堅牢性を向上させる
  • 51%攻撃(最終性逆転、最終性ブロッキング、検閲を含む)からの抵抗および回復能力を向上させる

この章で

シングルスロットの最終性とステーキングの民主化

私たちは何の問題を解決しているのですか?

今日、ブロックを確定するには2〜3エポック(約15分)かかり、ステーカーになるには32 ETHが必要です。これはもともと妥協案でしたが、@VitalikButerin/parametrizing-casper-the-decentralization-finality-time-overhead-tradeoff-3f2011672735">3つの目標のバランス:

  • ステーキングに参加できるバリデータの数を最大化すること(これは直接、ステーキングに必要な最小ETHを最小限に抑えることを意味します)
  • 最終性への時間を最小限に抑える
  • ノードを実行する際のオーバーヘッドを最小限に抑えること、この場合は、他のすべてのバリデータの署名をダウンロード、検証、再ブロードキャストするコストを指します

3つの目標は対立しています:経済的な最終性を可能にするために(つまり、攻撃者が確定済みのブロックを元に戻すために大量のETHを燃やす必要がある)、全てのバリデータが最終性が発生するたびに2つのメッセージに署名する必要があります。そして、もし多くのバリデータがいる場合、全ての署名を処理するのに長い時間がかかるか、全ての署名を同時に処理するために非常に頑丈なノードが必要です。

Ethereumの主要目標の1つであることに注意してください:成功した攻撃でも攻撃者にとって高いコストがかかるようにすることです。これが「経済的確定」という用語で意味されているものです。この目標を持たなければ、各スロットを確定するために委員会をランダムに選択することでこの問題を解決することができます。Algorandなどの経済的確定を目指さないチェーンは、これをよく行いますしかし、このアプローチの問題点は、もし攻撃者がバリデーターの51%を制御している場合、攻撃を行うことができるということです(確定済みのブロックを再度変更したり、検閲したり、最終性を遅らせたり)。攻撃に参加していると検出され、ペナルティを科される可能性があるのは、委員会にいるノードの部分だけであり、そのコストは非常に低いです。スラッシングまたは社会的に調整されたソフトフォークこれは、攻撃者が連続してチェーンを何度も攻撃でき、各攻撃で自分のステークの一部しか失わないことを意味します。したがって、経済的な最終性を望む場合、単純な委員会ベースのアプローチは機能せず、最初から見ると、完全なバリデータセットが参加する必要があるようです。

理想的には、経済的最終性を維持しつつ、現状を2つの領域で同時に改善したいと考えています。

  1. 1つのスロットでブロックを最終化します(理想的には、現在の12秒の長さを維持するか、さらに短縮します)、15分ではなく
  2. バリデーターが1 ETHでステークできるようにする(32 ETHからダウン)

最初の目標は、両方とも「イーサリアムの特性を(より中央集権的な)パフォーマンス重視のL1チェーンと一致させる」と見なすことができる2つの目標によって正当化されています。

まず、それはすべてのイーサリアムユーザーが実際に最終性メカニズムを通じて達成されたより高いレベルのセキュリティ保証から実際に利益を得ることを確認します。 今日、ほとんどのユーザーはそうではありません、なぜなら彼らは15分待つことを望んでいないからです。シングルスロット最終性により、ユーザーはトランザクションが確認されるとほぼすぐにそれらのトランザクションが最終化されることを見ることができます。 2番目に、ユーザーやアプリケーションがチェーンがリバートする可能性を心配する必要がない場合、プロトコルと周辺のインフラが簡素化されます。その比較的まれなケースを除いて、アクティビティリーク.

第2の目標は、ソロステーキングをサポートするという願望によって正当化されています。投票の後も繰り返し示されるのは、ソロステーキングをもっと多くの人々が行わない主な要因は32 ETHの最小値であるということです。最小値を1 ETHに減らすことで、他の懸念事項がソロステーキングを制限する主要な要因となるまで、この問題を解決することができます。

課題があります: より速い確定とより民主化されたステーキングの目標は、オーバーヘッドを最小限に抑えるという目標と相反します。実際、これが一つのスロット確定から始めなかった理由全体です。ただし、より最近の研究では、この問題を回避するいくつかの可能な方法が示されています。

それは何ですか? それはどのように機能しますか?

シングルスロットの確定性は、1つのスロットでブロックを確定するコンセンサスアルゴリズムを使用することを意味します。これ自体は難しい目標ではありません:多くのアルゴリズム、たとえばTendermintコンセンサス、すでに最適な特性を備えています。TendermintがサポートしていないEthereumに固有の望ましい特性の1つは、プロトコルです。不活性リーク, そのため、バリデータの1/3以上がオフラインになっても、チェーンを維持し、最終的に回復させることができます。幸いなことに、この要望はすでに対応されています: があります既に提案Tendermintスタイルのコンセンサスを変更して、不活性リークを受け入れる

主要なシングルスロットファイナリティ提案

問題の難しい部分は、非常に多くのバリデータを使用してシングルスロットの確定性を実現する方法を見つけることであり、これによってノードオペレータの過大なオーバーヘッドが発生することなく行う方法を見つけることです。そのためには、いくつかの主要な解決策があります:

  • オプション1:ブルートフォース-より良い署名集約プロトコルの実装に力を入れ、ZK-SNARKsを使用する可能性があります。これにより、実際には各スロットから何百万ものバリデータの署名を処理できるようになります。

ホーン、より良い集約プロトコルの提案されたデザインの1つ。

  • オプション2:オービット委員会- ランダムに選択された中規模の委員会がチェーンの最終決定を担当する新しいメカニズムですが、攻撃コストの特性を保持しながら行う方法です。

    Orbit SSFについて考える1つの方法は、x=0(Algorandスタイルの委員会、経済的ファイナリティなし)からx=1(現状維持のイーサリアム)までのスペクトルに沿って妥協の選択肢の余地を開き、イーサリアムが依然として非常に安全であるのに十分な経済的ファイナリティを持っている中間点を開くと同時に、各スロットに参加するために中規模のバリデーターのランダムサンプルのみを必要とするという効率上の利点を得るということです。

Orbitは、検証者のデポジットサイズの既存の異質性を活用して、可能な限り経済的な確定性を得る一方で、小さな検証者にも比例した役割を与えます。さらに、Orbitは遅い委員会の交代を使用して、隣接するクオラム間の高い重複を確保し、経済的な確定性が委員会の切り替えの境界でも適用されるようにします。

  • オプション3: 二段階のステーキング - 預金要件が高いステーカーと低い預金要件がある2つのクラスがあるメカニズム。 高預金ティアだけが経済的な最終性を提供するのに直接関与する。 さまざまな提案があります(例: 参照レインボー・ステーキング・ポスト) for exactly what rights and responsibilities the lower-deposit tier has. Common ideas include:
    • ハイアーティアステイカーにステークを委任する権利
    • 各ブロックを証明し、最終確定するために必要な下位ティアのステーカーのランダムサンプル
    • 生成権インクルージョンリスト

残っていることは何か、そしてトレードオフは何ですか?

主要な可能な経路は4つあります(ハイブリッド経路も取ることができます):

  1. 現状維持
  2. Brute-force SSF
  3. Orbit SSF
  4. 二段階のステーキングを備えたSSF

(1)は何もせずにステーキングをそのままにしておくことを意味しますが、それはイーサリアムのセキュリティ体験とステーキングの中央集権化の特性をより悪化させる可能性があります。

(2)高度技術を駆使して問題を解決します。これを実現するには、非常に短期間(5-10秒)で非常に多くの署名(100万以上)を集約する必要があります。このアプローチを考える一つの方法は、カプセル化された複雑さを受け入れることで、システムの複雑さを最小限に抑える.

(3)「ハイテク」を避け、プロトコルの仮定を巧妙に再考することで問題を解決します:「経済的な最終性」の要件を緩和し、攻撃が高価であることを要求しますが、攻撃のコストが今日の10倍少なくても問題ありません(例:攻撃のコストが250億ドルではなく、25億ドル)。今日のイーサリアムには必要以上に経済的な最終性があるという共通の見解があり、その主なセキュリティリスクは他にあると言えるため、これはおそらく許容できる犠牲です。

主な作業は、Orbitメカニズムが安全で望んでいる特性を持っていることを検証し、それを完全に形式化して実装することです。さらに、EIP-7251 (最大有効残高の増加)任意のバリデータ残高統合を可能にし、チェーンの検証オーバーヘッドを即座にある程度削減し、Orbitの展開の効果的な初期段階として機能します。

(4)巧妙な再考やハイテクを避けますが、中央集権化のリスクを依然として抱える2段階のステーキングシステムを作成します。リスクは、下位ステーキング層が得る具体的な権利に大きく依存します。例えば:

  • 低位ステーカーが高位ステーカーに彼らの証明権を委任する必要がある場合、委任は中央集権化する可能性があり、その結果、ステーキングの2つの高度に中央集権化された層になるかもしれません。
  • もし下位層のランダムサンプルが各ブロックを承認する必要がある場合、攻撃者はごく少額のETHを使って最終性をブロックすることができます。
  • もし下位のステーカーが含蓄リストしか作れない場合、証明層は中央集権的なままであり、その時、証明層への51%攻撃は含蓄リスト自体を検閲する可能性があります。

複数の戦略を組み合わせることができます。例えば:

(1 + 2):シングルスロットの最終性を行わずに、力ずくのテクニックを使用して最小入金額を削減します。純粋な(3)の場合よりも必要な集計量は64倍少なくなるため、問題はより簡単になります。

(1 + 3): シングルスロットの最終性を行わずにオービットを追加します

(2 + 3): 保守的なパラメータ(たとえば、8kまたは32kではなく、128kのバリデータ委員会)を使用して、Orbit SSFを実行し、その超効率化を実現するために総当たり技術を使用します。

(1 + 4): シングルスロットの最終確定を行わずにレインボーステーキングを追加する

他の部分とどのように連携しますか?

その他の利点に加えて、シングルスロットの最終性はリスクを減らします特定の種類のマルチブロックMEV攻撃また、証明者-提案者の分離設計やその他のプロトコル内のブロック生成パイプラインは、1つのスロットの最終性の世界では異なる設計が必要となるでしょう。

Brute-force strategies have the weakness that they make it harder to reduce slot times.

シングルシークレットリーダー選挙

私たちはどんな問題を解決しているのですか?

今日、次のブロックを提案するバリデータが事前にわかっています。これによりセキュリティ上の脆弱性が生じます。攻撃者はネットワークを監視し、どのバリデータがどのIPアドレスに対応しているかを特定し、ブロックを提案しようとしているときに各バリデータにDoS攻撃を行うことができます。

それは何ですか? そしてそれはどのように機能しますか?

DoS問題を修正する最良の方法は、少なくともブロックが実際に生成されるまで、次のブロックを生成する検証者が誰であるかに関する情報を隠すことです。この要件を削除すれば簡単です。1つの解決策次のブロックを作成できるようにするが、を要求するランダオリヴィール2256 / N未満であること。平均して、この要件を満たすことができるバリデーターは1人だけですが、2人以上いる場合もあれば、ゼロの場合もあります。「秘密保持」要件と「単一」要件の組み合わせは、長い間難しい問題でした。

シングルシークレットリーダー選出プロトコルは、いくつかの暗号技術を使用して各バリデータのために「ブラインドされた」バリデータIDを作成し、その後、多くの提案者に、ブラインドされたIDのプールをシャッフルして再ブラインドする機会を与えることで、これは、ミックスネットworks). 各スロット中、ランダムなブラインドされたIDが選択されます。そのブラインドされたIDの所有者のみが有効な証拠を生成してブロックを提案できますが、他の誰もがそのブラインドされたIDがどの検証者に対応しているかを知りません。

ホイッスルSSLEプロトコル

残っていることは何か、そしてトレードオフは何ですか?

現実的に残されているのは、メインネットワークで実装することに快適であると感じる十分にシンプルなプロトコルを見つけて実装することです。私たちは、Ethereumが比較的シンプルなプロトコルであることを非常に重要視しており、複雑さがさらに増すことは望んでいません。私たちが見てきたSSLEの実装では、数百行の仕様コードが追加され、複雑な暗号技術で新しい仮定が導入されています。効率的な量子耐性のあるSSLEの実装を見つけることも未解決の問題です。

SSLEの導入によって追加される余分な複雑さが、他の理由(状態ツリー、ZK-EVMなど)でイーサリアムプロトコルのL1に一般目的のゼロ知識証明を行うための機構を導入することで、十分に軽減される可能性があります。

代替オプションは、単にSSLEを気にしない選択肢であり、DoSの問題を解決するためにプロトコル外の緩和策(例:p2pレイヤーで)を使用することもできます。

他の部分のロードマップとどのように連携しますか?

もしattester-proposer separation (APS) mechanism、例えば、を追加したら、実行チケット, その後、実行ブロック(つまり、イーサリアム取引を含むブロック)にはSSLEが必要なくなります。なぜなら、ブロックビルダーが専門家であることを信頼できるからです。しかし、コンセンサスブロック(つまり、アテステーションやインクルージョンリストの一部などのプロトコルメッセージを含むブロック)では、依然としてSSLEから利益を得るでしょう。

より速い取引確認

私たちはどの問題を解決していますか?

イーサリアムには価値があります取引確認時間がさらに短縮されています,12秒から例えば4秒まで。これを行うことで、L1とベースのロールアップのユーザーエクスペリエンスが大幅に向上し、同時にdefiプロトコルも効率的になります。また、L2の分散化が容易になり、大規模なL2アプリケーションの稼働を可能にするでしょう。ベースのロールアップ, L2が独自の委員会ベースの分散シーケンシングを構築する需要を減らす。

それは何ですか? そしてそれはどのように機能しますか?

ここには大きく2つの技術ファミリーがあります。

  1. スロットの時間を短縮し、例えば。8秒または4秒。これは必ずしも4秒の確定を意味するものではありません:確定には本質的に3ラウンドの通信が必要であり、そのため、通信の各ラウンドを別々のブロックにすることができます。これにより、少なくとも予備的な確認が得られます。
  2. スロットの間に提案者が事前確認を公開できるようにします。極端な場合、提案者はリアルタイムでブロックに見ている取引を含め、各取引について直ちに事前確認メッセージを公開することができます(「私の最初の取引は0×1234...」、「私の2番目の取引は0×5678...」)。提案者が2つの矛盾する確認を公開する場合は、次の2つの方法で対処できます:(i)提案者をスラッシュするか、(ii)アテスターを使用して、どちらがより早く到着したかに投票する。

何が残っているか、そしてどんなトレードオフがありますか?

スロットの時間を短縮することが実用的であるかどうかはまだ明確ではありません。現在でも、世界の多くの地域で、アテステーションを十分に速く含めることに苦労しています。4秒間のスロット時間を試みることは、バリデータセットを中央集権化のリスクにさらし、遅延のために特権的な地理の外部にバリデータになることが実用的でなくなる可能性があります。具体的には、4秒のスロット時間に移行するには、ネットワークの遅延(「デルタ」)のバウンドを2秒に短縮する必要があります。

提案者の事前確認アプローチには、平均的なケースの含まれる時間を大幅に改善できるという弱点がありますが、最悪のケースでは改善されません。現在の提案者が正常に機能している場合、お客様の取引は平均6秒ではなく0.5秒で事前確認されますが、現在の提案者がオフラインまたは正常に機能していない場合、次のスロットが開始され、新しい提案者が提供されるまで最大12秒待つ必要があります。

さらに、事前確認がどのようにインセンティブ付けされるかという未解決の問題もあります。提案者はできるだけ長い間、オプション性を最大限に活用する動機があります。もし証人が事前確認のタイムリネスに署名すれば、取引送信者は手数料の一部を即時事前確認に条件付けることができますが、これは証人に追加の負担をかけ、証人が中立的な「ダムパイプ」としての機能を続けることがより困難になる可能性があります。

一方、これを試みずに最終性の時間を12秒(またはそれ以上)に保持すると、エコシステムはレイヤー2によって作成された事前確認メカニズムにより重きを置くようになり、クロスレイヤー2の相互作用がより長くなります。

ロードマップの他の部分とどのように相互作用しますか?

提案者ベースの事前確認は、実際には、アテスター-提案者分離(APS)メカニズムに依存しており、例えば、実行チケットそれ以外の場合、リアルタイムの事前確認を提供する圧力は、通常の検証者にとってあまりに中央集権化されすぎる可能性があります。

スロットの短い時間は、実装するAPSのバージョンや含有リストなどに大きく依存するため、実際のスロット構造にも大きく依存します。スロット構造には、より少ないラウンドを含むものもあり、そのためスロットの短い時間にもより親しみやすくなりますが、その代わり他の場所でトレードオフを行います。

その他の研究分野

51%攻撃の回復

51%攻撃が発生した場合(検証不可能な攻撃を含む)、コミュニティが一丸となって実施するという前提がしばしばあります。少数派ソフトフォーク善良な人々が勝ち、悪い人々が不活性に漏洩されたり削られたりすることを保証する、しかし、このような社会的レイヤーへの過度の依存度はおそらく健康ではないと言えます。我々は、回復プロセスをできるだけ自動化することで、社会的レイヤーへの依存を減らすことができます。

完全な自動化は不可能です、なぜなら、もしそれが可能であれば、それは50%を超える耐障害トレランスコンセンサスアルゴリズムとしてカウントされ、私たちはすでにその(非常に制限的な)ことを知っていますその種のアルゴリズムの数学的に証明可能な制限しかし、部分的な自動化は達成できます:たとえば、クライアントは、十分な期間、クライアントが長い間見てきたトランザクションを検閲する場合、チェーンを最終化またはフォーク選択のヘッドとして自動的に拒否することができます。重要な目標は、攻撃の中で少なくとも悪者が簡単に勝利できないようにすることです。

クォーラム閾値の増加

今日、ブロックは、67%のステーカーがサポートする場合に最終化されます。これは過度に攻撃的であるとの議論があります。イーサリアムの歴史全体で(非常に短い)最終化失敗が1回だけありました。この割合を例えば80%に増やすと、非最終化期間の追加数は比較的少なくなりますが、イーサリアムはセキュリティ特性を獲得します。特に、多くの論争の状況が一時的な最終停止につながることになります。これは、「間違った側」が攻撃者である場合だけでなく、クライアントにバグがある場合にも、即時の勝利を得るよりもはるかに健全な状況のように思われます。

これは、「ソロステーカーの目的は何ですか?」という質問にも答えています。今日、ほとんどのステーカーは既にプールを通じてステーキングしており、ソロステーカーがステークされたETHの51%に達する可能性は非常に低いようです。ただし、特にクォーラムが80%である場合(つまり、クォーラムをブロックする少数派は21%しか必要がない)、ソロステーカーをクォーラムをブロックする少数派に引き上げることは、努力すれば達成可能なように思われます。ソロステーカーが51%攻撃(最終性の逆転または検閲)に加担しない限り、そのような攻撃は「完全な勝利」を得ることができず、ソロステーカーは少数派ソフトフォークを組織するのを手助けする動機が生まれるでしょう。

クォーラムのしきい値とOrbitメカニズムとの相互作用に注意してください。Orbitを使用することになった場合、「ステーカーの21%」とは具体的にどういう意味かはより複雑な問題になり、一部はバリデータの分布に依存します。

量子耐性

Metaculusは現在信じています, ただし、幅広い誤差範囲を持つものの、量子コンピュータはおそらく2030年代のある時点で暗号を解読し始める可能性が高いとされています:

量子コンピューティングの専門家であるScott Aaronsonなどは、最近、量子コンピューターが実際に中期間で動作する可能性を考え始めました。はるかに真剣にこれには、Ethereumの全体のロードマップに影響が出ます:現在楕円曲線に依存しているEthereumプロトコルの各部分には、ハッシュベースまたはその他の量子耐性のある置換が必要になります。特に、これは、我々が次に進むことができるとは仮定できないことを意味します。BLS集約の優れた特性大きなバリデーターセットからの署名を永久に処理します。これは、プルーフ・オブ・ステーク設計の性能に関する仮定の保守主義を正当化するものであり、また、耐量子性の代替案の開発に積極的に取り組むべき理由にもなります。

免責事項:

  1. この記事は[から転載されましたビタリックブテリン], すべての著作権は元の著者に帰属します [ヴィタリック・ブテリン]. If there are objections to this reprint, please contact the Gate Learn(ゲート・ラーン)チームは、迅速に対処します。
  2. 責任の免責事項:この記事で表現されている意見および見解は、著者個人のものであり、いかなる投資アドバイスを構成するものではありません。
  3. 他の言語への記事の翻訳は、Gate Learnチームによって行われます。特に言及されていない限り、翻訳された記事のコピー、配布、または盗用は禁止されています。

イーサリアムプロトコルの可能性のある未来、パート1: ザ・マージ

上級10/22/2024, 4:19:33 AM
この記事では、Ethereumの「Merge」について取り上げ、証明ステークの技術設計の改善領域やこれらの改善を実現するための潜在的な方法について探求します。

元々、「the Merge」とは、イーサリアムプロトコルの歴史上で最も重要なイベントを指していました。それは、プルーフ・オブ・ワークからプルーフ・オブ・ステークへの待ち望まれた移行でした。今日、イーサリアムはほぼまったく2年間、安定して稼働しており、このプルーフ・オブ・ステークは非常に優れたパフォーマンスを発揮しています。安定性, パフォーマンスと中央集権リスクを回避するただし、証明書のステークにはまだ改善が必要な重要な領域がいくつか残っています。

2023年の私のロードマップ図は、技術的な安定性、パフォーマンス、および小規模な検証者へのアクセシビリティの向上など、バケツに分けられました。また、中心化のリスクに対処するための経済的な変化も行われました。前者は「合併」の見出しを引き継ぐことになり、後者は「スカージュ」の一部となりました。

マージ、2023年ロードマップ版。

この投稿では、「マージ」の部分に焦点を当てます:証明のステークの技術的デザインでまだ改善できる点は何か、そしてそこに到達するためのいくつかの方法は何ですか?

これはステークの証明に行われる可能性のあることの完全なリストではなく、積極的に検討されているアイデアのリストです。

マージ:主要な目標

  • 単一スロット最終性
  • できるだけ速やかにトランザクションの確認と最終化を行いながら、分散を保つ
  • ソロステーカーのステーキングの持続可能性を向上させる
  • 堅牢性を向上させる
  • 51%攻撃(最終性逆転、最終性ブロッキング、検閲を含む)からの抵抗および回復能力を向上させる

この章で

シングルスロットの最終性とステーキングの民主化

私たちは何の問題を解決しているのですか?

今日、ブロックを確定するには2〜3エポック(約15分)かかり、ステーカーになるには32 ETHが必要です。これはもともと妥協案でしたが、@VitalikButerin/parametrizing-casper-the-decentralization-finality-time-overhead-tradeoff-3f2011672735">3つの目標のバランス:

  • ステーキングに参加できるバリデータの数を最大化すること(これは直接、ステーキングに必要な最小ETHを最小限に抑えることを意味します)
  • 最終性への時間を最小限に抑える
  • ノードを実行する際のオーバーヘッドを最小限に抑えること、この場合は、他のすべてのバリデータの署名をダウンロード、検証、再ブロードキャストするコストを指します

3つの目標は対立しています:経済的な最終性を可能にするために(つまり、攻撃者が確定済みのブロックを元に戻すために大量のETHを燃やす必要がある)、全てのバリデータが最終性が発生するたびに2つのメッセージに署名する必要があります。そして、もし多くのバリデータがいる場合、全ての署名を処理するのに長い時間がかかるか、全ての署名を同時に処理するために非常に頑丈なノードが必要です。

Ethereumの主要目標の1つであることに注意してください:成功した攻撃でも攻撃者にとって高いコストがかかるようにすることです。これが「経済的確定」という用語で意味されているものです。この目標を持たなければ、各スロットを確定するために委員会をランダムに選択することでこの問題を解決することができます。Algorandなどの経済的確定を目指さないチェーンは、これをよく行いますしかし、このアプローチの問題点は、もし攻撃者がバリデーターの51%を制御している場合、攻撃を行うことができるということです(確定済みのブロックを再度変更したり、検閲したり、最終性を遅らせたり)。攻撃に参加していると検出され、ペナルティを科される可能性があるのは、委員会にいるノードの部分だけであり、そのコストは非常に低いです。スラッシングまたは社会的に調整されたソフトフォークこれは、攻撃者が連続してチェーンを何度も攻撃でき、各攻撃で自分のステークの一部しか失わないことを意味します。したがって、経済的な最終性を望む場合、単純な委員会ベースのアプローチは機能せず、最初から見ると、完全なバリデータセットが参加する必要があるようです。

理想的には、経済的最終性を維持しつつ、現状を2つの領域で同時に改善したいと考えています。

  1. 1つのスロットでブロックを最終化します(理想的には、現在の12秒の長さを維持するか、さらに短縮します)、15分ではなく
  2. バリデーターが1 ETHでステークできるようにする(32 ETHからダウン)

最初の目標は、両方とも「イーサリアムの特性を(より中央集権的な)パフォーマンス重視のL1チェーンと一致させる」と見なすことができる2つの目標によって正当化されています。

まず、それはすべてのイーサリアムユーザーが実際に最終性メカニズムを通じて達成されたより高いレベルのセキュリティ保証から実際に利益を得ることを確認します。 今日、ほとんどのユーザーはそうではありません、なぜなら彼らは15分待つことを望んでいないからです。シングルスロット最終性により、ユーザーはトランザクションが確認されるとほぼすぐにそれらのトランザクションが最終化されることを見ることができます。 2番目に、ユーザーやアプリケーションがチェーンがリバートする可能性を心配する必要がない場合、プロトコルと周辺のインフラが簡素化されます。その比較的まれなケースを除いて、アクティビティリーク.

第2の目標は、ソロステーキングをサポートするという願望によって正当化されています。投票の後も繰り返し示されるのは、ソロステーキングをもっと多くの人々が行わない主な要因は32 ETHの最小値であるということです。最小値を1 ETHに減らすことで、他の懸念事項がソロステーキングを制限する主要な要因となるまで、この問題を解決することができます。

課題があります: より速い確定とより民主化されたステーキングの目標は、オーバーヘッドを最小限に抑えるという目標と相反します。実際、これが一つのスロット確定から始めなかった理由全体です。ただし、より最近の研究では、この問題を回避するいくつかの可能な方法が示されています。

それは何ですか? それはどのように機能しますか?

シングルスロットの確定性は、1つのスロットでブロックを確定するコンセンサスアルゴリズムを使用することを意味します。これ自体は難しい目標ではありません:多くのアルゴリズム、たとえばTendermintコンセンサス、すでに最適な特性を備えています。TendermintがサポートしていないEthereumに固有の望ましい特性の1つは、プロトコルです。不活性リーク, そのため、バリデータの1/3以上がオフラインになっても、チェーンを維持し、最終的に回復させることができます。幸いなことに、この要望はすでに対応されています: があります既に提案Tendermintスタイルのコンセンサスを変更して、不活性リークを受け入れる

主要なシングルスロットファイナリティ提案

問題の難しい部分は、非常に多くのバリデータを使用してシングルスロットの確定性を実現する方法を見つけることであり、これによってノードオペレータの過大なオーバーヘッドが発生することなく行う方法を見つけることです。そのためには、いくつかの主要な解決策があります:

  • オプション1:ブルートフォース-より良い署名集約プロトコルの実装に力を入れ、ZK-SNARKsを使用する可能性があります。これにより、実際には各スロットから何百万ものバリデータの署名を処理できるようになります。

ホーン、より良い集約プロトコルの提案されたデザインの1つ。

  • オプション2:オービット委員会- ランダムに選択された中規模の委員会がチェーンの最終決定を担当する新しいメカニズムですが、攻撃コストの特性を保持しながら行う方法です。

    Orbit SSFについて考える1つの方法は、x=0(Algorandスタイルの委員会、経済的ファイナリティなし)からx=1(現状維持のイーサリアム)までのスペクトルに沿って妥協の選択肢の余地を開き、イーサリアムが依然として非常に安全であるのに十分な経済的ファイナリティを持っている中間点を開くと同時に、各スロットに参加するために中規模のバリデーターのランダムサンプルのみを必要とするという効率上の利点を得るということです。

Orbitは、検証者のデポジットサイズの既存の異質性を活用して、可能な限り経済的な確定性を得る一方で、小さな検証者にも比例した役割を与えます。さらに、Orbitは遅い委員会の交代を使用して、隣接するクオラム間の高い重複を確保し、経済的な確定性が委員会の切り替えの境界でも適用されるようにします。

  • オプション3: 二段階のステーキング - 預金要件が高いステーカーと低い預金要件がある2つのクラスがあるメカニズム。 高預金ティアだけが経済的な最終性を提供するのに直接関与する。 さまざまな提案があります(例: 参照レインボー・ステーキング・ポスト) for exactly what rights and responsibilities the lower-deposit tier has. Common ideas include:
    • ハイアーティアステイカーにステークを委任する権利
    • 各ブロックを証明し、最終確定するために必要な下位ティアのステーカーのランダムサンプル
    • 生成権インクルージョンリスト

残っていることは何か、そしてトレードオフは何ですか?

主要な可能な経路は4つあります(ハイブリッド経路も取ることができます):

  1. 現状維持
  2. Brute-force SSF
  3. Orbit SSF
  4. 二段階のステーキングを備えたSSF

(1)は何もせずにステーキングをそのままにしておくことを意味しますが、それはイーサリアムのセキュリティ体験とステーキングの中央集権化の特性をより悪化させる可能性があります。

(2)高度技術を駆使して問題を解決します。これを実現するには、非常に短期間(5-10秒)で非常に多くの署名(100万以上)を集約する必要があります。このアプローチを考える一つの方法は、カプセル化された複雑さを受け入れることで、システムの複雑さを最小限に抑える.

(3)「ハイテク」を避け、プロトコルの仮定を巧妙に再考することで問題を解決します:「経済的な最終性」の要件を緩和し、攻撃が高価であることを要求しますが、攻撃のコストが今日の10倍少なくても問題ありません(例:攻撃のコストが250億ドルではなく、25億ドル)。今日のイーサリアムには必要以上に経済的な最終性があるという共通の見解があり、その主なセキュリティリスクは他にあると言えるため、これはおそらく許容できる犠牲です。

主な作業は、Orbitメカニズムが安全で望んでいる特性を持っていることを検証し、それを完全に形式化して実装することです。さらに、EIP-7251 (最大有効残高の増加)任意のバリデータ残高統合を可能にし、チェーンの検証オーバーヘッドを即座にある程度削減し、Orbitの展開の効果的な初期段階として機能します。

(4)巧妙な再考やハイテクを避けますが、中央集権化のリスクを依然として抱える2段階のステーキングシステムを作成します。リスクは、下位ステーキング層が得る具体的な権利に大きく依存します。例えば:

  • 低位ステーカーが高位ステーカーに彼らの証明権を委任する必要がある場合、委任は中央集権化する可能性があり、その結果、ステーキングの2つの高度に中央集権化された層になるかもしれません。
  • もし下位層のランダムサンプルが各ブロックを承認する必要がある場合、攻撃者はごく少額のETHを使って最終性をブロックすることができます。
  • もし下位のステーカーが含蓄リストしか作れない場合、証明層は中央集権的なままであり、その時、証明層への51%攻撃は含蓄リスト自体を検閲する可能性があります。

複数の戦略を組み合わせることができます。例えば:

(1 + 2):シングルスロットの最終性を行わずに、力ずくのテクニックを使用して最小入金額を削減します。純粋な(3)の場合よりも必要な集計量は64倍少なくなるため、問題はより簡単になります。

(1 + 3): シングルスロットの最終性を行わずにオービットを追加します

(2 + 3): 保守的なパラメータ(たとえば、8kまたは32kではなく、128kのバリデータ委員会)を使用して、Orbit SSFを実行し、その超効率化を実現するために総当たり技術を使用します。

(1 + 4): シングルスロットの最終確定を行わずにレインボーステーキングを追加する

他の部分とどのように連携しますか?

その他の利点に加えて、シングルスロットの最終性はリスクを減らします特定の種類のマルチブロックMEV攻撃また、証明者-提案者の分離設計やその他のプロトコル内のブロック生成パイプラインは、1つのスロットの最終性の世界では異なる設計が必要となるでしょう。

Brute-force strategies have the weakness that they make it harder to reduce slot times.

シングルシークレットリーダー選挙

私たちはどんな問題を解決しているのですか?

今日、次のブロックを提案するバリデータが事前にわかっています。これによりセキュリティ上の脆弱性が生じます。攻撃者はネットワークを監視し、どのバリデータがどのIPアドレスに対応しているかを特定し、ブロックを提案しようとしているときに各バリデータにDoS攻撃を行うことができます。

それは何ですか? そしてそれはどのように機能しますか?

DoS問題を修正する最良の方法は、少なくともブロックが実際に生成されるまで、次のブロックを生成する検証者が誰であるかに関する情報を隠すことです。この要件を削除すれば簡単です。1つの解決策次のブロックを作成できるようにするが、を要求するランダオリヴィール2256 / N未満であること。平均して、この要件を満たすことができるバリデーターは1人だけですが、2人以上いる場合もあれば、ゼロの場合もあります。「秘密保持」要件と「単一」要件の組み合わせは、長い間難しい問題でした。

シングルシークレットリーダー選出プロトコルは、いくつかの暗号技術を使用して各バリデータのために「ブラインドされた」バリデータIDを作成し、その後、多くの提案者に、ブラインドされたIDのプールをシャッフルして再ブラインドする機会を与えることで、これは、ミックスネットworks). 各スロット中、ランダムなブラインドされたIDが選択されます。そのブラインドされたIDの所有者のみが有効な証拠を生成してブロックを提案できますが、他の誰もがそのブラインドされたIDがどの検証者に対応しているかを知りません。

ホイッスルSSLEプロトコル

残っていることは何か、そしてトレードオフは何ですか?

現実的に残されているのは、メインネットワークで実装することに快適であると感じる十分にシンプルなプロトコルを見つけて実装することです。私たちは、Ethereumが比較的シンプルなプロトコルであることを非常に重要視しており、複雑さがさらに増すことは望んでいません。私たちが見てきたSSLEの実装では、数百行の仕様コードが追加され、複雑な暗号技術で新しい仮定が導入されています。効率的な量子耐性のあるSSLEの実装を見つけることも未解決の問題です。

SSLEの導入によって追加される余分な複雑さが、他の理由(状態ツリー、ZK-EVMなど)でイーサリアムプロトコルのL1に一般目的のゼロ知識証明を行うための機構を導入することで、十分に軽減される可能性があります。

代替オプションは、単にSSLEを気にしない選択肢であり、DoSの問題を解決するためにプロトコル外の緩和策(例:p2pレイヤーで)を使用することもできます。

他の部分のロードマップとどのように連携しますか?

もしattester-proposer separation (APS) mechanism、例えば、を追加したら、実行チケット, その後、実行ブロック(つまり、イーサリアム取引を含むブロック)にはSSLEが必要なくなります。なぜなら、ブロックビルダーが専門家であることを信頼できるからです。しかし、コンセンサスブロック(つまり、アテステーションやインクルージョンリストの一部などのプロトコルメッセージを含むブロック)では、依然としてSSLEから利益を得るでしょう。

より速い取引確認

私たちはどの問題を解決していますか?

イーサリアムには価値があります取引確認時間がさらに短縮されています,12秒から例えば4秒まで。これを行うことで、L1とベースのロールアップのユーザーエクスペリエンスが大幅に向上し、同時にdefiプロトコルも効率的になります。また、L2の分散化が容易になり、大規模なL2アプリケーションの稼働を可能にするでしょう。ベースのロールアップ, L2が独自の委員会ベースの分散シーケンシングを構築する需要を減らす。

それは何ですか? そしてそれはどのように機能しますか?

ここには大きく2つの技術ファミリーがあります。

  1. スロットの時間を短縮し、例えば。8秒または4秒。これは必ずしも4秒の確定を意味するものではありません:確定には本質的に3ラウンドの通信が必要であり、そのため、通信の各ラウンドを別々のブロックにすることができます。これにより、少なくとも予備的な確認が得られます。
  2. スロットの間に提案者が事前確認を公開できるようにします。極端な場合、提案者はリアルタイムでブロックに見ている取引を含め、各取引について直ちに事前確認メッセージを公開することができます(「私の最初の取引は0×1234...」、「私の2番目の取引は0×5678...」)。提案者が2つの矛盾する確認を公開する場合は、次の2つの方法で対処できます:(i)提案者をスラッシュするか、(ii)アテスターを使用して、どちらがより早く到着したかに投票する。

何が残っているか、そしてどんなトレードオフがありますか?

スロットの時間を短縮することが実用的であるかどうかはまだ明確ではありません。現在でも、世界の多くの地域で、アテステーションを十分に速く含めることに苦労しています。4秒間のスロット時間を試みることは、バリデータセットを中央集権化のリスクにさらし、遅延のために特権的な地理の外部にバリデータになることが実用的でなくなる可能性があります。具体的には、4秒のスロット時間に移行するには、ネットワークの遅延(「デルタ」)のバウンドを2秒に短縮する必要があります。

提案者の事前確認アプローチには、平均的なケースの含まれる時間を大幅に改善できるという弱点がありますが、最悪のケースでは改善されません。現在の提案者が正常に機能している場合、お客様の取引は平均6秒ではなく0.5秒で事前確認されますが、現在の提案者がオフラインまたは正常に機能していない場合、次のスロットが開始され、新しい提案者が提供されるまで最大12秒待つ必要があります。

さらに、事前確認がどのようにインセンティブ付けされるかという未解決の問題もあります。提案者はできるだけ長い間、オプション性を最大限に活用する動機があります。もし証人が事前確認のタイムリネスに署名すれば、取引送信者は手数料の一部を即時事前確認に条件付けることができますが、これは証人に追加の負担をかけ、証人が中立的な「ダムパイプ」としての機能を続けることがより困難になる可能性があります。

一方、これを試みずに最終性の時間を12秒(またはそれ以上)に保持すると、エコシステムはレイヤー2によって作成された事前確認メカニズムにより重きを置くようになり、クロスレイヤー2の相互作用がより長くなります。

ロードマップの他の部分とどのように相互作用しますか?

提案者ベースの事前確認は、実際には、アテスター-提案者分離(APS)メカニズムに依存しており、例えば、実行チケットそれ以外の場合、リアルタイムの事前確認を提供する圧力は、通常の検証者にとってあまりに中央集権化されすぎる可能性があります。

スロットの短い時間は、実装するAPSのバージョンや含有リストなどに大きく依存するため、実際のスロット構造にも大きく依存します。スロット構造には、より少ないラウンドを含むものもあり、そのためスロットの短い時間にもより親しみやすくなりますが、その代わり他の場所でトレードオフを行います。

その他の研究分野

51%攻撃の回復

51%攻撃が発生した場合(検証不可能な攻撃を含む)、コミュニティが一丸となって実施するという前提がしばしばあります。少数派ソフトフォーク善良な人々が勝ち、悪い人々が不活性に漏洩されたり削られたりすることを保証する、しかし、このような社会的レイヤーへの過度の依存度はおそらく健康ではないと言えます。我々は、回復プロセスをできるだけ自動化することで、社会的レイヤーへの依存を減らすことができます。

完全な自動化は不可能です、なぜなら、もしそれが可能であれば、それは50%を超える耐障害トレランスコンセンサスアルゴリズムとしてカウントされ、私たちはすでにその(非常に制限的な)ことを知っていますその種のアルゴリズムの数学的に証明可能な制限しかし、部分的な自動化は達成できます:たとえば、クライアントは、十分な期間、クライアントが長い間見てきたトランザクションを検閲する場合、チェーンを最終化またはフォーク選択のヘッドとして自動的に拒否することができます。重要な目標は、攻撃の中で少なくとも悪者が簡単に勝利できないようにすることです。

クォーラム閾値の増加

今日、ブロックは、67%のステーカーがサポートする場合に最終化されます。これは過度に攻撃的であるとの議論があります。イーサリアムの歴史全体で(非常に短い)最終化失敗が1回だけありました。この割合を例えば80%に増やすと、非最終化期間の追加数は比較的少なくなりますが、イーサリアムはセキュリティ特性を獲得します。特に、多くの論争の状況が一時的な最終停止につながることになります。これは、「間違った側」が攻撃者である場合だけでなく、クライアントにバグがある場合にも、即時の勝利を得るよりもはるかに健全な状況のように思われます。

これは、「ソロステーカーの目的は何ですか?」という質問にも答えています。今日、ほとんどのステーカーは既にプールを通じてステーキングしており、ソロステーカーがステークされたETHの51%に達する可能性は非常に低いようです。ただし、特にクォーラムが80%である場合(つまり、クォーラムをブロックする少数派は21%しか必要がない)、ソロステーカーをクォーラムをブロックする少数派に引き上げることは、努力すれば達成可能なように思われます。ソロステーカーが51%攻撃(最終性の逆転または検閲)に加担しない限り、そのような攻撃は「完全な勝利」を得ることができず、ソロステーカーは少数派ソフトフォークを組織するのを手助けする動機が生まれるでしょう。

クォーラムのしきい値とOrbitメカニズムとの相互作用に注意してください。Orbitを使用することになった場合、「ステーカーの21%」とは具体的にどういう意味かはより複雑な問題になり、一部はバリデータの分布に依存します。

量子耐性

Metaculusは現在信じています, ただし、幅広い誤差範囲を持つものの、量子コンピュータはおそらく2030年代のある時点で暗号を解読し始める可能性が高いとされています:

量子コンピューティングの専門家であるScott Aaronsonなどは、最近、量子コンピューターが実際に中期間で動作する可能性を考え始めました。はるかに真剣にこれには、Ethereumの全体のロードマップに影響が出ます:現在楕円曲線に依存しているEthereumプロトコルの各部分には、ハッシュベースまたはその他の量子耐性のある置換が必要になります。特に、これは、我々が次に進むことができるとは仮定できないことを意味します。BLS集約の優れた特性大きなバリデーターセットからの署名を永久に処理します。これは、プルーフ・オブ・ステーク設計の性能に関する仮定の保守主義を正当化するものであり、また、耐量子性の代替案の開発に積極的に取り組むべき理由にもなります。

免責事項:

  1. この記事は[から転載されましたビタリックブテリン], すべての著作権は元の著者に帰属します [ヴィタリック・ブテリン]. If there are objections to this reprint, please contact the Gate Learn(ゲート・ラーン)チームは、迅速に対処します。
  2. 責任の免責事項:この記事で表現されている意見および見解は、著者個人のものであり、いかなる投資アドバイスを構成するものではありません。
  3. 他の言語への記事の翻訳は、Gate Learnチームによって行われます。特に言及されていない限り、翻訳された記事のコピー、配布、または盗用は禁止されています。
Начните торговать сейчас
Зарегистрируйтесь сейчас и получите ваучер на
$100
!