Google のチームは、ウェブを量子耐性暗号に移行する準備を整えることに注力しています。この大きな変革に対応するための戦略を継続しながら、技術標準を更新し、新しい量子耐性アルゴリズムをテストおよび展開しているほか、この取り組みを成功させるために幅広いエコシステムと連携しています。
この移行に向けた第一歩として、Chrome 116 から TLS での対称シークレットの確立に X25519Kyber768 がサポートされるようになり、Chrome 115 ではフラグを設定することで利用できるようになります。このハイブリッド メカニズムは、2 つの暗号アルゴリズムの出力を組み合わせて、TLS 接続の大部分を暗号化するために使用されるセッション鍵を生成します。
Google は、この変更に伴うエコシステムの非互換性を洗い出すために、このアルゴリズムを TCP と QUIC の両方で Chrome と Google サーバーに展開し、潜在的な互換性の問題をモニタリングしています。Cloudflare などのサードパーティ サーバー オペレーターがこのセッション鍵のサポートを追加した場合、Chrome は、当該サードパーティ サーバーに接続する際に、この更新された鍵合意を使用することもあります。この変更によって引き起こされたと思われる問題に遭遇したデベロッパーまたは管理者の方は、バグについてご報告ください。ここからは、この変更とその理由を理解するのに役立つ重要な背景情報について記載します。
ポスト量子暗号化へと向かう理由
TLS などの最新のネットワーク プロトコルは、情報の保護(機密性)やウェブサイトの ID 検証(認証)など、さまざまな目的で暗号を使用します。この暗号の強さは、攻撃者がこうした特性の 1 つ以上を侵害するのがどれほど難しいかという観点から評価されます。暗号化の分野では、攻撃はより強力になることはあっても弱くなることは決してない、とよく言われます。これは、攻撃が進化し、時間が経つほど手ごわくなるため、より強力なアルゴリズムへの移行が重要になることを強調しています。
そのような進化の一例として、既存のコンピューティング方式では不可能な特定の計算を効率的に実行できる量子コンピュータの開発が挙げられます。現在使用されている多くのタイプの非対称暗号化は、既存の技術を使用した攻撃に対して強いと考えられていますが、十分な能力の量子コンピュータを使用する攻撃者には対抗できません。
量子耐性のある暗号は、量子暗号解読技術と古典的暗号解読技術の両方に対しても安全でなければなりません。これは理論上の話ではありません。2022 年と 2023 年には、量子耐性暗号アルゴリズムの主要な候補のいくつかが、市販されている安価なハードウェア上で破られました。X25519Kyber768 などのハイブリッド メカニズムは、接続が既存の安全なアルゴリズムによって保護されることを保証しながら、新しい量子耐性アルゴリズムを展開およびテストする柔軟性を提供する必要があります。
こうした要求事項に加えて、このアルゴリズムは、市販のハードウェアでもパフォーマンスを発揮する必要があるため、問題がさらに複雑になります。
なぜ転送中のデータを保護することが、今重要なのか
現代の古典的な暗号を破ることができる量子コンピュータは、今から 5 年、10 年、おそらく 50 年後にも登場しないと考えられています。それでは、なぜ今、トラフィックの保護を始めることが重要なのでしょうか?その答えは、特定の用途の暗号は、今収集して後で解読(Harvest Now, Decrypt Later)と呼ばれる攻撃に対して脆弱だからです。この攻撃では、データは即座に収集されて保存されますが、解読は、暗号解読技術が改良された後で行われます。
TLS では、転送中のデータを保護する対称暗号化アルゴリズムは量子暗号解読に対して安全であると考えられていますが、対称鍵の生成方法はそうではありません。つまり、Chrome では、量子耐性のあるセッション鍵を使用するために TLS を更新するのが早ければ早いほど、将来の量子暗号解読からユーザー ネットワーク トラフィックをより早く保護することができます。
展開に関する考慮事項
X25519Kyber768 を使用すると、Kyber によりカプセル化された鍵素材が追加されるため、TLS ClientHello メッセージに 1 キロバイト以上の追加データが生じます。Google が以前行った、CECPQ 2 を用いた実験では、TLS 実装の大部分がこのサイズの増加に対応できることが実証されましたが、一部の特定のケースでは、メッセージ サイズに対する不適切なハードコード制限のために TLS ミドルボックスで動作不良が起きました。
これらの新しいアルゴリズムが展開される際に、ネットワーク アプライアンスの非互換性に対処しなければならない企業を支援するために、Chrome の管理者は Chrome 116 から利用可能な PostQuantumKeyAgreementEnabled エンタープライズ ポリシーを使用して、X25519Kyber768 を無効にすることができます。このポリシーは一時的な措置としてのみ提供されます。管理者は、影響を受けるプロダクトのベンダーと協力して、非互換性を引き起こすバグをできるだけ早く修正するよう強くお勧めします。
最終的なデプロイのための考慮事項として、X25519Kyber768 と Kyber の仕様はどちらもドラフト段階のものであり、最終的な決定の前に変更される可能性があり、Chrome の実装も変更される可能性があることに注意してください。