Crypto Benchmark on STM32H5 MCU
ARM Cortex-M33 @ 250 MHz

This benchmark conducted on STM32H573I-DK discovery kit with STM32H573IIK3Q 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 STM32H5 microcontroller.

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

See also software crypto performance comparison: STM32F4 versus STM32H5

Cipher Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.743 MB/s0.746 MB/s--
3DES-CTR0.742 MB/s0.742 MB/s--
AES128-CBC3.727 MB/s3.645 MB/s44.052 MB/s43.29 MB/s
AES192-CBC3.26 MB/s3.204 MB/s--
AES256-CBC2.898 MB/s2.857 MB/s33.783 MB/s33.222 MB/s
AES128-CTR3.732 MB/s3.735 MB/s42.918 MB/s42.735 MB/s
AES192-CTR3.265 MB/s3.267 MB/s--
AES256-CTR2.901 MB/s2.903 MB/s33.003 MB/s33.003 MB/s
SM4-CBC2.719 MB/s2.869 MB/s--
SM4-CTR2.884 MB/s2.886 MB/s--

AEAD Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM2.04 MB/s2.003 MB/s41.322 MB/s40.983 MB/s
AES192-GCM1.89 MB/s1.855 MB/s--
AES256-GCM1.76 MB/s1.73 MB/s31.847 MB/s31.645 MB/s
AES128-CCM1.801 MB/s1.977 MB/s23.923 MB/s23.809 MB/s
AES192-CCM1.571 MB/s1.709 MB/s--
AES256-CCM1.395 MB/s1.505 MB/s18.018 MB/s17.953 MB/s
SM4-GCM1.753 MB/s1.752 MB/s--
SM4-CCM1.368 MB/s1.495 MB/s--
Ascon-AEAD1283.562 MB/s3.619 MB/s--
ChaCha20Poly13055.743 MB/s5.733 MB/s--

Hash Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Speed
(Software)
Speed
(Hardware)
MD520.12 MB/s-
SHA-14.543 MB/s113.636 MB/s
SHA-2243.538 MB/s120.481 MB/s
SHA-2563.539 MB/s119.047 MB/s
SHA-3842.044 MB/s140.845 MB/s
SHA-5122.044 MB/s140.845 MB/s
SHA3-2242.04 MB/s-
SHA3-2561.929 MB/s-
SHA3-3841.48 MB/s-
SHA3-5121.028 MB/s-
SM33.194 MB/s-
Ascon-Hash2561.318 MB/s-

Signature Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)52.5 ms8.3 ms7.8 ms0.7 ms
RSA (2048 bits)298.1 ms31.4 ms48.5 ms1.8 ms
RSA (3072 bits)879.2 ms67.5 ms151.2 ms4.6 ms
RSA (4096 bits)1943 ms119.6 ms342.6 ms7.7 ms
DSA (1024 bits)30.2 ms63.7 ms9.6 ms22.2 ms
DSA (2048 bits)148.8 ms315.2 ms39.1 ms95.9 ms
DSA (3072 bits)322.9 ms686.8 ms81.9 ms207.8 ms

EC Signature Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)44.9 ms40.9 ms11.1 ms11.8 ms
ECDSA (secp384r1)110.7 ms100.4 ms28.9 ms32.3 ms
ECDSA (secp521r1)223.1 ms199.4 ms66.9 ms76.4 ms
ECDSA (brainpoolP256r1)90.9 ms90.7 ms11.1 ms11.9 ms
ECDSA (brainpoolP384r1)223.2 ms223.8 ms28.4 ms32.1 ms
ECDSA (brainpoolP512r1)437.6 ms447.7 ms58 ms67 ms
SM241.8 ms41.8 ms14.4 ms14.4 ms
EdDSA (Ed25519)10.8 ms9.6 ms--
EdDSA (Ed448)50.2 ms44.7 ms--

Key Exchange Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
Diffie-Hellman (1024 bits)120.6 ms120.7 ms23.3 ms23.3 ms
Diffie-Hellman (2048 bits)865 ms865.2 ms167 ms167 ms

EC Key Exchange Algorithms

STM32H573 @ 250 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using Clang with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)39.5 ms39.4 ms14.3 ms14.2 ms
ECDH (secp384r1)97 ms96.9 ms39.5 ms39.4 ms
ECDH (secp521r1)191.4 ms191.3 ms95 ms94.8 ms
ECDH (brainpoolP256r1)84.6 ms84.4 ms18.8 ms18.8 ms
ECDH (brainpoolP384r1)207.2 ms207 ms49.8 ms49.8 ms
ECDH (brainpoolP512r1)405.2 ms405.1 ms103.8 ms103.8 ms
ECDH (SM2)41.8 ms41.7 ms14.4 ms14.4 ms
ECDH (X25519)5.8 ms5.7 ms--
ECDH (X448)25.7 ms25.7 ms--