systemslibrarian/crypto-lab-pq-rotation
GitHub: systemslibrarian/crypto-lab-pq-rotation
基于浏览器的后量子密码学迁移交互式规划工具,通过可视化模拟帮助运维团队理解混合证书体积成本、监管合规时间轴和滚动密钥轮换策略。
Stars: 1 | Forks: 0
# crypto-lab-pq-rotation
## 简介
`crypto-lab-pq-rotation` 是一个基于浏览器的后量子密码学迁移交互式规划工具,侧重于实际的部署操作而非算法理论。它以五个阶段的项目计划,模拟了从密码资产盘点、混合部署到纯 PQC 的端到端过渡。
顶部的**“从这里开始”步骤导航**为新手提供了一条清晰的逻辑主线——紧迫性证明了混合修复方案的必要性,该方案存在体积成本,截止日期决定了工作顺序,而分阶段轮换则负责交付执行——这四个步骤分别链接到其对应的章节。专业术语(HNDL、复合签名、canary)在首次使用时都会用一句通俗易懂的话进行解释,风格与 Mosca 卡片保持一致。
本演示包含:
- 一个交互式 **Mosca 不等式**模型(X + Y > Z),支持调整 CRQC 年份和迁移时间,将通用公式与从加载的清单中提取的实时最坏案例分析相结合,让你清楚地看到“现在窃取,以后解密”(HNDL)是何时让你的数据越过红线的。
- 混合 X.509 风格证书,包含古典 + PQ 签名(ECDSA-P256 + ML-DSA-65)以及**实测**的体积分析(非估算值),以**按比例绘制的堆叠柱状图**(信封、古典公钥/签名、PQ 公钥/签名)形式展示,让 ML-DSA 签名在体积成本中的主导地位一目了然。
- 针对真实证书的**篡改实验室**:伪造古典签名、PQ 签名或证书主体,并实时观察验证反应。**证书结构图**(主体 → SHA-256 哈希 → {古典签名, PQ签名} → 整体信任)会将受影响的块变红,并显示前后翻转的实际十六进制字节——这证明了为什么混合验证器只有在*两个*签名都有效时才会信任该证书。
- 一个时间轴引擎,将迁移操作与主要监管框架(CNSA 2.0、欧盟 NIS、英国 NCSC、澳大利亚 ASD、德国 BSI、加拿大 CCCS)对齐。每个阶段柱状图都是一个**直观的倒计时**(显示截至今日有多少清单项目到期),并附带一个具体的示例操作及其计划日期;末日指标的数据可追溯到各框架自身的里程碑日期。
- 一个滚动密钥轮换模拟器,具备 canary 部署、监控窗口、分阶段推出和自动回滚功能,通过一个**车队点阵图**进行可视化,随着阶段推进将颜色从古典→混合重新映射,高亮显示单个 canary,并在注入故障回滚时恢复为古典状态。
- 一套**浏览器内验证套件**,运行本实验室自带的加密自测程序,让你确认没有任何结果是伪造的。
- 底部有一个**“关于本演示”**折叠区,包含一个全新的 PQ 感知架构示例、无障碍说明以及配套实验室的链接。
它使用了真实的加密原语:
- 来自 `@noble/curves` 的 ECDSA-P256
- 来自 `@noble/post-quantum` 的 ML-DSA-65
显示的每一个字节大小都是在浏览器中实时生成的密钥和签名中测量得出的。一个古典的 ECDSA-P256 叶子证书约为 1.2 KB;同等的混合证书约为 6.5 KB(大约大 5.4 倍),而且仅加密材料——公钥加上签名——在加上 ML-DSA-65 的 1,952 字节密钥和 3,309 字节签名后,体积大约增长了 55 倍。这使得混合部署在体积和操作上的权衡变得具体可见,而非仅仅是断言。
## 适用场景
当你需要以下操作时,请使用本项目:
- 规划一个具有明确阶段和依赖关系的全组织范围 PQC 迁移路线图。
- 解释为什么混合部署是向纯 PQC 过渡之前最实用的过渡模型。
- 教授操作现实:Root CA 轮换、HSM/KMS 就绪情况、回滚计划和监控覆盖率。
- 比较不同司法管辖区的监管时间表。
- 为新系统原型化具备密码敏捷性的架构决策。
- **请勿**将其用作生产级 PKI 或密钥管理平台——它是一个教育规划工具,而不是一个 CA 产品。
## 在线演示
**[systemslibrarian.github.io/crypto-lab-pq-rotation](https://systemslibrarian.github.io/crypto-lab-pq-rotation/)**
该规划工具端到端演示了五个阶段的 PQC 迁移计划:一个交互式 Mosca 不等式模型,一个实时混合 X.509 证书(ECDSA-P256 + ML-DSA-65)以及可伪造古典签名、PQ 签名或主体的篡改实验室,一个涵盖 CNSA 2.0 和其他司法管辖区的监管时间轴引擎,一个带有 canary 推出和自动回滚功能的滚动密钥轮换模拟器,一套浏览器内加密自测套件,以及一个资产盘点/就绪仪表板。显示的每一个字节大小均来自于浏览器中实时生成的密钥和签名。
## 可能出现的问题
- **时间表过于乐观。** 大多数企业迁移需要多年的时间序列规划。启动延迟会将风险压缩到严格的监管截止日期前。
- **忽视密码敏捷性。** 如果没有抽象层和策略驱动的密码选择,迁移成本将激增,且回滚也不安全。
- **清单不完整。** 团队经常会遗漏固件签名、CA 层级元素或应用程序签名路径,从而在后期发现障碍。
- **Root CA 拖累。** Root 信任锚生命周期长且分布在许多信任存储中;轮换它们是一个缓慢且高度协调的过程。
- **供应商不对称。** 一些供应商有明确的 PQ 路线图;而另一些则没有。迁移的速度只能取决于最慢的依赖项。
- **容量和体积影响。** 混合和 PQ 产物体积更大,会影响 TLS 握手行为、CT 日志记录和受限的网络路径。
- **可观测性薄弱。** 如果你无法按流量和端点类别衡量算法使用情况,治理报告将不可靠。
## 实际应用场景
此处代表的迁移框架符合以下机构发布的指南:
- NSA CNSA 2.0(2022 年 9 月发布,2024 年 12 月更新)
- NIST NCCoE 迁移到 PQC 项目材料
- 欧盟 NIS 合作小组 PQC 路线图(2025 年 6 月)
- 英国 NCSC 后量子迁移指南(2025 年)
- 德国 BSI 过渡指南(2024 年 10 月)
- 澳大利亚 ASD 信息安全手册
- 加拿大 CCCS PQC 路线图(2025 年 6 月)
- ETSI CYBER 抗量子指南
混合证书建模遵循 IETF LAMPS 工作(包括 draft-ietf-lamps-pq-composite-sigs)中描述的复合签名过渡方向。
该实现反映了大型企业和公共部门组织使用的真实迁移模式:首先进行资产盘点,然后进行混合部署、受监控的分阶段轮换、可安全回滚的操作,并最终在合规时间表内淘汰古典密码。
## 如何在本地运行
```
git clone https://github.com/systemslibrarian/crypto-lab-pq-rotation
cd crypto-lab-pq-rotation
npm install
npm run dev
```
## 相关演示
- [crypto-lab-harvest-timeline](https://systemslibrarian.github.io/crypto-lab-harvest-timeline/) — 证明现在就需要迁移的 Mosca 不等式和延迟成本场景。
- [crypto-lab-hybrid-sign](https://systemslibrarian.github.io/crypto-lab-hybrid-sign/) — Ed25519 + ML-DSA-65 复合签名,即本规划工具部署的 IETF LAMPS 结构。
- [crypto-lab-pki-chain](https://systemslibrarian.github.io/crypto-lab-pki-chain/) — X.509 证书链和正在轮换的信任层级。
- [crypto-lab-pq-families](https://systemslibrarian.github.io/crypto-lab-pq-families/) — 五大 PQC 家族以及驱动迁移选择的体积权衡。
- [crypto-lab-pq-tls-handshake](https://systemslibrarian.github.io/crypto-lab-pq-tls-handshake/) — 混合 X25519MLKEM768 密钥交换,即同一迁移在 TLS 层面的体现。
*这是 [Crypto Lab](https://crypto-lab.systemslibrarian.dev/) 套件中 170 多个浏览器演示之一。*
*“所以,你们或吃或喝,无论做什么,都要为荣耀神而行。” —— 哥林多前书 10:31*
标签:X.509证书, 云安全态势管理, 前端应用, 可视化规划工具, 后量子加密, 密码学, 密钥轮换, 手动系统调用, 数据可视化, 暗色界面, 自动化攻击