对称加密使用最广泛的算法是AES,自2001年取代DES以来,它一直是NIST标准。但是,AES 是一种通用加密算法,有时难以满足资源受限应用程序的功耗和延迟要求。对于芯片设计人员来说,这个问题表现为需要保护与外部闪存的通信通道。
由于我们的目标是小于 28nm 的工艺节点,设计人员不得不应对由较小几何形状引起的复杂问题,从接近度、多边形间距和其他布局相关效应到确定合适的 FinFET 宽度。一个与安全相关的限制是难以构建浮动门以支持较小几何形状的嵌入式闪存。对于28nm以下的片上多次可编程(MTP)非易失性存储器(NVM),没有任何可行的选择,设计正在过渡到外部闪存:
不幸的是,这允许对手观察和修改存储在外部闪存中的数据,并且还使发起更高级的侧信道和故障注入攻击变得更加容易。这不是一个微不足道的问题,因为我们需要一个同时的解决方案:
保护存储在外部闪存中的数据的机密性和完整性,
提供针对高级侧信道和故障注入攻击的保护,
能够支持 QSPI 闪存 100MB/s 的读/写速度,最后
不会给产品带来巨大的功率和面积开销。
自然的首选方法是利用现有的AES引擎来保护数据。但是,仅加密并不能阻止对手修改数据。为此,我们需要在经过身份验证的加密模式下使用密码,例如 GCM 操作模式。不幸的是,AES-GCM难以满足抗攻击性的最终要求。AES最初设计为抵抗侧信道或故障攻击,对算法的修改将提供该级别的保护会导致相当大的面积和功耗损失。
为了满足我们所有期望特征的解决方案,我们需要关注新兴的轻量级密码学领域。
轻量级加密
需要资源受限设备的应用在物联网 (IoT)、汽车和医疗传感器等领域一直在迅速扩展。为了在功耗和面积非常宝贵的情况下提供安全性,重点已从AES等通用加密算法转移到明确的轻量级设计。
重要的是,轻量级加密算法不会牺牲安全性:密钥长度仍然要求至少为 128 位,与 AES-128 匹配。相反,轻量级加密算法旨在在嵌入式设备中常见的资源限制内工作,例如,与通用对应算法相比,需要更少的寄存器和RAM。重要的是,所有标准化的轻量级候选产品都旨在抵抗侧信道和故障攻击。
但是,与外部闪存通信的高吞吐量要求呢?尽管针对资源受限的设备,但轻量级算法通常可以胜过 AES 等通用算法。作为NIST标准化一组轻量级算法的努力的一部分,它们对AES的性能在Cortex-M4F处理器上进行了评估。许多候选的轻量级算法能够胜过AES。
通过改变消息和相关数据长度,针对AES评估每个候选的标准化轻量级算法。蓝色方块表示轻量级算法通过更快地处理数据而优于 AES,而红色方块表示 AES 更快。
从下面的图中,我们可以看到,许多考虑标准化的轻量级加密算法尽管是为资源受限的环境设计的,但能够胜过 AES。
NIST轻量级密码学标准化工作的决赛入围者于2021年初公布,最终标准将于2022年某个时候发布。
对于资源受限的产品,与更传统的通用算法(如 AES)相比,新型轻量级加密算法可显著节省功耗和面积。尽管是为资源受限的环境而设计的,但许多轻量级加密算法比 AES 更快。由于我们的产品针对28nm以下的工艺节点,缺乏嵌入式多次可编程非易失性存储器在芯片和外部闪存之间引入了攻击面。轻量级加密算法是保护芯片和外部闪存之间数据的一种候选解决方案。
审核编辑:郭婷
-
芯片
+关注
关注
455文章
50713浏览量
423109 -
存储器
+关注
关注
38文章
7484浏览量
163759 -
MTP
+关注
关注
2文章
52浏览量
16640
发布评论请先 登录
相关推荐
评论