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

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

3天内不再提示

使用STM32Trust探索嵌入式系统安全的所有方面

星星科技指导员 来源:意法半导体 作者:意法半导体 2022-05-11 09:45 次阅读

是否有可能将嵌入式系统的安全性从负担转变为祝福?这是 ST 试图通过STM32Trust回答的问题,该计划专注于我们为提高设备安全性而带来的所有软件和硬件解决方案。信息安全或信息安全可能是一个负担,因为它是一个如此广阔的领域。因此,帮助工程师意味着让 ST 工具更易于使用。事实上,利用系统提供的所有功能并不总是显而易见的。此外,获得严格认证的需求可能会增加成本并延迟产品发布。因此,开发人员需要解决方案来更快地实施重要保护。

使用 STM32Trust 探索嵌入式系统安全的所有方面

它是如何开始的以及进展如何

STM32Trust 是一个随着 ST 发布更多软件工具和产品而不断发展的程序。该计划于 2019 年开始,还帮助教育开发人员确保他们的知识是最新的。因此,ST 举办培训、发表论文、撰写文档并与合作伙伴合作以促进获得认证。换句话说,在一篇博文中详尽地解释 STM32Trust 的所有方面是徒劳的,这就是为什么ST 博客决定专注于一些核心解决方案,以帮助读者更好地了解他们如何在系统中实施安全性。

STM32Trust 的核心解决方案之一是X-CUBE-SBSFU(安全启动和安全固件更新)。简而言之,软件扩展包使开发人员能够实现安全启动并提供安全的固件更新系统。它是 STM32Trust 的重要支柱之一,同时也是我们的安全固件安装 (SFI)流程。后者可以将加密固件上传到微控制器中,以防止 IP 盗窃等。虽然 SBSFU 和 SFI 在 ST 推出 STM32Trust 时占据主导地位,但我们在产品组合中添加了新的解决方案。例如,可信固件-M (TF-M)有助于在我们的 STM32L5 微控制器上实现安全环境。同样,可信固件-A (TF-A)适用于 Cortex-A 设备,例如STM32MP1。因此,让我们深入研究这些产品,看看它们为 STM32Trust 带来了什么。

STM32Trust 和 X-CUBE-SBSFU:打造安全启动和安全固件更新

从头到尾保护用户

Secure Boot 是一个在启动或重置时运行的程序,通过检查文件大小或签名以确定是否有任何更改来验证引导文件的完整性。因此,它可以保护系统免受在引导序列期间想要破坏固件的攻击。另一种保护类型是安全固件更新。这种方法可以保护用户免受远程修改现有系统的攻击。实际上,当服务器发送部分或完整的加密固件映像更新时,嵌入式系统会通过 UART 将其传输到 MCU,系统会检查其真实性,然后在安装之前对其进行解密。

更容易实现

像 X-CUBE-SBSFU 这样的包允许开发人员更轻松地实现这些功能。例如,在我们的 STM32L4 上运行的 X-CUBE-SBSFU 代码获得了PSA 1 级认证。因此,工程师可以使用它更快地获得相同的认证。此外,ST 继续提供其源代码。因此,开发人员可以从我们的实施中学习并优化他们的应用程序。例如,我们的库可以生成大约 60 KB 的二进制文件,这对于一些小型嵌入式系统来说可能有点大。但是,优化操作使开发人员能够修剪代码并仅使用相关功能以适合他们的 MCU。

X-CUBE-SBSFU 还可以用于其他用途,因为它可以帮助团队利用各种 STM32Trust 工具。例如,它使用我们的X-CUBE-CRYPTOLIB库来优化加密操作。ST 最近对软件包进行了大修,以提供模块化方法和经过认证的代码。此外,X-CUBE-CRYPTOLIB 现在根据 MCU 分离库以更直观。X-CUBE-SBSFU 还增加了对STSAFE-A110的支持,STSAFE-A110是 STEVAL-STWINKT1B 上的防篡改安全元件,用于存储各种密钥和证书。

