揽阁信息科技(上海)有限公司

行业新闻Security News

您当前所在位置: 主页 > 新闻动态 > 行业新闻

NIST PQC 标准详解:面向企业团队的 FIPS 203、204 和 205

发布日期:2026-09-24  浏览次数:

NIST PQC 标准详解:面向企业团队的 FIPS 203、204 和 205(图1)

美国国家标准与技术研究院 (NIST) 于 2024 年 8 月 13 日最终确定了三项后量子密码学标准:FIPS 203 (ML-KEM) 用于密钥建立,FIPS 204 (ML-DSA) 用于通用数字签名,FIPS 205 (SLH-DSA) 作为保守的基于哈希的签名回退方案。大多数企业部署默认使用 ML-KEM-768 和 ML-DSA-65(民用),或 ML-KEM-1024 和 ML-DSA-87(CNSA 2.0 环境),而 SLH-DSA 则保留用于算法多样性比性能更重要的特定情况。


同一天发布的三个标准并不等同于解决同一问题的三个标准。企业团队不断询问哪个 FIPS 文档真正适用于他们的 TLS 协议栈、代码签名流程或证书颁发机构,而坦白地说,FIPS 203、204 和 205 的设计初衷并非相互竞争。它们涵盖不同的任务,具有不同的性能指标,并且在 2026 年,它们在各种库、HSM 和平台上的实现成熟度也各不相同。


要点总结

  • FIPS 203 (ML-KEM)、FIPS 204 (ML-DSA) 和 FIPS 205 (SLH-DSA) 于 2024 年 8 月 13 日由 NIST 最终确定,结束了为期八年的公开评估过程。

  • ML-KEM 用于解决密钥建立问题;ML-DSA 和 SLH-DSA 用于解决数字签名问题。它们不能互换使用,大多数系统都需要密钥建立算法和签名算法。

  • ML-DSA 是通用签名默认;SLH-DSA 以性能和大小为代价,换取了保守的、基于哈希的安全假设,该假设与格数学无关。

  • 参数集的选择取决于部署目标:ML-KEM-768 和 ML-DSA-65 用于民用系统,ML-KEM-1024 和 ML-DSA-87 用于 CNSA 2.0 适用的情况。

  • 到 2026 年,不同算法和平台的实现成熟度差异很大,这种成熟度差距,而不是算法偏好,应该决定实施顺序。


FIPS 203、204 和 205 实际标准化了什么

美国国家标准与技术研究院 (NIST) 的后量子密码学项目于 2016 年启动,当时公开征集算法,并经过几轮公开密码分析,最终于 2022 年选出最终入围者。美国商务部长于 2024 年 8 月 13 日批准了最终标准,并于次日生效。


标准算法基于功能替换
FIPS 203ML-KEM(基于模块格的密钥封装机制)CRYSTALS-Kyber密钥建立RSA 和 Diffie-Hellman 密钥交换,ECDH
FIPS 204ML-DSA(基于模块格的数字签名算法)CRYSTALS-Dilithium数字签名RSA 和 ECDSA 签名
FIPS 205SLH-DSA(无状态哈希数字签名算法)SPHINCS+数字签名RSA 和 ECDSA 签名,作为保守的备选方案


ML-KEM 是一种密钥封装机制,相当于后量子时代在不安全信道上建立共享密钥的机制,其功能类似于经典的 Diffie-Hellman 密钥交换和 ECDH 密钥交换。ML-DSA 和 SLH-DSA 都是数字签名算法,用于证明消息、证书或软件工件来自特定的私钥且未被篡改,其功能类似于 RSA 和 ECDSA 密钥交换。第四个标准 FN-DSA(FALCON)作为 FIPS 206 草案,一直持续到 2026 年中期。此外,NIST 于 2025 年选择了 HQC 作为 ML-KEM 的结构独立备份密钥封装机制。


ML-KEM、ML-DSA 和 SLH-DSA 概览

这三种算法的区别不仅仅在于功能。密钥和签名长度、各自所依赖的安全假设以及计算成本,都决定了它们在实际部署中的适用范围。


