安全MCU真的安全吗?剖析了这几家MCU大厂的产品,我算是明白了~

安全MCU真的安全吗?剖析了这几家MCU大厂的产品,我算是明白了~

作者:Majeed Ahmad

关键词:物联网,单片机

在嵌入式设计中实现安全功能似乎是一项艰巨的任务,专门提供安全功能的微控制器 (MCU) 因此应运而生,它们能够在嵌入式设计之初实现安全功能。这是一件好事,因为毫无疑问,需要一种新型的嵌入式解决方案来保护物联网 (IoT) 应用。

ABI Research的一项研究估计,去年售出的物联网设备中不到4%具有嵌入式安全功能。同时,这家市场研究公司预测,到2020年,近25%的网络攻击将针对物联网设备,从而使安全MCU成为热门话题。

但什么是安全MCU?许多MCU声称提供安全功能,但仔细研究却发现只是吹嘘。本文将深入探讨定义安全MCU的特征,并详细介绍具体的特性和功能,以便于将安全MCU与仅宣称具有保护功能的MCU区分开来。

首先,MCU供应商寻求以额外的安全保护层来补充其基于硬件的安全解决方案,从而增强对软件漏洞和网络攻击的防御能力。

两个安全MCU实例

随着在网络边缘运行的端点设备的出现,人们需要安全的空中下载 (OTA) 固件更新。RenesasRX651微控制器通过集成可信安全 IP (TSIP) 和可信闪存区域保护来满足此更新要求,支持通过安全网络通信在现场进行闪存固件更新。

TSIP提供了可靠的密钥管理、加密通信和篡改检测,以确保针对窃听、篡改和病毒等外部威胁提供强有力的保护(图1)。同样,集成的双存储区闪存使设备制造商更容易安全可靠地执行现场固件更新。


图 1:RX651微控制器中的安全性构件(右侧中间)示意图。
(图片来源:Renesas Electronics)


双组闪存使嵌入式系统设计人员能够通过TSIP(用于保护加密密钥)与加密硬件加速器(例如 AES、3DES、RSA、SHA 和 TRNG)的组合来实现高信任根级别。并且有代码闪存区域保护来确保引导代码免遭未经授权的重新编程。

接下来,Renesas与嵌入式系统安全专家Secure Thingz合作,对其RX系列32位微控制器进行安全配置。为此,Renesas将支持创建了Secure Thingz的Secure Deploy架构,以简化跨设计和制造价值链的安全实现。

在与嵌入式安全解决方案提供商合作的MCU供应商中,另一家是STMicroelectronics。这家芯片制造商正在与Arilou Information Security Technologies合作创建一种多层安全配置,其中的硬件和软件可以相互补充以监视数据流并检测通信异常。

STMicro的SPC58 Chorus系列32位汽车微控制器嵌入了硬件安全模块 (HSM),可保护敏感的安全信息(如加密密钥),从而确保防止车身和网关应用中的通信总线受到入侵。HSM提供基于硬件的信任根,以支持安全通信、OTA更新和安全引导。

现在,ST在SPC58 Chorus系列汽车MCU中增加了Arilou的入侵检测和防御系统 (IDPS) 软件,以检测交通异常并形成针对网络攻击的额外保护层(图2)。IDPS是一种软件解决方案,旨在监视控制器区域网络 (CAN) 总线并检测汽车设计中电子控制单元 (ECU) 的通信模式异常。


图 2:IDPS 软件检测交通和其他路边异常的方式。(图片来源:Arilou)



专用安全MCU

以上部分简要介绍了集成安全功能以应对物理和远程攻击的MCU。本部分将说明专用安全MCU,通常称为安全元件,这些元件通过I2C或单线接口链接,充当主MCU的伴芯。

安全元件支持不具备安全功能的MCU,它们基于专门构建的硬件,以提供针对各种威胁的安全框架。这些元件简单、便宜,并且可以减轻主MCU或CPU的安全相关任务(如密钥存储、加密加速等)负载。这就是它们也称为安全协处理器的原因。

在安全元件中,所有安全构件都在一个共同边界内工作,该边界将身份验证密钥与软件隔离,从而防止黑客进行攻击,如电源循环、时钟毛刺和边信道攻击。在工厂中将安全密钥和证书上传到安全元件中还可以防止IP盗用、设计克隆和产品仿冒。

