Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

PQC の対応状況

最終更新 Markdown で表示Agent セットアップ

以下のセクションは、Cloudflare が導入した耐量子アルゴリズムに対するサードパーティソフトウェアの対応を、ソフトウェアの種類ごとにまとめたものです。一覧の更新への コントリビューション を歓迎します。

追跡するアルゴリズムは 2 種類です。

ブラウザ

ブラウザは、基盤のレンダリングエンジンと TLS スタックで分類しています。同じエンジンを共有するブラウザは、耐量子対応もだいたい同じです。ただし派生ブラウザは上流エンジンより遅れることや、ポリシーで耐量子機能を無効にすることがあります。派生ブラウザの対応を前提にする前に、対象バージョンで動作を確認してください。指定のブラウザが Cloudflare と耐量子鍵合意をネゴシエートするかは、Cloudflare Radar のブラウザ対応チェック で素早く確認できます。

Chromium ベース(BoringSSL)

Brave

  • 鍵合意: ✅ Brave 1.73.86 以降(Chromium 131)でデフォルト
  • 署名: 未対応
  • 参照: Brave

Chrome

Chrome は、公開 Chrome Root Store に標準の X.509 耐量子証明書を追加する予定はありません。代わりに IETF PLANTS ワーキンググループで MTC を開発しており、現在は Cloudflare との実現可能性調査の段階です。

Edge

  • 鍵合意: ✅ Edge 131 以降でデフォルト
  • 署名: 未対応
  • 参照: Edge

Opera

  • 鍵合意: ✅ Opera 116 以降(Chromium 131)でデフォルト
  • 署名: 未対応
  • 参照: Opera

Gecko ベース(Firefox / NSS)

Firefox

  • 鍵合意: ✅ Firefox 132 以降(デスクトップ)、145 以降(Android)でデフォルト
  • 署名: 未対応
  • 参照: Firefox

QUIC / HTTP/3 は Firefox 135 以降(デスクトップ)です。

Tor Browser

  • 鍵合意: ✅ Tor Browser 15.0 以降でデフォルト
  • 署名: 未対応
  • 参照: Tor Browser

Firefox ESR をベースに、追加の強化を施しています。

WebKit ベース(Safari)

Safari

  • 鍵合意: ✅ Safari 26 以降でデフォルト
  • 署名: 未対応
  • 参照: Safari

iOS 26、macOS Tahoe 26、その他の Apple オペレーティングシステム でシステム全体に対応しています。

ライブラリ

このセクションは、基盤となるネイティブライブラリ(C/C++)と、その上に構築される言語バインディングおよび上位ライブラリに分かれます。

ネイティブライブラリ

AWS-LC

ML-KEM-512/768/1024 およびハイブリッド X25519MLKEM768SecP256r1MLKEM768SecP384r1MLKEM1024。ML-DSA-44/65/87。

BoringSSL

ML-DSA-44/65/87。

Botan C++

  • 鍵合意: ✅ TLS では 3.7.0 以降でデフォルト
  • 署名: ✅ 3.6.0 以降
  • 参照: Botan

ML-DSA-44/65/87。

GnuTLS

  • 鍵合意: ✅ 3.8.9 以降を leancrypto 1.2.0 以降でコンパイル(または 3.8.8–3.8.9 を liboqs 0.11.0 以降でコンパイル)
  • 署名: ✅ 3.8.10 以降 — TLS ハンドシェイクで利用可能
  • 参照: GnuTLS

ハイブリッド X25519MLKEM768SecP256r1MLKEM768 は 3.8.8 以降。SecP384r1MLKEM1024 は 3.8.9 で追加。ML-DSA-44/65/87。

OpenSSL

  • 鍵合意: ✅ 3.5.0 以降でデフォルト
  • 署名: ✅ 3.5.0 以降
  • 参照: OpenSSL

ハイブリッド X25519MLKEM768 は 3.5.0 以降。SecP256r1MLKEM768curveSM2MLKEM768 は 3.6.0 で追加。ML-DSA-44/65/87。

Open Quantum Safe

  • 鍵合意: ✅ liboqs 0.10.0 以降、oqs-provider 0.7.0 以降
  • 署名: ✅ liboqs 0.14.0 以降、oqs-provider 0.9.0 以降
  • 参照: Open Quantum Safe

参照実装であり、本番利用は推奨しません。

s2n-tls

AWS-LC 上に構築された、AWS のオープンソース TLS 実装です。

言語バインディングと上位ライブラリ

aws-lc-rs (Rust)

  • 鍵合意:
  • 署名: 🚧 unstable 機能フラグの背後
  • 参照: aws-lc-rs

AWS-LC の Rust バインディングです。rustls-post-quantum の ML-DSA 対応の基盤にもなっています。ML-KEM は aws-lc-rs::kem、ML-DSA-44/65/87 は unstable::signature 経由です。

CIRCL (Cloudflare)

純 Go の暗号プリミティブライブラリです。ML-KEM-512/768/1024 および ML-DSA-44/65/87。

Go

  • 鍵合意: ✅ Go 1.24 以降でデフォルト
  • 署名: 🚧 Go 1.26 に内部実装。公開 crypto/mldsa は Go 1.27 向けに提案中
  • 参照: Go

Cloudflare の Go フォーク でも、CIRCL 経由の鍵合意に対応しています。

Java (OpenJDK)

  • 鍵合意: ✅ Java 27 以降でデフォルト(JEP 527
  • 署名: 🚧 Java 24 以降は ML-DSA API を提供します(JEP 497)が、まだ javax.net.ssl の TLS には組み込まれていません
  • 参照: OpenJDK

Node.js

バンドルされた OpenSSL 3.5 を使います。ML-DSA-44/65/87。

RustCrypto (Rust)

AWS-LC に依存しない、純 Rust の crate です。ML-DSA-44/65/87。

rustls (Rust)

  • 鍵合意: ✅ rustls 0.23.27 以降でデフォルト有効
  • 署名: 🚧 不安定
  • 参照: rustls

rustls-post-quantum の上に構築された TLS ライブラリです。

rustls-post-quantum (Rust)

  • 鍵合意:X25519MLKEM768
  • 署名: 🚧 不安定な ML-DSA 対応(aws-lc-rs-unstable 機能フラグの背後)
  • 参照: rustls-post-quantum

aws-lc-rs を内部で使い、耐量子アルゴリズムを提供する rustls 向け拡張 crate です。

Zig

  • 鍵合意: ✅ Zig 0.14.0 以降(クライアント)
  • 署名: 未対応
  • 参照: Zig

サーバー

Caddy

  • 鍵合意: ✅ Caddy 2.10.0 以降でデフォルト
  • 署名: Go の crypto/mldsa 待ち
  • 参照: Caddy

NGINX

  • 鍵合意: ✅ OpenSSL 3.5 以降でコンパイルした場合にデフォルト(手順
  • 署名: ✅ OpenSSL 3.5 以降でコンパイルした場合
  • 参照: NGINX

rpxy

  • 鍵合意: ✅ 0.9.4 以降でデフォルト
  • 署名: Rust の耐量子署名対応待ち
  • 参照: rpxy

Traefik

  • 鍵合意: ✅ 3.4.2 以降、2.11.26 以降でデフォルト(コミット)。3.5.0-rc.1 以降は curvePreferences で設定可能
  • 署名: Go の crypto/mldsa 待ち
  • 参照: Traefik

役に立ちましたか?