抗量子密码学算法的核心目标是抵抗量子计算机(尤其是能运行Shor算法、Grover算法的大规模量子计算机)的攻击,其安全性不依赖于传统的“大整数分解”“离散对数”等易被量子算法破解的数学问题,而是基于量子计算机难以高效求解的新型困难问题。目前国际上(如NIST抗量子密码标准化项目)已明确几类主流算法:
一、格基密码学(Lattice-Based Cryptography)
格基密码是目前最成熟、应用场景最广的抗量子密码类别,其安全性基于“格上的困难问题”——例如最短向量问题(SVP) 、学习有误差问题(LWE) ,这些问题被证明即使在量子计算机上也难以高效求解。格基算法不仅抗量子,还具备“后量子+同态加密”“后量子+零知识证明”等扩展能力,是当前标准化的核心方向。
代表算法
1.CRYSTALS-Kyber
地位:NIST抗量子密码标准化项目(第三轮)选定的首个通用密钥封装机制(KEM) ,也是目前国际推荐的“后量子TLS”核心算法(已被Chrome、Firefox等浏览器支持测试)。
功能:用于“密钥交换”(如HTTPS连接中服务器与客户端协商会话密钥),属于非对称加密的“密钥封装”场景。
优势:效率高(公钥仅800字节,私钥1632字节)、安全性证明严谨,支持不同安全级别(Kyber-512/768/1024,对应传统RSA-2048/3072/4096的安全强度)。
2.CRYSTALS-Dilithium
地位:NIST选定的数字签名算法(用于身份认证、数据完整性验证,如证书签名、软件签名)。
优势:签名体积小(约2.4KB~4.5KB)、验证速度快,与Kyber同属“CRYSTALS家族”,数学基础一致(基于Ring-LWE),适合硬件实现(如芯片、物联网设备)。
3.NTRU
特点:早期经典格基算法(基于“多项式环上的LWE变体”),公钥/私钥体积小、计算速度快,曾是NIST第二轮候选算法。
应用:适合资源受限场景(如物联网传感器、智能卡),但因后续Kyber在安全性和标准化支持上更优,目前更多作为“备选方案”。
二、基于哈希的数字签名(Hash-Based Signatures)
这类算法的安全性完全依赖于哈希函数的抗碰撞性和抗原像性——而量子计算机目前尚无高效算法破解哈希函数(Grover算法仅能将哈希破解复杂度从O(2^n)降至O(2^(n/2)),只需将哈希输出长度翻倍即可抵抗)。因此,基于哈希的签名是抗量子密码中“安全性最可靠”的类别之一,尤其适合需要“长期安全”的场景(如证书根密钥、区块链资产签名)。
代表算法
1.SPHINCS+
地位:NIST选定的无状态哈希签名算法(“无状态”指无需记录签名次数,使用更灵活),是目前应用最广的哈希签名方案。
原理:基于“一次性签名(OTS)+ 哈希树(Merkle Tree)”的组合——用OTS生成单次签名,再用哈希树将多个OTS公钥聚合,实现“多次签名”能力。
优势:安全性仅依赖哈希函数(如SHA-256、SHA-3),无数学假设漏洞;支持任意次数签名(理论上无限次)。
劣势:签名体积较大(约41KB~131KB),不适合对带宽敏感的场景(如实时通信)。
2.XMSS / XMSS^+
特点:“有状态”哈希签名(需记录已使用的签名次数,避免重复使用导致私钥泄露),结构比SPHINCS+简单,签名体积更小(约6KB~10KB)。
应用:适合对签名体积敏感、且能管理“状态”的场景(如嵌入式设备、区块链轻节点)。
三、基于码的密码学(Code-Based Cryptography)
这类算法的安全性基于线性纠错码的 Syndrome 解码问题——即“已知线性码的校验矩阵和 Syndrome,求对应的错误向量”,这是一个被证明的NP难问题,量子计算机无法高效求解。基于码的密码是“最早提出的抗量子密码类别”(1978年McEliece算法),安全性经过数十年验证。
代表算法
1.McEliece
地位:最早的抗量子密码算法(1978年提出),安全性从未被有效破解,是基于码密码的“标杆”。
原理:使用“Goppa码”(一种高效的线性纠错码)作为核心,公钥是Goppa码的“伪装校验矩阵”,私钥是Goppa码的原始参数(用于快速解码)。
优势:加密/解密速度快,安全性极高(依赖的Goppa码解码问题无已知量子加速算法)。
劣势:公钥体积巨大(标准参数下公钥约1MB~5MB),难以用于带宽受限场景(如移动网络)。
2.BIKE(Bit Flipping Key Encapsulation)
地位:NIST选定的密钥封装机制(KEM) ,是McEliece的“轻量化改进版”。
优化:改用“二元不可约循环码”替代Goppa码,公钥体积大幅缩小(约1.3KB~2.6KB),同时保留基于码的高安全性。
应用:适合需要高安全性、且对带宽要求不极端的场景(如企业级VPN、云加密)。
3.HQC(Hybrid Quantum-Classical)
特点:另一种NIST选定的KEM,通过“混合经典-量子设计”进一步优化公钥体积(约688字节~1.3KB),加密效率接近格基算法,同时具备基于码的安全性优势。
四、基于多变量多项式的密码学(MPKC)
这类算法的安全性基于有限域上多变量多项式方程组的难解性(即“多变量方程求解问题”,MQ问题)——即使在量子计算机上,MQ问题也无已知高效求解算法。MPKC的核心优势是“签名速度极快”,适合资源受限设备。
代表算法
Rainbow
地位:NIST选定的数字签名算法,是MPKC类别中最成熟、安全性最稳定的方案(避免了早期MPKC算法的“线性代数攻击”漏洞)。
原理:基于“分层多变量二次多项式”(类似“彩虹层”,每层对应一组多项式),签名时通过“反向代入”快速生成签名,验证时直接代入多项式验证。
优势:签名速度极快(比格基签名快10~100倍),签名体积小(约64字节~128字节),适合硬件资源受限的场景(如RFID标签、智能卡、物联网传感器)。
劣势:私钥体积较大(约10KB~40KB),且设计复杂度高(需严格避免代数攻击),目前应用场景不如格基和哈希签名广泛。
五、主流抗量子算法对比总结
| 类别 | 代表算法 | 核心安全假设 | 典型应用场景 | 优势 | 劣势 |
|--------------------|----------------|----------------------------|-----------------------------|-------------------------------|-------------------------------|
| 格基密码 | Kyber、Dilithium | 格上LWE/Ring-LWE问题 | TLS密钥交换、证书签名 | 效率高、支持扩展(同态加密) | 数学假设较复杂,硬件实现需优化 |
| 基于哈希的签名 | SPHINCS+、XMSS | 哈希函数抗碰撞/抗原像性 | 根证书、区块链资产签名 | 安全性最可靠,无数学漏洞 | 签名体积大 |
| 基于码的密码 | McEliece、BIKE | 线性码Syndrome解码问题 | 高安全级加密(如军工、金融)| 安全性久经考验,加密快 | 传统方案公钥体积大 |
| 多变量多项式密码 | Rainbow | 有限域MQ问题 | 物联网、智能卡签名 | 签名速度极快,签名体积小 | 私钥体积大,设计复杂度高 |
目前抗量子密码的应用已进入“标准化落地阶段”,其中格基密码(Kyber/Dilithium) 因“效率与安全性平衡”成为通用场景的首选,基于哈希的签名(SPHINCS+) 适合长期安全需求,多变量密码(Rainbow) 则在资源受限设备中具备优势。实际应用中,通常会采用“抗量子算法与传统算法混合”的过渡方案(如TLS 1.3同时支持Kyber和RSA),以确保在量子计算机到来前完成安全升级。