Crypto Benchmark on STM32F4 MCU
ARM Cortex-M4 @ 180 MHz
This benchmark conducted on STM32 Nucleo-144 development board with STM32F439ZI MCU will help you in qualifying performance of CycloneCRYPTO (Crypto Library), CycloneSSL (SSL/TLS Library) and CycloneSSH (SSH Library) running on STMicroelectronics STM32F4 series.
Cipher Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Algorithm | CBC Encrypt (Software) | CBC Decrypt (Software) | CCM Encrypt (Software) | CCM Decrypt (Software) | GCM Encrypt (Software) | GCM Decrypt (Software) |
---|---|---|---|---|---|---|
3DES | 0.268 MB/s | 0.265 MB/s | - | - | - | - |
AES-128 | 1.469 MB/s | 1.494 MB/s | 0.781 MB/s | 0.78 MB/s | 0.975 MB/s | 0.974 MB/s |
AES-192 | 1.265 MB/s | 1.296 MB/s | 0.66 MB/s | 0.66 MB/s | 0.877 MB/s | 0.876 MB/s |
AES-256 | 1.11 MB/s | 1.145 MB/s | 0.577 MB/s | 0.577 MB/s | 0.806 MB/s | 0.805 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 15.797 MB/s | 15.797 MB/s | - | - | - | - |
AES-128 | 40 MB/s | 39.682 MB/s | 33.67 MB/s | 33.333 MB/s | 37.593 MB/s | 37.174 MB/s |
AES-192 | 39.84 MB/s | 39.525 MB/s | 33.444 MB/s | 33.222 MB/s | 37.593 MB/s | 37.174 MB/s |
AES-256 | 39.84 MB/s | 39.682 MB/s | 33.444 MB/s | 33.112 MB/s | 37.453 MB/s | 37.037 MB/s |
Hash Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 10.362 MB/s | 77.519 MB/s |
SHA-1 | 2.59 MB/s | 71.428 MB/s |
SHA-224 | 2.49 MB/s | 75.757 MB/s |
SHA-256 | 2.49 MB/s | 75.757 MB/s |
SHA-384 | 1.285 MB/s | - |
SHA-512 | 1.286 MB/s | - |
SHA3-224 | 0.829 MB/s | - |
SHA3-256 | 0.783 MB/s | - |
SHA3-384 | 0.601 MB/s | - |
SHA3-512 | 0.417 MB/s | - |
Signature Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Signature | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 90 ms | 16.6 ms |
RSA (2048 bits) | 468.6 ms | 61.4 ms |
RSA (3072 bits) | 1332.9 ms | 131.7 ms |
DSA (1024 bits) | 52.9 ms | 110 ms |
DSA (2048 bits) | 240.1 ms | 507.9 ms |
EC Signature Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Signature | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 190.1 ms | 238.7 ms |
ECDSA (P-384) | 346.2 ms | 429.3 ms |
ECDSA (P-521) | 374.2 ms | 444.9 ms |
EdDSA (Ed25519) | 45.5 ms | 89.8 ms |
EdDSA (Ed448) | 198 ms | 393.1 ms |
Key Exchange Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 182.9 ms | 183 ms |
Diffie-Hellman (2048 bits) | 1254.2 ms | 1254.3 ms |
EC Key Exchange Algorithms
STM32F4 @ 180 MHz
Benchmark generated with CycloneCRYPTO 2.1.6
Compiled using ARM CC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 182.9 ms | 182.3 ms |
ECDH (P-384) | 327.3 ms | 332.3 ms |
ECDH (P-521) | 365.8 ms | 364.6 ms |
ECDH (X25519) | 25.3 ms | 25.3 ms |
ECDH (X448) | 101.2 ms | 101.2 ms |