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

    文章

    17135

    浏览量

    351033
  • 物联网
    +关注

    关注

    2909

    文章

    44578

    浏览量

    372921
  • DICE
    +关注

    关注

    0

    文章

    4

    浏览量

    6149
收藏 人收藏

    评论

    相关推荐

    在电气安装中通过负载箱实现最大效率和安全性

    在电气安装中,负载箱是一种常用的设备,主要用于模拟实际的电力负载,以便进行各种电气设备的测试和调试。通过负载箱,可以实现最大效率和安全性,从而提高电气设备的运行性能和使用寿命。 负载箱
    发表于 11-20 15:24

    aes技术在联网中的应用前景

    问题也日益凸显。高级加密标准(AES)作为一种广泛使用的对称加密算法,因其高效安全性,在联网中扮演着越来越重要的角色。 1.
    的头像 发表于 11-14 15:15 365次阅读

    蓝牙AES+RNG如何保障联网信息安全

    安全性。在竞争应答机制中,随机数生成器也发挥着关键作用。它确保了在多个设备竞争同一资源时,能够依据公平且随机的原则分配访问权,有效避免通信冲突与拥塞现象的发生。同时,随机数生成器还能有效防御重放攻击。通过
    发表于 11-08 15:38

    socket编程的安全性考虑

    之一,它提供了对数据的加密、认证以及完整保护。通过使用TLS/SSL,可以确保在传输过程中数据不被窃取或篡改。 选择合适的加密算法 :确保所使用的加密算法是强大且经过广泛验证的,如AES(高级加密
    的头像 发表于 11-01 16:46 235次阅读

    如何提高联网设备的互联

    联网(IoT)正在改变我们的生活方式,从智能家居到工业自动化,设备间的互联是实现这些变革的基础。然而,不同制造商和不同技术之间的兼容性问题、安全
    的头像 发表于 10-29 11:35 404次阅读

    联网设备标准与规范

    的兼容安全性和互操作。 1. 联网设备标准
    的头像 发表于 10-29 11:34 563次阅读

    如何实现联网安全

    凸显。 1. 设备安全:从源头开始 联网设备安全性应该从设计阶段就开始考虑。制造商需要确保
    的头像 发表于 10-29 10:24 333次阅读

    利用JTAGLOCK特性增强设备安全性

    电子发烧友网站提供《利用JTAGLOCK特性增强设备安全性.pdf》资料免费下载
    发表于 09-14 10:06 3次下载
    利用JTAGLOCK特性增强<b class='flag-5'>设备</b><b class='flag-5'>安全性</b>

    基于联网设备管理

    联网设备管理的重要日益凸显,设备数量激增带来数据泄露风险。加强设备
    的头像 发表于 09-10 11:04 637次阅读
    基于<b class='flag-5'>物</b><b class='flag-5'>联网</b>的<b class='flag-5'>设备</b>管理

    芯科科技助力“联网设备安全规范1.0”发布

    标志。这一重要举措不仅标志着联网网络安全标准化和认证机制的一大步进展,更为广大制造商提供了一种简便、高效的一站式解决方案,帮助他们顺利通过设备
    的头像 发表于 03-22 13:51 532次阅读

    CSA推出联网设备安全规范,促进智能家居安全发展

    CSA于近期发布联网设备安全规范,这是一个指导安全指标及认证体系,旨在为消费者
    的头像 发表于 03-19 14:14 547次阅读

    如何解决联网应用的网络安全性议题?

    随着联网应用的普及,联网设备已经逐渐出现在我们的日常生活之中,但这些产品也成为了恶意份子攻击的目标,如何确保
    的头像 发表于 02-21 09:42 868次阅读
    如何解决<b class='flag-5'>物</b><b class='flag-5'>联网</b>应用的网络<b class='flag-5'>安全性</b>议题?

    如何根据 ISA/IEC 安全标准确保工业联网设计的安全

    成为黑客的主要攻击目标。因此,工业设备设计者必须按照行业标准实施其安全解决方案。工业设备也必须通过最新技术不断地升级安全解决方案,以保护其
    的头像 发表于 02-13 17:09 1530次阅读
    如何根据 ISA/IEC <b class='flag-5'>安全</b><b class='flag-5'>标准</b>确保工业<b class='flag-5'>物</b><b class='flag-5'>联网</b>设计的<b class='flag-5'>安全</b>

    电池安全性检测设备——用于检测电池安全性能的检测仪器设备

    电池安全检测设备清单,根据GB31241-2022标准,应包括以下设备用于检测电池的安全性能:   1、电池电
    的头像 发表于 01-26 16:21 2753次阅读
    电池<b class='flag-5'>安全性</b>检测<b class='flag-5'>设备</b>——用于检测电池<b class='flag-5'>安全性</b>能的检测仪器<b class='flag-5'>设备</b>

    DC电源模块的安全性能评估及认证标准

    IEC 60950-1(信息技术设备安全性通用要求)、IEC 62368-1(音视频和信息技术设备安全性通用要求)等。 2. 电气安全:DC
    的头像 发表于 01-08 16:35 812次阅读
    DC电源模块的<b class='flag-5'>安全性</b>能评估及认证<b class='flag-5'>标准</b>