生态系统

功能安全 云连接 信息安全 电机控制 人工智能(AI) 数字电源 无线连接

STM32信息安全概览



STM32信息安全概览

STM32信息安全硬件特性

STM32 密码学算法库X-CUBE-CRYPTOLIB

STM32 安全启动与安全固件更新参考实现

STM32 安全生产方案——安全固件安装SFI

信息安全(一)信息安全的概览和方法论

信息安全(二)密码学基本原理(上)

信息安全(三)密码学基本原理(中)

信息安全(四)密码学基本原理(下)

信息安全(五)密码学原理的应用 - TLS

信息安全(六)STM32的存储与执行保护

信息安全(七)STM32的加解密硬件模块

信息安全(八)STM32G0的安全功能

信息安全(九)SBSFU原理介绍

信息安全(十)SBSFU初体验

信息安全(十一)SBSFU在STM32G0上的实现

信息安全(十二)X-Cube-SBSFU/STM32G0

信息安全(十三)安全固件烧录/SFI




目录

1    STM32Trust
2    STM32信息安全层叠架构
2.1      底层硬件:STM32硬件安全特性
2.2      中间件层:STM32密码学工具
2.3      安全方案与服务
       STM32安全启动与固件更新参考实现(SBSFU)
       STM32安全生产解决方案(SFI)
3     安全认证与评估
4     参考资料与培训资源
       文档资料
       培训资源
 

1   STM32Trust

随着物联网以及智能化产品的不断涌现,信息安全问题也日渐受到关注。信息安全是一个从系统层面需要统一考虑的问题:在提供服务的云端、通信管道、边缘及终端节点都需要部署完整的安全策略,终端节点设备不应该因为资源和处理能力有限而成为整个系统信息安全的薄弱环节。STM32Trust正是在这样的背景下应运而生,目标是让客户在其新产品的设计中能够加强安全性并充分利用STM32MCU硬件特性及其生态系统资源来实现安全设计。


STM32Trust是一个集合了信息安全知识、生态系统和安全服务的综合的安全架构,基于多层次的安全策略,提供针对代码和执行保护在内的完整工具。STM32Trust的构建基于众多客户使用场景对信息安全的需求,并提出了安全功能的概念,来更好地契合来自客户的实际需求和信息安全相关规范的共性要求。

主要的安全功能如:


• 安全启动 SecureBoot
• 安全升级 Secure Update
• 安全存储 Secure Storage
• 系统隔离 Isolation
• 安全生产 Secure Manufacturing
• 软件IP保护 SW IP Protection
• 密码学引擎 Crypto  Engine
• 异常检测与处理 Abnormal Situation Handling
• 身份识别与认证 Identification/Authentication/Attestation
• …

 

STM32Trust生态中所提供各种安全能力、方案、工具、服务等也都围绕这些安全功能展开。

2 STM32信息安全层叠架构

STM32 MCU从产品底层硬件的安全能力,中间件的提供的密码学服务,到对接应用程序的安全方案与服务等,提供了完整的生态系统,助力打造设备端的信息安全,实现适合不同应用场景和行业需求的安全功能。

对于某些有更高级别安全需求的应用,在充分利用STM32本身的安全能力基础之上,还可以叠加使用安全beplay下载app下载STSAFE-A,进一步提高最终产品的安全性。在STM32的信息安全生态系统中,也包含叠加使用例如STSAFE-A100的相关工具和用例。


2.1 底层硬件:硬件安全功能


• STM32 MCU内建多种安全功能,为设备信息安全打造坚固的平台,在这个平台的基础上进而可以运行可信的进程以及密码学操作。

• STM32 MCU底层硬件具备的安全能力能够覆盖存储访问保护、代码/系统隔离、启动入口限定、防篡改检测、密码学算法加速等多方面的安全需求,例如

• 身份识别:UID, OTP

• 存储访问保护/软件IP保护:RDP(读保护),WRP(写保护),PCROP(专有代码保护),OTFDEC(On-The-Fly Decryption实时解密模块)

• 代码/系统隔离:MPU,Firewall(防火墙),TrustZone,Secure User Memory(安全用户存储区)

• 启动入口限定:RDP2,BOOTLOCK(启动锁定)

• 防篡改检测:Anti-Tamper 

• 密码学算法硬件:AES,HASH,PKA,TRNG

beplay下载app下载硬件安全功能结合软件能够实现更多应用层的安全功能,例如安全启动,安全更新,安全存储,安全通信,可信执行环境等等


更多内容请点击STM32信息安全硬件特性

2.2 中间件层:密码学工具


• 密码学是保护关键信息的保密性,完整性和认证的重要工具,STM32提供密码学算法库X-CUBE-CRYPTOLIB软件包,满足应用软件设计中对密码学算法的需求。

• STM32 密码学算法库包含两大类实现,一类是完全基于固件实现的版本,支持所有STM32产品系列,另一类是基于Crypto硬件加速器的版本,支持所有带有Crypto硬件外设的STM32产品

• Cryptolib 软件包下载链接 https://www.st.com/x-cube-cryptolib


更多内容请点击STM32 密码学算法库

2.3 安全方案与服务


STM32 安全启动与固件更新参考实现(SBSFU)


• 安全启动建立信息安全信任根,确保设备每次复位后所执行的应用代码的完整性和真实性。

• 安全固件更新能够帮助设备构建一个可以持续演进的系统,在安全可控的前提下进行设备版本更新,以便针对新的攻击增加对应的安全防护措施、更正原有错误和添加新功能。

• STM32提供安全启动与安全固件更新的参考实现,该实现充分利用了STM32 MCU的各种硬件安全特性,并且支持众多产品系列,能够完整覆盖既往的产品系列(例如F4,F7,L1,L0,L4)以及较新的产品系列(例如G0,G4,H7,WB等),并将持续增加对后续新产品的支持

• SBSFU 软件包下载链接  https://www.st.com/x-cube-sbsfu


更多内容请点击 STM32 安全启动与安全固件更新参考实现


STM32  安全生产解决方案(SFI)

• 设备的固件一方面是软件IP,另一方面也是设备能够正确执行各种应用功能的重要基础,其安全性在设备的整个生命周期都应当受到关注。

• 存储器访问保护及IP保护能够防止设备出厂后固件从调试端口被非法获取,安全启动能够保证设备使用中固件的完整性与真实性,安全固件更新则保护了更新过程中的固件安全。

• 而设备生产阶段也是一个需要考虑的环节,STM32的安全固件安装(SFI)想要解决的就是如何在设备生产工厂保护固件安全性的问题,一方面保护生产程中固件的机密性和完整性,另一方面还能够控制固件烧录的次数,防止过量生产的情况

 

• 安全固件安装(SFI)解决方案提供的资源包括

• 固件加密打包工具(STM32TrustedPackageCreator):用于加密固件

• 硬件安全模块HSM:用于保存固件加密密钥和产生烧录时的授权License

• PC端烧录工具(STM32CubeProgrammer):配合HSM实现安全烧录过程

• SFI相关的说明和使用文档


更多内容请点击 STM32 安全生产方案


3 安全认证与评估


4 参考资料与培训资源

文档资料

STM32信息安全总览

AN5156

Introduction to STM32 microcontrollers   security

《STM32系列微控制器的安全性介绍》

应用笔记

代码保护相关资料

AN4701

Proprietary code read-out protection on microcontrollers of   the STM32F4 Series

《STM32F4系列微控制器的专有代码读取保护》

F4应用笔记

AN4758

Proprietary code read-out protection on STM32L4, STM32L4+   and STM32G4 Series microcontrollers

《STM32L4和STM32L4plus以及STM32G4微控制器上的专有代码读保护》

L4/L4+应用笔记

AN4968

Proprietary code read out protection (PCROP) on STM32F72xxx   and STM32F73xxx microcontrollers