财产ML-KEM(FIPS 203)ML-DSA(FIPS 204)SLH-DSA(FIPS 205)
安全基础带误差的模块学习(格)带误差的模块学习和模块短整数解法(格)仅考虑哈希函数安全性,不考虑格假设
参数集ML-KEM-512、768、1024ML-DSA-44、65、87多个型号,例如 SLH-DSA-128s/f、192s/f、256s/f
平民违约ML-KEM-768(公钥约1184字节,密文约1088字节)ML-DSA-65(公钥约1952字节,签名约3309字节)并非默认设置;需选择性使用。
CNSA 2.0 参数ML-KEM-1024(公钥约1568字节,密文约1568字节)ML-DSA-87(公钥约2592字节,签名约4627字节)未包含在 CNSA 2.0 套件中
签名/密文大小与经典大约比 ECDH 大 15 到 25 倍大约是ECDSA的15到50倍大约比 ECDSA 大 100 到 700 倍(7,856 到 49,856 字节)
相对速度速度快;在现代硬件上,其速度可与经典的KEMs相媲美或更快速度快;适合大批量签约速度慢;签名操作每次可能需要数百毫秒。
最佳匹配TLS、VPN 和任何密钥交换通用签名:代码、文档、证书、协议长期、低交易量的签约,算法多样性至关重要。


这种规模差异不仅在学术上至关重要,在实际操作中也同样重要。基于 ML-DSA-87 构建的四证书链携带的签名数据量大约是基于 ECDSA P-384 的相同链的 15 到 20 倍,这表现为更大的 TLS 握手、更多的 OCSP 响应字节以及更高的 HSM 签名吞吐量要求。SLH-DSA 的签名规模还要大一到两个数量级,这是其安全假设不依赖于格硬性而做出的直接权衡。


根据用例选择合适的标准

大多数系统需要 KEM 和签名算法协同工作,而不是三者之间只能选择一种。

  • TLS 和 VPN 密钥交换: ML-KEM 是直接适用的方案。像 X25519MLKEM768 这样的混合结构在过渡窗口期间将其与传统的密钥交换相结合。

  • 代码签名和固件签名: ML-DSA 是实际的默认选择。签名后的文件通常需要保持可验证状态多年,而 ML-DSA 的性能足以满足大多数构建流程所需的签名量。

  • 证书颁发机构层次结构: ML-DSA 是颁发 CA 和根 CA 的首选,遵循与代码签名相同的参数逻辑。

  • 高可靠性、低容量、长寿命签名: SLH-DSA 适用于组织希望拥有第二个结构独立的签名方案,以防范格密码学未来可能出现的弱点,并愿意为此付出规模和速度上的代价的情况。

  • 国家安全系统和国防工业基础: ML-KEM-1024 和 ML-DSA-87 是 CNSA 2.0 下所需的参数集;SLH-DSA 不属于该套件。


2026 年实施成熟度

标准状态和部署就绪程度并非同一概念。虽然所有三项 FIPS 标准均已最终定稿,但针对每项标准的库、HSM 和平台支持成熟度却不尽相同。


在三种协议中,ML-KEM 对浏览器和 TLS 库的支持最为广泛,主流浏览器和 TLS 协议栈的当前版本已支持混合密钥交换。ML-DSA 已获得主流企业级 PKI 平台的支持,包括自 2026 年 5 月更新起,Microsoft Active Directory 证书服务在 Windows Server 2025 上正式发布。不过,其覆盖范围因应用场景而异:代码签名是最可靠的途径,而更广泛的 TLS、VPN 和远程桌面场景则需要逐个工作负载进行验证。SLH-DSA 已在主流加密库中得到支持,但其生产部署远少于前两者,这反映了其应用范围更窄、更专业化的特点。主流厂商的当前一代硬件均支持 ML-KEM 和 ML-DSA 的 HSM 固件,而较旧的 HSM 模块通常需要固件更新或硬件升级才能执行 PQC 操作。


迁移依赖性和顺序

这些算法都不是孤立部署的,而且算法的顺序比算法本身的选择更重要。

  1. 证书颁发机构层级结构必须先迁移根证书。在颁发 CA 和离线根证书迁移之前,在 ML-DSA 上颁发叶子证书会破坏迁移旨在建立的信任链。

  2. HSM 就绪状态决定签名吞吐量。ML-DSA 和 SLH-DSA 都会增加每次签名操作的计算和存储负载,而较旧的 HSM 分区需要经过固件验证才能确保其在生产环境中能够跟上步伐。

  3. 混合结构虽然可以争取时间,但之后还需要进行第二次迁移。将经典算法与 ML-KEM 或 ML-DSA 相结合的复合或双栈设计,目前可以抵御不成熟的 PQC 实现,但它们仍然需要在 NIST 提议的 2035 年量子安全漏洞公钥算法禁用日期之前,移除经典组件。

  4. 首先必须进行发现。准确清点RSA、ECDSA和ECDH当前的实际使用情况,并将其与所有者和关键性关联起来,是所有排序决策的基础。


