Crypto Benchmark on STM32U3 MCU
ARM Cortex-M33 @ 96 MHz

This benchmark conducted on NUCLEO-U385RG-Q development board with STM32U385RGT6Q MCU 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 STM32U3 microcontroller.

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

undefined

Cipher Algorithms

STM32U385 @ 96 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.284 MB/s0.285 MB/s--
3DES-CTR0.284 MB/s0.284 MB/s--
AES128-CBC1.429 MB/s1.395 MB/s16.863 MB/s16.638 MB/s
AES192-CBC1.25 MB/s1.226 MB/s--
AES256-CBC1.111 MB/s1.093 MB/s12.919 MB/s12.755 MB/s
AES128-CTR1.43 MB/s1.429 MB/s16.42 MB/s16.393 MB/s
AES192-CTR1.251 MB/s1.25 MB/s--
AES256-CTR1.112 MB/s1.111 MB/s12.674 MB/s12.626 MB/s
SM4-CBC1.104 MB/s1.098 MB/s--
SM4-CTR1.105 MB/s1.105 MB/s--

AEAD Algorithms

STM32U385 @ 96 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmEncryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM0.778 MB/s0.739 MB/s15.822 MB/s15.723 MB/s
AES192-GCM0.721 MB/s0.685 MB/s--
AES256-GCM0.671 MB/s0.638 MB/s12.21 MB/s12.135 MB/s
AES128-CCM0.756 MB/s0.757 MB/s9.174 MB/s9.14 MB/s
AES192-CCM0.653 MB/s0.654 MB/s--
AES256-CCM0.576 MB/s0.576 MB/s6.92 MB/s6.891 MB/s
SM4-GCM0.672 MB/s0.671 MB/s--
SM4-CCM0.57 MB/s0.573 MB/s--
Ascon-AEAD1281.364 MB/s1.385 MB/s--
ChaCha20Poly13052.196 MB/s2.193 MB/s--

Hash Algorithms

STM32U385 @ 96 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
AlgorithmSpeed
(Software)
Speed
(Hardware)
MD57.692 MB/s-
SHA-11.74 MB/s43.478 MB/s
SHA-2241.355 MB/s45.871 MB/s
SHA-2561.355 MB/s45.871 MB/s
SHA-3840.783 MB/s53.475 MB/s
SHA-5120.783 MB/s53.763 MB/s
SHA3-2240.781 MB/s-
SHA3-2560.738 MB/s-
SHA3-3840.566 MB/s-
SHA3-5120.393 MB/s-
SM31.223 MB/s-
Ascon-Hash2560.504 MB/s-

Signature Algorithms

STM32U385 @ 96 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)137.1 ms22 ms20.2 ms1.8 ms
RSA (2048 bits)778.7 ms81.8 ms126.3 ms4.8 ms
RSA (3072 bits)2295.6 ms176.1 ms393.7 ms11.8 ms
RSA (4096 bits)5073.9 ms312.4 ms892.3 ms20.1 ms
DSA (1024 bits)79 ms166.4 ms24.9 ms58 ms
DSA (2048 bits)388.5 ms823.1 ms101.8 ms249.9 ms
DSA (3072 bits)843.4 ms1793.4 ms213.4 ms541.6 ms

EC Signature Algorithms

STM32U385 @ 96 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)116.4 ms106 ms28.8 ms30.6 ms
ECDSA (secp384r1)282.5 ms258.8 ms75.1 ms84 ms
ECDSA (secp521r1)579.2 ms517.8 ms174.2 ms198.8 ms
ECDSA (brainpoolP256r1)233.1 ms234.6 ms28.9 ms30.9 ms
ECDSA (brainpoolP384r1)575.1 ms578.4 ms74.1 ms83.6 ms
ECDSA (brainpoolP512r1)1137 ms1166.3 ms150.9 ms174.3 ms
SM2103.3 ms103.3 ms37.9 ms37.9 ms
EdDSA (Ed25519)27.8 ms25 ms--
EdDSA (Ed448)131 ms116.8 ms--

Key Exchange Algorithms

STM32U385 @ 96 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)315 ms315.1 ms60.7 ms60.7 ms
Diffie-Hellman (2048 bits)2258.9 ms2259.2 ms434.8 ms434.8 ms

EC Key Exchange Algorithms

STM32U385 @ 96 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)101.9 ms101.8 ms37.5 ms37.3 ms
ECDH (secp384r1)246.8 ms246.5 ms101.8 ms101.5 ms
ECDH (secp521r1)496.6 ms496.2 ms246.9 ms246.6 ms
ECDH (brainpoolP256r1)216.5 ms216.3 ms49.1 ms48.9 ms
ECDH (brainpoolP384r1)533 ms532.8 ms130 ms129.7 ms
ECDH (brainpoolP512r1)1052.6 ms1052.4 ms270.8 ms270.5 ms
ECDH (SM2)103.3 ms103.2 ms37.9 ms37.8 ms
ECDH (X25519)15 ms14.9 ms--
ECDH (X448)66.8 ms66.8 ms--