引言
量子计算对现有公钥密码体系构成根本性威胁。Shor算法可以在多项式时间内解决大整数分解和离散对数问题,这意味着RSA、ECC、DSA等广泛使用的公钥算法在量子计算机面前将完全失效。后量子密码学(Post-Quantum Cryptography, PQC)应运而生,旨在研究能够抵抗量子计算攻击的新一代密码算法。
1. 时间线:量子威胁的紧迫性
全球密码学界已形成"先收集、后解密"(Harvest Now, Decrypt Later)的共识:即今天传输的加密通信数据,可能在10-20年后被量子计算机解密。这意味着:
- 任何需要长期保密的数据(国家机密、医疗记录)现在就面临风险
- 金融机构已开始评估迁移到PQC的路线图
- NIST在2024年正式发布了首批PQC标准(Kyber、Dilithium、SPHINCS+)
2. 后量子密码的五大技术路线
NIST PQC标准化竞赛历经6轮筛选,最终收敛到五类基于不同数学难题的算法体系:
- 格密码学(Cryptographic Lattices):基于格上最坏情况困难问题,如MLWE、NIST Favorite Kyber
- 编码密码学(Code-Based):基于纠错码译码问题,Classic McEliece是唯一幸存方案
- 多变量密码学(Multivariate):基于有限域上多元二次方程组求解,主要在签名领域
- 哈希签名(Hash-Based):基于哈希函数的安全性,SPHINCS+有最强的安全性证明
- 同源密码学(Isogeny-Based):基于超奇异椭圆曲线同源问题,SIKE被破解后地位有所下降
3. Kyber算法详解
CRYSTALS-Kyber是NIST选定的标准化KEM(密钥封装机制)。核心数学基础是Module-LWE(Module Learning With Errors):
- 在R_q = Z_q[X]/(X^n+1)模上操作,例如Kyber-512选n=256, q=3329
- 公私钥对:s为秘密向量,b = As+e,其中A为随机矩阵,e为小误差项
- 公钥大小:800 bytes vs 256 bytes (略大)
- 密文大小:768 bytes vs 256 bytes
- 密钥生成速度:约为RSA-2048的 3-5倍
Kyber-512的性能指标(对比RSA-2048):
4. Dilithium数字签名
CRYSTALS-Dilithium是NIST选定的标准化数字签名方案。其核心思想与Kyber类似,但增加了拒绝采样(rejection sampling)环节来隐藏签名密钥:
- 安全性基础:Module-LWE和Module-SIS(Short Integer Solution)问题
- Dilithium-2参数:n=256, q=8380417, γ₁=217, γ₂=(q-1)/88
- 签名大小:2420 bytes (Dilithium-2),远大于Ed25519的64 bytes
5. SPHINCS+与无状态哈希签名
SPHINCS+是最保守的后量子签名方案,其安全性仅依赖于哈希函数的单向性,即使量子计算机可以直接攻击哈希函数也极难攻破:
- Chrome/Firefox:已开始实验性支持Kyber
- AWS/Cloudflare:已在TLS中部署混合PQC
- Apple iMessage:已部署PQ3协议(基于Kyderatchet)
- NIST:已启动第四轮评估,寻找更多签名方案
SPHINCS+的签名较大(~8-49 KB),但能提供最强的理论安全性。它非常适合高安全需求但带宽充裕的场景,如固件签名、证书签名。
6. 迁移挑战与混合模式
从经典密码学迁移到PQC面临以下实际挑战:
混合模式(Hybrid Mode):最佳实践,同时执行经典算法和PQC算法,将两者输出混合。这样即使PQC被攻破,经典算法仍提供保障。TLS中已在探索ECDHE+Kyber混合模式。
7. 行业现状与展望
2024年标志着PQC从学术研究正式进入工程实践:
总结
后量子密码学正在快速从一个理论话题变为工程现实。NIST的首批标准为行业提供了明确方向,但迁移是一个长达数年的过程。理解和提前规划PQC迁移,是每个安全工程师和组织必须面对的课题。

发表评论 取消回复