Skip to content

Ethereum P2P層の耐量子化 — 署名移行の陰で置き去りのハンドシェイク・ピア認証・ディスカバリを棚卸しし、ethp2pの設計にPQ要件を持ち込む #35

Description

@banr1

概要

Ethereum の耐量子(PQ)移行は署名の置き換えを軸に進んでいるが、ノード同士をつなぐ P2P 層(鍵交換・ピア認証・ディスカバリ)は楕円曲線暗号のままロードマップの外にある。本研究は devp2p / libp2p / ethp2p の暗号プリミティブを棚卸しし、脅威モデルとサイズ・レイテンシ・帯域の予算を数値で定め、PQ ハンドシェイクを試作・計測して、設計中の ethp2p 仕様へ提案する。

なぜ重要なのか(Why)

Ethereum の PQ 移行は 2026 年に本格化した。Ethereum Foundation は 1 月に専任の Post-Quantum チームを作り、3 月に pq.ethereum.org を公開、10 以上のクライアントチームが毎週 PQ 相互運用 devnet を回している。L1 の更新は 2029 年までに終えうるという。Google Quantum AI が EF の Justin Drake らと 2026 年 3 月に出したホワイトペーパーは secp256k1 の離散対数を 1,200 論理量子ビット以下で解けると示し、米大統領令 14412(2026 年 6 月)は連邦機関に鍵確立を 2030 年末までに PQ 化せよと命じた。

しかし P2P 層は対象外である。pq.ethereum.org のマイルストーンはコンセンサス・実行・データの 3 層に閉じ、ethereum.org が挙げる脆弱箇所も BLS・KZG・ECDSA・ZK 証明の 4 つである。一方で P2P 層は、ENR が secp256k1 で署名され(最大 300 バイト)、discv5 は secp256k1 の ECDH と署名を 1,280 バイト以下の UDP パケットに載せ、RLPx は secp256k1 の ECIES、libp2p は TLS 1.3 に secp256k1 の identity 署名を結び付け、フォールバックは X25519 の Noise XX と、端から端まで楕円曲線でできている。PQ 用の leanSpec の実装でも identity は secp256k1 のままである。リスクは鍵交換の機密性(harvest now, decrypt later)とノード認証の偽造(ENR 偽造・なりすまし・eclipse)に集中する。

次世代スタック ethp2p も 2026 年 3 月に始まったばかりで、実装済みは 5 層のうち broadcast のみ、transport / peering は設計中で、仕様書に PQ の言及はない。要件もタイトである。ML-KEM-768 の公開鍵は 1,184 バイト、ML-DSA-44 の署名は 2,420 バイトで、ENR の 300 バイトにも discv5 の 1,280 バイトにも収まらない。PSE は 2025 年 4 月の探索で、PQ の鍵と署名は UDP ベースのディスカバリとトランスポートには大きすぎ現状では非現実的と結論し、Tectonic Labs の署名なし KEM ベース RLPx ハンドシェイク案(2026 年 3 月、ethresear.ch)でも帯域は 800 バイトから 7〜8 KB に増える。返信は 0 件である。libp2p のハイブリッド Noise 草案(2026 年)も Ethereum 固有の制約は考慮の外にある。

つまり Ethereum の P2P 層について「何が量子脆弱で、どこまでのサイズと遅延なら許され、どの構成なら収まるか」を数値で持っている人はいない。ethp2p のロードマップは未完成で、重要なはずなのにあまり語られておらず、要件はタイトなはず、という本人の問題意識を上の事実は裏付ける。transport と peering が設計中の今なら PQ 要件を設計に織り込める。本研究はその要件と実測値を作り、ethp2p と libp2p の仕様に持ち込む。

