Crypto Benchmark on STM32F7 MCU
ARM Cortex-M7 @ 216 MHz

This benchmark conducted on STM32 Nucleo-144 development board with STM32F756ZG 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 STM32F7 microcontroller.

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

Cipher Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmCBC Encrypt (Software)CBC Decrypt (Software)CCM Encrypt (Software)CCM Decrypt (Software)GCM Encrypt (Software)GCM Decrypt (Software)
3DES1.127 MB/s1.089 MB/s----
AES-1284.541 MB/s4.518 MB/s2.3 MB/s2.315 MB/s2.584 MB/s2.579 MB/s
AES-1923.951 MB/s3.982 MB/s1.991 MB/s2.002 MB/s2.38 MB/s2.375 MB/s
AES-2563.5 MB/s3.557 MB/s1.756 MB/s1.765 MB/s2.206 MB/s2.202 MB/s
AlgorithmCBC Encrypt (Hardware)CBC Decrypt (Hardware)CCM Encrypt (Hardware)CCM Decrypt (Hardware)GCM Encrypt (Hardware)GCM Decrypt (Hardware)
3DES19.88 MB/s19.92 MB/s----
AES-12854.054 MB/s53.475 MB/s48.309 MB/s49.261 MB/s51.813 MB/s51.813 MB/s
AES-19249.019 MB/s48.78 MB/s42.194 MB/s41.493 MB/s43.859 MB/s44.247 MB/s
AES-25649.019 MB/s48.78 MB/s42.372 MB/s41.493 MB/s43.668 MB/s44.247 MB/s

Hash Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmSpeed (Software)Speed (Hardware)
MD521.739 MB/s149.253 MB/s
SHA-16.43 MB/s125 MB/s
SHA-2245.931 MB/s147.058 MB/s
SHA-2565.934 MB/s147.058 MB/s
SHA-3842.341 MB/s-
SHA-5122.341 MB/s-
SHA3-2241.135 MB/s-
SHA3-2561.073 MB/s-
SHA3-3840.822 MB/s-
SHA3-5120.569 MB/s-

Signature Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmSignature Generation (Software)Signature Verification (Software)
RSA (1024 bits)47.1 ms7.4 ms
RSA (2048 bits)243.7 ms26.5 ms
RSA (3072 bits)696.4 ms56.3 ms
RSA (4096 bits)1516.5 ms98.7 ms
DSA (1024 bits)27 ms54.4 ms
DSA (2048 bits)121 ms250.9 ms

EC Signature Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmSignature Generation (Software)Signature Verification (Software)
ECDSA (P-256)118 ms148 ms
ECDSA (P-384)213.9 ms262.4 ms
ECDSA (P-521)221.1 ms263.4 ms
EdDSA (Ed25519)25.3 ms50.2 ms
EdDSA (Ed448)108.5 ms216.3 ms

Key Exchange Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmPublic Key Generation (Software)Shared Secret Computation (Software)
Diffie-Hellman (1024 bits)99.6 ms99.5 ms
Diffie-Hellman (2048 bits)678.8 ms678.7 ms

EC Key Exchange Algorithms

STM32F756 @ 216 MHz

  • Benchmark generated with CycloneCRYPTO 2.1.6
  • Compiled using ARMCC with optimization level 3
AlgorithmPublic Key Generation (Software)Shared Secret Computation (Software)
ECDH (P-256)114.7 ms114.2 ms
ECDH (P-384)201.7 ms203.3 ms
ECDH (P-521)216.5 ms216 ms
ECDH (X25519)14.4 ms14.4 ms
ECDH (X448)55.8 ms55.8 ms