STM32Trust 和 TF-M 或 TF-A:创建可信环境

通过加密、验证和隔离实现安全

TF-M 和 TF-A 都是可信执行环境 (TEE) 的参考实现。前者适用于特定的 Cortex-M 内核,而后者适用于 Cortex-A 设备。顾名思义,关键是通过隔离和保护系统的各个方面来建立信任。例如,TF-M 和 TF-A 利用安全存储和加密操作来保护启动和更新过程。因此,它们提供了一种方法来保证安全启动机制和固件的完整性。它们还将运行时沙箱化,以防止问题影响整个系统,并启用密钥存储、证明和安全加密等服务。

在 Cortex-M 和 Cortex-A 设备上建立信任

希望在兼容的 STM32 微控制器上使用 TF-M 的开发人员将在其软件包中找到他们需要的东西。例如,在 STM32L5 上实现 TF-M 从 STM32CubeL5开始。该软件包具有安全启动、安全存储、安全隔离等重要功能的参考实现。因此,团队可以创建一个类似于 SFU 但具有标准隔离方案的机制。随着时间的推移,我们还将继续改进我们的参考实现,以利用更多功能。至于 TF-A,由于 MPU 的情况明显不同,ST 创建了一个Wiki 来指导工程师。它引导用户了解主要概念和软件工具,以快速实施参考环境。此外,开发人员还可以使用 OP-TEE,这是一种开放式可移植可信执行环境,可作为非安全 Linux 内核的配套解决方案。

STM32Trust 和 SFI:带来安全的固件安装

保护知识产权和防止盗窃

安全固件安装是一种保护客户二进制文件免受恶意活动影响的机制。很多时候,公司必须依靠第三方来组装他们的最终产品。问题是它会引起很大的焦虑和不确定性。装配线上的流氓员工或黑客可能会窃取固件,从而导致灾难性后果。安全固件安装通过在将固件运送给 OEM 之前对其进行加密来防止它。由于解密发生在代码在 MCU 内部时,IP 仍然是安全的,任何被盗的固件都是无用的。此外,公司甚至可以使用这种技术来跟踪固件安装的数量,以监控任何产品盗窃。

一张智能卡和 STM32CubeProgrammer

SFI 主要依赖于两个工具。开发人员使用STM32CubeProgrammer软件中提供的 Trusted Package Creator 实用程序加密他们的固件,并将他们的私钥和证书放置在采用智能卡形式的安全硬件模块中。

然后,团队将加密的二进制和智能卡运送到 EMS。装配线通过 UART、I《sup》2《/sup》C、USB 或 JTAG 通过 STM32CubeProgrammer 上传固件和密钥。然后,智能卡通过验证 MCU 并获取其唯一密钥来验证所有内容。该卡还发送一个私钥来解密二进制文件并为每个产品生成一个单独的许可证。该许可证使上传系统能够跟踪精确的安装次数。最后,ST 最近发布了新版本的智能卡,允许公司定义他们的目标设备。以前,MCU的型号是预先设置好的。使用新版本,公司可以加载它以享受更灵活的系统。

审核编辑:郭婷

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

    关注

    48

    文章

    6784

    浏览量

    147560
  • STM32
    +关注

    关注

    2239

    文章

    10663

    浏览量

    348464
