无论是使用 eFlash 还是外部闪存,设计安全的嵌入式系统都是一项越来越繁重的工作。本节重点介绍一些重要的注意事项,以帮助指导设计和开发工作。
通常,在为端到端安全性而设计的系统中需要三个元素:
·保护机制,通过防止代码和关键数据通过各种方式被删除、更改或损坏,从而保持代码和关键数据的完整性
·检测机制,用于揭示代码和/或关键数据何时可能被某些未经授权的方式更改
·恢复机制,用于恢复被某些未经授权的方式更改的任何代码和/或关键数据的完整性
工程师应设计能够解决 STRIDE 模型中确定的所有威胁的系统(参见表 1)。下表总结了此模型,它提供了一种了解潜在威胁以及如何通过各种安全规定来应对每个威胁的实用方法。
表 1:STRIDE 模型概述了安全系统需要解决的威胁。
安全的产品设计需要建立基于信任根的可信执行环境 (TEE)。TEE提供了在使用之前验证所有组件和子系统的真实性和完整性的方法。以下是创建此类安全设计的一些最佳实践:
·在硬件中实现信任根以创建安全的基础
·通过身份验证和加密巩固这一基础
·为所有连接、网络和云组件提供端到端的价值链保护
·提供对侧信道攻击和故障注入技术的免疫力
·对系统进行独立的漏洞和风险评估
·持续实时监控异常
·实施对策流程(例如安全更新)
图 2 显示了在系统中实现信任根如何涉及在风险和成本之间进行权衡。正如预期的那样,基于软件的设计是最便宜的,也是最不安全的。没有显示的是不安全的嵌入式系统的间接成本,而这些非常真实的成本使得证明基于硬件的设计很容易最大化安全性。
以下是美国国家标准与技术研究院的计算机安全资源中心如何解释在硬件中实现信任根的优势:“信任根是执行特定关键安全功能的高度可靠的硬件,固件和软件组件。由于信任根本质上是受信任的,因此它们必须在设计上是安全的。因此,许多信任根都是在硬件中实现的,因此恶意软件无法篡改它们提供的功能。
技术的进步不断降低IC的成本,从而降低采用下一代IC的系统的成本。随着安全“智能闪存”的出现,外部闪存就是这种情况,它减少了在硬件中实现信任根并整合其他所需功能所需的工作量。
安全闪存:下一代智能存储器
半导体代工厂正在花费大量精力追求小尺寸嵌入式闪存,但尚未出现可行的解决方案。小截面RRAM和MRAM技术作为eFlash替代品已被广泛探索,但由于数据完整性和成本挑战,这些技术尚不可行,特别是对于需要在高温下具有高可靠性的关键任务应用。在撰写本文时,尚不清楚这些或任何其他技术何时(或是否)能够在批量生产中提供嵌入式内存。
由缩小的几何形状引起的不可避免的变化产生了对新型安全通道的需求,在该通道中,可以在MCU内部的HSM和外部存储设备内的加密安全区域之间交换位。一个有前途的解决方案是采用当前实践的反面,将各种类型的内存集成到处理器中,而是将处理器集成到内存IC中以创建智能内存。图3显示了安全闪存如何能够与主机MCU建立经过身份验证和加密的安全处理环境。
下一代智能存储器的这一趋势有可能为电子行业带来革命性的变化。对于嵌入式系统,这些进步将集中在NOR Flash上,它是一种理想的非易失性存储器,用于存储基于其耐用性和快速随机读取性能的代码。
Secure NOR 闪存(或更简单的“安全闪存”)为安全密钥、证书、密码哈希、特定应用数据、配置数据、代码版本信息和生物识别传感器数据提供受硬件保护的安全存储,以便进行身份验证。Secure Flash 还可以支持经过身份验证和加密的交易,以防止未经授权的访问和其他安全威胁。
相比之下,当前基于状态机的内存架构无法提供与嵌入式处理器相同的多功能性和性能。例如,强大的安全性需要强大的加密,而这反过来又需要相当大的处理能力。嵌入式处理器还可以支持其他与安全相关的要求,包括 HMAC 密钥生成和存储以及单调计数器,并提供针对固件、启动映像和系统参数的攻击的保护。
在存储器中嵌入处理能力可以选择性地促进逻辑集成,以添加特定功能和/或卸载系统主机MCU的工作负载。例如,嵌入式处理可以创建硬件信任根,以防止对存储的代码和数据进行修改、操作和其他安全攻击。或者,处理器可以在存储系统其他功能所需的结果之前,对原始数据(包括用于机器学习的数据)运行各种算法。
此外,对于可以通过在智能存储器的嵌入式处理器中运行的代码部分或完全满足的安全法规,可以更轻松地认证新系统的合规性。这有可能通过简化所需的设计和开发工作来显着加快新产品的上市时间。
审核编辑:郭婷
-
嵌入式
+关注
关注
5069文章
19021浏览量
303384 -
存储器
+关注
关注
38文章
7453浏览量
163608
发布评论请先 登录
相关推荐
评论