
Vitalik新記事:イーサリアムの将来の可能性、ザ・マージ
TechFlow厳選深潮セレクト

Vitalik新記事:イーサリアムの将来の可能性、ザ・マージ
ステーキングの民主化、より高速なトランザクション確認、量子攻撃への耐性……イーサリアムの未来はどのようになるのか?
執筆:Vitalik Buterin
翻訳:Alex Liu、Foresight News
Justin Drake、Hsiao-wei Wang、@antonttc、Anders Elowsson、Francescoによるフィードバックおよび査読に感謝します。
当初、「マージ(the Merge)」とは、イーサリアムのプロトコルが導入されて以来、その歴史の中で最も重要なイベントを指していました。それは長年待ち望まれ、苦労して実現した、プルーフ・オブ・ワーク(PoW)からプルーフ・オブ・ステーク(PoS)への移行です。現在、イーサリアムは安定して稼働するプルーフ・オブ・ステークシステムとして、ほぼ2年近くが経過しています。このプルーフ・オブ・ステークは安定性やパフォーマンス、中央集権化リスクの回避において非常に優れた成果を上げています。しかし、プルーフ・オブ・ステークには依然として改善が必要な重要な分野があります。
私の2023年のロードマップでは、これを2つの部分に分けました。1つ目は技術的な機能の改善——すなわち安定性、パフォーマンス、そして小規模バリデータのアクセシビリティの向上。もう1つは、中央集権化リスクに対処するための経済的変革です。前者が「the Merge」の名を受け継ぎ、後者が「the Scourge」の一部となっています。

本稿では、「Merge」の側面に焦点を当てます。プルーフ・オブ・ステークの技術設計には、まだどのような改善の余地があるのか? また、それを達成するための道筋は何か?
これは、プルーフ・オブ・ステークで可能なすべての事項に関する網羅的なリストではなく、現在積極的に検討されているアイデアのリストです。
単一スロットでのファイナリゼーションとステーキングの民主化
何の問題を解決しようとしているのか?
現在、ブロックのファイナリゼーションには2〜3エポック(約15分)かかり、ステーカーとなるには32ETHが必要です。これは当初、以下の3つの目標をバランスさせるために採られた妥協案でした:
-
ステーキングに参加できるバリデータ数を最大化する(つまり、必要な最低ETH量を最小化する)
-
ファイナリゼーションまでの時間を最短にする
-
ノードの運用コストを最小化する。ここでは特に、他のすべてのバリデータの署名をダウンロード、検証、再ブロードキャストするコストのこと
これら3つの目標は互いに矛盾しています。経済的なファイナリゼーション(つまり、攻撃者が大量のETHを燃やすことでしか確定済みブロックを巻き戻せない状態)を可能にするには、各ファイナリゼーションのたびに、すべてのバリデータが2つのメッセージに署名する必要があります。したがって、バリデータ数が多くなるほど、全署名を処理するのに長い時間がかかるか、あるいは同時に処理できる非常に高性能なノードが必要になります。

ここで重要なのは、これらのすべてがイーサリアムの核心的な目標に依存している点です。成功した攻撃であっても、攻撃者にとって極めて高コストなものにすること。これが「経済的ファイナリゼーション」という言葉の意味です。もしこの目標がなければ、各ブロックのファイナリゼーションにランダムに選ばれた委員会を使用することで問題を解決できます。Algorandのような経済的ファイナリゼーションを追求しないチェーンでは、通常そうしています。しかし、この方法の問題点は、攻撃者がバリデータの51%を支配すれば、非常に低いコストで攻撃(確定済みブロックの巻き戻し、検閲、またはファイナリゼーションの遅延)を実行できることです。委員会内の少数ノードを制御するだけでよく、攻撃に関与したことが検出されればスラッシング(slashing)や社会的合意に基づくソフトフォークによって罰則が科される可能性はありますが、攻撃者は繰り返し攻撃を仕掛けることができ、毎回失うのはごくわずかなステークだけです。したがって、経済的ファイナリゼーションを求める場合、委員会ベースのシンプルなアプローチは通用せず、一見するとすべてのバリデータの参加が必要になります。
理想としては、経済的ファイナリゼーションを維持しつつ、以下の2つの課題を改善したいと考えています:
-
単一スロットでブロックを確定する(理想的には、現在の12秒よりも短く保つ)
-
バリデータが1ETHでステーキングできるようにする(32ETHより低く)
第1の目標には2つの目的があり、どちらも「イーサリアムの特性を(より中央集権的な)パフォーマンス重視のL1チェーンの特性に近づける」と言えます。
まず第一に、すべてのイーサリアムユーザーがファイナリゼーションメカニズムによって提供される高度なセキュリティ保証を実際に享受できるようにすることです。現在、多くのユーザーは15分待つことを望まないため、この恩恵を受けていません。単一スロットでのファイナリゼーションにより、取引の確認後すぐに完了したと感じられるようになります。第二に、ユーザーとアプリケーションがチェーンの巻き戻しの可能性を気にする必要がなくなる(稀なinactivity leakの場合を除く)ことで、プロトコルおよび周辺インフラの簡素化が図れます。
第2の目標は、個別ステーカー(solo stakers)を支援したいという願いから来ています。繰り返し行われるアンケート調査では、個別ステーキングを妨げている主な要因が32ETHの最低額であることが示されています。これを1ETHまで引き下げれば、この問題は解決され、他の要因が個別ステーキングの主要な制約となります。

