著者:Vitalik; コンパイラー:Tong Deng、Golden Finance
フィードバックとレビューをしてくれたJustin Drake、Hsiao-wei Wang、@antonttc、Francescoに感謝します。
もともと「合併」とは、Etherプロトコルの立ち上げ以来の歴史の中で最も重要な出来事、すなわち待望され苦労して勝ち取った、プルーフ・オブ・ワークからプルーフ・オブ・エクイティへの移行を指していました。今日、Etherは2年近く安定したProof-of-Stakeシステムであり、このProof-of-Stakeは安定性、パフォーマンス、中央集権化リスクの回避という点で非常にうまくいっています。しかし、プルーフ・オブ・エクイティにはまだ改善すべき重要な分野があります。
私の2023年ロードマップでは、これをいくつかの部分に分けています。安定性、パフォーマンス、小規模な検証者へのアクセシビリティといった技術的特徴の改善と、中央集権化リスクに対処するための経済的変更です。前者は「合併」のタイトルを引き継ぎ、後者は「厄介者」の一部になります。
この投稿では「合併」の部分に焦点を当てます。つまり、関心立証の技術的設計にどのような改善を加えることができるのか、また、そのような改善を達成する方法にはどのようなものがあるのか、ということです。
これは、Proof of Equityに加えられる可能性のある改善点の網羅的なリストではなく、むしろ現在検討中のアイデアのリストです。
Single-slot finality and the democratisation of pledges
What problems are we addressed?
今日、ブロックを完了し、32ETHが誓約されるには2~3エポック(~15分)かかります。
これら3つの目標は相反するものです。経済的な最終性(つまり、攻撃者が最終化されたブロックを回復するためには、大量のETHを破壊する必要がある)を達成するためには、各最終化ですべての検証者がつのメッセージに署名する必要がある。したがって、多くのバリデータがある場合、すべての署名を処理するのに非常に時間がかかるか、すべての署名を同時に処理するために非常に強力なノードが必要になります。
これはすべて、イーサの重要な目標である、成功した攻撃でさえも攻撃者にとって高くつくことを保証することにかかっていることに注意してください。これが「経済的最終性」という言葉の意味です。もしこの目標がなければ、(例えばAlgorandがそうであるように)ランダムに委員会を選び、各タイムスロットを確定することで問題を解決できる。しかし、この方法の問題点は、攻撃者が検証者の51%を支配している場合、非常に低いコストで攻撃(確定したブロックを復元したり、検閲したり、確定を遅らせたり)できることである。委員会内の一部のノードだけが攻撃に関与していると検知され、カットまたはいくつかのソフトフォークによってペナルティを受けることができる。つまり、攻撃者はチェーンに対して何度も攻撃を繰り返すことができる。したがって、経済的な最終性を求めるのであれば、単純な委員会ベースのアプローチではうまくいきません。
理想的には、2つの方法で現状を改善しながら、経済的な最終性を維持したいのです:
最初の目標は、2つの目的によって証明されています。どちらも「イーサの特性を(より集中化された)L1チェーンの特性と互換性を持たせる」と見なすことができます。パフォーマンス重視のL1チェーン」です。
第一に、すべてのイーサユーザーが、最終化メカニズムによって達成されたより高いレベルのセキュリティの恩恵を受けられるようにします。今日、ほとんどのユーザーは15分も待ちたくないため、このようなセキュリティにアクセスできません。シングルスロットのファイナリティでは、ユーザーはトランザクションが確認された後、ほぼ即座にファイナライズされるのを見ることができます。第二に、ユーザーやアプリがチェーンロールバックの可能性を心配する必要がないのであれば(比較的まれな非アクティブのリークシナリオを除けば)、プロトコルとその周辺のインフラが簡素化されます。
2つ目の目標は、別々の誓約者をサポートしたいという願望が動機となっています。世論調査に次ぐ世論調査で、より多くの人々が個別に誓約することを妨げる主な要因は、最低32ETHであることが繰り返し示されています。最小値を1ETHに下げれば、他の問題がソロの誓約を制限する主な要因になる点で、この問題は解決されるでしょう。
課題があります。より速い決定論とより民主化された誓約という目標は、どちらもオーバーヘッドを最小限に抑えるという目標と相反します。実際、この事実が、そもそもシングルスロット決定論を採用しなかった理由のすべてです。しかし、最近の研究では、この問題に対するいくつかの可能な解決策が提案されています。
それは何であり、どのように機能するのか?
Single-slot finalityは、1つのタイムスロット内でブロックをファイナライズするコンセンサスアルゴリズムの使用を含みます。これ自体は達成するのが難しい目標ではありません。多くのアルゴリズム(例えば、Tendermintコンセンサス)は、すでに最適な特性でこれを達成しています。これはTendermintではサポートされておらず、検証者の1/3以上がオフラインになったとしても、チェーンの実行を継続し、最終的に回復することを可能にします。幸いなことに、この要望はすでに満たされている。非活動リークに対応するために、Tendermintスタイルのコンセンサスを修正する提案がすでにある。
先行するシングルスロット終端性の提案
この問題の最も難しい部分は、シングルスロット終端性を、非常に高い数の検証者で、非常に高いノード演算子のオーバーヘッドを引き起こすことなく動作させる方法を見つけ出すことです。ノード演算子のオーバーヘッドを引き起こすことなく。
ホーン、より良いアグリゲーション・プロトコルの設計案の1つ。
Option 2: Orbit (軌道)委員会-ランダムに選ばれた中規模の委員会がチェーンの最終決定を担当することを可能にする新しいメカニズムですが、私たちが求めている攻撃コストの属性を維持する方法です。
オービットSSFについて考える1つの方法は、x=0(経済的最終性を持たないアルゴリズムスタイルの委員会)からx=1(そのままのイーサ)までの妥協オプションの空間を開くということです。をx=1(そのままのイーサ)にすることで、各タイムスロットに参加するランダムな検証者のサンプルが中程度で済むという効率の利点が得られます。
Orbitは、検証者の預託金の規模における既存の不均一性を利用して、できるだけ経済的な最終性を得ると同時に、小規模な検証者にも適切な役割を与える。加えて、オービットは遅い委員会ローテーションを使用して、隣接するクォーラム間の高度な重複を確保し、委員会ローテーションの境界にも経済的最終性が適用されるようにする。
既存の研究との関連は?
シングルスロットのファイナリティへの道(2022年):https://notes.ethereum.org/@vbuterin/single_slot_finality
Ethernet Single Slot Finality Protocol Specific Proposal (2023): https://eprint.iacr.org/2023/280
Orbit SSF: https://ethresear.ch/t/orbit-ssf-solo-staking-friendly-validator-set-management-for-ssf/19928
オービット式メカニズムのさらなる分析:https://notes.ethereum.org/@anderselowsson/Vorbit_SSF
Horn, Signature Aggregation Protocol (2022): https://ethresear.ch/t/horn-collecting-signatures-for-faster-finality/14219
大規模コンセンサスのための署名マージ(2023): https://ethresear.ch/t/signature-merging-for-large-scale-consensus/17386?u=asn
Signature Aggregation Protocol proposed by Khovratovich et al: https://hackmd.io/@7dpNYqjKQGeYC7wMlPxHtQ/BykM3ggu0#/
STARK-based signature aggregation (2022): https://hackmd.io/@vbuterin/stark_aggregation
Rainbow texture aggregation protocol: https://hackmd.io/@7dpNYqjKQGeYC7wMlPxHtQ/
レインボー誓約書:https://ethresear.ch/t/unbundling-staking-towards-rainbow-staking/18683
何が残っているのか?何を量る必要があるのか?現状維持
オービットSSF。
強力なSSF
2層の誓約を持つSSF
(1)何もせず、誓約をそのまま維持することを意味しますが、これはイーサのセキュリティ体験と誓約集中の特性を今以上に悪化させることになります。
(2)「ハイテク」を回避し、プロトコルの前提を微妙に見直すことで問題を解決します:「経済的最終性」の要件を緩和し、攻撃が高価であることを要求しますが、攻撃が現在よりも最大10倍安価である可能性を受け入れます(たとえば、攻撃コストが我々は「経済的最終性」の要件を緩和し、高い攻撃コストを要求しているが、攻撃コストが現在の10倍低くなる可能性を受け入れている(例えば、250億ドルではなく25億ドル)。イーサは現在、必要以上に経済的に終了可能であり、主なセキュリティリスクは別のところにあることが広く認識されているため、これは間違いなく許容できる犠牲です。
主な仕事は、Orbitメカニズムが安全で私たちが望む特性を持っていることを検証し、それを完全に形式化して実装することです。加えて、EIP-7251(最大有効残高の増加)では、自主的なバリデータ残高の統合を認めており、チェーン検証のオーバーヘッドを即座に削減し、Orbitの展開における効果的な初期段階として役立つでしょう。
(3)巧妙な再考を避け、代わりにハイテクで問題を強引に解決する。これを行うには、非常に短時間(5~10秒)で大量の署名(100万人以上)を集める必要があります。
(4)巧妙な再考とハイテクは避けるが、それでも中央集権的なリスクを抱える2層の誓約システムを作る。リスクは、下位の誓約層が獲得する特定の権利に大きく依存します。例えば、
下位層の質権者が上位層の質権者に証明権を委譲する必要がある場合、委譲は中央集権的になる可能性があります。
各ブロックを承認するために下位層のランダムなサンプルが必要な場合、攻撃者は最終性を防ぐために非常に少量のETHを費やす可能性があります。
下位層の誓約者がインクルージョン・リストしか作成できない場合、プルーフ層はまだ中央集権化されている可能性があり、その時点でプルーフ層に対する51%の攻撃はインクルージョン・リスト自体を検閲する可能性があります。
(1+2):シングルスロットのファイナリティを行わずにオービットを追加する。
(1+3):ブルートフォース技術を使用して、シングルスロットのファイナリティを実行することなく、最小預金サイズを縮小します。必要な集計量は純粋な(3)のケースより64倍少ないので、問題は簡単になります。
(2 + 3):保守的なパラメータ(例えば、8kまたは32kの代わりに128kのバリデータ委員会)を使用してオービットSSFを実行し、ブルートフォース技術を使用して超効率的にします。
(1 + 4):シングルスロットのファイナリティを実行せずに、レインボープレッジを追加します。
ロードマップの残りの部分とどのように相互作用しますか?
他の利点の中でも、シングルスロットのファイナリティは、ある種のマルチブロックMEV攻撃のリスクを減らします。加えて、シングルスロット終端性の世界では、証明者と提案者の分離設計や、その他のプロトコル内ブロック生成パイプラインを異なる設計にする必要があります。
ブルートフォース戦略の弱点は、スロット時間を短縮することが難しくなることです。
Single Secret Leader Election
私たちはどのような問題を解決しようとしているのでしょうか?
今日、どのバリデータが次のブロックを提示するかは事前に知られています。攻撃者はネットワークを監視し、どのベリファイアがどのIPアドレスに対応するかを特定し、ブロックを提示しようとしているベリファイアに対してDoS攻撃を仕掛けることができます。
それは何ですか?どのように機能するのですか?
DoS問題を解決する最善の方法は、少なくとも実際にブロックが生成されるまでは、どのバリデータが次のブロックを生成するかという情報を隠すことです。1つの解決策は、誰でも次のブロックを生成できるようにすることですが、randaoが2256 / N未満であることを明らかにする必要があります。秘密性」の要件と「単一性」の要件を組み合わせることは、難題であった。
シングル・シークレット・リーダー選挙プロトコルは、暗号を使用して各認証者に「ブラインド」認証者IDを作成し、多くの提案者にブラインドIDのプールを再編成して再ブラインドする機会を与えることで、この問題を解決する(これはハイブリッド・ネットワークの仕組みに似ている)。各タイムスロットでランダムなブラインドIDが選ばれ、そのブラインドIDの所有者だけが有効な証明を生成してブロックを提案できますが、そのブラインドIDがどの検証者に対応するかは誰も知りません。
ウィスクSSLEプロトコル
既存の研究との関連は?
ダン・ボネの論文(2020年):https://eprint.iacr.org/2020/025.pdf
ウィスク(エーテルに特化した案、2022年):https://ethresear.ch/t/whisk-a-practical-shuffle-based-ssle-protocol-for-ethereum/11763
。ethresear.ch の単一秘密リーダー選挙タグ:https://ethresear.ch/tag/single-secret-leader-election
Simplified SSLE using ring signatures: https: //ethresear.ch
Simplified SSLE using ring signatures: https.//ethresear.ch/t/simplified-ssle/12315
何が残っているのか?何を計量する必要があるのか?
本当に残っているのは、メインネットに簡単に実装できるほどシンプルなプロトコルを見つけて実装することだけです。私たちはイーサネットをかなりシンプルなプロトコルとして評価しており、複雑さをこれ以上増やしたくありません。私たちが見てきたSSLEの実装は、何百行もの仕様コードを追加し、複雑な暗号化に新たな仮定を導入している。十分に効率的な反量子SSLE実装を見つけることもまた、未解決の問題です。
最終的には、他の理由(例えば、ステートツリー、ZK-EVM)のためにイーサプロトコルのL1上に汎用的なゼロ知識証明メカニズムを導入した場合にのみ、SSLEの「限界的な追加複雑さ」が十分に低いレベルにまで低減されるということになるかもしれません。
もう1つの選択肢は、SSLEを完全に無視し、プロトコル外の緩和策(たとえばp2pレイヤーで)を使用してDoS問題を解決することです。
ロードマップの残りの部分とどのように相互作用しますか?
たとえばチケット実行のためにAPS(Attestor-Proposer Separation)メカニズムを追加する場合、実行ブロック(つまりイーサネットトランザクションを含むブロック)はSSLEを必要としません。
Faster Transaction Confirmation
What Problems Are We Solving?
イーサでの取引確認時間を12秒から4秒へとさらに短縮することに価値があります。これは、defiプロトコルをより効率的にする一方で、L1とアグリゲーションベースのユーザーエクスペリエンスを大幅に改善します。また、多数のL2アプリケーションがアグリゲーションベースで動作できるようになるため、L2の分散化が容易になり、L2が独自の委員会ベースの分散ソートを構築する必要性が減ります。
それは何ですか?どのように機能するのか?タイムスロットの時間を、例えば8秒や4秒に減らします。これは必ずしも4秒の最終性を意味するわけではありません。最終性は本質的に3ラウンドの通信を必要とするので、各ラウンドを個別のブロックとして設定し、少なくとも4秒後に最初に承認されるようにします。
-
提案者がタイムスロット中に事前確認を発行できるようにします。極端なケースでは、提案者はリアルタイムで目にした取引を自分のブロックに組み込み、各取引の事前確認メッセージを即座に投稿することができる(「私の最初の取引は0×1234...」、「私の2番目の取引は0×1234...」)。私の2回目の取引は0×5678....).").提案者が相反する2つの確認を発行する場合、(i)提案者をカットする、または、(ii)どちらが早いかを決定するために証明者投票を使用する、の2つの方法で処理することができる。
既存の研究へのリンクは何ですか?
事前確認に基づくもの: https://ethresear.ch/t/based-preconfirmations/17353
プロトコル強制提案者コミットメント(PEPC): https://ethresear.ch/t/unbundling-pbs-towards-protocol-enforced-proposer-commitments-pepc/13879
Protocol Enforced Proposer Commitment (PEPC): https://ethresear.ch/t/unbundling-pbs-towards-protocol-enforced-proposer-commitments-pepc/13879
Interleaved cycles on parallel chains (idea to achieve low latency in 2018): https://ethresear.ch/t/staggered-periods/1793
What's left to do and what are the trade-offs?
タイムスロット時間を短縮することがどれほど現実的かは明らかではない。現在でも、世界の多くの地域の誓約者は、証明を十分に速く得ることに苦労しています。タイムスロットを4秒にしようとすると、検証者の集合が集中化する危険性があり、遅延のために一部の特権的な地域以外の検証者になることは現実的ではありません。
提案者の事前確認アプローチの弱点は、平均ケースの包含時間は大幅に改善されるが、最悪のケースの包含時間は改善されないことである:現在の提案者がうまく動作している場合、あなたのトランザクションは(平均して)6秒で包含される代わりに0.5秒で事前確認されるが、現在の提案者がオフラインであるか、うまく動作していない場合、次のタイムスロットを開始し、新しい提案者を提供するために、あなたはまだ完全に12秒待たなければならない。秒待たなければなりません。
さらに、事前確認のインセンティブをどうするかという未解決の問題があります。提案者には、可能な限り長くオプション性を最大化するインセンティブがあります。もしプローバーが事前確認の適時性にサインオフすれば、トランザクションの送り手は手数料の一部を即時の事前確認に条件付けることができるが、これはプローバーにさらなる負担を強いることになり、プローバーが中立的な「ダムパイプ」として行動し続けることが難しくなる可能性がある。
その一方で、もし私たちがこのようなことをしようとせず、最終確認時間を12秒(またはそれ以上)に保とうとすれば、エコシステムはレイヤー2で開発された事前確認メカニズムをより重視するようになり、レイヤー2をまたいだやりとりに時間がかかるようになるでしょう。
ロードマップの他の部分との相互作用は?
プロポーザに基づく事前確認は、実際には実行チケットのような認証者とプロポーザの分離(APS)メカニズムに依存しています。そうでなければ、リアルタイムの事前確認を提供しなければならないというプレッシャーが、通常の検証者に集中しすぎてしまうかもしれません。
Other Research Areas
51% Attack Recovery
51% Attack(暗号的に証明できない攻撃、たとえば検閲など)が発生した場合、コミュニティは少数派のソフトフォークを実装するために協調的な努力をし、以下を確実にすることが一般的に想定されています。善玉が勝ち、悪玉は妥協するか活動停止で切り捨てられる。しかし、このようなソーシャルレイヤーへの過度の依存は、間違いなく不健全です。ソーシャルレイヤーへの依存を減らし、リカバリープロセスを可能な限り自動化するようにすればよいのです。
完全自動化は不可能です。というのも、もし可能であれば、これは50%フォールトトレラントコンセンサスアルゴリズムとしてカウントされ、私たちはすでにそのようなアルゴリズムの(非常に厳密な)数学的に証明可能な限界を知っているからです。しかし、これを部分的に自動化することは可能である。例えば、クライアントが十分に長い間見てきたトランザクションを検閲すれば、クライアントは自動的にチェーンが確定したものとして拒否することができるし、フォークされた選択肢の先頭として拒否することもできる。重要な目標は、攻撃における悪者が少なくとも迅速な勝利を得ることができないようにすることです。
定足数のしきい値を上げる
今日、ブロックは67%の誓約が賛成すれば確定します。これは強引すぎるという意見もあります。イーサリアムの全歴史において、最終的に失敗したのは(非常に短い)1回だけです。この割合が80%に引き上げられれば、追加的な非決済期間の数は比較的少なくなりますが、イーサは安全性を得ることになります。これは、間違った側が攻撃者であろうとクライアントに非があろうと、「間違った側」が即座に勝利するよりもずっと健全に思えます。
これはまた、「一人の誓約者に何の意味があるのか」という疑問に対する答えでもある。今日、ほとんどのプレッジャーはすでにプールを通じてプレッジしており、ソロのプレッジャーがプレッジされたETHの51%も獲得できる可能性は低そうです。しかし、ソロのプレッジャーが多数派を阻止する少数派に達することは、特に多数派が80%に達する場合(したがって、多数派を阻止する少数派は21%だけでよい)、努力すれば可能なようです。単独誓約者が51%の攻撃(最終的な逆転か検閲)に参加しない限り、そのような攻撃は「きれいな勝利」にはならず、単独誓約者は積極的に少数派のソフトフォークを組織する手助けをするでしょう。
量子に強い
Metaculusは現在、量子コンピューターが2030年代には、大きな誤差はあるにせよ、暗号を解読し始める可能性があると考えています:
Scott Aaronson氏のような量子コンピュータの専門家も最近、量子コンピュータが中期的に実際に機能する可能性について真剣に考え始めています。.これはEtherのロードマップ全体に影響を及ぼします。つまり、現在楕円曲線に依存しているEtherプロトコルのすべての部分に、ハッシュベースやその他の量子耐性を持つ代替手段が必要になるということです。特に、BLSアグリゲーションの優れた特性が、大規模な検証者の署名を処理する際に常に利用できるとは考えられないということです。このことは、Proof-of-Interestの設計性能の仮定を保守的にし、量子耐性のある代替手段をより積極的に開発することを正当化します。