提升嵌入式设计的安全等级
物联网 (IoT) 产品的兴起彻底改变了我们与周围世界的交互方式。
从智能家居到智慧工厂,这些互连设备如今已融入日常生活,让使用更便捷、高效。
随着对更高安全性(尤其是数据隐私和知识产权 (IP) 保护)需求的日益增长,我们正率先在STM32系列中采用可扩展架构,积极应对安全挑战。
为此,我们推出了基于六大核心支柱构建的STM32Trust:

安全功能与服务
确保您的最终应用安全可靠,并得到充分保护。通过硬件、软件和服务,提供一系列可灵活使用的安全功能。

标准与法规
了解电子系统必须遵守的政府法规。为合规做好准备。

安全保证与标准
参考标准化且非普遍采用的网络安全衡量方法,重点评估安全稳健性。

软件安全策略开发流程
制定并维护全面的STM32软件安全策略,能够帮助您构建安全可靠的设备。

合作伙伴
您并非孤军奋战。我们拥有经过严格筛选的合作伙伴,他们是助力您提供稳健的安全解决方案的关键力量。

开发者资源
提供丰富的安全相关资源,帮助您了解可用方案并轻松上手。
安全评估与实施流程
此流程图展示了嵌入式系统中安全管理的结构化方法,引导您思考关键问题并做出决策,从而有效保护核心资产。
确定需要保护的资产
“需要保护什么?”这个问题有助于界定关键资产——例如数据、知识产权或财务资源——等需要重点防护的对象。
识别威胁
该流程以“您担心哪些风险?”这一问题开启。此步骤专注于识别可能危及系统安全的潜在威胁。
评估安全问题和漏洞
接着,流程通过询问“是否存在安全问题?”来判断当前是否存在安全隐患。帮助识别可能被威胁利用的潜在弱点和漏洞。
选择并实施安全功能
基于已识别的威胁、资产和漏洞,选择并实施相应的STM32Trust安全功能。这些功能有助于将风险降低至可接受的水平。
STM32Trust为开发者提供完善的的多层级方案,提升新产品设计的安全性。
STM32Trust提供12项安全功能,结合意法半导体及第三方提供的硬件、软件与设计服务,符合各国针对嵌入式设备的新法规与安全标准要求。

安全启动与安全固件更新

可信执行环境 (TEE)

安全生产

安全平台认证

安全存储

