Crypto Benchmark on STM32U5 MCU
ARM Cortex-M33 @ 160 MHz

This benchmark conducted on B-U585I-IOT02A discovery kit for IoT node with STM32U5 series will help you in qualifying performance of CycloneCRYPTO (Cryptography library), CycloneSSL (TLS 1.3 & DTLS 1.2 library), CycloneSSH (SSH library with SCP & SFTP protocols), CycloneIPSEC (IPsec/IKEv2 library) and CycloneTCP (TCP/IPv4/IPv6 stack with secure protocols like HTTPS, FTPS, MQTTS, Secure WebSocket, Secure CoAP, Secure Modbus/TCP, SNMPv3...) running on STMicroelectronics STM32U5 microcontroller.

STM32U5 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.

Cipher Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmEncryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.461 MB/s0.462 MB/s--
3DES-CTR0.472 MB/s0.472 MB/s--
AES128-CBC2.302 MB/s2.191 MB/s28.169 MB/s27.7 MB/s
AES192-CBC2.023 MB/s1.934 MB/s--
AES256-CBC1.804 MB/s1.736 MB/s21.598 MB/s21.231 MB/s
AES128-CTR2.279 MB/s2.278 MB/s27.472 MB/s27.247 MB/s
AES192-CTR2.005 MB/s2.004 MB/s--
AES256-CTR1.79 MB/s1.789 MB/s21.097 MB/s21.052 MB/s
SM4-CBC1.844 MB/s1.834 MB/s--
SM4-CTR1.845 MB/s1.845 MB/s--

AEAD Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmEncryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM1.209 MB/s1.247 MB/s26.178 MB/s26.109 MB/s
AES192-GCM1.122 MB/s1.156 MB/s--
AES256-GCM1.049 MB/s1.079 MB/s20.242 MB/s20.242 MB/s
AES128-CCM1.263 MB/s1.228 MB/s15.267 MB/s15.22 MB/s
AES192-CCM1.092 MB/s1.065 MB/s--
AES256-CCM0.962 MB/s0.942 MB/s11.507 MB/s11.454 MB/s
SM4-GCM1.12 MB/s1.121 MB/s--
SM4-CCM0.956 MB/s0.923 MB/s--
Ascon-AEAD1282.276 MB/s2.312 MB/s--
ChaCha20Poly13053.672 MB/s3.661 MB/s--

Hash Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmSpeed
(Software)
Speed
(Hardware)
MD512.82 MB/s84.745 MB/s
SHA-12.905 MB/s74.626 MB/s
SHA-2242.26 MB/s83.333 MB/s
SHA-2562.261 MB/s83.333 MB/s
SHA-3841.305 MB/s-
SHA-5121.305 MB/s-
SHA3-2241.299 MB/s-
SHA3-2561.228 MB/s-
SHA3-3840.942 MB/s-
SHA3-5120.654 MB/s-
SM32.042 MB/s-
Ascon-Hash2560.842 MB/s-

Signature Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmGeneration
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)82.2 ms13.1 ms12.1 ms1 ms
RSA (2048 bits)466.8 ms49 ms75.7 ms2.9 ms
RSA (3072 bits)1375.5 ms105.5 ms236.3 ms7 ms
RSA (4096 bits)3039.8 ms187.2 ms535.4 ms12.1 ms
DSA (1024 bits)47.5 ms99.8 ms14.9 ms34.9 ms
DSA (2048 bits)233 ms493.3 ms61.2 ms149.8 ms

EC Signature Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmGeneration
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)73.1 ms65.6 ms17.3 ms18.3 ms
ECDSA (secp384r1)179 ms162.3 ms45.1 ms50.3 ms
ECDSA (secp521r1)351.2 ms312.2 ms104.6 ms119.3 ms
ECDSA (brainpoolP256r1)142.5 ms142.7 ms17.3 ms18.5 ms
ECDSA (brainpoolP384r1)347.8 ms348.6 ms44.5 ms50.1 ms
ECDSA (brainpoolP512r1)685.4 ms701 ms90.5 ms104.6 ms
SM264.3 ms64.3 ms22.6 ms22.6 ms
EdDSA (Ed25519)16.7 ms15.1 ms--
EdDSA (Ed448)78.9 ms70.3 ms--

Key Exchange Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmPublic Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
Diffie-Hellman (1024 bits)188.8 ms188.9 ms36.5 ms36.3 ms
Diffie-Hellman (2048 bits)1353.4 ms1353.6 ms261 ms260.9 ms

EC Key Exchange Algorithms

STM32U585 @ 160 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmPublic Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)64.1 ms64 ms22.3 ms22.2 ms
ECDH (secp384r1)157.3 ms157.2 ms61.2 ms61.1 ms
ECDH (secp521r1)301.3 ms301.1 ms148.2 ms148.1 ms
ECDH (brainpoolP256r1)132.2 ms132.1 ms29.4 ms29.3 ms
ECDH (brainpoolP384r1)322.6 ms322.5 ms78 ms77.9 ms
ECDH (brainpoolP512r1)634.9 ms634.7 ms162.4 ms162.3 ms
ECDH (SM2)64.3 ms64.3 ms22.7 ms22.5 ms
ECDH (X25519)9 ms9 ms--
ECDH (X448)40 ms40 ms--