在量子计算技术迅猛发展的今天,传统公钥密码体系(如RSA、ECC)正面临前所未有的威胁。本书系统地探讨后量子密码学(Post-Quantum Cryptography, PQC)的密码学基础、前沿理论及最新的主流算法,包括ML-KEM、ML-DSA、SLH-DSA等NIST标准化算,旨在为密码领域研究人员构建抵御量子攻击的新型密码技术知识体系,助力信息安全领域研究人员应对量子计算威胁。本书以清晰的逻辑链贯穿密码学基础、后量子密码前沿和国际标准化算法实现,阐述了密码学从古典迈向后量子时代的变迁过程,适合密码学相关研究者和在校学生阅读,也适合密码工程、信息通讯等领域专业人士学习参考。
刘哲,教授、博士生导师,国家青年特聘专家、入选国家级人才计划和浙江省人才计划,研究领域涵盖密码学、数据安全及智能系统安全等方向,累计发表学术论文200余篇,其中12篇斩获会议最佳论文奖。曾入选国家海外高层次人才计划和中国科协青年人才托举工程等人才计划,连续5年跻身美国斯坦福大学与爱思唯尔联合发布的全球前2%顶尖科学家榜单,并荣获教育部计算机专业优秀教师奖励计划、中国密码学会密码创新奖一等奖、《麻省理工科技评论》中国区35岁以下科技创新35人及阿里巴巴达摩院青橙奖等重要荣誉,主持国家自然科学基金重点项目、江苏省杰出青年科学基金等国家级与省部级项目20余项。
第1章 经典密码算法概述 1.1背景发展介绍 1.1.1 密码学发展介绍 1.1.2 密码体制分类 1.1.3 应用场景 1.2 对称密码体制 1.2.1 对称密码的概念 1.2.2 对称加密 1.2.3 消息认证码 1.2.4 对称密码体制的局限 1.3 公钥密码体制 1.3.1 公钥密码的概念 1.3.2 公钥加密 1.3.3 密钥封装 1.3.4 数字签名 1.3.5 密钥交换 1.4 量子计算的威胁 第2章 量子计算对经典密码的影响 2.1 量子数学基础 2.1.1 量子比特 2.1.2 量子计算 2.1.3 量子测量 2.2 应用于密码学的常用量子算法 2.2.1 量子算法对传统密码系统的影响 2.2.2 量子问询 2.2.3 Simon 算法及其在密码攻击中的应用 2.2.4 格罗弗算法及其在密码攻击中的应用 2.2.5 Shor 算法及其在密码攻击中的应用 2.3 量子计算机的发展现状 第3章 后量子密码 3.1 抗量子密码迁移 3.1.1 紧迫性:先存储,后解密攻击 3.1.2 针对量子密码危机的解决方案 3.2 基于编码的后量子密码系统 3.2.1 背景 3.2.2 发展历程 3.2.3 基本概念 3.2.4 安全假设 3.2.5 Niederreiter 密码 3.3 基于哈希的后量子密码系统 3.3.1 发展历程 3.3.2 基本概念 3.3.3 基于哈希的经典后量子解决方案 3.4 基于格的后量子密码系统 3.4.1 格密码发展历程 3.4.2 基本概念 3.4.3 安全假设 3.4.4 基于格的密码系统 3.5 基于多变量的后量子密码系统 3.6 后量子公钥密码标准 第4章 ML-KEM 算法 4.1 ML-KEM 算法原理 4.1.1 算法概述 4.1.2 整体方案 4.2 ML-KEM 基础实现 4.2.1 基础运算 4.2.2 K-PKE 公钥加密方案 4.2.3 ML-KEM 密钥封装方案 4.3 ML-KEM 优化实现方法 4.3.1 资源受限平台上的 ML-KEM 快速实现 4.3.2 CPU 平台上基于 AVX 指令集的 ML-KEM 快速实现 第5章 ML-DSA 算法 5.1 签名方案 5.1.1 ML-DSA 结构 5.1.2 ML-DSA 安全性 5.2 ML-DSA 算法原理 5.2.1 参数设定 5.2.2 密钥对生成 5.2.3 签名 5.2.4 验签 5.3 ML-DSA 基础实现 5.3.1 模约简 5.3.2 数论变换 5.3.3 高低阶位和提示 5.3.4 哈希 5.3.5 位打包 5.4 ML-DSA 算法优化实现方法 5.4.1 ML-DSA 算法的 AVX2 优化实现 5.4.2 小多项式乘的快速实现 第6章 SLH-DSA 算法 6.1 SLH-DSA 算法原理 6.1.1 一次性签名算法 6.1.2 少次 / 多次签名算法 6.1.3 SLH-DSA 组件介绍 6.2 SLH-DSA 基础实现 6.2.1 总体概览 6.2.2 相关函数、地址对象 6.2.3 一次性签名 WOTS+ 6.2.4 XMSS 6.2.5 HyperTree 6.2.6 FORS 6.2.7 SLH-DSA 算法流程 6.3 SLH-DSA 优化实现 6.3.1 AVX 指令集加速 6.3.2 CUDA 加速 第7章 Falcon 签名算法 7.1 Falcon 算法原理 7.1.1 符号与基础理论概述 7.1.2 陷门函数 7.1.3 最近向量困难问题(CVP) 7.1.4 基于 CVP 的密码系统 7.1.5 Falcon 算法构造 7.1.6 参数选择 7.1.7 在 NTRU 格上应用 GPV 框架 7.1.8 密钥对生成 7.1.9 签名 7.1.10 验签 7.2 Falcon 基础实现 7.2.1 离散高斯分布采样 7.2.2 解 NTRU 方程 7.2.3 RNS 大数运算 7.2.4 运算过程中的系数大小 7.2.5 二项法求最大公约数 7.2.6 迭代形式 7.3 Falcon 优化实现 7.3.1 FFT 7.3.2 NTT 7.3.3 LDL树 7.3.4 编码与压缩 7.3.5 签名编码 第8章 后量子密码迁移 8.1 混合迁移设计 8.1.1 混合数字签名 8.1.2 混合密钥协商 8.2 TLS 协议 8.2.1 TLS 握手协议 8.2.2 迁移需求分析 8.2.3 后量子 TLS 握手协议 8.2.4 KEMTLS 握手协议及其变形 8.3 SSH 协议 8.3.1 SSH 连接建立过程 8.3.2 迁移需求分析 8.3.3 后量子 SSH 协议 8.4 IPSec 协议 8.4.1 IPSec 协议结构 8.4.2 IPSec 工作原理 8.4.3 迁移需求分析 8.4.4 后量子 IKEv2 协议 参考文献