
1. 引言 安全启动与安全更新是嵌入式设备的基本安全要求之一:安全启动提供信任根,保证每次设备启动运行的应用程序的完整性与合法性;安全更新则在固件升级环节避免系统软件被恶意修改或替换。 为了方便客户在其嵌入式设备的设计中更加容易地集成安全启动和安全更新功能,STM32 提供了安全启动与安全更新的参考实现,支持众多 STM32 MCU 系列。其中 X-CUBE-SBSFU 是针对 Cortex V6/V7M 内核的 STM32 MCU 产品的参考方案。 在 X-CUBE-SBSFU 使用技巧的第一篇,我们对软件包及其软件架构等进行了介绍,让读者对这个软件包有了初步认识;第二篇重点介绍了如何将 SBSFU 与应用程序集成,实现安全启动和安全升级的话题;在这一篇我们将讨论如何将 SBSFU 参考实现从一个STM32 MCU 平台移植到另外一个 STM32 MCU 型号的硬件平台。 2. 参考实现的选择 X-CUBE-SBSFU 的参考实现通常基于 STM32 现有的 ST 官方开发板,例如 Nucleo 开发板、Discovery 探索套件板,这些开发板上的 STM32 MCU 型号是事先确定的,而用户在他们实际的项目中很可能并非使用相同的 STM32 MCU 型号,这时候就需要对 X-CUBE-SBSFU 的参考实现做硬件平台的移植。移植通常基于一个已有的参考实现,因而移植前的第一步就是选择最合适的参考实现。 参考实现的选择需要考虑几个方面:首先是 STM32 MCU 系列,其次是所需要的功能和配置,最后就是根据需求找到最接近的 STM32 MCU 型号的参考实现。 功能和配置的需求可能涉及多个方面,例如 • Flash 布局 o 单镜像还是双镜像方案 o 是否需要使用外部 Flash 等 • Crypto 方案 o 是否需要加密 o 是否使用 X509 数字证书 o 是否需要 STSAFE 等 • Crypto 实现选择 o 使用 STM32 Cryptolib 还是开源的 mbedtls/mbedcrypto • 是否需要 KMS 密钥管理服务 确定了需求之后,找到同一 STM32 系列所有满足需求的参考工程,Projects 目录下的STM32SBSFUProjectsList.html 文件列出了不同开发的参考实现支持的配置组合,例如表1 所示。 ![]() ![]() ![]() ![]() 如果有多个系列型号的参考实现满足相同的功能和配置需求,那么选择 Flash 和 RA大小最接近目标芯片平台的那个参考实现作为移植的基础。 完整版请查看:附件 |
LAT1089 SBSFU3-Porting_v1.0.pdf
下载825.41 KB, 下载次数: 6
STM32 GUI LTDC 最大像素时钟评估方法
【2025·STM32峰会】GUI解决方案实训分享1-对LVGL咖啡机例程的牛刀小试以及问题排查
OpenBLT移植到STM32F405开发板
为什么要先开启STM32外设时钟?
【STM32MP157】从ST官方例程中分析RPMsg-TTY/SDB核间通信的使用方法
【经验分享】STM32实例-RTC实时时钟实验④-获取RTC时间函数与中断服务函数
STM32 以太网 MAC Loopback 的实现
STM32功能安全设计包,助力产品功能安全认证
基于STM32启动过程startup_xxxx.s文件经验分享
HRTIM 指南