Crypto Benchmark on STM32H7 MCU
ARM Cortex-M7 @ 400 MHz
This benchmark conducted on STM32 Nucleo-144 development board with STM32H753ZI 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 STM32H7 microcontroller.
STM32H7 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | CBC Encrypt (Software) | CBC Decrypt (Software) | CCM Encrypt (Software) | CCM Decrypt (Software) | GCM Encrypt (Software) | GCM Decrypt (Software) |
---|---|---|---|---|---|---|
3DES | 2.052 MB/s | 2.005 MB/s | - | - | - | - |
AES-128 | 8.326 MB/s | 8.305 MB/s | 4.221 MB/s | 4.244 MB/s | 4.748 MB/s | 4.719 MB/s |
AES-192 | 7.262 MB/s | 7.326 MB/s | 3.656 MB/s | 3.672 MB/s | 4.374 MB/s | 4.349 MB/s |
AES-256 | 6.43 MB/s | 6.548 MB/s | 3.227 MB/s | 3.239 MB/s | 4.056 MB/s | 4.035 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 18.867 MB/s | 18.867 MB/s | - | - | - | - |
AES-128 | 48.309 MB/s | 47.846 MB/s | 46.948 MB/s | 46.728 MB/s | 49.261 MB/s | 48.78 MB/s |
AES-192 | 48.309 MB/s | 47.619 MB/s | 43.29 MB/s | 43.29 MB/s | 45.454 MB/s | 45.248 MB/s |
AES-256 | 48.309 MB/s | 47.619 MB/s | 43.29 MB/s | 43.103 MB/s | 45.454 MB/s | 45.045 MB/s |
Hash Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 42.194 MB/s | 106.382 MB/s |
SHA-1 | 11.75 MB/s | 94.339 MB/s |
SHA-224 | 11.074 MB/s | 106.382 MB/s |
SHA-256 | 11.074 MB/s | 105.263 MB/s |
SHA-384 | 4.488 MB/s | - |
SHA-512 | 4.49 MB/s | - |
SHA3-224 | 2.458 MB/s | - |
SHA3-256 | 2.322 MB/s | - |
SHA3-384 | 1.778 MB/s | - |
SHA3-512 | 1.233 MB/s | - |
Signature Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 24.9 ms | 4.1 ms |
RSA (2048 bits) | 130.8 ms | 14.4 ms |
RSA (3072 bits) | 374.9 ms | 30.4 ms |
RSA (4096 bits) | 817.3 ms | 53.3 ms |
DSA (1024 bits) | 14.4 ms | 29.1 ms |
DSA (2048 bits) | 65 ms | 135.1 ms |
EC Signature Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 57.6 ms | 72.1 ms |
ECDSA (P-384) | 103.5 ms | 127.1 ms |
ECDSA (P-521) | 108.6 ms | 129.4 ms |
EdDSA (Ed25519) | 13.7 ms | 27.2 ms |
EdDSA (Ed448) | 58.9 ms | 117.4 ms |
Key Exchange Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 53.4 ms | 53.2 ms |
Diffie-Hellman (2048 bits) | 365.9 ms | 365.3 ms |
EC Key Exchange Algorithms
STM32H753 @ 400 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 55.7 ms | 55.5 ms |
ECDH (P-384) | 97.4 ms | 98.4 ms |
ECDH (P-521) | 106.2 ms | 105.9 ms |
ECDH (X25519) | 7.7 ms | 7.7 ms |
ECDH (X448) | 30.3 ms | 30.3 ms |