0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

DICE标准如何为物联网设备提供强大的安全性

王雪 来源:ChristineGu 作者:ChristineGu 2022-08-17 16:55 次阅读

物联网问世以来,人们一直担心安全漏洞。例如,在题为“物联网:互联世界中的隐私和安全”的报告中,联邦贸易委员会指出,“物联网设备可能会带来各种潜在的安全风险,这些风险可能会被利用来伤害消费者:(1)允许未经授权访问和滥用个人信息;(2) 促进对其他系统的攻击;(3) 制造安全风险。” 为了减轻此类安全问题,物联网设备的设计需要具有强大的安全性。

传感器节点等物联网端点通常对成本敏感,并且通常使用资源受限的无线微控制器 (MCU)。换句话说,它们有限的片上内存和安全功能可能会阻止在桌面或服务器环境中使用某些安全标准。为了提供专门针对资源受限设备的安全标准,创建开放标准和规范以在从 IoT 端点到云服务器的设备中实现更安全计算的 Trusted Computing Group 开发了设备身份组合引擎 (DICE) 标准。

在本文中,我将探讨 DICE 标准的目标是什么以及它是如何工作的,包括服务器端需要什么来利用 DICE 的功能。

DICE 标准的核心目标

DICE 标准旨在通过以下方式增强物联网设备的安全性:

保护设备身份。物联网设备通常通过加密密钥进行身份验证。如果攻击者能够发现此密钥的价值,他们就可以轻松冒充物联网设备。DICE 可以创建设备身份,该身份可以很好地防止未经授权的访问。

远程重新配置。如果物联网设备确实因恶意软件或发现私钥而受到威胁,则必须能够远程更新应用程序固件映像和/或重新加密物联网设备。DICE 使 IoT 供应商能够通过向其推送新映像来恢复 IoT 设备,从而自动生成新的传输层安全 (TLS) 客户端证书链。

远程软件证明。为了获得最佳性能和安全性,物联网应用程序必须确认所有连接的物联网设备都在运行正确且最新版本的应用程序固件。DICE 在 TLS 证书中包含固件映像测量值(例如哈希)和版本号等证明信息,使 IoT 服务器能够验证 IoT 设备上运行的映像是否正确。

保护静态数据并不是 DICE 的主要关注点,因为典型的物联网设备(例如湿度或温度传感器)不会处理对黑客特别敏感或有价值的数据。但是,DICE 确实支持包装密钥的概念,它是一种对称密钥,用于加密需要持久保存的重要数据,例如加密密钥或设备配置。

除了其安全目标之外,DICE 标准还旨在最大限度地减少实现其安全性所需的资源。DICE 需要基于硬件的机密和限制未经授权的程序对其进行访问的机制。它使用 X.509 证书中的扩展在 IoT 设备和服务器之间交换身份和证明数据。由于证书已经是物联网设备连接到服务器的标准 TLS 身份验证过程的一部分,因此这种实现的开销很小。为了适应物联网应用的不同性质并为开发人员提供灵活性,DICE 标准并未规定单一的实施方法,而是阐明了一组可以通过多种方式实现的设计原则。

将安全应用于物联网设备的另一个挑战是,了解最先进的安全技术所需的学习曲线非常重要。许多嵌入式开发人员缺乏设计安全系统的经验,如果项目出现延误,可能会导致产品安全目标的妥协。半导体供应商通常会为其特定的无线 MCU 实施 DICE 标准,从而简化在物联网设备设计中使用 DICE 所需的工作。

DICE 的工作原理

为了有效地支持资源受限的设备,DICE 标准避开了对复杂安全硬件的要求。它的主要要求是基于硬件的机密,然后用于逐步启动受信任的计算库。在无线 MCU 应用中,引导过程通常分为三个步骤,如图 1 所示。具有高级操作系统或可信执行环境的更复杂的系统将需要更多的引导步骤。在本文中,我将重点介绍典型无线 MCU 应用所需的启动步骤。

pYYBAGLw_iqATN6mAAC_TJulvJM469.jpg

图 1:启用 DICE 的 MCU 在使用自签名证书时如何启动应用程序:前两个阶段侧重于 DICE 相关功能以最大程度地降低复杂性,而第三阶段则启动主 MCU 应用程序。(图片:德州仪器公司)点击图片查看大图。

第一个引导步骤会生成复合设备标识符 (CDI)。我将在此步骤中执行的软件和硬件称为 DICE 引擎。要生成 CDI,DICE 引擎需要唯一设备密钥 (UDS)。物联网设备制造商可以直接将 UDS 编程到硬件中。或者,DICE 引擎可以使用另一个安全的预编程唯一身份(例如密钥对)来导出它。

UDS 确实有一些额外的安全要求。只有 DICE 引擎可以访问 UDS,并且必须有适当的硬件支持 DICE 引擎才能在将控制权传递给下一个引导步骤之前锁定对 UDS 的访问。

为了导出 CDI,DICE 引擎测量在第二个引导步骤中运行的代码,通常通过单向安全散列,然后使用基于散列的消息身份验证代码 (HMAC) 函数将散列与 UDS 组合。一旦 CDI 计算完成,DICE 引擎就会擦除寄存器、缓存或内存中可能帮助攻击者推断 UDS 的任何数据。此时,DICE 引擎将控制权交给启动过程的第二步。

第二个引导步骤的初始作用是创建设备身份密钥对(称为 DeviceID)及其关联的证书。然后,此引导步骤会创建别名密钥对和关联的证书链。我将在第二个引导步骤中执行的软件称为第 0 层。为了保护 DICE 引擎和第 0 层免受攻击,DICE 标准要求 DICE 实现代码必须驻留在片上 ROM 中或需要签名固件从半导体供应商更新。

第 0 层从 CDI 派生 DeviceID 密钥对。要创建 DeviceID 证书,第 0 层遵循两个路径之一,具体取决于用户的配置。一种方法是创建自签名证书。另一种是创建证书签名请求 (CSR) 并使用适当的证书颁发机构 (CA) 在外部对其进行签名。DICE 标准要求外部签名操作必须在第 0 层之外执行,因为保持第 0 层简单且没有可利用的错误非常重要。

除了创建设备 ID 和证书链外,第 0 层还创建别名密钥对及其关联的证书。为了派生别名密钥对,第 0 层使用单向哈希通过测量第 1 层映像(实际应用程序固件映像)并将 FWID 与 CDI 结合来创建固件标识符 (FWID)。因此,别名密钥对值直接与应用程序固件映像相关。第 0 层使用 DeviceID 证书对 Alias 证书进行签名,从而将它们链接在一起。

DeviceID(及其相关证书)的目的是为设备的生命周期提供身份证明。为了保持 DeviceID 的高度安全,第 0 层会在启动过程的下一步开始之前擦除 DeviceID 私钥的任何痕迹。由于 DeviceID 私钥仅在启动过程中可用,基于 DICE 的物联网设备不需要更复杂的安全机制,例如可信执行环境来在一般应用程序执行期间保护 DeviceID。如果需要更新第 0 层,则 DeviceID 将需要更改,因为它的输入之一是第 0 层的哈希值。但是,第 0 层软件很简单,其目的是永远(或很少)更新它。

别名密钥对及其关联证书的目的是为物联网设备上运行的固件版本提供证明。与 DeviceID 不同,第 0 层将别名密钥对传递到启动过程的下一步——应用程序固件映像。然后,应用程序可以将此密钥对用作其他加密相关操作的基础,例如为数据密封创建新的密钥对。

IoT 设备使用 Alias 证书链与 IoT 服务器进行 TLS 客户端身份验证。由于 Alias 密钥对和证书直接与设备上运行的应用程序固件映像相关联,因此在 IoT 设备上安装新应用程序映像的无线 (OTA) 更新将产生新的 Alias 密钥对和证书. 这是 DICE 的一个非常强大的方面,因为它使物联网供应商能够通过向设备发送自动重新加密的新图像来将受损的物联网设备恢复到安全状态。

如前所述,DICE 使用 TLS 和 X.509 证书与服务器通信。因为几乎每个物联网设备最终都将通过 TLS 连接与物联网服务器进行通信(非 IP 设备将需要网关),这种方法本质上为物联网设备增加了最小的开销。为了协助身份和证明,DICE 为 X.509 证书添加了新的标准扩展,例如对象标识符 (OID) 和包含证明相关数据的附加字段,例如用于生成 FWID 和版本号的哈希函数。OID 使证书能够说明它是用于设备身份还是证明或两者兼而有之。

当物联网设备尝试连接到物联网网络时,除了标准的 TLS 身份验证协议外,物联网服务器还需要执行远程认证。远程证明涉及从证书中提取 FWID 并将其与物联网服务器期望在物联网设备上运行的图像的哈希值进行比较。因为运行在 IoT 服务器上的设备管理系统需要管理每个连接的 IoT 设备的软件更新,它应该已经知道 IoT 设备上正在运行的软件版本,并且可以访问相关的固件映像哈希。

物联网供应商不需要在物联网服务器或其他任何地方维护 UDS 值数据库。这进一步增强了基于 DICE 的物联网应用程序的安全性,因为它消除了通过使用成功渗透物联网供应商的企业信息技术系统的攻击来发现 UDS 值的可能性。

结论

DICE 标准使开发人员能够在低成本物联网设备中实现更有效的安全级别。DICE 可以提供安全、持久的身份和软件证明,使物联网服务器能够验证物联网设备是否运行正确的软件。DICE 还支持安全远程重新配置受感染的物联网设备。

