NIST选出4款可防御量子黑客的密码学算法

美国国家标准暨技术研究院(National Institute of Standards and Technology,NIST)周二(7/5)公布了4款抗量子(Quantum-Resistant)密码算法,这是NIST于2016年召集“后量子密码学标准化”(Post-Quantum Cryptography Standardization)提案,并公开对外征求可承受量子运算的密码算法之后,5年来首度发布的第一批后量子密码学算法,涵盖用于一般加密的CRYSTALS-Kyber,以及适用于数字签名的CRYSTALS-Dilithium、FALCON与SPHINCS,它们将成为预计于两年后完成的后量子加密标准的一部分。

加密利用数学来保护敏感的电子资讯,包括人们每天浏览的安全网站与发送的电子邮件,被广泛使用的公钥加密系统依赖的是即使是最快的传统计算机、也难以解决的数学问题,以确保未经授权的第三方无法访问这些网站与消息。

然而,具备强大能力的量子计算机将可快速解决这些数学问题并击败加密系统,而此次NIST所选出的4款后量子密码学算法,采用了不管是通过传统计算机或量子计算机都难以解决的数学问题,进而保护现在与未来的隐私。

这些算法的设计主要是针对经常使用加密的两个任务,一是用来保护公开网络资讯交换的一般加密(General Encryption),其次即是用来进行身份认证的数字签名。NIST说,这4种密码学算法都是由来自各国、不同组织的专家协作而成。

CRYSTALS-Kyber荣耀入选的原因为它属于相对小型的加密密钥,可方便交换且执行快速。至于CRYSTALS-Dilithium与FALCON的优点则在于高效,NIST推荐以CRYSTALS-Dilithium作为主要算法,FALCON则适用于需要比CRYSTALS-Dilithium更小签章的应用,至于SPHINCS虽然相对笨重,却是个很有价值的备份方案,因为它与上述3种算法的数学方法完全不同。

NIST解释,CRYSTALS-Kyber、CRYSTALS-Dilithium与FALCON都是基于结构化格子(Structured Lattice)的数学问题,而SPHINCS却是使用散列函数(Hash Function)。

除了已出炉的4种后量子密码学算法之外,NIST还准备纳入另外4种后量子密码学算法,它们将锁定一般加密,而且将避开结构化格式或散列函数,使用其它的数学问题。

NIST也鼓励安全专家现在就能研究这些新的算法,同时思考如何嵌入其应用,但暂时先不要正式部署,因为在它们成为正式标准之前,可能还会有些微的变更。