《STM32F72x、F73x的PCROP使用说明》

F7应用笔记

AN4246

Proprietary Code Read Out Protection on STM32L1   microcontrollers

《STM32L1 微控制器的专有代码读取保护》

L1应用笔记

DB2641

Proprietary code read-out protection (PCROP),   software expansion for STM32Cube

《STM32Cube的专有代码读保护(PCROP)软件扩展》

PCROP扩展软件包简介

代码/系统隔离相关资料

AN4730

Using the FIREWALL embedded in STM32L0/L4/L4+   Series MCUs for secure access to sensitive parts of code and data

《STM32L超低功耗系列MCU中嵌入的防火墙的应用手册》

安全防火墙Firewall

       应用笔记

AN4729

STM32L0/L4 FIREWALL overview

《STM32L0和STM32L4防火墙概述》

AN4838

Managing memory protection unit in STM32 MCUs

《STM32微控制器上管理内存保护单元》

          MPU

     应用笔记

AN5347

STM32L5 Series TrustZone® features

《STM32L5的TrustZone特性》

      TruzeZone


         AN5421

Getting started with STM32L5 Series   microcontrollers and TrustZone® development

《基于STM32L5的TrustZone开发入门体验》

                                                                                随机数与密码学算法相关资料

UM1924

STM32 crypto library

《STM32加密库》

用户手册

CAVP认证

X-CUBE-CRYPTOLIB FIPS CAVP certification

演示文稿


        AN4230

STM32 microcontroller random number   generation validation using the NIST statistical test suite

《使用NIST统计测试套件验证STM32微控制器随机数生成》

应用笔记

安全启动与安全固件更新软件包相关资料

AN5056

Integration guide for the X-CUBE-SBSFU   STM32Cube Expansion Package

《X-CUBE-SBSFU STM32Cube扩展包集成指南》

X-CUBE-SBSFU

UM2262

Getting started   with the X-CUBE-SBSFU STM32Cube Expansion Package

《X_CUBE_SBSFU安全启动和固件更新软件入门》


         AN5447

Overview of Secure   Boot and Secure Firmware Update solution on Arm® TrustZone® STM32L5 Series   microcontrollers

《STM32L5的安全启动和安全固件升级方案介绍》

STM32L5 SBSFU

安全生产相关资料

AN4992

Overview secure firmware install (SFI)

《安全固件安装(SFI)概述》

安全固件安装

AN5054

Secure programming using STM32CubeProgrammer

《使用STM32CubeProgrammer进行安全编程》

安全烧录

UM2238

STM32 Trusted Package Creator tool software   description

《STM32 Trusted Package Creator软件工具描述》

安全包生成工具

UM2237

STM32CubeProgrammer software description

《STM32CubeProgrammer软件说明》

CubeProgrammer使用手册

其他

AN2606

STM32 microcontroller system memory boot mode

《STM32微控制器系统存储器启动模式》

启动模式

AN3371

Using the hardware real-time clock (RTC) in   STM32 F0, F2, F3, F4 and L1 series of MCUs

《如何使用STM32硬件RTC

电源后备域与防入侵检测


培训资料


培训课程及资料

综合

- 信息安全基础

- 密码学基础

- STM32硬件安全特性

- 安全启动与安全固件更新

STM32信息安全线上课程

视频课程

信息安全基础

信息安全的概念和方法论

培训课件

STM32安全的概念与系统分析方法

密码学基础

密码学基本原理_

密码学基本原理_

密码学基本原理_

密码学原理的应用_TLS

STM32硬件安全特性

STM32的加解密硬件模块

STM32的存储与执行保护

STM32的加解密硬件模块

STM32G0的安全功能

STM32加解密技术

STM32软硬件安全技术

安全启动与安全固件更新

SBSFU原理介绍

SBSFU初体验

SBSFUSTM32G0上的实

X_Cube_SBSFUSTM32G0

STM32 安全技术Hands-On(基于STM32G0)

安全服务/解决方案

安全固件烧录_SFI