Crypto Benchmark on STM32H7RS MCU
ARM Cortex-M7 @ 600 MHz

This benchmark conducted on NUCLEO-H7S3L8 development board with STM32H7S3L8 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 STM32H7RS microcontroller.

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

Cipher Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC2.537 MB/s2.103 MB/s--
3DES-CTR2.53 MB/s2.527 MB/s--
AES128-CBC12.406 MB/s12.376 MB/s75.757 MB/s75.757 MB/s
AES192-CBC10.822 MB/s10.917 MB/s76.335 MB/s75.757 MB/s
AES256-CBC9.587 MB/s9.775 MB/s76.335 MB/s75.187 MB/s
AES128-CTR11.918 MB/s11.918 MB/s75.187 MB/s75.187 MB/s
AES192-CTR10.438 MB/s10.438 MB/s74.626 MB/s74.626 MB/s
AES256-CTR9.293 MB/s9.293 MB/s75.187 MB/s75.187 MB/s
SM4-CBC10.471 MB/s10.298 MB/s--
SM4-CTR10.101 MB/s10.121 MB/s--

AEAD Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM7.163 MB/s7.137 MB/s77.519 MB/s77.519 MB/s
AES192-GCM6.591 MB/s6.57 MB/s71.942 MB/s71.428 MB/s
AES256-GCM6.108 MB/s6.09 MB/s70.921 MB/s70.921 MB/s
AES128-CCM6.349 MB/s6.357 MB/s73.529 MB/s73.529 MB/s
AES192-CCM5.491 MB/s5.5 MB/s68.027 MB/s68.027 MB/s
AES256-CCM4.842 MB/s4.844 MB/s68.027 MB/s68.027 MB/s
SM4-GCM6.464 MB/s6.443 MB/s--
SM4-CCM5.293 MB/s5.302 MB/s--
Ascon-AEAD12812.315 MB/s12.165 MB/s--
ChaCha20Poly13059.514 MB/s9.505 MB/s--

Hash Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Speed
(Software)
Speed
(Hardware)
MD550.251 MB/s-
SHA-117.182 MB/s158.73 MB/s
SHA-22416.155 MB/s178.571 MB/s
SHA-25616.129 MB/s181.818 MB/s
SHA-3846.393 MB/s217.391 MB/s
SHA-5126.389 MB/s217.391 MB/s
SHA3-2242.68 MB/s-
SHA3-2562.534 MB/s-
SHA3-3841.944 MB/s-
SHA3-5121.35 MB/s-
SM313.831 MB/s-
Ascon-Hash2564.69 MB/s-

Signature Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)17.3 ms2.8 ms6.4 ms0.5 ms
RSA (2048 bits)89.5 ms9.7 ms40.4 ms1.5 ms
RSA (3072 bits)254.5 ms20.6 ms126 ms3.8 ms
RSA (4096 bits)552.6 ms35.9 ms285.5 ms6.4 ms
DSA (1024 bits)9.6 ms19.7 ms5.5 ms11.2 ms
DSA (2048 bits)43.5 ms90.7 ms23.9 ms51.5 ms
DSA (3072 bits)92 ms193.2 ms49.5 ms109.5 ms

EC Signature Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)13 ms11.7 ms9.1 ms9.8 ms
ECDSA (secp384r1)31.3 ms28.5 ms24 ms26.9 ms
ECDSA (secp521r1)66.9 ms59.3 ms55.7 ms63.5 ms
ECDSA (brainpoolP256r1)24.8 ms24.9 ms9.2 ms9.8 ms
ECDSA (brainpoolP384r1)63.4 ms63.5 ms23.6 ms26.7 ms
ECDSA (brainpoolP512r1)130 ms132.3 ms48.2 ms55.6 ms
SM211.4 ms11.4 ms11 ms11 ms
EdDSA (Ed25519)3.8 ms3.5 ms--
EdDSA (Ed448)22.2 ms19.9 ms--

Key Exchange Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC 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)35.9 ms35.9 ms19.4 ms19.4 ms
Diffie-Hellman (2048 bits)244.8 ms244.7 ms139.2 ms139.2 ms
Diffie-Hellman (3072 bits)784.4 ms782.7 ms451 ms450.9 ms
Diffie-Hellman (4096 bits)1810.6 ms1808.8 ms1053.3 ms1053.4 ms

EC Key Exchange Algorithms

STM32H7S3 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)11.5 ms11.5 ms10.9 ms10.8 ms
ECDH (secp384r1)27.4 ms27.4 ms29.8 ms29.8 ms
ECDH (secp521r1)57.8 ms57.8 ms73.2 ms73.1 ms
ECDH (brainpoolP256r1)23.1 ms23 ms12.1 ms12 ms
ECDH (brainpoolP384r1)59 ms59 ms32.8 ms32.7 ms
ECDH (brainpoolP512r1)120.8 ms120.7 ms68.9 ms69 ms
ECDH (SM2)11.4 ms11.4 ms11 ms11 ms
ECDH (X25519)2.1 ms2.1 ms--
ECDH (X448)11.2 ms11.3 ms--