$30 off During Our Annual Pro Sale. View Details »

32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started w...

Avatar for quiver quiver
December 01, 2025

32のキーワードで学ぶ はじめての耐量子暗号(PQC) / Getting Started with Post-Quantum Cryptography in 32 keywords

Avatar for quiver

quiver

December 01, 2025
Tweet

More Decks by quiver

Other Decks in Technology

Transcript

  1. ⾃⼰紹介 2 • 名前 : George Yoshida • ロール :

    ソリューションアーキテクト • ブログ : https://dev.classmethod.jp/author/quiver/ • 👉 の本のレビューしました: ◦ 『図解即戦⼒ 暗号と認証のしくみと理論が これ1冊でしっかりわかる教科書』 ◦ 光成 滋⽣ (著) ◦ 2021/09/24 ◦ Amazonでも⼤⼈気!
  2. ⽬次 4 耐量⼦暗号とは? 01: 量⼦コンピュータとは? 02:古典 vs 量⼦ 03: Shorのアルゴリズム

    04: Groverのアルゴリズム 05: CRQC / Q-Day 06: HNDL攻撃 07: モスカの定理 08: 耐量⼦暗号 09: 量⼦暗号と耐量⼦暗号は別物 10: 2035年問題 11: NIST PQC標準アルゴリズム群 12: NIST PQC安全性レベル 普及が進む耐量⼦暗号 13: 50%以上のブラウザリクエストがPQC対応 14: ハイブリッド鍵交換 15: HTTPS通信時のPQC対応前後の違い 16: PQCは鍵サイズが⼤きい 17: 鍵交換フローはRSAとML-KEMが線対称 18: ML-KEMは復号できない暗号⽂を⽣成することがある 19: クリプト‧インベントリ 耐量⼦暗号の対応状況 20: OSのPQC対応状況 21: ソフトウェアのPQC対応状況 22: AWSのPQC対応状況(抜粋) 23: PQC通信を確認(ブラウザ) 24: PQC通信を確認(パケット) 25: PQC通信を確認(SSH) 格⼦暗号の理論付け 26: 3世代の鍵交換の定式化 27: 格⼦暗号 28: SVP/CVP問題 29: LWE問題 30: 格⼦暗号を利⽤する準同型暗号 31: 初めての格⼦暗号は3名の数学者が考案 32: 量⼦コンピュータは21を素因数分解できない
  3. 2: 古典 vs 量⼦ 7 • 「量⼦」以前を「古典」と呼ぶ慣習 古典(classical) 量子(quantum) 古典力学

    量子力学 古典コンピュータ 量子コンピュータ 古典暗号 耐量子暗号 古典アルゴリズム 量子アルゴリズム
  4. 5: CRQC‧Q-Day 10 • CRQC: Cryptographically Relevant Quantum Computer ◦

    RSA-2048のような古典暗号を多項式時間で解読できるス ペックを持った量⼦コンピュータ • Q-Day: ◦ CRQCの登場により、古典暗号が危殆化する⽇
  5. 6: Harvest Now, Decrypt Later(HNDL)攻撃 11 • PQC移⾏のコンテキストで頻出するキーワード • 今(Now)

    ◦ 古典暗号で暗号化されているデータを収集(harvest=収穫) • 未来(Later) ◦ Q-Day到来後、量⼦コンピュータ(CRQC)で古典暗号データ を解読
  6. 7: モスカの定理(Mosca’s Theorem) 12 • 賞味期限(X) + 移⾏期間(Y) > Q-Day(Z)

    を満たすとHNDL攻撃が成功 • X:賞味期限の例 ◦ 0年:ワンタイムパスワード ◦ 50年:国家機密 • Y:移⾏期間の例 ◦ 0年:AESのパラメーター変更 ◦ 10年:鍵交換のPQC化 ※ Michele Mosca “Cybersecurity in an era with quantum computers: will we be ready?”, 2015.
  7. 10: 2035年問題 15 • NIST IR 8547(2024年11⽉公開) ◦ ⽶国国⽴標準技術研究所(NIST)による耐量⼦暗号への移⾏レポート ◦

    Transition to Post-Quantum Cryptography Standards ◦ ⽶国連邦政府システムは2035年までにPQCへ移⾏すべし • CNSA 2.0(2022年9⽉公開) ◦ アメリカ国家安全保障局(NSA)による暗号アルゴリズムスイート ◦ ⽶国国家安全保障システム(NSS)は2035年までにPQC移⾏すべし ◦ NSA expects the transition to QR algorithms for NSS to be complete by 2035 in line with NSM-10.
  8. 11: NIST PQC標準アルゴリズム群 16 • NISTがPQCの公募を2016年開始、2024年決定 • ML系(モジュール格⼦)がメイン、残りはバックアップ 用途 規格

    名称 旧称 数学的基盤 鍵交換 FIPS 203 ML-KEM CRYSTALS-Kyber モジュール格子 署名 FIPS 204 ML-DSA CRYSTALS-Dilithium モジュール格子 署名 FIPS 205 SLH-DSA SPHINCS+ ハッシュ関数 署名 FIPS 206(ドラフト) FN-DSA Falcon NTRU格子 鍵交換 FIPS化予定 HQC HQC 符号理論 ※ CRYPTREC 暗号技術ガイドライン (耐量⼦計算機暗号)2024年度版
  9. 12: NIST PQC安全性レベル 17 ※ NIST recommends using ML-KEM-768 as

    the default parameter set, as it provides a large security margin at a reasonable performance cost. In cases where this is impractical or even higher security is required, other parameter sets may be used. (NIST FIPS 203) ※ 鍵交換系のみ • NISTは安全性をレベル1から5まで設定 • X25519(L1)からML-KEM-768(L3)への移⾏が進⾏中 レベル 基準 (計算量) 耐量子暗号 古典暗号 Level 1 AES-128 ML-KEM-512 X25519 (現在の標準) Level 3(推奨) AES-192 ML-KEM-768 (PQC時代の標準) P-384 Level 5(政府・金融 ) AES-256 ML-KEM-1024 P-521
  10. 13: 50%以上のブラウザリクエストがPQC鍵交換 19 • 鍵交換(ハイブリッド) ◦ 2024年03⽉:全TLS 1.3通信の2% ◦ 2025年10⽉:⼈間のリクエストの50%以上

    • 署名 ◦ 2025年10⽉:確認できず ※ Cloudflare : State of the post-quantum Internet in@2025/10/28 ※ Cloudflare : State of the post-quantum Internet in@2024/03/05
  11. 14: ハイブリッド鍵交換(X25519MLKEM768) 20 • モチベーション ◦ PQC鍵交換を導⼊したい ◦ 脆弱性のリスクを軽減したい •

    ハイブリッド鍵交換 ◦ 古典暗号(X25519)とPQC(ML-KEM 768)それぞれの秘密鍵か ら最終的な秘密鍵を導出 ※ Post-quantum hybrid ECDHE-MLKEM Key Agreement for TLSv1.3 ※ https://bughunters.google.com/blog/5266882047639552/why-hybrid-deployments-are-key-to-secure-pqc-migration
  12. 15: HTTPS通信時のPQC対応前後の違い 21 コンポーネント 移行前 現状 移行後 鍵交換 ECDHE ECDHE+ML-KEM

    のハイブリッド ML-KEM サーバー証明書 (署名) ECDSA ECDSA ML-DSA 共通鍵暗号 AES-128 AES-128 AES-256
  13. 16: PQCは鍵サイズが⼤きい(公開鍵の例) 22 アルゴリズム 公開鍵(バイト) X25519 32 ML-KEM768(L3) 1184 X25519MLKEM768

    1216(=32+1184) ML-KEM1024(L5) 1568 Wireshark : MTU(1500バイト)の閾値を超え、X25519MLKEM768 のClient HelloでTCPセグメンテーション発⽣
  14. 18:ML-KEMは復号できない暗号⽂を⽣成することがある 24 4.1.1. Decapsulation failure With ML-KEM, there is a

    tiny probability of decapsulation failure. That is, even if Alice and Bob perform their roles honestly and the public key and ciphertext are transmitted correctly, there is a tiny probability that Alice and Bob will not derive the same shared key. However, even though that is a theoretical possibility, practically speaking this will never happen. For all three parameter sets, the probability is so low that most likely an actual decapsulation failure because of this will never be seen for any ML-KEM exchange anywhere (not only for your protocol, but over all protocols that use ML-KEM). Hence, the advice we give is to ignore the possibility. ※ https://datatracker.ietf.org/doc/draft-sfluhrer-cfrg-ml-kem-security-considerations/ ※ KEMのカプセル化= RSAの「共通鍵を公開鍵で暗号化」に相当する操作 気にすんな
  15. 19: クリプト‧インベントリ 25 • PQC移⾏計画は暗号⽅式の利⽤状況の把握 ◦ システム‧管理⽅法‧パラメータなど • CBOM(Cryptography Bill

    of Materials) ◦ SBOMの暗号資産版 ◦ CycloneDXなどが対応 ※ https://security.googlecloudcommunity.com/ciso-blog-77/from-inventory-to-agility-a-ciso-s-guide-to-robust-key-management-3969 ※ https://cyclonedx.org/capabilities/cbom/
  16. 20: OSのPQC対応状況(主要OSは対応済み) 27 • 2025/05 : RHEL 10 • 2025/09

    : iOS / iPadOS / macOS 26 ※Safariも • 2025/11 : Windows Server 2025 / Windows 11
  17. 21: ソフトウェアのPQC対応状況(主要ブラウザは対応済み) 28 • 2022/04 : OpenSSH 9.0 ※ NTRU(sntrup)

    • 2023/09 : Signal • 2024/03 : Apple iMessage @ 17.4 ※ PQ3 • 2024/03 : Desktop Chrome • 2024/09 : OpenSSH 9.9 • 2024/11 : Android Chrome • 2025/04 : OpenSSL 3.5 • 2025/09 : Safari @ 26 ※ デフォルトでの有効化
  18. 22: AWSのPQC対応状況(抜粋) 29 • 2022/03 : AWS KMS/ACM(※ CRYSTALS-Kyber) …(中略)

    • 2025/04 : AWS KMS/ACM/Secrets Manager • 2025/06 : AWS KMS(※ ML-DSA) • 2025/09 : CloudFront • 2025/11 : AWS Private CA(※ ML-DSA) • 2025/11 : AWS ALB/NLB • 2025/11 : AWS S3エンドポイント • 2025/11 : AWS payments Cryptograpy ※ 記載のないものはML-KEMのハイブリッド鍵
  19. 24: PQC通信を確認(パケット) 31 • tcpdump $ sudo tcpdump -w pqc.pcap

    host example.com >/dev/null 2>&1 • Wireshark TLS 1.3ハンドシェイクを確認 ※ https://www.akamai.com/blog/security/post-quantum-cryptography-implementation-considerations-tls
  20. 25: PQC通信を確認(SSH) 32 • github.comは2025/09からPQC対応(※) $ ssh -v [email protected] exit

    2>&1 | grep 'kex: algo' debug1: kex: algorithm: sntrup761x25519-sha512 • 対応プロトコル確認 ◦ サーバー : $ nmap --script ssh2-enum-algos -p 22 example.com ◦ クライアント : $ ssh -Q kex • 10.1(2025/10)から非PQC通信を警告 ** WARNING: connection is not using a post-quantum key exchange algorithm. ** This session may be vulnerable to "store now, decrypt later" attacks. ** The server may need to be upgraded. See https://openssh.com/pq.html ※ https://github.blog/engineering/platform-security/post-quantum-security-for-ssh-access-on-github/ ※ https://www.openssh.org/pq.html
  21. 27: 格⼦暗号 35 • 格⼦(2次元だと図のような平⾏四辺形)を利⽤した暗号⽅式 • 格⼦暗号はModule LatticeやNTRUなど複数のアプローチ • 格⼦問題は⾼次元の基底からなる格⼦構造の最適化問題

    ※ Silverman et.al “An Introduction to Lattices, Lattice Reduction, and Lattice-Based Cryptography” https://www.ias.edu/sites/default/files/Silverman_PCMI_Note_DistributionVersion_220705.pdf
  22. 28: SVP/CVP問題 36 • 格⼦暗号の安全性の根拠 ※ 図の引⽤元 https://en.wikipedia.org/wiki/Lattice_problem SVP :

    基点から最も近い 別の格⼦点を探す CVP : 任意点から最も近い 格⼦点を探す
  23. 29: LWE(Learning With Errors)問題 37 • ML-KEM/DSAの安全性の根拠 • 「ノイズを含んだ連⽴⼀次⽅程式を解く」問題 •

    ノイズ(e)が無ければ、ただのガウスの消去法 • ノイズ(e)が周期性を壊し、Shor耐性がある • MLWE(モジュール版LWE)の困難性はSVP/CVPに帰着 ※ https://en.wikipedia.org/wiki/Learning_with_errors
  24. 30: 格⼦暗号を利⽤する準同型暗号 38 • 準同型暗号:データを暗号化したまま処理 • 秘密計算:データを秘匿化したまま処理する総称 • 準同型暗号にも格⼦暗号が利⽤される •

    詳細は下記を参照 ◦ 光成 滋⽣ 著 ◦ 『図解即戦⼒ 暗号と認証のしくみと理論がこ れ1冊でしっかりわかる教科書』 ◦ Chapter 9「⾼機能な暗号技術」