嵌入式设计升华:物联网硬件安全如何实现可靠加密?

2019年08月23日 作者:Teardown

在嵌入式设计中,安全性一直处于“二等公民”的地位,这主要是因时间和成本因素而造成。此外也有其他因素,例如嵌入式系统安全性正在成为复杂性的同义词。还有一个原因是,人们缺乏对于安全性的重要性以及如何高效实现安全性的认识。

由此带来的后果是:当工程师们在到处安装软件补丁时,人们才后知后觉地想起安全性设计。然而,由于超连接嵌入式物联网 (IoT) 节点的出现,这种情况正在改变。这些节点要求采用高度安全的设计,以防御连接的温控器、冰箱、CCTV 和 HVAC 系统中的漏洞。

不过,在这个技术转折点,需要指出的是,物联网是一个高度多样化的设计领域,因而没有一个万能的安全解决方案。即使在安全威胁方面也存在物理漏洞,如篡改企图、设计克隆、IP 盗用和产品仿冒等。在网络攻击方面,则有恶意软件注入、分布式拒绝服务 (DDoS) 攻击和侧信道攻击。

然而,与可负担大量安全性投入的服务器和网关设计不同,物联网节点(如连接的温控器)需要一种更简单的安全机制,以期在成本和功耗限制范围内,实现物理和通信漏洞的防御。

为了提供针对物理和远程攻击的高性价比防护,Microchip Technology 的 SAM L11 微控制器为低功耗物联网节点提供了简单的安全实施方案。该处理器的时钟频率为 32 MHz,采用的内存配置为最大 64 KB 闪存和 16 KB SRAM。板载 picoPower 技术可确保在活动和休眠模式下都能实现低能耗。

在密钥配置方面,SAM L11 允许您使用来自其他软件公司的第三方服务,例如 Trustonic、Secure Thingz 和 Segger Microcontroller Systems 等公司。这样,通过使用模块化 GUI 界面提取 MCU 安全特性的低级别细节,将大大简化相关工作。

您可以只选择与您的应用相关的安全特性。不过,SAM L11 也允许您开发自己的配置软件,并使用代码示例和产品演示来实现该软件。

此外,SAM L11 将芯片级安全性与 Arm 的 TrustZone for Armv8-M 相结合,可将安全固件与非安全关键型软件代码隔离开来。例如,TrustZone 环境可以保护温控器中的通信协议栈免受恶意攻击,以防黑客通过恶意攻击控制智能家居。

安全元件与硬件安全模块 (HSM) 解决方案

如果您正在为自己的物联网设计寻找更稳健的安全框架,即能够在整个物联网应用生态系统中发现薄弱环节的安全框架,该怎么做?

在这里值得一提的是,嵌入式系统中基于硬件的安全性通常意指集成了硬件安全模块 (HSM) 的芯片,其中 HSM 充当独立的“保安”来监控数据交换。这实际上是芯片内的独立子系统,用于运行高级安全算法来防止遭受恶意攻击。

但是,尽管基于 HSM 的方法可将主 CPU 从安全相关任务中解放出来,但是这种方法可能既昂贵又繁琐,需要使用复杂的数据库来存储和分发安全密钥。

确实,批量生产的大型公司可以更容易负担得起基于 HSM 的安全解决方案。但是,更小规模的物联网设计又该怎么办?这类设计也需要有稳健的安全解决方案,以防御针对 MCU 中数字资产的黑客和欺骗攻击。这时安全元件就派上了用场。

安全元件是一种昂贵的微控制器,用于通过 I2C 或单线接口与主 MCU 或 MPU 通信。该元件通过执行端到端身份验证来保护连接的设备。

例如,Microchip 开发的 ATECC608A 安全元件可执行三项基本任务:生成安全密钥、提高加密速度以执行相互身份验证,以及将密钥存储在安全内存空间中。换句话说,该元件为私钥创建了安全边界,并与其他软件组件隔离开来。这进而又会阻止黑客控制物联网设备设计中的电源和时钟信号,避免他们利用这些信息创建后门通道,发起侧信道攻击。

安全元件在物联网设计中日益受到青睐。Google 和 Amazon Web Services (AWS) 等云服务提供商均支持使用 ATECC608A,将物联网节点连接到云。TrustZone 技术也通过在物联网设计框架内提供固件保护来支持 ATECC608A。这些都是相当大的支持!

该安全元件芯片还配备了升级的随机数发生器 (RNG),以遵守美国国家标准技术局 (NIST) 在 SP800-90A/B/C 比特生成标准中规定的新要求。

总结

物联网设计中围绕连接的漏洞将安全问题推到了前沿。尽管目前连接的物联网设备数量仍大于安全设计实施数量,但随着致力于简化密钥配置的低成本安全芯片的推出,可能很快就会改变这种不平衡现状。

同样明显的趋势是,硬件与软件解决方案正在结合起来,共同保护物联网设备免受越来越多的攻击载体的攻击。硬件与软件领域之间的这种联合,也有助于避免实施稳健安全解决方案所需的陡峭学习曲线。

相关文章

tracer