
Solanaが量子耐性を備えるには何を変える必要があるのか?
本稿の初期版をレビューしてくださったKobi、Lostin、Quentin、Ichigo、Aseneca、Deanの各氏に深く感謝します。
ここ数か月、耐量子暗号への移行まで残された時間は数年しかなく、その場合Solanaは最初の犠牲者の一つになるというさまざまな危機をあおる主張が広まっています。こうした主張をどれほど緊急と捉えるか、あるいは受け入れるかにかかわらず、現在の状況でSolanaが耐量子暗号へ移行する場合、プロトコルにどのような変更が必要になるのかを整理しておくことは有益です。
量子コンピューティングの概要
量子コンピューティングは、二進論理に基づく古典的なモデルとは異なる計算パラダイムです。量子コンピューターは、情報を0と1だけで処理するのではなく、量子力学の法則に従う物理系である量子ビットを使用します。量子ビットは複数の状態を同時に取ることができ(この性質は重ね合わせと呼ばれます)、量子プロセッサーは多数の解の候補を並列に探索できます。
量子コンピューティングの重要性は、あらゆる計算を高速化することではなく、ごく特定の問題を高速化できる点にあります。理論上は強力ですが、現在の量子デバイスは、これらのアルゴリズムを意味のある規模で実行できる段階にはほど遠い状況です。
現代の公開鍵暗号を脅かす規模に量子コンピューターがいつ到達するのか、そもそも到達するのかさえ誰にも分かりません。Ed25519のような方式を破るには、数十万から数百万の安定した量子ビット、極めて高品質な誤り訂正、そしてShorのアルゴリズムのような深い量子回路を実行できるほど長いコヒーレンス時間が必要です。現在、そのようなマシンは純粋に理論上の存在です。既存の量子プロセッサーは、ノイズが多く寿命の短い物理量子ビットで動作しており、誤り率は暗号解読を有意に試みられる水準をはるかに上回っています。最先端のデバイスでも、物理量子ビットは数百から数千程度にすぎず、論理量子ビットではありません。また、ゲート忠実度とコヒーレンス特性も、現実的な攻撃に必要な水準より数桁低いままです。
それでも、量子コンピューティングが長期的にもたらし得る影響は大きいため、ブロックチェーンを含むセキュリティ重視のシステムは、耐量子プリミティブへの移行に何が必要かを検討する必要があります。
量子攻撃
現代暗号は、古典コンピューターでは効率的に解けないという計算困難性の仮定に依存しています。量子コンピューターには、異なる暗号プリミティブを脅かす2つの主要なアルゴリズムがあります。ShorのアルゴリズムとGroverのアルゴリズムです。
Shorのアルゴリズムは、RSA、Diffie–Hellman、そしてSolanaにとって特に重要な楕円曲線暗号を効率的に破ります。つまり、攻撃者は公開鍵から秘密鍵を導出できます。これには、Solanaプロトコル全体で中核的な署名方式として使用されるEd25519も含まれます。そのため、Shorのアルゴリズムは長期的に無視できない量子脅威です。
Groverのアルゴリズムが総当たり探索にもたらす高速化は、平方根程度に限られます。SHA-256の実効セキュリティは128ビットに低下しますが、それでも現実的な脅威の範囲をはるかに超えています。共通鍵暗号、Merkleツリー、ハッシュでは、大規模なGrover対応量子マシンを構築するより、古典ハードウェアを拡張する方が依然として費用対効果に優れます。したがって、GroverのアルゴリズムはSolanaの長期的なセキュリティモデルにとって現実的な懸念ではありません。
大規模な量子コンピューターは現在の公開鍵暗号を根本的に破る可能性があるため、量子攻撃下でも安全性を維持できる方式を開発する「耐量子暗号(PQC)」という分野が生まれました。
NIST(米国国立標準技術研究所)はこれまでに、次の2つの耐量子デジタル署名方式を標準化しています。
- ML-DSA:格子ベースで、CRYSTALS-Dilithiumから派生
- SLH-DSA:ハッシュベースで、SPHINCS+から派生
どちらも、現在使用されている楕円曲線プリミティブよりはるかに大きな公開鍵と署名を使用します。そのため、量子コンピューターが差し迫った脅威にならない限り、Solanaのような高スループットシステムでの早期移行は現実的ではありません。
FN-DSAもあります。これはFALCONをベースとし、ML-DSAより小さな代替方式として設計されていますが、現時点ではドラフト提案にすぎず、NIST標準としてはまだ承認されていません。
| 方式 | 公開鍵サイズ | 署名サイズ | セキュリティ | 耐量子対応 |
| Ed25519 | 32 B | 64 B | 128ビット | いいえ |
| ML-DSA | 1312 B | 2560 B | 128ビット | はい |
| FN-DSA | 897 B | 666 B | 128ビット | はい |
| SLH-DSA | 64 B | 7856 B | 128ビット | はい |
耐量子暗号は今も非常に活発な開発段階にあります。Ed25519に対してShorのアルゴリズムを実行できる量子コンピューターが登場するよりはるか前に、より効率的な方式が発見される可能性があります。HAWK署名のような初期の非標準アプローチは有望に見えますが、まだ研究段階です。
インターネット帯域幅がNielsenの法則に従って拡大し、Solanaのトランザクションサイズ上限も2026年にはすでに4096バイトへ引き上げられる予定であることを考えると、最終的な移行に備えてプロトコルを準備しつつ、より効率的な方式が利用可能になるまで完全なPQ移行を遅らせるのが妥当です。それまでの間は、Winternitzのような、十分に確立されたハッシュベースのワンタイム署名方式を用いたVault構成に依存することも可能です。これらは量子攻撃に対しても長期的な安全性を提供します。こうしたソリューションは現在すでにSolana上に存在します。
本稿では、Ed25519に依存するSolanaのコンセンサス上重要な部分のみを扱います。完全な耐量子移行には、バリデータ間通信、暗号化されたネットワークチャネル、共通鍵暗号など、ほかのコンポーネントも関係します。これらの領域にもPQ安全な代替方式またはハイブリッド方式が必要ですが、本稿の範囲外です。
アドレスとトランザクション署名
Solanaの外部所有アカウント(EOA)は、公開鍵をアドレスとして使用します。Ed25519の32バイト公開鍵が、識別子と検証鍵の両方として機能します。耐量子方式ではこのモデルが変わるため、既存のTX形式を変更するのではなく、新しいアドレス形式とトランザクションバージョンとして導入するのが自然です。
- PQ公開鍵ははるかに大きいため、32バイトのアドレスで公開鍵を直接エンコードできなくなります。代わりにアドレスは、PQ公開鍵と署名方式識別子のハッシュになります。
- 移行中にPQアドレスと既存のEd25519アドレスを共存させる場合、PQから導出したハッシュがEd25519曲線上の点と衝突しないようにアドレス空間を構築し、そのアドレスに対応するEd25519秘密鍵が存在しないことを保証する必要があります。これは、PDAがbump seedを使って有効なEd25519曲線上の点になることを回避する仕組みと同様です。
- PDAのセキュリティは影響を受けません。PDAはSHA-256の第二原像計算困難性に依存しており、将来Groverのアルゴリズムが現実的に適用されたとしても脅かされないためです。
- 現在のトランザクションIDは、トランザクション内の最初のEd25519署名です。PQ署名ははるかに大きいため、この仕組みは変更する必要があります。自然な代替案は、トランザクションIDをトランザクションペイロードのハッシュとして定義することです。これにより署名方式に依存せず、将来にも対応できます。
ユーザーアカウントだけでなく、Solana内のすべての権限鍵もEd25519公開鍵です。これには、アカウント所有者、mint権限、freeze権限、upgrade権限、stake権限とwithdraw権限、バリデータID鍵、vote権限鍵など、プロトコルまたはプログラムレベルのあらゆる権限が含まれます。これらはすべて、異なる意味上の役割を持つEd25519キーペアにすぎないため、ユーザーアドレスやトランザクション署名鍵と同じ耐量子移行上の制約を受けます。
Votorのセクションで説明するように、現在、BLSのような集約署名に相当するPQ方式はありません。将来そのような方式が登場すれば、メッセージ本文に対する署名を集約し、複数の署名を含むトランザクションの容量を大幅に削減できます。Ed25519より少ない容量で済む可能性さえあります。
Votor
Votor(つまり、Alpenglowコンセンサスアップグレードの投票部分)は、バリデータ間の全対全投票構造に依存します。バリデータはスロットごとにほかのすべてのバリデータへ投票を送り、クォーラムに達すると証明書を形成できます。
現在、この仕組みが効率的なのは、BLS集約によってコンパクトな署名と集約証明書を実現できるためです。PQ環境では状況が変わります。
現在、実用的にデプロイできるBLS集約相当のPQ方式はありません。Chipmunkのような格子ベースの集約手法を含め、複数の研究方向があります。根本的に不可能と思われるものはありませんが、Solanaのリアルタイム要件を満たすほど効率的ではありません。STARKベースの集約もあり、原理上は多数の署名の有効性を証明できますが、数百のバリデータ署名に対する証明生成は依然として遅すぎます……今のところは。
近い将来に署名集約へ移行する必要が生じた場合、帯域幅への影響を大幅に抑えるようVotorを調整できます。バリデータは、完全な証明書をすべてのピアへブロードキャストする代わりに、次の1人または2人のリーダーと、ステークからランダムに選んだ少数のサブセットにのみ転送します。必要な帯域幅は増えますが、現在のAlpenglow以前のgossipレイヤーと同程度に抑えられます。
もちろん、バリデータ数を減らすことでも問題を緩和できます。将来のプロトコル変更や経済設計によってバリデータセットが大幅に小さくなれば、PQ時代の投票と署名処理に必要な帯域幅と計算量は、かなり管理しやすくなります。バリデータが少なければ、全対全通信の規模と証明書形成のコストが下がり、最適とは言えないPQ集約方式でも実用化しやすくなります。ただし、この削減には分散性とフォールトトレランスの面で固有のトレードオフが伴うため、システムのセキュリティ目標と照らして慎重に検討する必要があります。
Rotor(Turbine)
Rotor(Turbineプロトコルの後継)は、Alpenglowアップグレードのデータ伝播プロトコルであり、ブロックを迅速かつ効率的に配信するSolanaの単一リレーネットワークです。リーダーはブロックをslice(またはForward Error Correction set)と呼ばれる大きな単位に分割し、各sliceは複数のshredで構成されます。sliceが前方誤り訂正の構造を提供し、shredはRotorを通じて配信されるMTUサイズのパケットとして機能します。次にリーダーは、ツリーの第1層にある少数のノードにのみshredを送信します。各ノードはshredを検証し、自身の子ノードへ転送します。これにより、リーダーが全員へブロードキャストすることなく、多数のノードの帯域幅をフォールトトレラントな形で活用できます。Rotorはこの構造とForward Error Correctionを組み合わせているため、ノードはshredの一部を受信するだけでブロック全体を再構築できます。その結果、極めて高いスループットを維持しながら、パケット損失への耐性を確保できます。
悪意のある無効なshredがネットワーク全体へ伝播するのを防ぐため、各shredにはリーダーの署名が含まれています。Ed25519署名が小さいため、この仕組みが成り立ちます。PQ署名ははるかに大きく、MTU上限を超える場合も多いため、各shredに埋め込むことは現実的ではありません。
現実的なPQ互換アプローチとして、次の2つが考えられます。
A)slice(FEC set)ごとに1つの署名
実用的な方向性は次のとおりです。
- slice(FEC-set)のサイズを拡大する
- バリデータ間のチャネルを認証し、悪意あるノードが追跡不能な偽造shredを注入するのを防ぐ
- そのslice内のすべてのshredからMerkle rootを計算し、リーダーはそのrootだけに署名する(これは現在のシステムでもすでに採用されている仕組みです)
- 各shredにはMerkle proofを含めますが、署名は含めない
バリデータは、署名済みrootに対するMerkle proofを使ってshredの真正性を検証します。無効なshredは直ちに拒否されるため、パイプライン処理とRotorのステーク加重リレー設計との互換性を維持できます。
B)ブロック全体に1つの署名
もう1つのアプローチは次のとおりです。
- リーダーは最終的なブロックハッシュ(つまり、すべてのshredのベクトルコミットメント)だけに署名する
- shredは即時の署名ベース認証なしで、スロット全体を通じて転送される
- ブロックが完成した時点で、バリデータは1つのPQ署名を検証し、受信したすべてのshredが認証済みブロックハッシュと一致するか確認する
このモデルでは、次のようになります。
- バリデータはブロック署名を確認するまで真正性を検証できないため、スロット中に無効なshredを検出できません
- ブロック完成後に無効なshredが検出され、責任のあるリレーを特定してRotor内で一時的にブラックリストへ登録できます
- このアプローチでも、バリデータ間に認証済みチャネルが必要です
どちらの戦略でも、PQ環境におけるRotorの主なボトルネックである、大きなPQ署名をすべてのshredへ埋め込む必要がなくなります。
誤解
誤解1:「量子コンピューターが非対称暗号を破るなら、暗号資産が破られるより大きな問題が起きる。
量子コンピューターが公開鍵暗号を破れるようになれば、銀行、政府、決済ネットワークなど、デジタル世界全体が一斉に崩壊するとよく言われます。実際には、中央集権型システムは新しい暗号方式へはるかに容易に移行できます。銀行や政府は、内部で鍵をローテーションし、インフラを更新し、新しい安全なチャネルの使用をユーザーに強制できます。
パブリックブロックチェーンではそうはいきません。ブロックチェーンは、ユーザー自身が移行トランザクションに署名しない限り、何百万ものユーザー鍵を中央でローテーションできません。すべてのユーザーは、まさに脆弱になりつつある現在の秘密鍵を使い、資産を耐量子安全なアドレスへ移動する必要があります。このため、分散型システムの移行は、どの中央集権型サービスよりもはるかに複雑で、時間的制約も厳しくなります。
誤解2:「そのアドレスから一度も支出していなければ安全だ。」
これは一部のチェーン(Bitcoinなど)に限って部分的に正しい主張です。このような設計では、コインがハッシュ(P2WPKHなど)の背後にロックされ、ユーザーがそのアドレスから支出したときに初めて公開鍵が明らかになることがよくあります。それまでは実際の公開鍵が隠されています。しかし、一度でも支出した瞬間に、この保護は失われます。公開された公開鍵は永久に露出し続け、耐量子時代にはShorのアルゴリズムの標的になります。
一方、Solanaは異なるモデルを採用しています。すべてのアドレスが公開鍵です。「隠された」レイヤーはなく、ハッシュによる原像保護もありません。そのため、十分に強力な量子マシンが登場すれば、Solana上のすべての外部所有アカウントはデフォルトでShorのアルゴリズムに対して脆弱です。未使用アドレスによる安全網は存在しません。
誤解3:「量子コンピューターは間もなく実現する。」
この1年で目覚ましい技術的進歩があったものの、量子コンピューターには依然として極めて大きな制約があります。現在のデバイスで実行できるのはShorのアルゴリズムのおもちゃのようなバージョンで、通常は21のような数の素因数分解で実演されます。これはごく単純で、現実の暗号解読には何の価値もありません。
現代暗号を破るには、数十万から数百万の安定した量子ビット、極めて低い誤り率、長いコヒーレンス時間、そして深い誤り訂正済み回路が必要です。
誤解4:「Groverのアルゴリズムはハッシュ関数を無意味にする。」
Groverのアルゴリズムによる総当たり探索の高速化は、平方根程度です。SHA-256の場合、256ビットのセキュリティが約128ビットに低下します。それでも現実的な攻撃の範囲をはるかに超えています。まして、大規模にGroverのアルゴリズムを実行できる量子マシンを構築すること自体が途方もなく困難です。
共通鍵暗号、Merkleツリー、Solana上のPDAを含むハッシュベースの構成では、量子攻撃に頼るよりも古典コンピューティングを拡張する方が安価で現実的です。
誤解5:「量子コンピューターは公開鍵からシードフレーズを抽出できる。」
公開鍵からシードフレーズを魔法のように導出できる量子アルゴリズムはありません。シードフレーズは公開鍵に数学的に埋め込まれておらず、公開情報からウォレットのシードを明らかにする可逆的な対応関係も存在しません。量子コンピューターは公開鍵から秘密鍵を導出できる可能性がありますが、さらに「上流」へさかのぼり、そのキーペアを最初に生成したシードフレーズを復元することはできません。
シードフレーズは一方向の鍵導出関数を通じて秘密鍵を導出するため、Shorのアルゴリズムではこれらの関数を逆算できません。量子攻撃者に秘密鍵を取得されるだけでも壊滅的です。攻撃者がトランザクションへ署名できるためです。それでもシードフレーズを複製または復元することはできません。シードフレーズは、異なる導出パスを使う新しいPQC鍵を保護できます。
まとめ
Solanaが近い将来、耐量子暗号へ移行する必要はありません。移行には、より大きなPQ公開鍵を格納できるようトランザクション形式を変更すること、導出したアドレスハッシュが曲線外にあることを保証するロジック(衝突を避けるためにbumpまたはsaltを使う可能性があります)、そしてruntime内で複数のPQ方式を検証する機能が必要です。PQ署名はEd25519より処理コストが高いため、最大のコストはトランザクションサイズの増加と検証計算量の増大です。実用的な量子コンピューターの実現時期については「数年後」から「永久に実現しない」まで幅があり、現在のPQ署名方式は、極めて高いスループットに最適化されたシステムで使うにはかなり大きく低速です。
しかし、最終的に移行が必要になった場合、その道筋は概念的には明確です。これらの変更はどれも不可能ではありませんが、Solanaで最もパフォーマンスに敏感なサブシステムの一部を再構築することになります。明るい材料は、信頼に足る量子脅威が現れる頃には暗号技術の状況が大きく変わり、はるかに効率的なPQプリミティブが登場している可能性が高いことです。
参考資料
関連記事
Heliusを購読
Solana開発の最新情報や新しい記事の公開通知を受け取れます


