リスク警告:「仮想通貨」「ブロックチェーン」の名のもとでの違法な資金調達のリスクに注意してください。—銀行保険監督管理委員会など5部門
検索
ログイン
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
View Market

Vitalik新文:SSF如何让以太坊单槽签名数稳定在8192次?

区块律动BlockBeats
特邀专栏作者
2023-12-28 08:43
この記事は約3558文字で、全文を読むには約6分かかります
在SSF协议后使用8192个签名,将使技术实施者以及轻客户端等基础设施构建者的工作变得更加容易。

元のタイトル: 「SSF 後、スロットあたり 8192 の署名にこだわる: その方法と理由」

原著者: Vitalik Buterin、ETH 研究者

オリジナルコンピレーション: Luccy、BlockBeats

編集者注: SSF (Single Slot Finality) はシングル スロット ファイナリティの略で、イーサリアムのレイテンシを大幅に短縮する方法を提供します。ブロックチェーンのコンセンサスメカニズムの分野では、ファイナリティとは、トランザクションまたはブロックが取り消し不能になり、改ざんまたは元に戻すことができないことを保証することを意味します。ファイナリティを達成することは、二重支出やその他の悪意のある活動のリスクを排除するため、分散型システムの信頼性とセキュリティにとって非常に重要です。

SSF は、ブロックチェーンのコンセンサスメカニズムでは、単一のタイムスロットまたは時間単位が「確定済み」とみなされる可能性があることを示唆しています。これは、すべてのバリデーターがスロットの承認または署名に参加できるようにすることで、トランザクションの確認時間を短縮し、全体的なユーザー エクスペリエンスを向上させるという点で、元のイーサリアム コンセンサスとは異なります。

Vitalik 氏は ETH 研究に「戻り」、SSF 後に参加バリデーターがスロットごとに 2 つの署名を持つこと、つまり 8192 署名に達することを許可する必要がある理由を議論すると同時に、この目標を達成する方法について 3 つの仮定を提案しました。フルステーキング、2 層ステーキング、ローテーション参加については、プロトコルのセキュリティを維持しながらスロットごとの署名数をより効率的に処理する方法を分析し、それらの長所と短所、およびプロトコルとユーザーへの影響について議論します。 BlockBeats は元のテキストを次のようにコンパイルします。

イーサリアムと他のほとんどのプルーフ・オブ・ステーク (ファイナリティ付き) システムとの主な違いの 1 つは、イーサリアムが非常に多数のバリデーターをサポートするよう努めていることです。現在、895,000 人のバリデーターがおり、ジップの法則の分析によると、これは数十人に相当します。何千もの独立した個人または団体。この目的は、分散化をサポートし、全員が行動する能力を放棄して少数のステーキング プールの 1 つに制御を渡す必要なく、一般の人々がステーキングに参加できるようにすることです。

ただし、このアプローチでは、イーサリアム チェーンがスロットごとに多数の署名 (現在は約 28,000、SSF 以降は 1,790,000) を処理する必要があり、非常に高い負荷がかかります。この負荷をサポートするには、多くの技術的犠牲を払う必要がありました。

  • これには、証明が複数のサブネットに分割される複雑な証明伝達メカニズム、それらの署名を検証するための超最適化された BLS 署名操作などが必要です。

  • 現在のところ、これに効果的に対処できる明確な量子耐性の代替手段はありません。

  • ビューの結合などのフォークされた選択の修正は、個々の署名を抽出できないため、より複雑になります。

  • これほど多くの署名を盗むのは困難です。 Helios は、同期委員会署名と呼ばれる特殊な追加署名に基づいて実行する必要があります。

  • スロット内に 2 つではなく 3 つのサブスロットが必要となるため、安全な最小スロット時間が増加します。

署名集約システムは一見合理的であるように見えますが、実際には、システム全体に浸透するシステムの複雑さを生み出します。

さらに言えば、目標すら達成できていない。ステーキングの最低要件は依然として 32 ETH ですが、多くの人にとっては手が届きません。論理分析の観点から見ると、誰もがすべてのスロットにサインインでき、一般の人々に真のステーキングを提供するシステムの目標は、長期的には実現不可能であると思われます。イーサリアムに 5 億人のユーザーがいて、その 10% がステーキングに参加している場合、つまり、スロットごとに 1 億の署名があることを意味します。情報理論の観点から見ると、この設計での処理にはスロットごとに少なくとも 12.5 MB のデータ空きスペースが必要で、これはフル シャーディングの目標とほぼ同等です。おそらく実行可能ですが、ステーキング自体がデータの可用性サンプリングに依存する必要があるため、複雑さが大幅に増加します。それでも、ステーキングに参加しているのは世界人口の約 0.6% だけであり、これには非常に多くの署名を検証するという計算上の問題さえ含まれません。

