Enhancing the level of security in embedded design
The rise of Internet of Things (IoT) products has transformed the way we interact with the world around us.
From smart homes to factories, these connected devices are now part of our daily lives, making things easier and more efficient.
With the increasing demand for greater security, especially regarding data privacy and intellectual property (IP) protection, we are taking the lead to address security with a scalable approach implemented in our STM32 series.
To address these needs, we present STM32Trust, built upon six key foundations:
Security functions and services
Ensure that your final application is secured and well-protected. A set of security functions at your disposal, via hardware, software, and services.
Standard and regulations
Understand the governmental rules that electronic systems must comply with. Be ready for your compliance.
Security assurance and standards
Refer to standardized and non-ubiquitous ways of measuring cybersecurity, especially in terms of robustness.
Software security policy development process
Developing and maintaining a comprehensive STM32 software security policy enables you to build secure and reliable devices.
Partners
You are not alone. Review our set of qualified partners who are essential to helping you deliver robust security solutions.
Developer resources
A rich set of security resources to help you know what is available and how easily it can be used.
Security assessment and implementation flow
This flowchart illustrates the structured approach to managing security in embedded systems, guiding users through key questions and decisions to protect their assets effectively.
Determine assets to protect
The question “What do you have to protect?” helps to define the critical assets - such as data, intellectual property, or financial resources -that require safeguarding.
Identify threats
The process begins by asking, “What are you worried about?” This step focuses on identifying potential threats that could compromise the system’s security.
Assess security issues and vulnerabilities
The flow then considers whether there are existing security issues by asking, “Are you having security issues?” This highlights potential weaknesses and vulnerabilities that could be exploited by threats.
Select and implement security functions
Based on the identified threats, assets, and vulnerabilities, appropriate STM32Trust security functions are selected and implemented. These functions will help mitigate the risks to an acceptable level.
STM32Trust provides developers with a robust, multilevel strategy to enhance security in their new product designs.
With a set of 12 security functions offering hardware, software, and design services from ST and third parties, STM32Trust complies with the new requirements of national regulations and security standards for embedded devices.
Secure boot and secure firmware update
Trusted execution environment (TEE)
Secure manufacturing
Secure platform attestation
Secure storage
Cryptography
Secure boot and secure firmware update
Secure boot and firmware updates are essential components in establishing the Root of Trust for your applications. Secure boot ensures that the application software running on the device is authentic and unaltered, while secure updates prevent unauthorized modifications at later stages. Additionally, secure updates enable bug fixes and security enhancements throughout the product life cycle. Various solutions are available depending on the product series, all of which leverage the optimal use of the on-board hardware countermeasures.
The X-CUBE-SBSFU is a secure boot and secure firmware update solution that enables the verification and update of the built-in program of STM32 microcontrollers. This solution has been implemented across a wide range of STM32 series and is currently one of the most used solutions within our security ecosystem.
Supported series
SBSFU offers the same functionality as the X-CUBE-SBSFU solution but is a different implementation. It is based on the MCUBoot architecture and follows the open-source framework from trustedfirmware.org.
Delivered inside the STM32Cube package, it enables the verification and update of the built-in program of STM32 microcontrollers. This solution has been implemented across a few ranges of STM32 series.
- Features:
- Usage of TrustZone®, MPU, memory protections (HDP, WRP), and enhanced life cycle scheme
- Single slot (local update only) or dual slot (remote update possible)
- Secure and nonsecure applications could be combined in one binary with one set of metadata
- Immutable local loader code example based on the Y-MODEM protocol
- Cryptography hardware accelerated or not (configurable)
Supported series
The STiRoT, based on MCUBoot architecture is a turnkey ST solution integrated into the device at the time of purchase. It enables secure immutable boot and update.
- Features:
- Key for authentication/encryption stored in keystore
- Dual slot setup
- Full secure or secure/non-secure application supported (with TrustZone®)
- Data slot can be used to store application updatable data
Supported series
The OEMiRoT, based on MCUBoot technology, is an OEM solution delivered within the STM32Cube package. Like SBSFU, it enables secure boot and updates. Users can integrate and modify it as needed. By using WRP protections in combination with RDP, it can be made the first immutable boot stage.
- Features:
- Key for authentication/encryption stored in OBK storage when available
- Dual slot setup
- Full secure or secure/non-secure application supported (when TZ)
- Data slot can be used to store application updatable data
- Configuration and memory mapping define at compilation of OEMiRoT
Supported series
The OEMuRoT, based on MCUBoot technology, is an OEM solution delivered within the STM32Cube package. Users can integrate it and modify it as needed. This scheme is the second boot stage and is updatable.
- Features:
- Key for authentication/encryption stored in OBK storage when available
- Dual slot setup
- Full secure or secure/non-secure application supported (when TZ)
- Data slot can be used to store application updatable data
- Configuration and memory mapping define at compilation of OEMuRoT
Supported series
OEMiSB is a proprietary OEM solution included in the STM32Cube package. OEMiSB provides basic secure boot functionality for devices with limited internal flash. It performs a simple hash check of the application and does not support firmware updates.
Using Write Protection (WRP), the bootloader is made immutable for enhanced security. Like SBSFU and OEMiRoT, OEMiSB enables secure boot only and can be integrated and customized by users.
- Features:
- Checks static protections (options bytes), activates runtime protection, and verifies the integrity of the user application code before every execution (no authenticity)
- No secure firmware update
Supporter series
Trusted Execution Environment (TEE)
A trusted execution environment (TEE) is the secure runtime component of a TrustZone® domain. For MCUs and MPUs, it is recommended to place the trusted software and secure asset management within the TEE hardware to ensure additional isolation. The software running inside the TEE may vary depending on the device, and ST offers various solutions, as listed below.
Secure Manager is an ST turnkey TEE OS solution following the Platform Security Architecture (PSA) for Cortex®-M.
- The benefits:
- Simplify the security journey for developers by offering all security services required by an IoT device
- Seamlessly connect to clouds and servers
- Provide multi-tenant IP protection
It is a system-on-chip solution delivered in binary form only and sublicensed to our developers. It is maintained and certified by ST and is built for long time support (LTS). It is based on the following components
- Updatable Root of Trust (uRoT): that includes secure boot and secure updates
- Secure Manager core: a secure partition manager implementing up to level 3 isolation of modules and services
- Security services: attestation, cryptography, internal trusted storage (ITS), firmware update
- OEM secure modules: modules developed by OEMs or third parties and isolated from each other for confidentiality and integrity
The Secure Manager allows users to concentrate on the application development and use the ARM® PSA API services and potentially add trusted Modules within the TEE trusted area. It is API compatible with trusted firmware-M (TF-M).
For further details, please refer to STM32TRUSTEE-SM and Security:Secure Manager for STM32H5.
Supported series
The trusted firmware-M software implementation is a reference implementation of the Platform Security Architecture (PSA) for Cortex®-M ARM® v7-M and Arm® v8-M.
- Secure firmware with support for PSA Level 1 and 2 isolations on Arm® v8-M
- Interfaces exposed by secure firmware to a nonsecure side
- Secure firmware model with nonsecure application examples
- secure storage
- attestation
- cryptography
Supported series
Usually shortened to TF-A, trusted firmware for Cortex®-A is a reference implementation of the secure-world software solution provided by Arm®. It was first designed for Armv8-A platforms and has been adapted by ST for Arm® v7-A platforms. Arm® is transferring the trusted firmware project to be managed as an open-source project by Linaro. TF-A is used as the first-stage bootloader (FSBL) on STM32 MPU platforms when using the trusted boot chain.
The code is open source, under a BSD-3-Clause license, and can be found on GitHub, along with dedicated documentation on trusted firmware-A implementation.
Supported series
OP-TEE is a Trusted Execution Environment (TEE), a software solution designed as a companion for a nonsecure Linux kernel running on microprocessors with Arm® Cortex®-A cores using TrustZone® technology. OP-TEE APIs are defined by the GlobalPlatform API specifications to which they belong. Key benefits:
- Isolation: the TEE provides isolation from the nonsecure OS and protects the loaded trusted applications (TAs) from each other using underlying hardware support
- Small footprint: the TEE should remain small enough to reside in a reasonable amount of on-chip memory as found on Arm®-based systems
- Portability: the TEE is compatible with different architectures and available hardware, and supports various set-ups such as multiple client operating services and TEEs
- OP-TEE is delivered as part of OpenSTLinux distribution packages, available for STM32 microprocessors
Supported series
Secure manufacturing
Secure manufacturing involves securely injecting code and secrets into a device. This process is essential when the OEM production environments lack security or are not strictly controlled. In our offerings, we often distinguish between the provisioning of code and the provisioning of secrets. Below is an overview of the various available services.
The secure firmware installation solution protects application firmware provisioning at the contract manufacturer when devices are being programmed for the first time.
- Uses the STM32CubeProgrammer to securely flash the OEM firmware via a physical HSM, the STM32HSM, at an unsecured programming entity. This secure process is also supported by third-party programmers.
- Offers a complete toolset to encrypt OEM binaries with the STM32TrustedPackageCreator (included in STM32CubeProgrammer)
- It can be tested using X-CUBE-SFI
The secure firmware install flow
This flow guarantees secure and comprehensive firmware protection from development to final product delivery by ensuring the confidentiality of the OEM firmware.
1. Original Equipment Manufacturer (OEM) develops the product firmware
2. Firmware encryption
The OEM encrypts the firmware file using its firmware key, ensuring the confidentiality of the firmware content.
3. Secure transfer of the firmware key
The firmware key is transferred inside the HSM also sent to contract manufacturer.
4. Secure transfer of the encrypted firmware file
The encrypted firmware file is also safely transferred to the contract manufacturer.
5. Secure manufacturing with SFI tools
The contract manufacturer programs the STM32 devices with the encrypted firmware using standard programmer supporting SFI, ensuring secure installation of the OEM firmware.
6. Manufacturing and personalization cycle
- STM32 SoC manufacturing is performed securely with SFI.
- The contract manufacturer performs final product personalization with the secured firmware.
7. Delivery to the consumer
The final product, with secure and personalized firmware, is delivered to the consumer, ensuring intellectual property protection throughout the production chain.
Supported series
The SSP is a secure system mechanism implemented in STM32 Arm® Cortex® MPUs and MCUs that allows secure and controlled installation of OEM secrets in untrusted production environments, such as those of OEM contract manufacturers.
- The SSP process prevents the OEM secrets from:
- Being accessed by the contract manufacturer
- Being extracted or disclosed
- Being overproduced
- Key components for Secure Secret Provisioning (SSP):
- STM32HSM: A configurable hardware security module used to verify the authenticity of STM32 during provisioning. Once authenticated, it generates a per-device license and decrements a monotonic counter. It records specific data related to the MPU/MCU and stores the OEM symmetric key used to decrypt secrets.
- Programmer: The manufacturing programming tool (e.g., STM32CubeProgrammer) that acts as the communication link between the STM32HSM and the STM32. It uses USB DFU/USART protocols and supports the SSP process.
- OEM secrets: An encrypted data file containing all the secrets to be embedded in the target device to secure the device. It includes the root of trust for initial firmware authentication, the RMA password, and other secret keys or passwords. This file is generated using the STM32TrustedPackageCreator (part of STM32CubeProgrammer).
- STM32 Arm® Cortex®: The virgin STM32 devices to be provisioned with secure firmware and secrets.
- SSP implementation on STM32
- Embedded ROM code with full access to chip data responsible for:
- Generating the chip certificate
- Connecting to the programming tool via a serial interface
- Downloading and authenticating the SSP firmware into SYSRAM
- Executing the SSP firmware
Additional information
A dedicated page how to deploy SSP using a step-by-step approach & how to configure and run a complete SSP process.
Supported series
Secure platform attestation
Initial attestation is the process of verifying that a device meets defined security requirements before engaging in secure operations.
At ST’s factory, devices are provisioned with unique digital identities—cryptographic key pairs and certificates signed by ST’s Certificate Authority (CA). The certificate and public key are securely stored on the device, while the private key remains protected within its secure environment.
This factory-programmed identity allows the device to prove its authenticity and integrity when communicating with external systems. Embedded with ST’s CA public key, the device can verify certificates issued by ST, establishing a trusted chain of security.
Supported series
Secure storage
It is fundamental to safeguard sensitive information by securely storing it and strictly controlling access to plaintext secrets. This ensures that confidential data always remains protected from unauthorized access.
Types of information stored:
- Cryptographic keys
- Confidential application data
Robust access control and isolation mechanisms: To maintain the highest level of security, strict access control and isolation are imperative. STM32 platforms implement multiple advanced mechanisms to enforce this protection, as for example:
- Memory protection unit (MPU)
- TrustZone®
- Secure memory regions
- Internal Trusted Storage (ITS) from TF-M
- Key wrapping using Chaining Crypto Bridge (CCB)
- Customer Key Storage (CKS)
- Firewall
Supported series
All STM32 series are supportedCryptography
ST offers several cryptographic solutions. Depending on products, they can be hardware accelerated and with or without side-channel protection. Several libraries are also available to meet the requirements of practical use cases. Find below a description of our implementations:
- The STM32 cryptographic library package (X-CUBE-CRYPTOLIB) includes all the major security algorithms for encryption, hashing, message authentication, and digital signing, enabling developers to satisfy application requirements for any combination of data integrity, confidentiality, identification/authentication, and nonrepudiation
- The algorithms are NIST CAVP certified
Supported series
- With the advent of quantum computers, traditional asymmetric cryptographic algorithms such as RSA, ECC, DH, ECDH, and ECDHE become vulnerable. In response, NIST has selected a new set of algorithms designed to be resistant to quantum computing attacks.
- The STM32 postquantum cryptographic library package (X-CUBE-PQC) includes all the major security algorithms for encryption, hashing, message authentication, and digital signing. It includes both the PQC leighton-micali signature (LMS) and the extended Merkle signature scheme (XMSS) verification methods, which are used mainly for secure boot code authentication. It also includes the ML-KEM lattice-based algorithm, which can replace the current use of key exchange mechanisms to establish a secret key between two parties. ML-DSA is included for digital signatures. ML-DSA can replace ECDSA, EdDSA, and RSA-PSS in protocols.
Supported series
It provides users with several implementations for cryptographic stack usage:
- Hardware accelerated cryptography
- ST and 3rd party crypto libraries, such as X-CUBE-CRYPTOLIB, Mbed TLS, X-CUBE-PQC, and others
Supported series
An overview of a complex cybersecurity landscape
Ensuring robust security for IoT and embedded devices is a global priority, prompting the development of comprehensive regulatory frameworks across major markets.
Navigating these diverse regulatory landscapes is essential for manufacturers and service providers seeking to deploy secure IoT and embedded solutions globally.
| Standard / Regulation | Description |
|---|---|
| Cyber Resilience Act (CRA) | The CRA is a European cybersecurity law aiming at increasing the security of connected digital elements. |
| RED Directive | RED establishes a regulatory framework for placing radio equipment on the market to meet cybersecurity requirements for internet-connected devices, with compliance via self-assessment or notified bodies. |
| EN 18031 | Harmonized standard for RED |
| IEC 62443 | The ISA/IEC 62443 series define requirements and processes for implementing and maintaining electronically secure industrial automation and control systems, bridging operations and IT security. |
| EN 303 645 | The European standard on connected device security, defining baseline security requirements for consumer IoT devices. |
| USA Cyber Trustmark | The USA Cyber Trustmark is a voluntary cybersecurity certification program designed to help organizations demonstrate their commitment to cybersecurity best practices. It aims to build trust among consumers, partners, and stakeholders by providing a recognizable mark that signifies adherence to established security standards. |
| ioXt Alliance | The mission of the ioXt Alliance is to build confidence in IoT products through multistakeholder, international, harmonized, and standardized security and privacy requirements, product compliance programs, and public transparency. |
| CLS | CSA introduced the CLS to enhance IoT security, guide consumers in choosing secure smart devices, and encourage manufacturers to prioritize cybersecurity in their products. |
| JC-STAR | The Ministry of Economy, Trade, and Industry (METI) and the Information- technology Promotion Agency (IPA) have launched the “Labeling Scheme based on Japan Cybersecurity Technical Assessment requirements” (JC-STAR). Going forward, METI and IPA plan to promote the dissemination of labeled products, develop higher-level security conformance criteria and achieve mutual recognition with various countries. |
In addition to providing the mandatory security functions and services, ST has focused strongly on developing a security assurance program for microcontrollers and microprocessors to ease our developers’ compliance with various regulations, and to enable its reuse across different end-application segments.
- STM32 security assurance is based on:
- Security Evaluation standard for IoT Platforms (SESIP) defined and maintained by Global Platform®
- Platform Security Assurance (PSA) defined initially by Arm® and maintained by Global Platform®
- NIST CAVP - The NIST Cryptographic Algorithm Validation Program (CAVP) to validate cryptographic algorithms to ensure they meet federal standards for security and reliability
- NIST ESV - NIST Entropy Validation (EV) provides standardized tests to assess the quality and unpredictability of random entropy sources used in cryptographic systems. It ensures that entropy inputs meet required randomness criteria for secure key generation and cryptographic operations
SESIP is a cybersecurity evaluation framework developed to assess the security of Internet of Things (IoT) platforms. SESIP has been adopted by CEN and CENELEC as a European standard (EN 17927).
It provides a standardized methodology to evaluate the security features and robustness of IoT devices and their underlying platforms. The framework covers multiple security domains, including device identity, data protection, communication security, and software integrity. SESIP aims to identify vulnerabilities and ensure that IoT platforms meet minimum security requirements. It supports manufacturers, developers, and evaluators in implementing and verifying security controls. SESIP emphasizes life cycle security, addressing threats from device manufacturing to decommissioning. The standard facilitates trust and transparency between vendors and consumers by providing clear security assurance levels. SESIP is aligned with international cybersecurity standards and best practices to promote global interoperability. It encourages continuous improvement through periodic reassessment and updates.
SESIP allows the evaluation of platform parts, individually or in composition, in such a way that the evaluation results of those platform parts remain applicable in different connected products.
An example of composition is extracted from SESIP documentation provided below:
- There are 5 security certification levels named SESIP1, SESIP2, SESIP3, SESIP4, and SESIP5 and they are hierarchical:
- SESIP Assurance Level 1 (SESIP1) is a self-assessment-based level
- SESIP Assurance Level 2 (SESIP2) is a black-box penetration testing level
- SESIP Assurance Level 3 (SESIP3) is a traditional white-box vulnerability analysis
- SESIP Assurance Level 4 (SESIP4) is intended to reuse SOG-IS/EUCC certified platforms
- SESIP Assurance Level 5 (SESIP5) is intended to reuse SOG-IS/EUCC certified platforms
The STM32 SESIP certificates can be found on the TrustCB security scheme website.
PSA , or Platform Security Architecture, is based on a specification developed by Arm® to establish a security‑principles‑driven approach to device protection. It provides a foundational framework to enhance the security of connected devices.
PSA Certified is a global security certification framework designed specifically for Internet of Things (IoT) devices and embedded systems. It provides a structured approach to evaluating and improving device security from design to deployment. The framework is based on the Platform Security Architecture (PSA) developed by Arm® and incorporates industry best practices and standards.
PSA Certified offers multiple assurance levels, addressing different security needs and threat models. The certification process involves independent third‑party assessments to validate security claims. PSA Certified aims to simplify security adoption for manufacturers and increase trust among consumers and partners.
It promotes interoperability by aligning with global security standards such as ISO/IEC 15408 (Common Criteria). The program supports a broad ecosystem, including chip vendors, device manufacturers, and service providers. Overall, PSA Certified helps accelerate secure IoT innovation while reducing risks associated with cyberthreats.
Governance of PSA Certified is now handled by GlobalPlatform®. STM32 PSA certificates can still be found here.
NIST CAVP is a program that validates cryptographic algorithms used in federal information systems. It provides standardized testing to ensure that algorithms meet strict security and interoperability requirements. The program covers a wide range of cryptographic functions, including encryption, hashing, and digital signatures. Vendors submit their algorithm implementations for independent testing and certification. CAVP helps maintain trust in cryptographic modules and supports compliance with federal cybersecurity standards.
For STM32 certificates, please visit NIST CAVP cryptographic algorithm certificates.
NIST Entropy Source Validation (ESV) assesses the quality and reliability of entropy sources used in cryptographic systems. It ensures that random number generators produce unpredictable and high-quality randomness essential for secure cryptographic operations. The validation process involves rigorous statistical testing and analysis of entropy inputs. ESV helps detect biases, patterns, or weaknesses that could compromise security. It is a critical component for certifying cryptographic modules under standards like FIPS 140-3. Overall, NIST ESV strengthens trust in the randomness used for key generation and other security functions.
STM32 random generator certificates can be found at Cryptographic Module Validation Program | CSRC.
Essential for upcoming regulations and final product compliance, STM32Trust is also dedicated to building trust with our developers through the software deliverables we provide.
To achieve this, a secure software development life cycle has been established within STM32Cube for our STM32 deliverables. This initiative aims to integrate security into our software development process, evolving it into a comprehensive secure software development life cycle.
A detailed documentation of this flow is available in our STM32 MCU wiki - STM32Trust software security policies. Additional questions and answers are also provided in our STM32Trust software security policies Q&A wiki. This process is currently being implemented, initially limited to most STM32CubeXXX packages and various security components, but it will be scaled up over time.
STM32Trust also aims to offer our developers an ecosystem of trusted partners. Carefully chosen for their expertise and quality of service, these STM32Trust security partners provide a wide range of services, including consulting, training, key generation and provisioning, cryptographic solutions, design services, and up to complete solution implementations
Trainings
A full range of STM32 training courses (STM32G4, STM32F7, STM32L4, STM32L4+, STM32L5, STM32G0, STM32WB, STM32H7, STM32WL, STM32U5, STM32C0 and STM32MP1) are available online.