×
模拟电子 > 模拟电路设计 > 详情

基于MAXREFDES155的物联网加密电路设计

发布时间:2020-09-09 发布时间:
|

围绕物联网 (IoT) 构建的设计正在变得日益复杂,需要经过改进的解决方案来确保系统安全性,并能检测日益猖獗的本地和远程攻击。但是,安全功能在资源受限的物联网设备上的采用一直进展缓慢,仅局限于零星开发的软件补丁或围绕复杂加密算法构建的非常先进和昂贵的芯片。开发人员需要更加全面和易用的解决方案,帮助他们更快地采用和实现安全功能。

有多种技术已相继问世并不断演进,例如基于静态随机存取存储器 (SRAM) 的物理不可克隆功能 (PUF) 和 Arm 的 TrustZone,以满足嵌入式开发人员和物联网开发人员的安全需求。本文将介绍 PUF 和 TrustZone,并探讨如何利用来自 NXP Semiconductors、Microchip Technology 和 Maxim Integrated 的解决方案来应用这些技术。

SRAM PUF 技术

SRAM PUF 作为一种取代传统加密的轻型身份验证技术,正在逐渐集成到以安全为中心的芯片(例如 NXP 的 LPC55S6x 系列)中,为其添加信任根和配置功能(图 1)。

PUF 技术与非易失性存储器中的传统密钥存储有所不同,在传统密钥存储中,OEM 通过传统的基于保险丝的方法或通过一次性可编程 (OTP) 存储器技术来注入安全密钥。相反,PUF 技术提取 SRAM 位单元固有的自然随机电变化,并将此唯一“指纹”转换为私密的加密密钥,为安全子系统奠定基础。任何情况下,这种安全的高质量密钥每次都能重构为相同的加密密钥。这种方法具备诸多优势:

  • 在可能不安全的环境中,无需处理第三方密钥
  • 无需在芯片生产时加载密钥存储和配置系统
  • 可在供应链的后续阶段安装,甚至可在已部署的设备上进行改造
  • 除非以物理方式接入单独的 SRAM 芯片,否则要想破译这些安全密钥几乎是痴人梦想
  • 密钥仅在需要时生成,而不会持续存储在系统上
  • 由于密钥不是永久存储的,当设备没有激活时,密钥便不存在,这使得攻击者很难尝试窃取存储器内容

Arm TrustZone

Arm Cortex®-M23 和 Cortex-M33 处理平台提供的 TrustZone 技术针对超低功耗嵌入式应用进行了优化,它将安全关键例程,例如引导代码、安全配置、安全密钥、加密库和固件更新,存储在受保护的环境中(图 2)。例如,在支持 TrustZone 的微控制器中,任务关键代码在与大型代码堆栈隔离之后经过充分测试,防止受到开发人员产生的错误的影响。

关于机密数据和代码,TrustZone 通过隔离软件设计的关键部分,并在针对用户级软件实施了读写保护的环境中的硬件监控器上运行软件,来确保这些数据和代码的安全。

利用 TrustZone,开发人员可将存储器划分为安全区域和非安全区域,这样,在未经过身份验证的情况下,甚至可以禁止试图对安全代码和数据进行调试。另外,处于非安全状态的 CPU 只能访问非安全存储器的数据,因而只能从非安全程序存储器执行程序。

重要的是,TrustZone 在提供这些安全功能的同时,仍然对安全域和非安全域保持了低中断延迟。此外,它不会带来代码开销和周期开销,也不存在基于虚拟化的解决方案的复杂性。

PUF 和 TrustZone 的物理实现

NXP 在其 LPC55Sxx 微控制器中集成了来自 PUF 发明者 Intrinsic ID 的硬编码 IP 和支持软件库,以实现 PUF(图 3)。作为 Intrinsic ID 的嵌入式硬件 IP,QuiddiKey 可处理密钥生成、密钥存储、设备身份验证、密钥配置和芯片资产管理。

NXP 还在其 LPC55Sxx 微控制器中采用了 TrustZone。TrustZone 采用以 CPU 为中心的方法来保护物联网安全,这种方法会在嵌入式设计的安全部分和非安全部分之间建立隔离。

例如,在 Microchip Technology 的 SAM L10/11 微控制器上实现的 TrustZone 提供了系统范围的保护方案,其中的物联网设计可以划分为安全状态和非安全状态。但是,安全代码和非安全代码都在一个 CPU 上运行,以高效地实现嵌入式系统。

