加入星计划,您可以享受以下权益:

  • 创作内容快速变现
  • 行业影响力扩散
  • 作品版权保护
  • 300W+ 专业用户
  • 1.5W+ 优质创作者
  • 5000+ 长期合作伙伴
立即加入
  • 资料介绍
    • Arm® 可信固件‑M (TF‑M)简介
  • 资料预览
  • 相关推荐
申请入驻 产业图谱

Arm® TrustZone® STM32 微控制器的安全启动和安全固件更新解决方案概述

3小时前
181
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

Arm® TrustZone® STM32 微控制器的安全启动和安全固件更新解决方案概述

1,007.57 KB

本应用笔记描述如何在基于 Arm® Cortex®‑M33 处理器的 Arm® TrustZone® STM32 微控制器上获得安全启动和安全固件更新流程解决方案。该应用笔记还提供此解决方案与 X-CUBE-SBSFU 解决方案的顶层比较结果,后者适用于基于 Arm® Cortex®‑M0、Cortex®‑M3、Cortex®‑M4、或 Cortex®‑M7 处理器的非 TrustZone®STM32 微控制器。它还为安全启动和安全固件更新流程解决方案提供顶层集成指南。

对于 Arm® TrustZone® STM32 微控制器,安全启动和安全固件更新流程解决方案在相应的 STM32Cube MCU 包中提供。与 XCUBE-SBSFU STM32Cube 扩展包中提出的解决方案不同,该解决方案基于开源 TF‑M(可信固件面向 Arm® Cortex®‑M)参考实现。

本应用笔记适用于所有 TrustZone® STM32 微控制器(参考表 1)。然而,本文档中将 STM32L5 系列作为示例。

STM32Cube MCU 包中可用的基于 TF‑M 的应用可能会不同,具体取决于 TrustZone®STM32 微控制器。参照公认的 Arm®TrustZone® STM32 微控制器(参见第 2 节 参考)的 TFM 应用(TF‑M 的完整实现)的用户手册,获取对解决方案的精确描述。

在本应用笔记中,术语 X-CUBE-SBSFU 指的是 X-CUBE-SBSFU STM32Cube 扩展包中可用的安全启动和安全固件更新流程解决方案,而术语 SBSFU 指的是 Arm®TrustZone®STM32 微控制器 STM32Cube MCU 软件包中可用的安全启动和安全固件更新流程解决方案(STM32CubeL5 用作示例)。

Arm® 可信固件‑M (TF‑M)简介

TF‑M (参照[TF‑M])是 Arm Limited 驱动的开源软件框架,在 Arm® Cortex®-M33 (TrustZone®)处理器上提供了PSA 标准的参考实现:

  • PSA 不可变 RoT(信任根):在任何复位后执行的不可变安全启动和安全固件更新流程应用程序。该应用程序基于 MCUboot 开源软件(参照[MCUboot])。
  • PSA 可更新 RoT:安全应用程序实现了一组隔离在安全/特权环境中的安全服务,非安全应用程序可以通过PSA API 在非安全应用程序运行时期中调用这些服务(参照[PSA_API]):

–安全存储服务:TF‑M 安全存储(SST)服务实现 PSA 保护的存储 API,允许数据加密并将结果写入可能不可信的存储中。SST 服务采用基于 AEAD 加密策略的 AES-GCM 作为参考,保护数据的完整性和真实性。

–内部可信存储服务:TF‑M 内部可信存储(ITS)服务实现 PSA 内部可信存储,API 允许在微控制器内置的闪存区域中写入数据,该区域将通过硬件安全保护机制与非安全或非特权应用程序隔离。

–加密服务:TF‑M 加密服务实现了 PSA 加密 API,允许应用程序使用密码学原语,如对称和非对称密码、哈希、信息验证码(MAC)和带关联数据的认证加密(AEAD)。它基于 mbed-crypto 开源软件(参照[mbed-crypto])。

–初始认证服务:TF‑M 初始认证服务允许应用程序在验证过程中向验证实体证明设备身份。初始认证服务可以根据请求创建一个令牌,其中包含特定于设备的固定数据集。

  • 应用程序可更新 RoT:隔离在安全/非特权环境中的第三方安全服务,可以由非安全应用程序在非安全应用程序运行时期中调用。

资料预览

相关推荐