PQC 筆記 3 - NIST PQC 加密及簽章標準現況 2025 Q1
| | 1 | | 603 |
對文章標題感到困惑的朋友,推薦以下先導文章及 PQC 系列文章:
話說,距 2016 NIST 公開徵選 PQC 演算法,目前已將邁入第 9 年,官方版標準也已陸續出爐。先回顧 NIST PQC 標準化時間軸:
前期準備階段 (2015-2016)
2015年4月:NIST 舉辦「後量子世界網路安全研討會」
2016年4月:NIST 發布《Report on Post-Quantum Cryptography》(NISTIR 8105) 報告
2016年12月:NIST 正式向全球徵求 PQC 演算法提案第一輪評估 (2017-2018)
2017年11月:提案提交截止,共收到來自 25 個國家 82 份提案
2017年12月:NIST 公布第一輪預選演算法,有 69 個提案被認定「完整且適當」
2018年4月:第一屆 PQC 標準化會議,提交者演講發表第二輪評估 (2019)
2019年1月:NIST 公布第二輪預選演算法,縮減至 26 個候選演算法
2019年8月:第二屆 PQC 標準化會議第三輪評估 (2020-2021)
2020年7月:NIST 宣布第三輪候選算法,包括 7 個決賽入圍者和 8 個替代演算法
2021年6月:第三屆 PQC 標準化會議最終評選與標準化 (2022-2024)
2022年7月:NIST 確定四種優勝算法:CRYSTALS-Kyber、CRYSTALS-Dilithium、FALCON 和 SPHINCS+
2022年11月:第四屆PQC標準化會議(線上形式)
2023年8月:NIST 發布三份標準草案 RFC
2024年4月:第五屆 PQC 標準化會議
2024年8月13日:NIST 正式發布首批三項 PQC 標準
目前已正式發布的標準有三項:
FIPS 203 (ML-KEM) 用於通用的加密應用,源自 CRYSTALS-Kyber,重新命名為 ML-KEM (Module-Lattice-Based Key-Encapsulation Mechanism)
其特點為加密密鑰相對較小,方便交換且執行速度快,可普遍應用於保護在公共網路上交換的資訊FIPS 204 (ML-DSA)
數位簽章主要標準,源自 CRYSTALS-Dilithium,重新命名為 ML-DSA (Module-Lattice-Based Digital Signature Algorithm),主要用於身分認證和保護數位簽章FIPS 205 (SLH-DSA) 數位簽章備用標準,源自 SPHINCS+,重新命名為 SLH-DSA (Stateless Hash-Based Digital Signature Algorithm),綜合評量不如 ML-DSA,但因其採用的數學方法與 ML-DSA 不同,可做為萬一 ML-DSA 被驗證存在漏洞時的備用方案。
FIPS 206 (FN-DSA) 數位簽章標準,源自 FALCON,預計命名為 FN-DSA (Fast-Fourier Transform-based NTRU lattice Digital Signature Algorithm),原本預定 2024 年底發布,目前延遲。
另外,NIST 也於 2024-11-12 發布了《Transition to Post-Quantum Cryptography Standards》草案,概述從傳統密碼學過渡到 PQC 的路線圖與時間表,預計於 2030 年淘汰(棄用)112 位元及以下安全強度的密碼演算法,於 2035 年完全禁用傳統密碼學演算法,全面 PQC 化。
用白話來說,我們現在用的加密跟電子簽章演算法(RSA/EdDSA/ECDSA)將於 2035 年禁用(2048 bit RSA 則是 2030 年就禁用),全面換成 PQC 演算法。參考
Algorithm | Key Parameters | Security Strength (bits) | NIST Status | Quantum Resistance |
---|---|---|---|---|
RSA | 2048-bit | 112 | Deprecated after 2030 | Vulnerable |
3072-bit | 128 | Disallowed after 2035 | Vulnerable | |
7680-bit | 192 | Not standardized | Vulnerable | |
ECDSA | 256-bit (P-256) | 128 | Disallowed after 2035 | Vulnerable |
384-bit (P-384) | 192 | Disallowed after 2035 | Vulnerable | |
EdDSA | 25519 (Ed25519) | 128 | Disallowed after 2035 | Vulnerable |
448-bit (Ed448) | 224 | Disallowed after 2035 | Vulnerable | |
PQC | ML-KEM-512 | 128 | NIST Standard (FIPS 203-205) | Resistant |
ML-DSA-44 | 128 | NIST Standard | Resistant | |
ML-KEM-768 | 192 | NIST Standard | Resistant | |
ML-DSA-65 | 192 | NIST Standard | Resistant | |
SLH-DSA-128s/192s | 128/192 | NIST Standard | Resistant |
由於 PQC 演算法尚未經過足夠多的考驗,可能存在未被發現的漏洞,故 NIST 建議在過渡初期應採混合應用策略,同時使用傳統和後量子進行加密及簽章。例如:用 RSA 加密完再用 ML-KEM 加密一次、同時產生並檢查 EdDSA 及 ML-DSA 電子簽章,如此 在其中一種被破解時仍能保有安全性。
結論就是,若按照 NIST 的規劃,我們現在在用的 RSA/ECDSA 演算法將於十年後被禁用。不過,開發者不用擔心忘記時程,就像 TLS 1.0/1.1 一樣,到時保證會有人逼著你升級 XD,先心裡有數就好。
Comments
# by kalyanibrolly02
等待複核中,留言將在稍後顯示 / The comment is awaiting review.