加解密
安全启动与安全固件更新
安全启动与固件更新是为应用程序建立信任根的核心组件。安全启动可确保设备上运行的应用程序软件是真实且未经篡改,而安全更新则可防止后期固件被非法篡改。此外,安全更新还支持在整个产品生命周期内修复漏洞并增强安全性。根据不同产品系列,可提供多种解决方案,均充分利用片上硬件安全机制。
X-CUBE-SBSFU是一款安全启动与安全固件更新解决方案,支持对STM32微控制器的内置程序进行验证和更新。该解决方案已在众多STM32系列中得到应用,是目前我们安全生态系统中使用最广泛的方案之一。
支持的系列
SBSFU提供与X-CUBE-SBSFU解决方案相同的功能,但实现方式不同。它基于MCUBoot架构,并遵循trustedfirmware.org的开源框架。
SBSFU包含在STM32Cube软件包中,支持对STM32微控制器的内置程序进行验证和更新。该解决方案已应用于多个STM32系列。
- 特性:
- 使用TrustZone®、MPU、存储器保护(HDP、WRP)以及增强的生命周期管理方案
- 单分区(仅本地更新)或双分区(支持远程更新)
- 安全应用与非安全应用可合并到一个二进制文件,共用一套元数据
- 提供基于Y-MODEM协议的不可变本地加载器Loader代码示例
- 加密支持硬件加速或软件实现(可配置)
支持的系列
STiRoT基于MCUBoot架构,是意法半导体提供的交钥匙方案,芯片出厂时已预置。作为第一级不可变信任根支持应用的安全启动与安全更新。
- 特性:
- 用于认证/加密的密钥存储在密钥存储区中
- 双分区架构
- 支持仅安全或安全+非安全应用架构(使用TrustZone®)
- 数据分区可用于存储应用可更新的数据
支持的系列
OEMiRoT基于MCUBoot技术,是随STM32Cube软件包交付的OEM解决方案。与SBSFU类似,OEMiRoT支持安全启动与更新。用户可以根据需要对其进行集成和修改。通过结合使用WRP保护与RDP功能,可以使OEMiRoT成为第一级不可变的安全启动bootloader。
- 特性:
- 用于认证/加密的密钥存储在OBK存储区中(如支持)
- 双分区架构
- 支持仅安全或安全+非安全应用架构(使用TZ时)
- 数据分区可用于存储应用可更新的数据
- 在OEMiRoT编译阶段确定配置和存储器布局
支持的系列
OEMuRoT基于MCUBoot技术,是随STM32Cube软件包交付的OEM解决方案。用户可以根据需要对其进行集成和修改。此方案为安全启动链条的第二阶段,并且是可更新的。
- 特性:
- 用于认证/加密的密钥存储在OBK存储区中(如支持)
- 双分区架构
- 支持仅安全或安全+非安全应用架构(使用TZ时)
- 数据分区可用于存储应用可更新的数据
- 在OEMuRoT编译阶段确定配置和存储器布局
支持的系列
OEMiSB是专属OEM解决方案,继承于STM32Cube软件包。该方案为内部Flash容量有限的器件提供基础的安全启动功能。仅对应用做简单的哈希校验,不支持固件更新。
通过写保护 (WRP),使启动程序不可篡改,提升安全性。与SBSFU和OEMiRoT类似,OEMiSB支持安全启动,并可由用户集成和定制。
- 特性:
- 检查静态保护(选项字节),激活运行时保护,并在每次执行前验证用户应用程序代码的完整性(不验证签名)
- 不支持安全固件更新
支持的系列
可信执行环境 (TEE)
可信执行环境 (TEE) 是TrustZone®域中的安全运行时组件。对于MCU和MPU,建议将可信软件和安全资产管理功能置于TEE硬件环境内,以实现更强的隔离。在TEE内运行的软件可能因芯片系列而异,意法半导体提供多种解决方案,如下所列。
安全管理器是意法半导体Cortex®-M内核MCU提供的符合PSA平台安全架构的交钥匙TEE操作系统方案。
- 其优势在于:
- 提供物联网设备所需的全套安全服务,简化开发者安全落地流程
- 支持与云平台和服务器无缝对接
- 提供多租户IP保护
这种片上系统解决方案仅以二进制形式提供,并向开发者提供分许可证。该解决方案由意法半导体维护并通过认证,提供长期支持 (LTS)。基于以下组件构建
- 可更新的信任根 (uRoT):包含安全启动与安全更新
- 安全管理器内核:安全分区管理器,支持模块与服务间最高3级的隔离
- 安全服务:可信认证、加密服务、内部可信存储 (ITS)、固件更新
- OEM安全模块:由原始设备制造商 (OEM) 或第三方开发,模块间相互隔离,保障机密性与完整性
安全管理器方便用户专注于应用程序开发,使用ARM® PSA API服务,并可以在TEE可信区域内添加可信模块。其API与可信固件M (TF-M) 兼容。
更多详情,请参阅STM32TRUSTEE-SM以及安全性:STM32H5的安全管理器。
支持的系列
可信固件M (TF-M) 是面向Cortex®-M ARM® v7-M和Arm® v8-M的平台安全架构 (PSA) 的参考实现。
- 属于安全固件,支持在Arm® v8-M上实现PSA等级1和2隔离
- 安全固件向非安全侧开放接口
- 包含非安全应用示例的安全固件模型
- 安全存储
- 可信认证
- 加解密服务
支持的系列
Cortex®-A可信固件通常简称为TF-A,是Arm®提供的安全世界软件解决方案的参考实现。最初面向Armv8-A平台设计,意法半导体已将其适配至Arm® v7-A平台。Arm®正将可信固件项目转移至Linaro,作为开源项目管理。在STM32 MPU平台上使用可信启动链时,TF-A用作第一级启动程序 (FSBL)。
其代码开源,遵循BSD-3-Clause许可,可在GitHub上找到,并附带TF-A实现专用文档。
支持的系列
OP-TEE是一种可信执行环境 (TEE),专为搭载TrustZone®技术的Arm® Cortex®-A内核微处理器上运行的非安全Linux内核配套设计。OP-TEE API由其所属的GlobalPlatform API规范定义。核心优势:
- 隔离性:TEE与非安全操作系统隔离,并通过底层硬件支持保护各个可信应用 (TA) 相互隔离
- 体积小巧:TEE代码量精简,可适配Arm®系统片上存储容量
- 可移植性:TEE兼容不同架构与硬件,且支持多客户端操作服务和TEE等多种设置
- OP-TEE作为OpenSTLinux Distribution发行版的一部分提供,适用于STM32微处理器
支持的系列
安全生产
安全制造涉及将代码和机密信息安全地注入芯片。当原始设备制造商 (OEM) 的生产环境缺乏安全保障或未受严格控制时,该流程至关重要。我们的方案通常将代码预置与机密信息配置分开实现。以下是各项可用服务的概述。
安全固件安装 (SFI) 方案可保护芯片在代工厂首次烧录时的应用固件注入过程。
- 在非安全烧录环境中,通过用物理硬件安全模块STM32HSM,配合STM32CubeProgrammer安全地烧录OEM固件。该安全流程也支持第三方烧录器。
- 提供完整的工具集,可使用STM32TrustedPackageCreator(集成于STM32CubeProgrammer)加密OEM二进制文件
- 可通过X-CUBE-SFI进行测试验证
安全固件安装流程
该流程通过确保OEM固件的机密性,实现从开发到最终产品交付的全流程固件安全保护。
1. 原始设备制造商 (OEM) 开发产品固件
2. 固件加密
OEM使用其固件密钥加密固件文件,确保固件内容的机密性。
3. 固件密钥安全传输
固件密钥写入HSM,并将HSM发送至代工厂。
4. 加密固件文件安全传输
加密后的固件文件也会以密文形式安全地传输至代工厂。
5. 基于SFI工具进行安全制造
代工厂使用支持SFI的标准烧录器为STM32烧录加密固件,确保OEM固件安全安装。
6. 制造与个性化流程
- STM32 SoC通过SFI安全实现安全生产。
- 代工厂使用安全固件完成最终产品的个性化配置。
7. 交付给终端用户
配备安全个性化固件的最终产品被交付给用户,保障知识产权在整个生产环节中得到保护。
支持的系列
SSP是实施于STM32 Arm® Cortex® MPU和MCU中的一种安全系统机制,支持在不可信生产环境(例如OEM的合同制造商处)中安全、可控地注入OEM机密信息。
- SSP流程可防止OEM机密信息发生以下情况:
- 被代工厂获取
- 被提取或泄露
- 被超量生产
- 安全机密信息预置 (SSP) 的核心组件:
- STM32HSM:可配置的硬件安全模块,用于在安全预置过程中验证STM32的真实性。验证通过后,为每个芯片生成许可证并递减单向计数器。它会记录与MPU/MCU相关信息,并存储用于解密OEM机密数据的对称密钥。
- 烧录器:烧录工具(如STM32CubeProgrammer),作为STM32HSM与STM32之间的通信链路,采用USB DFU/USART协议,支持SSP流程。
- OEM机密信息:一个加密的数据文件,包含要嵌入目标芯片的所有机密信息,用于保障芯片安全。其中包含用于初始固件认证的信任根、RMA密码和其他密钥或密码。该文件通过STM32TrustedPackageCreator(STM32CubeProgrammer的组件)生成。
- STM32 Arm® Cortex®:待配置安全固件和机密信息的原始STM32器件。
- STM32上的SSP实现
- 嵌入式ROM代码,具有访问芯片数据的完全权限,负责:
- 生成芯片证书
- 通过串行接口连接烧录工具
- 将SSP固件下载到SYSRAM并进行认证
- 执行SSP固件
其他信息
专属页面,介绍如何使用分步方法部署SSP,以及如何配置和运行完整的SSP流程。
支持的系列
安全存储
安全存储敏感信息并严格控制对明文机密信息的访问,是安全防护的基础。这样可以确保机密数据始终受到保护,免遭未经授权访问。
存储的信息类型:
- 加密密钥
- 应用机密数据
可靠的访问控制与隔离机制:为维持最高级别的安全性,严格的访问控制和隔离至关重要。STM32平台采用多种高级机制实现这种保护,例如:
- 存储器保护单元 (MPU)
- TrustZone®
- 安全存储区
- TF-M内部可信存储 (ITS)
- 基于链式加密桥 (CCB) 的密钥封装
- 客户密钥存储 (CKS)
- 防火墙
支持的系列
支持所有STM32系列密码学算法
意法半导体提供了多种密码学算法解决方案。根据产品不同,可支持硬件加速,并可能包含侧信道工具防护。此外,还提供多个算法库,以满足实际应用场景需求。以下为各实现方案介绍:
- STM32密码学算法库软件包 (X-CUBE-CRYPTOLIB) 包含所有主流的加密、哈希、消息认证和数字签名安全算法,使开发者满足应用在数据完整性、机密性、身份识别/验证和不可抵赖性方面的组合需求
- 算法均已通过NIST CAVP认证
支持的系列
- 随着量子计算机的出现,传统非对称加密算法(如RSA、ECC、DH、ECDH和ECDHE)面临安全风险。为此,NIST选定一套能抵御量子计算攻击的新算法。
- STM32后量子密码算法库软件包 (X-CUBE-PQC) 包含所有主流的加密、哈希、消息认证和数字签名安全算法。库中包含PQC莱顿-米卡利签名 (LMS) 和扩展默克尔签名方案 (XMSS) 两种验签功能,主要用于安全启动代码验签。同时包含基于模格的ML-KEM算法,可替代现有的密钥交换机制,用于在在通信双方间建立共享密钥。集成ML-DSA算法用于数字签名。ML-DSA可在协议中替代ECDSA、EdDSA和RSA-PSS。
支持的系列
复杂网络安全格局概览
确保物联网与嵌入式设备具有稳健的安全性已成为全球共识,推动各主要市场建立完善的监管框架。
对于希望在全球范围内部署安全物联网和嵌入式解决方案的制造商和服务提供商而言,了解并应对这些多样化的监管环境至关重要。
| 标准/法规 | 说明 |
|---|---|
| 网络弹性法案 (CRA) | CRA是欧盟网络安全法规,旨在提升联网数字组件的安全性。 |
| RED指令 | RED为无线电设备上市建立监管框架,满足联网设备网络安全要求,可通过自评估或指定机构完成合规。 |
| EN 18031 | RED的协调标准 |
| IEC 62443 | ISA/IEC 62443系列标准规定了实施和维护工业自动化与控制系统安全的要求和流程,打通运营与IT安全。 |
| EN 303 645 | 欧洲互连设备安全标准,定义了消费类物联网设备的基线安全要求。 |
| 美国网络信任标志 | 美国网络信任标志 (USA Cyber Trustmark) 是一项自愿性网络安全认证计划,旨在帮助组织证明其对网络安全最佳实践的承诺。其目标是通过提供一个可识别的标志,表明符合既定的安全标准,从而在消费者、合作伙伴和利益相关者之间建立信任。 |
| ioXt联盟 | IoXt联盟的使命是通过多方利益相关者参与、国际化、统一化和标准化的安全和隐私要求、产品合规计划以及公开透明度,树立大众对物联网产品的信心。 |
| CLS | CSA推出CLS,旨在增强物联网安全性,指导消费者选择安全的智能设备,并鼓励制造商优先考虑其产品的网络安全。 |
| JC-STAR | 日本经济产业省 (METI) 和信息技术促进机构 (IPA) 推出了“基于日本网络安全技术评估要求的标签计划”(JC-STAR)。未来,METI和IPA计划促进贴标产品的普及,制定更高水平的安全合规标准,并与各国实现互认。 |
除了提供必要的安全功能和服务外,意法半导体还重点打造面向微控制器和微处理器的安全保障体系,帮助开发者更轻松实现多法规合规,并使其产品能够在不同的终端应用领域中复用。
- STM32安全保障基于:
- Global Platform®定义和维护的物联网平台安全评估标准 (SESIP)
- 最初由Arm®定义并由Global Platform®维护的平台安全防护 (PSA)
- NIST CAVP - NIST加密算法验证程序 (CAVP) 用于验证加密算法,以确保其符合联邦安全性与可靠性标准
- NIST ESV - NIST熵源验证 (EV) 提供标准化测试,以评估密码系统中使用的随机熵源的质量和不可预测性,确保熵输入满足安全密钥生成和加密操作所需的随机性标准
SESIP是一个网络安全评估框架,旨在评估物联网 (IoT) 平台的安全性。SESIP已被CEN和CENELEC采纳为欧洲标准 (EN 17927)。
该框架提供了一种标准化方法,用于评估物联网设备及其底层平台的安全功能和稳健性。该框架涵盖多个安全领域,包括设备身份、数据保护、通信安全和软件完整性。SESIP旨在识别漏洞并确保物联网平台满足最低安全要求。支持制造商、开发人员和评估人员实施和验证安全控制措施。SESIP强调生命周期安全,应对从设备制造到停用过程中的各种威胁。该标准通过提供明确的安全保障等级,促进供应商与消费者之间的信任和透明度。SESIP通过与国际网络安全标准和最佳实践保持一致,促进全球互操作性。鼓励通过定期重新评估和更新实现持续改进。
SESIP允许对平台组成部分单独或组合进行评估,以便这些组成部分的评估结果在不同的互连产品中依然适用。
以下是摘自SESIP文档的一个组合评估示例:
- 共有5个安全认证等级,分别命名为SESIP1、SESIP2、SESIP3、SESIP4和SESIP5,等级逐级提升:
- SESIP 1级防护 (SESIP1) 基于自评估
- SESIP 2级防护 (SESIP2) 黑盒渗透测试
- SESIP 3级防护 (SESIP3) 传统的白盒漏洞分析
- SESIP 4级防护 (SESIP4) 支持复用SOG-IS/EUCC认证平台
- SESIP 5级防护 (SESIP5) 支持复用SOG-IS/EUCC认证平台
STM32的SESIP证书可在TrustCB安全计划网站查询。
PSA,即平台安全架构,基于Arm®开发的规范,旨在建立一种以安全原则为导向的设备保护方法。该架构为增强互连设备的安全性提供了一个基础框架。
PSA认证是一个专为物联网 (IoT) 设备和嵌入式系统设计的全球性安全认证框架。提供结构化方法,用于评估和改进从设计到部署的全流程设备安全。该框架基于Arm®开发的平台安全架构 (PSA),融合行业最佳实践和标准。
PSA认证提供多个安全保障等级,满足不同安全需求和威胁模型。认证过程包括独立的第三方评估,以验证安全声明。PSA认证旨在简化制造商的安全落地流程,提升消费者与合作伙伴之间的信任度。
通过与ISO/IEC 15408等全球安全标准保持一致,促进互操作性。该计划支持涵盖芯片供应商、设备制造商和服务提供商在内的广泛生态。总而言之,PSA认证有助于加速安全的物联网创新,降低与网络威胁相关的风险。
PSA认证现由GlobalPlatform®负责管理。STM32的PSA证书仍可在此查询。
NIST CAVP是一项验证联邦信息系统中所用加密算法的计划。该计划提供标准化测试,以确保算法满足严格的安全性和互操作性要求。NIST CAVP涵盖广泛的加密功能,包括加密、哈希和数字签名。厂商提交其算法实现方案,接受独立测试和认证。CAVP有助于维护对加密模块的信任,并支持符合联邦网络安全标准。
关于STM32证书,请访问NIST CAVP加密算法证书页面。
NIST熵源验证 (ESV) 用于评估加密系统中熵源的质量和可靠性,确保随机数生成器能够产生不可预测的高质量随机数,这是安全密码操作的核心基础。验证过程包括对熵输入进行严格的统计测试和分析。ESV有助于发现可能损害安全性的偏差、模式或弱点,是根据FIPS 140-3等标准对加密模块进行认证的关键组成部分。总体而言,NIST ESV提升了对密钥生成及其他安全功能所用随机数的信任度。
STM32随机数生成器证书可在加密模块验证程序 | CSRC页面找到。
STM32Trust对于满足即将出台的法规要求及确保最终产品合规至关重要,同时也致力于通过我们提供的软件成果与开发者建立信任。
为此,我们在STM32Cube中为STM32交付成果建立了一个安全的软件开发生命周期。该举措旨在将安全性融入软件开发流程,打造完整的安全软件开发生命周期。
关于该流程的详细文档,可在STM32 MCU维基百科的STM32Trust软件安全策略中查询。更多问答内容可在STM32Trust软件安全策略问答维基百科页面查看。该流程目前正在实施中,初期主要应用于大多数STM32CubeXXX软件包及各类安全组件,但未来将逐步扩大推广范围。
STM32Trust还致力于为开发人员提供一个值得信赖的合作伙伴生态。这些STM32Trust安全合作伙伴均经过精心筛选,凭借专业能力与服务质量,可提供广泛的服务,包括咨询、培训、密钥生成与注入、加密解决方案、设计服务,乃至完整的解决方案实施。
培训
现已在线提供一系列STM32培训课程(STM32G4、STM32F7、STM32L4、STM32L4+、STM32L5、STM32G0、STM32WB、STM32H7、STM32WL、STM32U5、STM32C0及STM32MP1)