現在の課題は、より速いファイナリゼーションとより民主的なステーキングという目標が、ともにコスト最小化の目標と衝突しているということです。実際、この事実こそが、当初から単一スロットでのファイナリゼーションを採用しなかった根本的な理由です。しかし、最近の研究により、この問題を解決するいくつかの可能性が提示されています。
それが何であるか、どのように動作するか?
単一スロットでのファイナリゼーション(SSF: Single Slot Finality)とは、1つのスロット内でブロックを確定するコンセンサスアルゴリズムの使用を意味します。これ自体は難しい目標ではありません。Tendermintコンセンサスなど、すでにこれを実現している多くのアルゴリズムがあります。イーサリアムに特有の要件は非アクティブリーク(inactivity leak)であり、Tendermintはこれをサポートしていません。非アクティブリークは、1/3以上のバリデータがオフラインでもチェーンが進行し、最終的に復旧できるようにするものです。幸いにも、これはすでに解決されています。既に提案があり、Tendermint型のコンセンサスを非アクティブリークに対応させることができます。

有力な単一スロットファイナリゼーション提案
より困難なのは、極めて高いバリデータ数と単一スロットでのファイナリゼーションを組み合わせても、ノード運用者の負荷が極端に高まらないようにする方法を見つけることです。これに対して、いくつかの有力なソリューションがあります:
-
オプション1:力技 — より優れた署名集約プロトコル(ZK-SNARKなどを使用)の開発により、実質的に各スロットで数百万のバリデータの署名を処理できるようにする。

Horn、より良い集約プロトコルのための設計の一つ
オプション2:オービット委員会(Orbit committees) — ランダムに選ばれた中規模委員会がチェーンのファイナリゼーションを担当する新機構だが、攻撃コストの属性を保持する形で実現する。
Orbit SSFについて考える一つの方法は、x=0(経済的終局性なしのAlgorandスタイルの委員会)からx=1(現行のイーサリアム)までの妥協点を探し、その中間で「十分な経済的ファイナリゼーションを持ちながらも、各スロットで中規模のランダムバリデータサンプルのみを必要とするため効率性の利点を得られる」領域を開拓することです。