收藏 人收藏

    评论

    相关推荐

    嵌入式热门发展方向有哪些?

    热门发展方向,包括但不限于: 1.物联网: 随着物联网的快速发展,嵌入式系统在物联网领域的应用也越来越广泛。嵌入式系统可以用于物联网设备的控制、监测和数据处理等
    发表于 04-11 14:17

    使用STM32Trust构建安全的商业产品

    来自设备的网络连接及其传输的数据。这些努力与公司保护存储在嵌入式系统中的敏感IP的愿望相辅相成,这样他们的专有工作就无法被克隆或更改。此外,集成这些额外的安全措施符合公司的偏好,即系统
    的头像 发表于 04-02 18:05 1305次阅读

    嵌入式会越来越卷吗?

    以及大数据处理等技术之间的整合与互动可能会越来越密切。这种融合或许会带来更强大的系统和更广泛的应用,但也会带来新的挑战,如数据安全性和系统稳定性等问题。 嵌入式
    发表于 03-18 16:41

    嵌入式人工智能的就业方向有哪些?

    操作系统使用及C高级编程 数据结构与算法 二:嵌入式Linux应用工程师,Linux网络开发工程师 文件IO 并发程序设计 项目实战:基于Linux的Flappybird游戏开发 网络编程开发及实战上
    发表于 02-26 10:17

    嵌入式系统发展前景?

    应用领域。随着汽车电子化和智能化程度的不断提高,嵌入式系统将在汽车控制、安全系统、自动驾驶等方面发挥更为重要的作用。 工智能和机器学习技术的发展为
    发表于 02-22 14:09

    如何使用 DSC 和 MCU 确保嵌入式系统安全

    作者:Stephen Evanczuk 投稿人:DigiKey 北美编辑 随着向物联网 (IoT) 的迁移,安全性已不再是嵌入式应用中的选配功能,已发展成为确保系统完整性所需的必备能力。为了满足日益
    的头像 发表于 02-13 14:38 241次阅读
    如何使用 DSC 和 MCU 确保<b class='flag-5'>嵌入式</b><b class='flag-5'>系统安全</b>

    到底要不要放弃嵌入式这条路?

    技术一直都是计算机科学领域中的重要分支,从智能手机到汽车控制系统,它贯穿了各个工业和消费电子设备领域。尽管当下有新兴的技术涌现,但嵌入式仍有稳定的市场需求,这也就意味着这个领域仍然有工作机会和发展空间
    发表于 12-07 10:43

    嵌入式硬件和软件哪个好?

    嵌入式硬件和软件哪个好? 嵌入式软硬件工程师哪个更有前途呢?一起来看看。 嵌入式是分为软硬件工程师的,首先我们先来看看嵌入式硬件工程师吧! 嵌入式
    发表于 12-05 15:17

    未来嵌入式在哪些方向会更火?

    嵌入式技术在智慧城市中的应用也是有非常重要的作用,因为智慧城市中需要大量的传感器、控制器和其他设备来实现对城市环境、交通、公共安全等方向的监测和管理。比如:利用嵌入式系统来控制红绿灯
    发表于 10-27 10:23

    TPM是否可以作为嵌入式信息安全系统的主控?

    目前想开发一个嵌入式信息安全系统,实现建立TLS连接以及密钥和证书的安全存储以及日志的安全存储,类似于HSM。目前硬件上HSM集成在MCU中,成本太高且资源过于浪费,因此考虑使用TPM
    发表于 10-23 09:17

    STM32嵌入式操作系统介绍

    嵌入式操作系统的特点• 嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统
    发表于 09-28 06:59

    监控技术如何增强嵌入式系统安全

    为确保嵌入式系统安全性所采用的基本安全措施之一是时间和逻辑序列监控。在本文中,我们将了解监控技术如何增强嵌入式
    的头像 发表于 09-15 11:06 294次阅读
    监控技术如何增强<b class='flag-5'>嵌入式</b><b class='flag-5'>系统</b>的<b class='flag-5'>安全</b>

    STM32嵌入式操作系统介绍

    嵌入式操作系统的特点• 嵌入式操作系统是一种用途广泛的系统软件,通常包括与硬件相关的底层驱动软件、系统
    发表于 09-11 07:24

    嵌入式软件开发,测试、找bug技巧

    通常嵌入式系统对可靠性的要求比较高。嵌入式系统安全性的失效可能会导致灾难性的后果,即使是非安全系统
    的头像 发表于 06-28 17:22 475次阅读

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

    产品安全性。PX5 RTOS对ARM TrustZone的支持让嵌入式开发者能够从物理层降低网络安全风险。 PX5的CEO William Lamie表示:“基于MCU的产品如今已是生活中不可缺少的一部分
    发表于 05-18 13:44