NIST后量子密码算法实际性能评价-1

2020-08-21 10:10 栏目:经验之谈 来源:网络整理 查看()

NIST在第三轮算法比赛中做了一些聪明的事情,比赛分为两组:入围算法和候选算法。

最终入围的是NIST(以及参与NIST决策的大多数密码学家)认为可以立即投入生产并值得立即标准化的算法。

同时,备选候选算法是一种算法,但出于某种原因,NIST认为它需要几年的密码分析和研究才能充满信心。

我相信密码学领域的每个人对第三轮的选择都有自己的看法,但是在这里我们从实际应用的角度来分析第三轮的入围者。

标准

我们将从实际应用的角度来评估密钥封装算法(KEM),而不是公钥加密和密钥封装的理论安全概念,即:

1.与现有传输层协议集成的可能性。(

2.在应用层加密(也称为“密封”)中支持离线公钥加密的应用编程接口。

这意味着您可以在线加密(使用公钥),但解密需要一个保持离线的密钥,并且只能在需要时访问。

我们将根据以下标准评估数字签名算法:

1.无状态:这个算法能在回滚虚拟机中安全使用吗?

2.带宽:签名长度相对较小吗?

第三轮密钥封装算法决赛

麦克里西

经典的McEliece算法是基于纠错码的。

经典的McEliece有一个大的公钥(在第二次提交中从261120字节到1357824字节),但是密文很短(128到240字节)。这使得在诸如TLS之类的协议中实现经典信任变得困难(因为它需要至少4个传输控制协议包来传输公钥)。

经典的McEliece没有解密失败,因此它适用于离线公钥加密。然而,巨大的公钥也可能会阻碍在这里的采用。

晶体

CRYSTALS包含两种算法:Kyber(密钥封装)和Dilithium(签名)。

Kyber的公钥范围从800字节(对于Kyber-512)到1568字节(对于Kyber-1024),密文范围从736字节到1568字节,这意味着Kyber可以很容易地用于TLS和其他协议。

Kyber解密的失败概率约为2 160。虽然这种可能性在现实世界中不太可能发生,但严格来说,算法中包含的任何非零失败概率都意味着用Kyber加密对称密钥将阻止您成功解密。

因为没有机会从错误中恢复(尽管这不太可能),所以很难推荐Kyber用于离线解密协议。

NU

另一种基于格的算法NU是历史上最长的后量子格密码系统之一。(因为为时过早,所有专利都已过期。(

像Kyber一样,NU提供了一个小的公钥(低端的NUhps2048509为699字节,高端的ntruhps4096821为1230字节),这使得ntru适合需要小公钥的应用。

像Kyber一样,对于所有参数集,NU的解密失败率通常低于1/2100。(NU规范文件中没有给出确切的故障率。严格来说,这可能永远不会成为一个真正的问题。然而,从技术上讲,仍然可以使用NU加密一些无法解密的内容。这使得很难为这个用例推荐NU。

军刀

SABRE是另一种基于格的密钥封装算法。SABER的安全性基于来自凯伯和NU的不同问题。然而,SABRE可以称其为轻量级模式的光剑。

SABRE提供小型公钥(672-1312字节)和密文(736-1472字节)。对SABRE来说,TLS应该不成问题。

像其他基于格的算法一样,解密失败概率不是零(对于SABRE变体,解密失败概率是2-120到2-165)。

摘要

如果后量子密码术的唯一目标是设计可用于在线模式(如TLS)的密码库,那么任何基于格的算法(基伯,NU,SABRE)都是一个不错的选择。

对于离线公钥加密,所有三种算法都有解密失败的风险。只有通过多次加密同一个会话密钥并存储多个密文,才能真正降低这种风险。这种失败风险可以忽略不计(更有可能是宇宙射线),但是离线协议没有恢复机制(而在线协议只能重启密钥交换并调用它)。

微信二维码
售前客服二维码

文章均源于网络收集编辑侵删

提示:币友交流QQ/WX群请联系客服加入!

郑重申明:资讯文章为网络收集整理,官方公告以外的资讯内容与本站无关!
虚拟币开发,虚拟币交易平台开发,山寨币交易平台开发 Keywords: 虚拟币开发 虚拟币交易平台开发 山寨币交易平台开发