跳至主要内容

如何轻松保护医疗可穿戴设备 - 第2部分

Georgios Selimis,高级安全工程师|

在本篇关于安全医疗可穿戴设备的博客系列的第1部分中,我们确定了问题场景和提高安全性的动机。 在本文的最后一部分中,我们将介绍使用SRAM PUF技术确保医疗可穿戴设备安全的步骤。

使用单个IP的整体设备安全性配方 - 内在ID的BroadKey

让我们看看Intrinsic ID的SRAM PUF软件实现BroadKey如何实现医疗可穿戴设备的强大安全性。 BroadKey的一个重要竞争优势是它是一种实现基于硬件的软件方法 信任的根源 (腐烂)。 因此,任何流行的现有微控制器都可以容纳它,而无需设计,采购或等待新芯片。

BroadKey是一个软件库,它使用每个芯片的硅片中的微小变化来提取“硅指纹” 从内部创建不可克隆的身份。 这种不可克隆的身份包括密钥,公钥和证书。 秘密密钥源自启动模式中的固有随机性 SRAM 在芯片里面。 密钥永远不会存储,但会在需要时动态生成。 这使得RoT高度安全,无需更改硬件的成本。 除密钥生成和安全存储外,BroadKey还提供完整的非对称(PKI)加密库。 这允许生成密钥对,创建和验证签名以及密钥协商功能。

设备安全:安全启动支持和反向工程保护

设备安全性的第一步也是非常重要的一步是支持设备软件的安全启动。 安全启动背后的想法是消除软件非法更改的风险。 开发人员将使用经过批准的密钥对原始软件映像进行签名,并仅在设备上进行签名验证后执行。 如果未经授权修改软件(例如插入恶意软件),则启动过程将“中断”。为了支持安全启动,我们将数字签名应用于软件映像。 数字签名的主要优点是它们提供数据完整性以证明代码未被修改,以及源身份验证以识别谁在签名时控制代码。 请注意,安全引导机制是引导加载程序的一部分,引导加载程序位于不可修改的设备存储中,例如ROM或写保护闪存。

BroadKey必须在系统安全引导序列期间初始化,并且必须提供专用的1KB SRAM。 因此,BroadKey与安全引导加载程序集成,从引导过程开始提供设备唯一的强大安全性。

如何轻松保护医疗可穿戴设备| 图3

图3: 反逆向工程。 固件IP使用SRAM PUF派生的加密密钥加密,该加密密钥锁定到设备的硬件实例。

反克隆| 图4

图4: 防克隆。 当通过SRAM PUF连接到设备的固件IP被​​复制到其他设备实例时,这些恶意设备无法解锁IP并使用它,因为它们具有不同的硬件指纹。

在INSTET项目中,我们扩展了BroadKey产品的作用,并引入了签名验证功能。 BroadKey验证应用程序映像的数据完整性,并验证应用程序映像的签名者。 此BroadKey支持的安全启动流程的可能扩展是使用BroadKey派生的设备唯一密钥在同一进程中加密/解密固件,以提供对有价值的知识产权的最终保护,防止逆向工程和克隆在图3和图4中。

设备安全:密钥管理和安全密钥存储

除密钥生成外,BroadKey还提供基于设备唯一密钥对外部密钥(例如应用程序密钥或用户密钥)进行身份验证和加密或打包的功能(图5和图6)。 这允许包装的密钥存储在低成本的用户空间内存分配中,而不是存储在受保护的内存中,或者更糟糕的是,存储在纯文本中的密钥。

受根密钥保护的数据| 图5

图5: 没有未加密的秘密存储在芯片上。 秘密数据和秘密(用户)密钥使用未存储的根密钥进行保护/包装。

SRAM PUF的根密钥

图6: 根密钥在需要时从SRAM PUF生成。 通过使用内在ID IP,设备上的SRAM PUF变为设备唯一的PUF根密钥。 从该PUF根密钥,可以创建其他密钥,例如AES加密密钥。 当需要打开机密时,从SRAM PUF和内部ID IP重新生成解包密钥。

由于BroadKey旨在根据不同的密钥类型,来源和目的在不同密钥之间提供强大的加密上下文分离,因此不存在滥用的风险。 BroadKey将仅允许具有适当权限和使用标识的密钥由其用于的功能使用。

端到端安全:数据保护和数据认证机制

在用于大规模设备连接的最常见的物联网框架中,默认情况下信任中间站(例如现场集线器和网关或云服务提供商),因此可以访问边缘设备的潜在敏感数据。 为了降低安全范围,终端节点和使用应用程序之间的端到端安全性是首选方案。 在这种情况下,中间节点被信任以维护端点设备和设备所有者之间的通信信道,但BroadKey的加密功能提供加密方法及其所需的密钥来保护信道上的数据,这样只有端点点设备和设备所有者/消费应用程序可以访问此数据并确保其真实性。

为了实现完整的端到端安全性,我们在现有连接基础架构之上应用应用程序数据安全性。 更具体地,我们使用SRAM PUF派生的私钥来签署应用数据。 通过以应用程序的形式与应用程序共享相应的公钥,应用程序能够验证数据的完整性并证明数据确实来自医疗可穿戴设备。

高级设备验证方法

证书用于在与其他本地设备和云中的服务器通信时证明身份。 证书是使用秘密私钥签名并使用已知公钥验证的身份和授权声明。 与基于共享机密的密码或其他身份验证机制不同,证书不能被盗或伪造。

我们在PKI设置中采用了基于证书的身份验证。 从不可克隆的SRAM PUF指纹导出的设备唯一密钥是以公钥证书形式建立设备身份的理想基础。 BroadKey具有适当的功能,可以派生公钥 - 私钥对,并结合方便和可选的配置工具,生成健壮的设备证书。 这些证书构成了网络或物联网环境中强设备认证的基础,例如基于具有客户端认证的TLS。 此外,BroadKey还支持在身份验证过程中通信协议使用的安全和高性能加密功能。

总之,当今的物联网设备强烈要求设计安全性,尤其是医疗可穿戴设备。 正如我们所看到的,基于SRAM PUF具有强大的安全性基础,不需要复杂也不昂贵。 但是不要担心,如果您的设备已经部署了不太理想的安全锚,BroadKey还可以通过建立基于硬件的信任根的追溯“棕地”来修复此问题。

Georgios Selimis | 医疗可穿戴设备Georgios Selimis是Intrinsic ID的高级安全工程师,从事嵌入式安全项目,并担任一系列研发项目的技术负责人。 他的专长包括应用加密,PKI,嵌入式系统安全和物联网安全连接。 之前的经验包括在埃因霍温的Imec / Holst研发中心担任研发工程师,从事物联网项目,包括安全连接,PUF和数字信号处理的轻量级实施。 他曾在希腊帕特雷大学学习电子与计算机工程,后来在同一所大学获得博士学位。

发表评论

您的电子邮件地址将不会被发表。 必填字段标 *

回到顶部