したがって、各スロットで増え続ける署名を実現するための特効薬 (または特効薬) を作成する暗号学者に依存するのではなく、哲学的な転換を行うことをお勧めします。つまり、最初からそのような期待を放棄するということです。これにより、プルーフ・オブ・ステークの設計空間が大幅に拡張され、多くの技術的簡素化が可能になり、ヘリオスがイーサリアムのコンセンサスに直接スパークできるようになり、安全性が高まり、ウィンターニッツのような面白くないが長年続いている署名スキームさえも作成できるようになります。量子抵抗の問題を解決できる可能性があります。

なぜ「委員会だけを使用」しないのでしょうか?

まさにこの問題に直面しているイーサリアム以外のブロックチェーンの多くは、セキュリティに対して委員会ベースのアプローチを採用しています。各スロット中に、スロットの最終決定を担当する N 人のバリデーター (例: N ≈ 1000) がランダムに選択されます。このアプローチでは説明責任が提供されないため、なぜ不十分なのかを思い出してみる価値があります。

その理由を理解するために、51% 攻撃が発生したと仮定します。これは、最終状態反転攻撃または検閲攻撃である可能性があります。攻撃を実行するには、経済主体が株式の大部分を制御して攻撃に同意する必要があります。つまり、攻撃に参加するソフトウェアを実行し、最終的に検証を行うすべてのバリデーターとともに攻撃に参加する必要があります。委員会の委員に選ばれました。数学的ランダムサンプリングによりこれが保証されます。しかし、攻撃に同意したバリデーターのほとんどは最終的に委員会に選出されず、そのため出席することができなかったため、このことに対する彼らの処罰は最小限で済みました。

現在、イーサリアムはまったく逆のことを行っています。 51% 攻撃が発生した場合、攻撃バリデータ セット全体の大部分がデポジットを削減されます。現在の攻撃コストは約 900 万 ETH (約 200 億ドル) で、攻撃者にとって最も有利な方法でネットワーク同期の中断が発生すると想定しています。

コストは高いと思いますが、非常に高いので、この問題についてはある程度の犠牲を払うことができます。攻撃コストが100~200万ETHでも全然十分です。さらに、現在イーサリアムに存在する主な集中化リスクは、まったく別の場所で現れます。最低入金額がゼロ近くまで削減されたとしても、大規模なステーキングプールの力はそれほど低下しません。

これが、私が中途半端な解決策を提唱する理由です。つまり、バリデーターの責任においてある程度の犠牲を払いますが、それでも大幅に削減可能なETHの総量を高く保ち、その代わりに、より小さなバリデーターセットの利点のほとんどを得ることができます。

SSF でスロットごとに 8192 個の署名がある場合はどうなりますか?

従来の 2 ラウンドのコンセンサス プロトコル (Tendermint で使用され、必然的に SSF で使用されるプロトコルなど) を想定すると、参加する各バリデーターはスロットごとに 2 つの署名を必要とします。私たちはこの現実に対処する必要があり、これに対処するには主に 3 つの方法があると考えています。

方法 1: 分散型プレッジプールを完全に採用する

Zen of Python には非常に重要な文が含まれています。

それを行う明白な方法は 1 つ、できれば 1 つだけである必要があります。

ステーキングを平等にするという問題に関して、イーサリアムは現在、この目標を達成するために 2 つの異なる戦略を同時に実行しているため、このルールに違反しています: (i) 小規模の独立したステーキング、および (ii) 分散検証の使用 仮想マシンに基づく分散型ステーキング プールテクノロジー (DVT)。上記の理由により、(i) 少数の個人ステーカーのみをサポートでき、最低入金額が高すぎる人々が常に多数存在します。ただし、イーサリアムは (i) をサポートするために非常に高い技術的負荷コストを支払っています。

考えられる解決策の 1 つは、(i) を放棄して (ii) に全力を尽くすことです。最低入金額を 4096 ETH に増やし、バリデーターの合計制限を 4096 (約 1670 万 ETH) に設定できます。小規模なステーカーは、資本を提供するか、ノードオペレーターになることで、DVT プールに参加することが期待されています。攻撃者による悪用を防ぐには、ノード オペレータの役割を何らかの方法でレピュテーションしきい値によって制限する必要があり、この点に関して個々のプールがさまざまなオプションを提供することで競合します。資本提供はライセンスフリーとなります。