この研究の主な貢献・期待される成果(What)

  • 暗号インベントリ: devp2p(ENR / discv5 / RLPx)、libp2p(TLS / Noise / identity)、ethp2p の鍵交換・署名・ID 導出を「守るもの・載る場所・サイズ制約」で表にした公開文書(CBOM 形式も検討)
  • 脅威モデル: HNDL による盗聴と identity 鍵の奪取による ENR 偽造・なりすまし・eclipse を分け、「機密性を先に、認証は後で」という TLS 業界の順序が P2P でも成り立つかを判定する
  • 要件定義: ENR 300 バイト、discv5 1,280 バイト、EIP-7870 の帯域、ハンドシェイク頻度から予算(サイズ・往復・CPU)を数値化し、ハイブリッド KEM、KEMTLS 型の署名なし認証、ハッシュベース署名 identity の採否を示す
  • プロトタイプとベンチマーク: rust-libp2p と libp2p-hs で Noise XXhfs / PQ TLS を実装し、unified-testing の相互運用テストと ethp2p の Shadow シミュレーションで接続確立時間・伝搬遅延・帯域を測る
  • 仕様提案: ethp2p の transport / peering 仕様への PR と、libp2p の PQ 草案への Ethereum 側の制約のフィードバック

先行研究・関連ワーク

  • Towards a Quantum-Safe P2P for Ethereum (PSE, 2025): ENR / discv5 / RLPx / libp2p の PQ 置き換えを試算し、UDP ベースでは非現実的で QUIC + PQ-Noise の再設計が要ると結論した探索報告。→ この呼びかけの続きを ethp2p の設計段階で埋める
  • Exploring Signature-Free Post-Quantum RLPx Handshake (Tectonic Labs, 2026): KEM に identity を結び付けて実行層 P2P から署名をなくす提案。帯域 800 バイト → 7〜8 KB、認証に 1 往復追加。→ 予算に当てはめて評価する候補
  • Post Quantum Noise (Angel, Dowling, Hülsing, Schwabe, Weber, CCS 2022): Noise の DH を KEM に置き換えた PQ ハンドシェイクの設計と安全性証明。→ libp2p Noise の PQ 化の理論的土台
  • KEMTLS (Schwabe, Stebila, Wiggers, CCS 2020): 署名の代わりに KEM で認証してハンドシェイクを小さくする。→ 大きな PQ 署名を避ける「署名なし認証」の原型
  • libp2p specs #716: Noise_XXhfs_25519+ML-KEM-768 / #710: RFC-0004 ML-DSA identities (libp2p, 2026): Noise XX にハイブリッド前方秘匿を足す草案(メッセージ A は 1,216 バイト)と PQ peer identity の RFC。→ プロトタイプの出発点。Ethereum 側の制約をここへ返す

Nyx の関連する取り組み・シナジー

  • verity: Lean 4 で形式検証するコンセンサスクライアント。上流の rust-libp2p(QUIC、gossipsub)と leanSig の XMSS を使う。PQ ハンドシェイクの最初の適用先
  • bb-crypto-inventory: エンドポイントから暗号資産を洗い出し CBOM と PQC readiness スコアを出す LLM エージェント。インベントリを同じ形式で出す
  • unified-testing: libp2p / ethp2p 実装の相互運用・スケール・観測テスト基盤。PQ ハンドシェイクの相互運用テストとベンチはここに載せる
  • libp2p-hs: Haskell 版 libp2p(tcp + noise + yamux で go-libp2p と相互運用済み)。Noise XXhfs をもう一実装で書き、仕様の曖昧さを洗う
  • hash-sig / xmss-hypercube: ハッシュベース署名の Rust 実装。ノード identity の PQ 化候補として予算に当てはめる

対象となる読者・協力者

  • Ethereum クライアントのネットワーキング担当者、ethp2p / libp2p の開発者
  • 耐量子暗号のプロトコル設計者(KEM ベース AKE、PQ Noise / KEMTLS、ハッシュベース署名)
  • Ethereum の PQ 移行(leanSpec、pq-devnet)や P2P の計測・シミュレーションに関わる研究者

想定される難易度・期間

  • 難易度: 高(暗号プロトコル設計とネットワーク工学にまたがり、対象が 3 スタックに分かれる)
  • 期間目安: 半年〜1年(インベントリと脅威モデル 1〜2 ヶ月 → 予算の数値化と候補評価 1〜2 ヶ月 → プロトタイプとベンチ 3 ヶ月 → 仕様提案)

キーワード・タグ

耐量子暗号, P2P, ethp2p, devp2p, libp2p, Noise, discv5, ENR, ML-KEM, ハイブリッド鍵交換, harvest now decrypt later, ハッシュベース署名

その他の関連リンク

連絡先・ディスカッション

contact@nyx.foundation

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

research-idea研究アイデア・興味トピック

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions