为了应对量子计算的最终问世,数字基础设施必须完成向后量子密码学(PQC)的过渡,这是一项至关重要的准备工作。美国国家标准与技术研究院(NIST)已选定CRYSTALS-Kyber、CRYSTALS-Dilithium等算法推进标准化,这些算法均建立在研究充分、数学层面稳健的基础上。然而,仅有强大的算法设计还远远不够,如果部署过程存在安全隐患,密码系统仍将面临风险——算法安全性并不等同于部署安全性。
纵观密码学的历史,许多系统遭到破坏,并非因为算法本身存在缺陷,而是因为其实际部署过程中存在漏洞。此篇是德科技文章将对其中的缘由和历史教训进行一一剖析,并针对实际挑战给出解决方案。
部署漏洞:RSA带来的教训
在密码系统因实际部署缺陷而被攻破方面,RSA堪称典型案例。自1977年问世以来,尽管RSA的数学安全性无明显争议,但各类侧信道攻击与故障注入攻击仍屡屡对其部署方案发起进攻,并成功突破其防御。
从20世纪90年代末开始,诸如时序分析、简单功耗分析(SPA)、差分功耗分析(DPA)、相关功耗分析(CPA)等攻击手段,以及Bellcore CRT攻击(1996年)等故障注入技术,均揭示了部署层面缺陷的利用方式。近年来,机器学习辅助的侧信道攻击,进一步暴露了原本安全的密码部署中的弱点。
安全实现PQC的挑战
在实际系统中部署PQC算法将面临多重技术挑战。像嵌入式系统、物联网平台及移动硬件这类设备,往往受限于内存容量、处理器速度和能源供应等资源约束。开发者为满足性能要求,常会采用各类优化技术,却可能在无意中引入安全缺陷。
相较于RSA或ECC等传统算法,PQC算法通常涉及更大的密钥长度、更复杂的数学运算及更高的计算成本。因此,这类算法本身就更难实现安全部署,在资源受限的环境中尤其如此。而这些复杂性可能会增加侧信道泄露风险,或引发操作不一致问题,为攻击者提供可乘之机。
PQC部署的成熟度与复杂性
PQC标准相对较新,其部署生态系统仍在逐步完善中。相较于AES和RSA等经过数十年广泛研究与部署的传统密码原语,PQC在实际场景中的使用经验仍较为有限。
此外,许多PQC方案(尤其是基于格和基于码的设计)引入了新型数学构造,增加了部署复杂度。例如,涉及多项式乘法、矩阵运算、拒绝采样的操作必须精确处理,以防止意外的信息泄露。内存访问模式或控制流的细微变化都可能导致敏感数据暴露。
当下的部署风险
尽管PQC部署的诞生时间尚短,但它们已显露出对传统攻击技术的脆弱性,包括:
- 侧信道攻击(SCA):利用时序波动、功耗变化或电磁辐射差异提取密码机密。
- 故障注入(FI)攻击:通过电压毛刺、时钟操控或激光脉冲等手段诱发故障,以此影响计算过程并推断出机密数据。
- 模板与基于机器学习的攻击:利用统计模型或基于训练的方法,识别并利用部署行为漏洞。
安全的寿命与“先存储,后解密”模式
行业正在加速PQC的采用,以应对“先存储,后解密”(SNDL)的威胁,即攻击者现在窃取加密数据,以图在量子能力成熟后,再利用该能力解密数据。尽管这种主动防御措施十分必要,但它并不能消除部署漏洞带来的风险。
密码产品生命周期常长达十年以上。部署后的一个漏洞,也可能危及多年的数据保密性。随着攻击方式的演进,若未能针对各类威胁做好充分加固,即使是最初是安全的部署方案,也可能会被利用。
安全PQC部署的最佳实践
为确保PQC部署的长期安全性,以下措施值得推荐:
- 恒定时间执行:消除数据依赖型时序行为,防范基于时序的攻击。
- 掩码与盲化技术:通过引入随机性,保护中间计算过程免受侧信道分析攻击。
- 故障检测与冗余:设计系统以实现对运行过程中注入故障的检测、容忍或排除。
- 形式化验证:借助专用工具与自动化分析,对部署的安全性进行验证。
- 持续评估:定期对实现方案进行测试、密码分析和审查,以识别并修复新出现的漏洞。
行业协作与遵循开放标准(如NIST和ISO制定的标准)对在不同平台间实现安全且可互操作的部署至关重要。
如需深入了解相关标准与实施挑战,请参见白皮书《嵌入式系统后量子密码学安全部署》。
结语
PQC可助力应对量子计算带来的日益严峻的威胁,但向PQC的过渡必须伴随对安全部署的严格关注。PQC算法的复杂性,加之其部署实践尚不成熟,带来了不容忽视的现实风险。
密码领域从经验中认识到:强大算法的安全性取决于其最薄弱的部署环节。为了充分发挥PQC的价值,研究人员与从业者都必须将部署安全性视为基础设计目标,以确保当下部署的系统在未来仍能抵御各类威胁。
【本文作者Durga Ramachandran:是德科技创新总监】
- 不止于数学:实际部署是筑牢后量子安全的关键环节 – 2025年11月21日
- AI for Science进行时:水木未来携手火山引擎,以数据重塑生命科学研发 – 2025年11月21日
- VOOX 三周年:品牌全面升级,信任从心焕新 – 2025年11月19日