ペナルティの上限(例えば、総入金額の 1/8)を設定することで、このモデルでのステーキングをより「寛容」にすることができます。これにより、ノード オペレーターに対する信頼が低下する可能性がありますが、概要を説明した問題があるため、慎重に扱う価値があります。

方法 2: 2 層プレッジ

私たちはステーカーの 2 つの層を作成します。最終状態の確認に参加するために 4096 ETH が必要な「ヘビー」層と、最低要件がない (入出金の遅延や抜本的な抜け穴がない) 「ライト」層です。第二層の安全性を追加します。ブロックの最終状態を確認するには、重い層の最終状態の確認と、軽い層のオンライン ライト バリデーターの少なくとも 50% の両方がそれを証明する必要があります。

攻撃が成功するには重層と軽層の両方が破損する必要があるため、この異質性は検閲と攻撃耐性にとって有益です。 1 つのレイヤーが破損していて、もう 1 つのレイヤーが破損していない場合、チェーンは停止します。上位のレイヤーが破損している場合は、罰せられる可能性があります。

このもう 1 つの利点は、ライト層にアプリ内担保としても使用される ETH を含めることができることです。主な欠点は、小規模ステーカーと大規模ステーカーの間に溝ができてしまい、ステーキングが不平等になることです。

方法 3: 輪番参加 (例: 説明責任のある委員会)

ここで提案されているスーパー委員会の設計と同様のアプローチを採用しています。スロットごとに、現在アクティブな 4096 個のバリデーターを選択し、セキュリティが維持されるように各スロットでこのセットを慎重に調整します。

ただし、このフレームワーク内で「金額に見合った価値」を得るために、いくつかの異なるパラメーターを選択しました。特に、バリデーターが任意の高残高で参加することを許可しており、バリデーターのETHの量が一定量M(変動する必要があります)を超える場合、各スロットで委員会に参加します。検証者が N を持っている場合

ここには、インセンティブ目的の「重み」とコンセンサス目的の「重み」を切り離す興味深いレバーがあります。平均報酬を比例的に保つために、委員会内のすべてのバリデーターの報酬は(少なくとも ≤M ETH を使用するバリデーターに対しては)同じである必要があります。しかし、ETH の重み付けによって委員会内のコンセンサスバリデーターの重みを計算することは可能です。これにより、ファイナリティを突破するために必要なETHの量が、委員会内の合計ETHの1/3倍以上になることが保証されます。

大まかなZipfの法則分析では、このETHの量は次のように計算されます。

  • 合計バランスの各 2 次レベルでは、バリデーターの数はそのバランス レベルに反比例し、これらのバリデーターの合計バランスは同じになります。

  • したがって、バリデーターが常に委員会に参加しているバリア M より上のレベルを除き、委員会には各残高レベルから同量の ETH が参加することになります。

注: 計算されたデータをより明確に表示するために、次の手順はスクリーンショットで示されます。

このアプローチの主な欠点は、委員会が変更された場合にコンセンサスセキュリティを達成できるように、プロトコル内でバリデーターをランダムに選択するため、複雑さがわずかに増加することです。

主な利点は、独立したステーキングを認識可能な形式で維持し、単一カテゴリーのシステムを維持し、最低入金額を非常に低いレベル (例: 1 ETH) に下げることもできることです。

結論は

SSF プロトコルの背後にある 8192 署名に固執することを決定すれば、技術実装者やライト クライアントなどのサイド インフラストラクチャの構築者の作業がはるかに楽になります。誰でもコンセンサスクライアントを実行するのが簡単になり、ユーザーやステーキング愛好家などがこの前提に基づいてすぐに作業できるようになります。イーサリアム プロトコルの将来の負荷はもはや不明ではありません。将来的にはハード フォークによって改善される可能性がありますが、開発者がテクノロジーが十分に改善され、スロットごとに同じレベルの容易さでより多くの署名を処理できると確信した場合に限ります。 。

残りの作業は、上記の 3 つのアプローチのどれを採用するか、あるいはまったく異なるアプローチを採用するかを決定することになります。それは、私たちがどのようなトレードオフに満足できるか、特にリキッドステーキングのような関連問題にどのように対処するかという問題になるでしょう。これはおそらく現在容易になりつつある技術的問題とは別に解決できるでしょう。

元のリンク


ETH
Vitalik
テクノロジー
Odaily公式コミュニティへの参加を歓迎します
購読グループ

https://t.me/Odaily_News

チャットグループ

https://t.me/Odaily_CryptoPunk

公式アカウント

https://twitter.com/OdailyChina

チャットグループ

https://t.me/Odaily_CryptoPunk