随着新型微控制器中的软件数量快速增长,并且使用协议堆栈来支持 Wi-Fi、蓝牙、传输层安全 (TLS) 等连接技术,这种以 CPU 为中心的方法变得非常重要。这种不断增长的代码库大大增加了物联网设备遭受恶意攻击的机会。例如,在智能家居和楼宇中,遭到破坏的协议堆栈可能让互连的门锁、车库开门器和安防摄像头易于受到攻击。

但是,如果物联网开发人员将任务关键代码迁移到受 TrustZone 保护的环境中,那么即便第三方协议堆栈中出现错误,也不会对设备功能造成严重影响。

板级安全

物联网安全范式中的另一个清晰模式与参考设计的可用性相关,这些参考设计能够克服与安全和通信协议相关的复杂性,从而简化边缘至边缘和云至边缘的通信。我们以来自 Maxim Integrated 的 MAXREFDES155# DeepCover® 参考设计和 Microchip 的 AC164164 PIC®-IoT WG 开发板为例。

在 MAXREFDES155# 安全设计中,Arm mbed™ 扩展板使用一根 300 毫米 (mm) 线缆连接到传感器端点。传感器端点包括 DS28C36 DeepCover 安全认证器、红外 (IR) 热传感器,以及 IR 传感器的瞄准激光(图 4)。

DS28C36 安全芯片提供两个经过验证的通用输入/输出 (GPIO) 引脚,还有可选的安全状态控制和电平检测。这让物联网开发人员能够利用经过验证的电可擦除可编程只读存储器 (EEPROM) 设置和 17 位仅递减计数器,使用来监控和限制外设的。DS28C36 能够支持的应用包括双向身份验证、加密密钥等系统数据的安全存储、任务关键数据的验证、安全引导,以及最终产品使用控制。

在 MAXREFDES155# 参考设计中,mbed 扩展板包括 DeepCover 安全协处理器、Wi-Fi 通信、液晶显示屏 (LCD)、按钮控件、状态发光二极管 (LED)。该参考设计使用 MAX32600MBED# mbed 开发板进行即时测试,扩展板的 Wi-Fi 电路便于与 Web 服务器进行通信。

在 MAXREFDES155# 设计中,mbed 扩展板上的安全协处理器充当 DS28C36 认证器芯片的配套芯片。它有助于满足与基于哈希的信息验证码 (HMAC) 和椭圆曲线数字签名算法 (ECDSA) 计算相关的要求,这些计算都是 DS28C36 安全操作的一部分。

协处理器提供一组核心的加密工具,以帮助物联网设计人员实现加密引擎,并集成联邦信息处理标准/美国国家标准技术局 (FIPS/NIST) 真随机数发生器 (RNG)。安全公钥和私钥的使用方式符合 NIST 定义的标准,其中包括 FIPS 186——支持双向非对称密钥身份验证模式的 ECDSA 签名生成和验证机制。

简化云链路安全

Microchip 的 AC164164 PIC-IoT WG 开发板包括类似的元件,但其重点是简化物联网节点到云平台(例如 Google Cloud)的链路。此开发平台围绕该公司的 PIC 微控制器构建,使用 ATECC608A 协处理器来消除大型软件框架和实时操作系统 (RTOS) 平台存在的安全漏洞。

AC164164 是一个物联网设计平台,其安全元件已经预注册 Google Cloud IoT Core 服务,可随时用于零接触配置,从而确保了边缘到云链路的安全性。除了 ATECC608A 安全协处理器之外,该开发板还采用 PIC24FJ128GA705 微控制器,用于以更少的代码、更低的功耗处理复杂的应用。

经过全面认证的 IEEE 802.11b/g/n IoT Wi-Fi 控制器将物联网节点连接至 Google Cloud。因此,物联网开发人员无需掌握无线网络协议、安全和硬件兼容性方面的专业知识,便可实现安全的物联网产品设计。

总结

专用安全芯片已经上市,它们在物联网设计中充当主处理器或微控制器的配套芯片,让开发人员无需成为安全专家,便可保护物联网节点及其到端点和云平台的链路的安全性。随着物联网安全要求的提高,PUF 和 TrustZone 等辅助技术的集成进一步提升了这些低功耗、低成本微控制器的安全性能。

在此基础上,参考设计和开发板通过采用多个级别的嵌入式保护,进一步简化了在众多物联网应用中的安全保护。


『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
晶体管的工作状态判断和工作条件