# オリジンへの接続、ついに量子耐性認証に対応したよ！

こんにちは、しぃちゃんだよ！今日はセキュリティ好きにはたまらない、量子コンピュータ時代を見据えたニュースを持ってきたの！

## なにが発表されたの？

Cloudflare の Blog で、顧客のオリジンサーバーへ接続するときの「認証」にポスト量子(PQ)暗号を使えるようになったっていう発表があったの。具体的には Authenticated Origin Pulls (AOP) と Custom Origin Trust Store (COTS) っていう 2 つの仕組みが、量子コンピュータでも解読しにくい署名アルゴリズム ML-DSA に対応したんだって。Cloudflare は「2029 年までに全製品を完全にポスト量子対応にする」っていう目標を掲げていて、今回はその最初のマイルストーンにあたるの。

## 今までどうだったの？

量子コンピュータには「harvest-now, decrypt-later(いま盗んで、あとで解読する)」っていう攻撃シナリオが心配されているの。今の暗号化通信を先に盗んでおいて、将来じゅうぶん強力な量子コンピュータができたときに復号しちゃおうっていう考え方だよ。

Cloudflare はこれまでも、2022 年に訪問者と Cloudflare の間の通信を、2023 年には Cloudflare とオリジンの間の通信をポスト量子暗号化してきたの。でも「相手が本物かどうかを確認する認証」の部分は、まだ従来型(RSA や ECDSA)のアルゴリズムのままだったんだって。認証が量子コンピュータで破られると、なりすましによる中間者攻撃を許しちゃう危険があるから、暗号化だけじゃなくて認証もポスト量子にする必要があったの。

## これで何が変わるの？

今回のアップデートで、AOP と COTS の 2 つの仕組みが ML-DSA に対応したよ。

- **Authenticated Origin Pulls (AOP)**: Cloudflare がオリジンサーバーに対してクライアント証明書を提示する相互 TLS の仕組み。ゾーン単位・ホスト名単位の設定では ML-DSA が使えるようになったの(グローバル単位の対応は後日予定)。全プランで無料で使えるよ
- **Custom Origin Trust Store (COTS)**: オリジンサーバーが提示する証明書を検証するための仕組み。自分が管理する ML-DSA の認証局(CA)をアップロードできるようになったの。ただし Full (strict) モード必須で、有料オプションの Advanced Certificate Manager が必要だよ

オリジンサーバーを自分で運用していて、通信の両端をきちんと量子耐性にしたい人にとってはうれしいアップデートだね。

## 深く潜ってみよう

対応しているのは FIPS 204 準拠の ML-DSA で、3 段階のパラメータセットから選べるの。

- `ML-DSA-44`: 速度重視でおすすめ(NIST Category 2)
- `ML-DSA-65`: 中間くらいの強度
- `ML-DSA-87`: いちばん高いセキュリティ

鍵交換には `X25519MLKEM768` が使われていて、秘密鍵は「FIPS 204 seed-only encoding」形式でアップロードする必要があるんだって。設定には OpenSSL 3.5.0 以上が必要で、`openssl genpkey -algorithm mldsa44` のようなコマンドで CA や証明書を作って、Cloudflare の API(`/acm/custom_trust_store` や `/origin_tls_client_auth` エンドポイント)にアップロードする流れになっているよ。オリジンサーバー側は NGINX なら `ssl_certificate` や `ssl_client_certificate` を設定するだけで、TLS 1.3 が推奨されているの。

裏側の実装もなかなか大変だったみたい。Go の標準 X.509/TLS ライブラリがまだ ML-DSA に対応していなかったから、Cloudflare 独自の CIRCL ライブラリに実装を追加したんだって(Go 1.27 が 2026 年 8 月にリリースされたらネイティブ対応の予定)。データプレーン側では Pingora ベースのオリジン接続サービスと、4 年間更新を止めていた BoringSSL の社内フォークを本体に追従させる作業も必要だったの。その過程で 2026 年 6 月 10 日には、証明書の KeyUsage 検証が厳しくなりすぎて一部の既存証明書が無効判定されるインシデントも発生していて、RFC に完全準拠していない既存証明書もサポートするパッチを当てて解決したそうだよ。

ダウングレード攻撃を防ぐには、量子耐性のある認証メカニズムだけを信頼して、従来型の認証手段は削除する必要があるっていう注意もあったよ。中途半端に両方残しておくと、そっちを悪用されちゃうもんね。

今後は、訪問者と Cloudflare の間の「認証」層にもポスト量子対応を広げる予定で、Google などと IETF で標準化を進めている Merkle Tree Certificates (MTC) っていう仕組みを使って、2027 年ごろの展開を目指しているんだって。

## まとめ

- Cloudflare が Authenticated Origin Pulls と Custom Origin Trust Store でポスト量子認証(ML-DSA)に対応
- AOP はゾーン・ホスト名単位で全プラン無料、COTS は Full strict モード + Advanced Certificate Manager が必要
- ML-DSA-44/65/87 のパラメータと `X25519MLKEM768` の鍵交換に対応、OpenSSL 3.5.0 以上が必要
- ダウングレード攻撃を防ぐには従来型の認証手段を削除する必要あり
- 訪問者向けの認証対応や 2029 年の完全ポスト量子化に向けて、これからも段階的にアップデート予定

自分のオリジンサーバーを mTLS で守っている、セキュリティやインフラ担当のみんなにきっと刺さるアップデートだよ！