Orbitは、バリデータ預入額の異質性を活かして可能な限り多くの経済的ファイナリゼーションを得つつ、小規模バリデータにも適切な役割を与えます。さらに、Orbitは委員会のゆっくりとしたローテーションにより、隣接する法定人数(adjacent quorums)間に高い重複を確保し、委員会切り替えの境界でも経済的ファイナリゼーションが維持されることを保証します。
-
オプション3:二段階ステーキング — 預入額が高い層と低い層の2種類のステーカーを持つ機構。経済的ファイナリゼーションに直接関与するのは高額層のみ。低額層がどのような権利と責任を持つべきかについてはさまざまな提案があります(例:レインボーステーキング)。共通するアイデアには以下が含まれます:
-
上位層のステーカーにステーキングを委任する権利
-
各ブロックの承認とファイナリゼーションにランダムに選ばれた下位層のステーカーを必要とする
既存の研究との関連は?
-
単一スロットファイナリゼーションへの道(2022): https://notes.ethereum.org/@vbuterin/single_slot_finality
-
イーサリアム向け単一スロットファイナリゼーションプロトコルの具体的提案(2023): https://eprint.iacr.org/2023/280
-
Orbit SSF: https://ethresear.ch/t/orbit-ssf-solo-staking-friendly-validator-set-management-for-ssf/19928
-
Orbit方式メカニズムのさらなる分析: https://ethresear.ch/t/vorbit-ssf-with-circular-and-spiral-finality-validator-selection-and-distribution/20464
-
Horn、署名集約プロトコル(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
-
Khovratovichらが提案した署名集約プロトコル: https://hackmd.io/@7dpNYqjKQGeYC7wMlPxHtQ/BykM3ggu0#/
-
STARKベースの署名集約(2022): https://hackmd.io/@vbuterin/stark_aggregation
-
レインボーステーキング: https://ethresear.ch/t/unbundling-staking-towards-rainbow-staking/18683
何をすべきか、どのようなトレードオフがあるか?
主に4つの道が考えられます(混合路線もあり得ます):
-
現状維持
-
力技SSF
-
Orbit SSF
-
二段階ステーキング付きSSF
(1)は何もせず現状を維持するという意味ですが、それによりイーサリアムのセキュリティ体験とステーキングの中央集権化傾向が悪化します。
(2) 高度な技術を用いて問題を力技で解決する。これには、非常に短時間(5〜10秒)で多数の署名(100万以上)を集約する必要があります。このアプローチの本質は、システムの複雑性を最小化するために、カプセル化された複雑性を受け入れることです。
(3) 「高度な技術」を避け、プロトコルの前提を巧妙に再考することで問題を解決します。経済的ファイナリゼーションの要件を緩和し、攻撃コストが高くつくようにしつつ、それが今日の10倍未満(例えば25億ドル、250億ドルではない)でも許容できるようにします。現在のイーサリアムの経済的ファイナリゼーションは必要以上に強固であり、主なセキュリティリスクは他にあると考えられているため、これは受け入れ可能な犠牲と言えるかもしれません。
主な作業は、Orbitメカニズムが安全で所望の性質を持っていることを検証し、完全に形式化して実装することです。また、EIP-7251(最大有効残高の増加)により、任意のバリデータ残高の統合が可能になり、チェーン検証のオーバーヘッドをある程度即座に削減でき、Orbit導入の初期段階として機能します。
(4) 巧妙な再考や高度な技術を避けますが、中央集権化リスクを伴う二段階ステーキングシステムを作成します。リスクの程度は、低額層に与えられる具体的な権利に大きく依存します。例えば:
-
低額層のステーカーが証明権を上位層に委任する必要がある場合、委任先が集中化する可能性があり、結果として2つの高度に中央集権化されたステーキング層が生まれます。
-
各ブロックの承認に低額層のランダムサンプルが必要な場合、攻撃者はごく少量のETHを使ってファイナリゼーションを阻止できます。
-
低額層のステーカーが包含リストの生成しかできない場合、証明レイヤーは中央集権化されたままとなり、証明レイヤーに対する51%攻撃によって包含リストを単独で検閲できます。
複数の戦略を組み合わせることも可能です。例えば:
(1 + 2):単一スロットファイナリゼーションなしでOrbitを追加
(1 + 3):単一スロットファイナリゼーションなしで、力技技術を用いて最小預入額を削減。必要な集約量は純粋な(3)の場合より64倍少なくなり、問題が容易になります。
(2 + 3):保守的なパラメータ(例:8kや32kではなく128kバリデータ委員会)でOrbit SSFを実施し、技術的に超効率化する。
(1 + 4):単一スロットファイナリゼーションなしでレインボーステーキングを追加
ロードマップの他の部分との相互作用は?
単一スロットファイナリゼーションは、特定タイプのマルチブロックMEV攻撃のリスクも低下させます。また、単一スロットファイナリゼーションの世界では、証明者-提案者分離設計やプロトコル内ブロック生成パイプラインも異なる設計が必要になります。
力技戦略の弱点は、スロット時間を短縮するのが難しくなる点です。
シングルシークレットリーダー選出(Single secret leader election)
何の問題を解決しようとしているのか?
現在、どのバリデータが次にブロックを提案するかは事前に知られています。これによりセキュリティ上の脆弱性が生じます。攻撃者はネットワークを監視し、どのバリデータがどのIPアドレスに対応するかを特定し、ブロック提案直前にDoS攻撃を行うことができます。
それが何であるか、どのように動作するか?
DoS問題を解決する最良の方法は、どのバリデータが次のブロックを生成するかという情報を隠すこと、少なくともブロックが実際に生成されるまで隠すことです。もし「シングル(単一)」の条件を外せば、これは簡単です。ある解決策は、誰でも次のブロックを作成できることですが、randao Revealが2^(256)/N未満であることを要求します。平均して、これを満たせるのは1人のバリデータだけですが、時には2人以上、あるいは0人の場合もあります。「秘匿性」と「単一性」を両立することは難問でした。
シングルシークレットリーダー選出(SSLE)プロトコルは、各バリデータに「ブラインド」されたバリデータIDを作成する暗号技術を使い、多くの提案者がブラインドIDプールをシャッフルする機会を与えることでこの問題を解決します(これはmixnetに似ています)。各スロット中に、ランダムなブラインドIDが選ばれます。そのブラインドIDの所有者だけが、ブロック提案のための有効な証明を生成できますが、他の誰もそのブラインドIDがどのバリデータに対応するかは知りません。

既存の研究との関連は?
-
Dan Bonehの論文(2020): https://eprint.iacr.org/2020/025.pdf
-
Whisk(イーサリアム向け具体的提案、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
-
リング署名を使った簡易SSLE: https://ethresear.ch/t/simplified-ssle/12315
何をすべきか、どのようなトレードオフがあるか?
実際、残っているのは、メインネットに簡単に実装できるほど十分にシンプルなプロトコルを見つけ、実装することです。イーサリアムは比較的シンプルなプロトコルであることを重んじており、複雑性の増加を望んでいません。我々が見たSSLEの実装は仕様コードを数百行追加し、複雑な暗号学に新たな仮定を導入しています。十分に効率的な耐量子SSLEの実装を見つけることも未解決の課題です。
最終的には、他の理由からL1イーサリアムプロトコルに汎用ゼロ知識証明(例:ステートツリー、ZK-EVM)を導入する場合、SSLEによる追加の複雑性は十分に小さくなる可能性があります。
別の選択肢として、SSLEを全く考慮せず、プロトコル外の緩和策(例:P2P層)でDoS問題に対処することもできます。
ロードマップの他の部分との相互作用は?
もし証明者-提案者分離(APS)メカニズム(例:実行チケット(execution tickets))を追加すれば、実行ブロック(イーサリアム取引を含むブロック)にはSSLEは不要になります。専門のブロックビルダーに依存できるからです。しかし、我々は依然としてSSLEによるコンセンサスブロック(証明(attestations)などのプロトコルメッセージ、おそらく包含リストの断片を含む)から利益を得ます。
より速い取引確認
何の問題を解決しようとしているのか?
イーサリアムの取引確認時間を12秒から4秒などにさらに短縮することは価値があります。これにより、L1およびBased Rollupsのユーザーエクスペリエンスが向上し、DeFiプロトコルもより効率的になります。また、L2の分散化を容易にします。なぜなら、Based Rollups上で動作するL2アプリケーションの幅広いクラスを可能にし、L2が独自の委員会ベースの分散型ソーターを構築する必要性を減らせるからです。
それが何であるか、どのように動作するか?
スロット時間を短縮する、例えば8秒または4秒。これは4秒でのファイナリゼーションを意味するわけではありません。ファイナリゼーションには本質的に3ラウンドの通信が必要なので、各ラウンドを個別のブロックとして扱い、少なくとも4秒後に初步的な確認を得ることもできます。
提案者がスロット中にプリコンファームを発行できるようにする。極端なケースでは、提案者はリアルタイムで見た取引を自分のブロックに追加し、各取引に対して即座にプリコンファームメッセージを発行できます(「最初の取引は0×1234...」「2番目の取引は0×5678...」)。2つの矛盾する確認を発行した提案者は、(i) スラッシング(slashing)されるか、(ii) proverが早期に出現した確認に投票することで対処できます。
既存の研究との関連は?
-
Based preconfirmations: https://ethresear.ch/t/based-preconfirmations/17353
-
プロトコル強制提案者コミットメント(PEPC): https://ethresear.ch/t/unbundling-pbs-towards-protocol-enforced-proposer-commitments-pepc/13879
-
並列チェーンにおける階段状期間(2018年に低遅延を実現するアイデア): https://ethresear.ch/t/staggered-periods/1793
何をすべきか、どのようなトレードオフがあるか?
スロット時間の短縮が現実的かどうかは不明です。現在でも、世界の多くの地域のステーカーは証明を十分に速く取得するのが難しいです。4秒スロットを試みると、バリデータの中央集権化リスクが高まり、遅延のため、先進地域以外でのバリデータ参加が実質的に不可能になります。具体的には、4秒スロットに移行するには、ネットワーク遅延(「デルタ」)を2秒以下に制限する必要があります。
提案者によるプリコンファーム方式の欠点は、平均的なケースでの包含時間は大幅に短縮できるが、最悪のケースでは改善されないことです。現在の提案者が正常に動作すれば、取引は0.5秒でプリコンファームされ(平均6秒)、しかし提案者がオフラインまたは不調の場合、次のスロットが始まり新しい提案者が登場するまで12秒待つ必要があります。
さらに、プリコンファームをどうやってインセンティブ付与するかも未解決の問題です。提案者は、選択肢を可能な限り長く保つ動機を持っています。もしproverがプリコンファームの迅速性に署名すれば、取引送信者は即時プリコンファームを条件に一部手数料を徴収できますが、これはproverに追加の負担をかけ、proverが中立的な「ダムパイプ」として運営し続けることを難しくする可能性があります。
一方、これを試さず、ファイナリゼーション時間を12秒(またはそれ以上)に維持すれば、エコシステムはL2のプリコンファームメカニズムをより重視し、L2間の相互作用にはより長い時間がかかります。
ロードマップの他の部分との相互作用は?
提案者ベースのプリコンファームは、実際には実行チケットのような証明者-提案者分離(APS)メカニズムに依存しています。そうでなければ、通常のバリデータにとってリアルタイムのプリコンファーム提供の圧力が集中しすぎます。
スロット時間がどれだけ短くできるかは、スロット構造にも依存し、これは最終的に採用するAPSバージョン、包含リストなどに大きく影響されます。スロット構造によってはラウンド数が少ないものもあり、短いスロット時間に適していますが、他の面でトレードオフがあります。
その他の研究分野
51%攻撃からの回復
51%攻撃(証明不能な検閲なども含む)が発生した場合、コミュニティが団結してマイナリティソフトフォークを実施し、善人が勝ち、悪人は非アクティブリークまたはスラッシング(slashed)になると仮定されることがあります。しかし、このような社会的依存は健全とはいえません。回復プロセスを可能な限り自動化することで、社会層への依存を減らすことができます。
完全な自動化は不可能です。もしそれができれば、それは>50%フォルトトレランスのコンセンサスアルゴリズムと見なされ、そのようなアルゴリズムには非常に厳格な数学的限界があることがすでにわかっています。しかし、部分的な自動化は可能です。例えば、クライアントが十分長い時間取引を観測していた場合、確定済みチェーンやフォーク選択のヘッドを受け入れることを自動拒否できます。攻撃中の悪人が迅速かつきれいに勝利できないようにすることが主要な目標です。
法定数閾値の引き上げ
現在、67%のステークを持つ者が支持すればブロックは確定します。これはあまりに急進的だと指摘されています。イーサリアムの歴史全体を通じて、ファイナリゼーションの失敗は(非常に短時間のもの)1回しかありません。この割合を例えば80%に引き上げると、非ファイナリゼーションの期間はわずかに増えますが、代わりにイーサリアムは以下のような安全性を得ます。特に、より議論を呼ぶような状況でもファイナリゼーションの一時停止が起こるのです。これは、攻撃者であろうと誤ったクライアントであろうと、「間違った側」が即座に勝つより健康的です。
これは「個別ステーカーの意味は何か?」という問いにも答えます。現在、大多数のステーカーはマイニングプールを通じてステーキングしており、個別ステーカーがステークの51%を獲得するのは不可能に思えます。しかし、個別ステーカーが法定数阻止少数派(quorum blocking minority)に達するよう努力すれば、特に法定数が80%の場合(つまりquorum阻止少数派は21%でよい)、実現可能と思われます。個別ステーカーが51%攻撃(ファイナリゼーション回復や検閲)に同意しなければ、そのような攻撃は「きれいな勝利」を得られず、個別ステーカーはマイナリティソフトフォークを組織する動機を持ちます。
なお、法定数閾値とOrbitメカニズムの間には相互作用があります。Orbitを採用した場合、「21%のステーカー」という意味はより複雑になり、バリデータの分布に部分的に依存します。
耐量子性
Metaculusによると、誤差範囲は広いものの、量子コンピュータが2030年代のある時点で暗号を解読し始める可能性があります:

Scott Aaronsonなどの量子計算の専門家も最近、中期的に量子コンピュータが実際に機能する可能性を真剣に考えるようになっています。これはイーサリアムのロードマップ全体に影響を与えます。つまり、現在楕円曲線に依存しているイーサリアムプロトコルのすべての部分が、ハッシュベースまたは他の耐量子代替手段に置き換えられる必要があります。特に、BLS集約の優れた特性に永遠に頼れないことを意味します。これは、プルーフ・オブ・ステーク設計におけるパフォーマンスの仮定を控えめにすることの正当性を裏付け、耐量子代替手段の開発をより前向きに進めることの理由にもなります。
TechFlow公式コミュニティへようこそ
Telegram購読グループ:https://t.me/TechFlowDaily
Twitter公式アカウント:https://x.com/TechFlowPost
Twitter英語アカウント:https://x.com/BlockFlow_News













