3.1 NIST PQC项目


3.1 NIST PQC 项目

本节摘要:SOURCE 3.1:NIST 2016 年启动 PQC 标准化,经历提交、三轮筛选与 cryptanalysis 公开破译。2022 年公布首批标准算法。本节用时间线对比各阶段淘汰规模。

本节导读

  1. 列出 NIST PQC 关键里程碑年份
  2. 说明评估维度:安全、性能、IP、实现
  3. 区分第一轮 69 方案与最终 4+ 标准

一、时间线(SOURCE 3.1)

年份 事件
2016 征集开始,69 份有效提交
2019 第二轮 26 方案
2020 第三轮 7 决赛 + 8 备选
2022 首批标准 FIPS 203/204/205 发布

二、评估对照维度

维度 问题
安全 已知攻击?证明归约?
性能 密钥/签名/速度
实现 恒定时间、侧信道
IP 专利障碍

03-03-fig01-3

⚠️ 常见坑:把「提交算法」当「标准」——仅 FIPS 203/204/205 等才是现行标准名。

💡 关键直觉:NIST 过程是全局对比实验,淘汰率极高。

要点速记

  • 2016–2022 多轮公开竞争
  • 安全与性能双轨筛选
  • 2022 首批:Kyber、Dilithium、Falcon、SPHINCS+
  • 持续第四轮跟踪备选 KEM

深入讨论:NIST 筛选背后的评估逻辑

NIST PQC 项目的淘汰率极高,从 2016 年征集到 2022 年发布首批标准,69 份有效提交最终只剩 4 个算法(外加 Falcon 在更早阶段以特殊规格进入)。每一轮淘汰都不是简单打分,而是四维评估的综合:安全维度看是否有已知攻击、是否具备可证明的安全归约;性能维度看密钥、密文、签名尺寸与加解密速度;实现维度看是否存在侧信道风险、是否能在常见 CPU 上高效运行;知识产权维度看是否存在专利障碍,NIST 明确要求标准算法不能受制于非自由许可。

第四轮的存在同样重要。NIST 保留了一些备用 KEM 候选继续观察,例如 BIKE、HQC 这类基于编码的方案,它们的意义在于为「格假设被突破」这一小概率事件准备第二道防线。对工程团队而言,这意味着即便 Kyber 已进 FIPS 203,也不能把整个密码栈押注在单一假设上,跟踪第四轮进展是风险管理的一部分。

# NIST PQC 项目关键里程碑(对照记忆) 2016 征集启动,收到 69 份有效提交 2017 第一轮筛选开始,公开安全分析 2019 第二轮:26 个方案进入 2020 第三轮:7 个决赛方案 + 8 个备用方案 2021 决赛方案集中测试与公开破译竞赛 2022 发布 FIPS 203(Kyber)、FIPS 204(Dilithium)、FIPS 205(SPHINCS+) 2024 公布 FIPS 206(Falcon,可选签名标准) 2025+ 持续跟踪第四轮 KEM 候选与 IETF 混合草案

把时间线拉长可以看出,NIST 的节奏是「慢筛选、宽观察」:宁可花六年反复考验候选,也不愿意仓促定标。对使用者来说,这套流程的价值在于标准化算法背后有足够的公开分析支撑,选型时可以直接引用 FIPS 编号与安全级别,而不用自行评估候选方案的长期风险。

工程实践扩展:标准文档与合规申报的对应关系

落地 NIST 标准时,工程团队真正要面对的往往不是算法本身,而是标准文档里的细节如何翻译成系统配置。FIPS 203 定义 ML-KEM 时给出的不是一组而是多组参数(ML-KEM-512/768/1024),每一组对应一个安全级别;FIPS 204 的 ML-DSA 同样有 44/65/87 三档。文档里还会规定密文格式、解封装失败的处理方式(例如是否使用隐式拒绝)以及哈希域分隔符,这些细节直接决定不同实现的互操作性。

合规申报环节则要求组织证明自己「用的是标准算法、以标准方式使用」。因此标准名与俗称的对应要写进内部规范,参数集要能追溯到具体 FIPS 条款,实现库版本要可审计。把「引用 FIPS 编号」作为变更评审的强制字段,是最简单也最有效的合规抓手。

# 从标准到配置的对照示例 业务决策 标准引用 系统配置 选择 Level 3 KEM FIPS 203 ML-KEM-768 TLS 组 X25519MLKEM768 选择 Level 3 签名 FIPS 204 ML-DSA-65 TLS 签名算法 ml_dsa_65 选择哈希签名备份 FIPS 205 SLH-DSA 归档签名工具参数集 记录安全级别 NIST SP 800-131A 合规登记字段 security_level 跟踪备选 KEM 第四轮候选 BIKE/HQC 隔离评估环境

这套对照的价值在于让「标准」从一个抽象概念变成可操作的配置项。评审时只要核对配置里的算法标识与 FIPS 编号是否匹配,就能快速发现「文档写的是 ML-KEM-768,配置里却是 ML-KEM-512」这类低级却致命的错位。

再补充一点观察:NIST 项目对工程界的另一个隐形贡献,是统一了安全级别的度量语言。过去团队讨论「要不要升级」,往往在密钥长度上绕圈;现在只要说「目标 Level 3」,再对照 AES-192 的强度,选型与评审就都有了共同语言。这套语言正是本教程在第 3 章反复对照参数表要建立的东西。


作者与出处
原作者: 灏天文库
来源:灏天文库
整理: 灏天文库整理
由灏天文库平台收录,内容或由平台用户上传,仅供学习交流
发布者: 作者: 灏天文库 转发
评论区 (0)
U