核心算子的高效实现是后量子密码技术的重要研究内容和核心组成部分。前三章介绍了后量子密码的发展与挑战,以及较为关键的基于格的密码体制和基本数学原理。从本章开始,将介绍后量子密码中常用的核心算子及高效硬件实现,并围绕核心算子的硬件实现,逐步阐述后量子密码芯片的设计与实现。
本章介绍常用于后量子密码中数据生成的核心算子SHA-3计算模块。第5章和第6章介绍高斯采样器的实现和数论变换运算加速单元的实现。第5章还对影响安全性的侧信道防御技术进行了研究与分析。第7章和第8章以各类核心算子的实现为中心,串联起安全芯片“数据生成-随机采样-运算加速”的关键运算结构,分别介绍整体实现的可重构Ring-LWE后量子密码处理器与后量子密钥交换协议芯片。第9章和第10章叙述作者对SABER(也称Saber)和CRYSTALS-KYBER(简称Kyber)这两种基于格的后量子密码方案的安全处理器的研究、设计与实现。
哈希函数又称散列函数或杂凑函数,作为密码学的一个重要分支,是一种将任意长度的消息输入转换为固定长度的摘要输出且不可逆的单向密码体制。第三代安全散列算法(Secure Hash Algorithm 3,SHA-3)作为最新一代哈希函数,被广泛用于构造后量子公钥加密算法。在Kyber中,使用SHA3-256及SHA3-512构造散列函数保证数据的安全性;使用SHAKE128构造可扩展输出函数生成随机数比特流,方便后续函数进行均匀采样和二项式采样;使用SHAKE256生成伪随机序列及密钥。在Saber中,使用SHA3-256和SHA3-512构造散列函数,保证数据的安全性;使用SHAKE128构造可扩展输出函数,生成随机矩阵。近些年,SHA-3在格密码中的重要作用和对整体方案实施性能指标的重要影响 [1-2] ,引起了研究人员的高度关注。