MicrochipATECC608A安全元件(图3)为例,其具有一个用于生成唯一密钥的随机数发生器 (RNG),同时符合美国国家标准与技术研究院 (NIST) 的最新要求。该元件还具有用于相互身份验证的加密加速器,例如AES-128、SHA-256和ECC P-256。


图 3:ATECC608A安全元件框图。(图片来源:Microchip Technology)


最后,用于密钥存储的安全ROM营造了一个黑客和欺骗攻击很难更改的不可改变环境,从而防止篡改和边信道攻击。总而言之,ATECC608A提供的服务范围从安全引导到 OTA 验证,再到用于物联网和云服务身份验证的安全密钥存储和传输。

另一个专门用于安全功能实现的低成本MCU是Microchip的SAM L11(图4),可以保护功耗受限的物联网节点免受故障注入和边信道攻击等威胁的影响。该器件通过模块化GUI抽象出低级安全细节,使开发人员可以选择相关的安全功能,从而简化嵌入式安全功能实现。


图 4:四个使用 SAM L11 安全微控制器的安全用例。(图片来源:Microchip Technology)


SAM L11抽象出的安全功能包括第三方配置服务。该器件还集成了Arm的TrustZone技术,这种技术隔离了微控制器内的安全代码和非安全代码。此外,SAM L11还简化了与Amazon Web Services (AWS) 等云服务连接时物联网节点的安全需求。

NXPLPC5500微控制器面向的是物联网边缘应用,是安全MCU的另一个实例。该器件利用设备唯一的密钥来创建不可改变的硬件信任根。密钥可以由基于SRAM的物理不可克隆功能 (PUF) 在本地生成,允许最终用户与OEM之间进行闭环事务处理。这种操作消除了第三方密钥处理的需求。


专用安全工具

尽管像ATECC608A这样以安全为中心的MCU包含了安全构件以促进受信任的生态系统,但它们并不能解决软件隔离问题。现在,在MCU上运行的软件数量正在持续增长,开发人员需要保护大型代码库免受恶意攻击。

例如,物联网设备都具有用于Wi-Fi、蓝牙、TLS等功能的协议栈,因此即使没有黑客窃取安全密钥,协议栈的损坏也会影响设备的运行。这就要求将任务关键代码与非任务关键代码分开,并将关键软件置于安全的环境中。

ArmTrustZone环境(图5)将任务关键代码和协议栈与复杂的操作系统 (OS) 软件和大型代码库分开,从而防止固件后门进入安全密钥存储区。该环境创建了多个软件安全域,以限制对微控制器内部特定内存、外设和 I/O 组件的访问。


图 5:用于将软件隔离成安全和非安全区域的TrustZone技术基本框架。(图片来源:Arm)


上述所有三种安全微控制器ATECC608A、SAM L11和LPC5500(图6)都采用了TrustZone技术,可以将安全代码和非安全代码进行隔离。此外,ATECC608A安全元件还可与任何支持TrustZone的微控制器一起使用。


图 6:LPC5500微控制器中的 TrustZone技术与Arm Cortex M-33处理器捆绑在一起,如图左上方所示。(图片来源:NXP)


在这里,还值得一提的是,安全MCU与TrustZone技术是相辅相成的,在某种意义上说TrustZone需要硬件保护,而像ATECC608A和SAM L11这样的安全MCU则在物联网设计环境中促成了这一点。另一方面,TrustZone则有助于在以MCU为中心的嵌入式设计中构建紧凑的软件环境。


总结

通过对安全MCU进行剖析,我们可了解到它们如何在设计阶段简化嵌入式安全功能实现,以及如何绕过安全技术专业知识的陡峭学习曲线。这些专用MCU还可降低成本开销和功耗,对于高度受限的物联网设计,这是两个主要考虑因素。

当物联网设备的推出速度超过了安全部署这些互连设计的速度时,安全MCU可提供一条应对多方面网络威胁的可行途径。它们提供了一个简化的解决方案,配备安全设计生态系统,促进了点击式开发环境的形成。


———————————————————–

如有任何问题,欢迎联系得捷电子Digi-Key客服团队。

中国(人民币)客服
- 400-920-1199
- service.sh@digikey.com
- QQ在线实时咨询 |QQ号:4009201199


中国(美金)/ 香港客服
- 400-882-4440
- 8523104-0500
- china.support@digikey.com

头像
得捷电子

评论已关闭。

Copyright©DigiKey Electronics