物联网设备开发人员可以轻松采用 DICE 标准,因为它已经在无线 MCU 上预先实现,例如TI SimpleLinkWi-Fi CC323x。TI SimpleLink Wi-Fi CC323x 上的 DICE 实施使物联网设备供应商能够在制造过程中或在现场部署物联网设备时从外部签署 DICE 证书。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16022

    浏览量

    343697
  • 物联网
    +关注

    关注

    2870

    文章

    41659

    浏览量

    358432
  • DICE
    +关注

    关注

    0

    文章

    4

    浏览量

    6133
收藏 人收藏

    评论

    相关推荐

    桂花网蓝牙网关:功能强大、应用广泛的联网连接设备

    的功能及其在不同领域的应用场景。 一、桂花网蓝牙网关的功能特点 蓝牙5.0兼容:桂花网蓝牙网关支持最新的低功耗蓝牙5.0标准提供了更高的传输速度和更低的功耗,为联网
    发表于 12-12 16:06

    MCU在线技术讲座-EFM和EFR: 面向联网开发的通用MCU平台

    开发过程,特别是面向需要连接或非连接产品的通用安全性,以及人工智能和机器学习(AI/ML)架构的应用程序。 复制下方链接即刻注册参加MCU专题技术讲座:https://www.silabs.com
    发表于 11-23 13:45

    求助,为什么说电气隔离安全性比较高?

    为什么说电气隔离安全性比较高?
    发表于 11-02 08:22

    MCU是怎么为联网端点设备提高安全性的?

    MCU 是怎么为联网端点设备提高安全性的?
    发表于 10-17 08:53

    基于飞腾派的边缘联网

    使用高级的编码算法和加密技术,确保编码信息的安全性和保密,防止伪造和盗用。协议转换是边缘联网关的重要功能之一,它可以将不同协议和标准的数
    发表于 09-21 16:50

    STM32微控制器的安全基础知识

    本应用笔记介绍了 STM32 微控制器的安全基础知识。微控制器中的安全性涵盖了几个方面,其中包括固件知识产权保护、设备私有数据保护以及服务执行保证。在
    发表于 09-07 07:36

    国内首创!通过SDK集成PUF,“芯片指纹”打造MCU高安全芯片

    出独一无二的“芯片指纹”,实现了芯片唯一身份标识和安全密钥生成等关键功能。这些特性赋予CM32Sxx系列芯片防克隆、防篡改、抗物理攻击以及侧信道攻击的能力,可为联网场景下的终端设备
    发表于 09-06 09:44

    STM32H5 MCU系列提升性能与信息安全性

    强大的Arm® Cortex®-M33 MCU运行频率高达250 MHz的Arm®Cortex®-M33内核32位MCU满足绝大多数工业应用的需求安全性可扩展,满足各类需求从基本的安全构建模块到经过
    发表于 09-06 06:29

    新唐工业计算机/服务器安全智联升级方案

    关于设备联网,您最在意的是什么? 安全性 系统整合 投资回报 公布答案: 以上皆是。 企业采用联网最在意
    发表于 08-25 08:07

    新唐对应四大联网安全攻击的保护措施

    的防护。 Platform Security Architecture (PSA) 为联网装置定义了安全基础,是 Arm 于 2017 年所提出,主要希望提供一个清晰的框架来保护及整
    发表于 08-21 08:14

    Arm平台安全架构固件框架1.0

    基于行业最佳实践的配方,允许在这两个方面一致地设计安全性 硬件和固件级别。 PSA固件框架规范定义了标准编程环境和固件用于在设备的信任根内实现和访问安全服务的接口。 编程环境和应用程序
    发表于 08-08 07:14

    设计一个片上系统-为安全联网创建一个系统设备

    本指南适用于系统设计人员,可能使用Arm Flexible access。我们假设您希望为安全联网设备开发片上系统(SoC),并且您打算SoC将用于智能咖啡机。然而,该指南可能与任
    发表于 08-02 09:33

    为什么具有PUF的安全微型是强大的物联网黑客防御

    因此,这就是为什么从一开始就将安全性设计到您的产品中很重要的原因,尤其是在您的产品连接互联网且智能的情况下。根据NETSCOUT的威胁情报报告,一旦物联网设备连接到互
    的头像 发表于 06-27 16:27 493次阅读

    联网中台如何保证数据的安全性?#大数据中台 #光点科技

    联网
    光点科技
    发布于 :2023年06月01日 18:08:09

    PX5的ARM TrustZone支持让嵌入式系统变得更加安全

    安全风险。在IoT系统中,PDV提供安全分割帮助开发者根据平台安全架构(PSA)指导方针确立设备的信任根。 针对
    发表于 05-18 13:44