用户手册|STM32CubeL5 TFM 应用程序入门
目录预览
1 概述 2 文档和开源软件资源 3 STM32Cube 概述 4 Arm®可信固件-M(TF-M)简介 5 安全启动和安全固件更新服务 (PSA 不可变 RoT) 6 运行时安全服务 7 保护措施和安全策略 8 软件包说明 9 硬件和软件环境设置 10 安装过程 11 逐步执行 12 集成商角色描述
1.概述 本文档描述如何入门 STM32CubeL5 TFM(Arm® Cortex®-M 的可信固件)应用程序,该应用程序作为 STM32CubeL5 固件包组成部分提供。STM32CubeL5 TFM 应用程序提供一个可信根解决方案(包括安全启动和安全固件更新功能,在执行应用程序之前使用),还提供一组安全服务,这些服务与非安全应用程序隔离,但可由非安全应用程序在运行时使用。
STM32CubeL5 TFM 应用程序基于已移植到 STM32L5 系列微控制器(以下统称 STM32L5)上的开源 TF-M 参考实现,目的是利用 STM32L5 的硬件安全特性,例如: • Arm® Cortex®-M33 TrustZone® 和存储器保护单元(MPU) • TrustZone®-aware 外设 • 内存保护(HDP、WRP) • 增强生命周期方案
STM32CubeL5 TFM 应用程序在基于 Arm® Cortex®‑M 处理器的 STM32L5 系列 32 位微控制器上运行。
2.文档和开源软件资源
3.STM32Cube概述 STM32Cube 源自意法半导体,旨在通过减少开发工作量、时间和成本,明显提高设计人员的生产率。STM32Cube 涵盖整个 STM32 产品系列。STM32Cube 包括:
• 一套用户友好的软件开发工具,覆盖从概念到实现的整个项目开发过程,其中包括: – 图形软件配置工具 STM32CubeMX,可通过图形向导自动生成初始化 C 代码 – STM32CubeIDE,一种集外设配置、代码生成、代码编译和调试功能于一体的开发工具 – STM32CubeProgrammer (STM32CubeProg),图形版本和命令行版本中可用的编程工具 – STM32CubeMonitor-Power (STM32CubeMonPwr),测量并帮助优化 MCU 功耗的监控工具
• STM32Cube MCU & MPU 包,针对于每个微控制器和微处理器系列的综合嵌入式软件平台(例如,STM32L5 系列的 STM32CubeL5),它包括: – STM32Cube 硬件抽象层(HAL),确保在 STM32 各个产品之间实现最大限度的可移植性– STM32Cube 底层 API,通过硬件提供高度用户控制,确保最佳性能和内存开销 – 一组一致的中间件组件,如 FAT 文件系统、RTOS、USB 主机和设备、TCP/IP、触摸感应库、以及图形 – 嵌入式软件实用工具以及全套外设和应用实例
• STM32Cube 扩展包,包含的嵌入式软件组件为 STM32Cube MCU 和 MPU 包的功能补充了: – 中间件扩展和应用层– 在特定的意法半导体开发板上运行的实现案
4.Arm®可信固件-M(TF-M)简介 [TF-M] (可信固件-M)是 Arm 驱动的开源软件框架,在 Cortex®-M33(TrustZone®)内核上提供 PSA 标准的参考实现: • PSA 不可变 RoT(可信根):不可变的“安全启动&安全固件更新”应用程序(命名为 TFM_SBSFU_Boot)在任一复位后执行。该应用程序基于[MCUboot]开源软件
• PSA 可更新 RoT:“安全”应用程序(名为 TFM_Appli/安全)实现了一组隔离在安全/特权环境中的安全服务,非安全应用程序可以通过 PSA API 在非安全应用程序运行期间调用这些服务: – 安全存储服务:TF-M 安全存储(SST)服务实现 PSA 保护的存储 API,允许数据加密并将结果写入可能不可信的存储中。作为参考,SST 服务采用了基于 AEAD 加密策略的 AES-GCM 算法,保护数据的完整性和真实性。 – 内部可信存储服务:TF-M 内部可信存储(ITS)服务实现 PSA 内部可信存储 API,允许在微控制器内置的 Flash 存储器区域中写入数据,该区域将通过硬件安全保护机制与非安全或非特权应用程序隔离。 – 密码服务:TF-M 密码服务实现了 PSA 密码 API,允许应用程序使用密码原语,如对称和非对称密码、哈希、消息认证码(MAC)和关联数据的认证密码(AEAD)。它基于[MbedCrypto]开源软件 – 初始认证服务:TF-M 初始认证服务允许应用程序在验证过程中向验证实体证明设备身份。初始认证服务可以根据请求创建一个令牌,其中包含特定于设备的固定数据集。
• 应用程序可更新 RoT:隔离在安全/非特权环境中的第三方安全服务(在 TFM_Appli/安全应用程序中实现),可以由非安全应用程序在非安全应用程序运行期间调用:
本文档为大家详细地描述了如何入门 STM32CubeL5 TFM(Arm® Cortex®-M 的可信固件)应用程序,全文内容较长,文章篇幅有限仅展示部分,完整内容请点击“阅读原文”下载原文档。
|