我们的建议

对于大多数国家安全系统以外的企业团队而言,密钥交换使用 ML-KEM-768,签名使用 ML-DSA-65 是合适的初始默认方案:两者都符合 NIST 的 3 级安全标准,在 2026 年都拥有可靠的库和平台支持,并且都能将证书和握手的大小控制在比最高参数集更易于管理的范围内。如果团队计划向国家安全系统或国防工业基地销售产品,则应从一开始就设计支持 ML-KEM-1024 和 ML-DSA-87,而不是后期进行改造,因为 CNSA 2.0 不接受民用默认方案。SLH-DSA 应保留用于少数高可靠性签名用例,在这些用例中,第二个独立的安全性假设能够证明其规模和性能成本的合理性,而不是作为通用默认方案。无论团队最终选择哪种组合,更棘手的问题通常不是算法选择,而是了解经典算法目前实际运行的场景。这就是为什么密码学发现(而非标准选择)通常是团队遇到的第一个真正障碍。


在PQC项目中,我们推荐使用Thales Luna HSM,该产品是全球首款获得FIPS 140-3 Level 3认证的HSM,目前已经在固件中支持PQC算法。揽阁信息作为Thales的重要合作伙伴,我们拥有20多年的从业经验,可以帮助您快速完成HSM的部署和部署工作,且可为您提供定制化解决方案和长期持续的技术支持,欢迎联系我们获取更多资料。


这会给企业团队带来什么影响?

FIPS 203、204 和 205 回答的是三个不同的工程问题,而不是一个。ML-KEM 用于密钥交换安全,ML-DSA 承担通用签名任务,而 SLH-DSA 则作为备用方案,用于那些需要第二个独立安全假设且其规模和速度成本值得付出的少数情况。标准本身已经确定;不同组织之间仍然存在差异的是参数选择、特定平台上的实现成熟度以及安全迁移 PKI 层次结构所需的顺序。那些将标准选择视为难点的团队往往会发现,真正的限制在于首先要弄清楚他们的传统密码学基础架构在哪里。


常见问题解答

FIPS 203、204 和 205 是最终标准还是草案?

这三项标准均为最终标准。美国国家标准与技术研究院 (NIST) 商务部长于 2024 年 8 月 13 日批准了这些标准,并于 2024 年 8 月 14 日生效。它们是可用于生产的标准,而非草案,这与 NIST IR 8547 或 FIPS 206 (FN-DSA) 草案不同,后者一直处于草案状态,直到 2026 年年中。


我需要全部三个标准吗?还是可以选择其中一个?

几乎每个系统都需要至少一个密钥交换模型(KEM)和一个签名算法,因此,ML-KEM加上ML-DSA或SLH-DSA是现实的最低配置。SLH-DSA通常是ML-DSA的补充而非替代品,仅在其独立的安全性假设值得付出性能代价时才选择性使用。


为什么NIST有两种签名标准而不是一种?

算法多样性是一种有意为之的对冲策略。ML-DSA 和 SLH-DSA 基于不同的数学假设:ML-DSA 侧重于格问题,而 SLH-DSA 侧重于哈希函数安全。因此,即使未来在格密码学中发现漏洞,也不会同时危及两者。NIST 保留 SLH-DSA 正是为了提供这种结构上独立的备用方案。


受 CNSA 2.0 监管的组织应使用哪些参数集?

ML-KEM-1024 用于密钥建立,ML-DSA-87 用于签名,两者均属于 NIST 5 类。CNSA 2.0 的算法套件中不包含 SLH-DSA。


采用这些标准是否意味着AES也需要改变?

不,FIPS 203、204 和 205 标准针对的是公钥密码学,其中 Shor 算法使量子计算机具有指数级的优势。AES-256 是一种对称算法,并且在密钥长度为 256 时已被认为是抗量子攻击的,这考虑到了 Grover 算法的影响。


揽阁信息 · 值得您信赖的信息安全顾问!

服务热线

服务热线

13524448503

微信咨询
返回顶部
X

截屏,微信识别二维码

微信号:13524448503

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!