Product overview
Key Benefits
STM32U0 support
The new version of this software now support our latest STM32U0.
Description
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 non-repudiation.
The library includes firmware functions for the STM32 microcontrollers in the STM32F0 series, STM32F1 series, STM32F2 series, STM32F3 series, STM32F4 series, STM32F7 series, STM32G0 series, STM32G4 series, STM32H5 series, STM32H7 series, STM32L0 series, STM32L1 series, STM32L4 series, STM32L4+ series, STM32L5 series, STM32U0 series, STM32U5 series, STM32WBA series, STM32WB series, and STM32WL series depending on their Arm® Cortex®-M processor. For more details, refer to the STM32 cryptographic library dedicated pages of the STM32 MCU wiki at https://wiki.st.com/stm32mcu.
Most of the well-used algorithms are certified according to the US cryptographic algorithm validation program (CAVP), helping customers to prove quickly and cost-effectively the security of their new products.
Full details are available online at the NIST CSRC algorithm validation lists website, selecting the CAVP web page.
In this package, there are examples for each algorithm for popular development tools including IAR Systems® EWARM (IAR Embedded Workbench®), Keil® MDK-ARM, and GCC -based IDEs such as STMicroelectronics STM32CubeIDE.
To benefit from STM32 cryptographic accelerators, refer to the STM32Cube MCU and MPU package hardware abstraction layer (HAL) functions and examples.
-
All features
- Cipher encryption and decryption:
- AES: CBC, CCM, CFB, CTR, ECB, GCM, OFB, XTS, KeyWrap
- SM4: CBC, CFB, CTR, ECB, OFB
- Chacha-Poly1305
- Digest generation:
- SHA-1
- SHA-2: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256
- SHA-3: SHA3-224, SHA3-256, SHA3-384, SHA3-512
- SM3
- SHAKE
- Message authentication code (MAC) generation:
- HMAC:
- SHA-1
- SHA-2: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256
- SM3
- AES: CMAC
- KMAC: SHAKE
- HMAC:
- Elliptic curves based on key generation, signature and verification:
- Elliptic curve digital signature algorithm (ECDSA): NIST-R (P-224, P-256, P-384, P-521), NIST-K P-256, BRAINPOOL R/T (P-160, P-192, P-224, P-256, P-320, P-384, P-512), ANSSI P-256
- Edwards-curve digital signature algorithm (EdDSA): Ed448, Ed25519
- SM2 digital signature algorithm: OSCCA 256-bits curve
- Elliptic curves Diffie-Hellman:
- Curve448, curve25519
- NIST-R (P-224, P-256, P-384, P-521), NIST-K P-256, BRAINPOOL R/T (P-160, P-192, P-224, P-256, P-320, P-384, P-512), ANSSI P-256
- RSA signature, verification, encryption and decryption:
- PKCS#1 v1.5 and v2.2
- Chinese remainder theorem (CRT) key representation
- Hash method:
- SHA-1
- SHA-2: SHA-224, SHA-256, SHA-384, SHA-512, SHA-512/224, SHA-512/256
- Deterministic random bit generator (DRBG):
- CTR-DRBG
- Cipher encryption and decryption: