NIST PQC 竞赛:流程与标准
回顾历时六年的 NIST 竞赛:提交标准、评估轮次和最终选择依据。
NIST PQC 竞赛:流程与标准 是 CoddyKit 上的免费 Cryptology Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cryptology Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cryptology Academy 课程共包含 4 节课。
NIST 为什么启动 PQC
NIST 于 2016 年启动后量子密码学(PQC)标准化项目,直接应对量子计算机带来的威胁。在规模足够大的量子计算机上,Shor 算法可以在多项式时间内攻破 RSA 和椭圆曲线密码学。NIST 意识到,密码基础设施的迁移需要数十年,因此在量子计算机构成立即威胁之前很久就开始了这一进程。
最初的方案征集
NIST 于 2016 年 12 月发布方案征集通知,并在 2017 年 11 月前收到 82 份完整提交方案。经过初步审查,其中 69 份被接纳为第一轮候选方案。这些提交方案涵盖了广泛的数学假设:格问题、哈希函数、基于编码的密码学、基于同源的密码学以及多变量多项式。假设的多样性是一个关键目标,以避免把所有希望都寄托在单一方案上。
第一轮评估(2017—2019)
在第一轮评估期间,NIST 和更广泛的密码学界对全部 69 个候选方案进行了深入分析。评估标准包括安全性(抵御经典攻击和量子攻击的能力)、性能(密钥和密文大小、计算速度)、灵活性(适用于不同安全级别的参数集)以及实现的简便性。到 2019 年 1 月,共有 26 个候选方案进入第二轮。
第二轮评估(2019—2020)
第二轮的 26 个候选方案接受了更深入的密码分析和性能基准测试。在这一轮中,多个方案被攻破或安全性遭到削弱,包括 Rainbow(多变量方案)和 SIKE(基于同源的方案,不过 SIKE 直到第三轮才被攻破)。到 2020 年 7 月,共有 15 个候选方案进入第三轮,分为 7 个决选方案和 8 个备选方案。
第三轮决选方案与最终选择
第三轮的 7 个决选方案包括 Kyber、NTRU、SABER(KEM)以及 Dilithium、FALCON、Rainbow、SPHINCS+(签名方案)。SIKE 是备选方案,但在 2022 年遭到彻底攻破。NIST 基于 Kyber 简洁的设计、强有力的安全性证明和出色的性能,选择它进行 KEM 标准化。Dilithium、FALCON 和 SPHINCS+ 则被选作签名方案。
算法多样性的依据
NIST 有意选择基于不同数学问题的算法,以防范未来的技术突破。ML-KEM 和 ML-DSA 依赖模块-LWE(格)。FALCON 依赖 NTRU 格和高斯采样。SLH-DSA 只依赖哈希函数的安全性。如果针对格的突破出现,SLH-DSA 仍将保持安全,从而为标准化套件提供算法多样性。
第四轮与新增签名候选方案
2022 年,NIST 专门启动了第四轮征集更多签名候选方案,原因是希望在基于格的方案之外增加签名方案的多样性。候选方案包括 MAYO、CROSS、UOV,以及其他基于多变量和编码假设的方案。这一流程与最终确定最初的三个标准(FIPS 203、204、205)同步进行。
FIPS 203、204、205 于 2024 年发布
NIST 于 2024 年 8 月发布了最终的 PQC 标准:FIPS 203(ML-KEM,基于 Kyber)、FIPS 204(ML-DSA,基于 Dilithium)和 FIPS 205(SLH-DSA,基于 SPHINCS+)。预计随后还会发布 FIPS 206(FN-DSA,基于 FALCON)。这些标准如今已成为 US 联邦机构必须考虑的事项,并正通过 ISO、ETSI 和 IETF 影响全球标准。
IETF 与业界采用
IETF 迅速将 PQC 纳入各项协议。截至 2024 年,ML-KEM 在 TLS 1.3、SSH 和 X.509 证书中的应用已有 RFC 草案正在制定。Cloudflare、Google 和 Amazon 宣布计划在其 TLS 协议栈中部署 ML-KEM。Apple 宣布了用于 iMessage 的 PQ3,采用 ML-KEM 提供基于棘轮的后量子前向保密,并已部署到超过十亿台设备。
从竞赛中获得的经验
NIST PQC 竞赛证明,开放且协作的密码学标准化能够有效开展。竞赛过程中,多个备受认可的方案被攻破(GeMSS、SIKE、Rainbow),这验证了广泛开展公开密码分析的重要性。竞赛还推动了高效硬件实现和开源库(liboqs、PQClean)的开发,加速了相关技术的采用。
持续进行的标准化工作
后量子标准化尚未完成。NIST 仍在继续评估其他签名方案,以保持方案多样性。X9 金融标准组织正在制定银行业使用的 PQC 标准。ETSI 和 ISO 正在与 NIST 的 FIPS 标准保持一致。针对特定行业的迁移指导也正在制定中:医疗保健行业(涉及 HIPAA 的影响)、国防行业(NSA CNSA 2.0 套件)以及电信行业(面向 5G/6G 的 3GPP)。
NIST PQC 轮次测验
有多少个候选方案从初始提交进入了 NIST PQC 竞赛的第 2 轮?
NIST PQC 竞赛回顾
NIST 于 2016 年启动 PQC 标准化项目,共收到 69 份完整提交。三轮评估根据安全性、性能和多样性逐步缩小了候选范围。最终选定的方案是 Kyber(ML-KEM、FIPS 203)、Dilithium(ML-DSA、FIPS 204)、SPHINCS+(SLH-DSA、FIPS 205)和 FALCON(FN-DSA、FIPS 206)。这场竞赛验证了开放式密码分析的价值,并促成了如今已广泛采用、正在集成到 TLS、SSH 和消息传递协议中的标准。
常见问题解答
「NIST PQC 竞赛:流程与标准」课时是免费的吗?
是的 — 「NIST PQC 竞赛:流程与标准」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cryptology Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cryptology Academy 课程共包含 4 节课。
「NIST PQC 竞赛:流程与标准」这节课中我会学到什么?
回顾历时六年的 NIST 竞赛:提交标准、评估轮次和最终选择依据。 你通过在浏览器中直接运行的动手代码来练习 Cryptology Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cryptology Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cryptology Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。
「NIST PQC 竞赛:流程与标准」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cryptology Academy 课中编写并运行代码吗?
能。每节 Cryptology Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。