Crypto Benchmark on STM32MP13 MCU
ARM Cortex-A7 @ 650 MHz
This benchmark conducted on STM32MP135F-DK Discovery kit with STM32MP135F MPU 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 STM32MP13 microcontroller.
STM32MP13 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC 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.423 MB/s | 2.32 MB/s | - | - | - | - |
AES-128 | 11.16 MB/s | 8.196 MB/s | 6.92 MB/s | 7.002 MB/s | 7.032 MB/s | 6.997 MB/s |
AES-192 | 9.94 MB/s | 7.112 MB/s | 5.952 MB/s | 6.016 MB/s | 6.518 MB/s | 6.489 MB/s |
AES-256 | 8.96 MB/s | 6.321 MB/s | 5.265 MB/s | 5.316 MB/s | 6.027 MB/s | 5.998 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 12.787 MB/s | 12.787 MB/s | - | - | - | - |
AES-128 | 23.474 MB/s | 23.201 MB/s | 21.881 MB/s | 21.881 MB/s | 22.172 MB/s | 22.172 MB/s |
AES-192 | 23.474 MB/s | 23.148 MB/s | 21.881 MB/s | 21.834 MB/s | 22.172 MB/s | 22.172 MB/s |
AES-256 | 23.419 MB/s | 23.201 MB/s | 21.881 MB/s | 21.881 MB/s | 22.123 MB/s | 22.123 MB/s |
Hash Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 51.02 MB/s | - |
SHA-1 | 12.903 MB/s | 75.187 MB/s |
SHA-224 | 11.467 MB/s | 80.645 MB/s |
SHA-256 | 11.467 MB/s | 80.645 MB/s |
SHA-384 | 5.455 MB/s | 85.47 MB/s |
SHA-512 | 5.458 MB/s | 86.206 MB/s |
SHA3-224 | 5.277 MB/s | 49.751 MB/s |
SHA3-256 | 4.992 MB/s | 48.78 MB/s |
SHA3-384 | 3.849 MB/s | 48.076 MB/s |
SHA3-512 | 2.688 MB/s | 46.296 MB/s |
Signature Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 26.3 ms | 3.4 ms |
RSA (2048 bits) | 155 ms | 12.2 ms |
RSA (3072 bits) | 465.1 ms | 26.2 ms |
RSA (4096 bits) | 1041.4 ms | 46 ms |
DSA (1024 bits) | 14.9 ms | 30.1 ms |
DSA (2048 bits) | 74.9 ms | 154.2 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
RSA (1024 bits) | 2.6 ms | 0.3 ms |
RSA (2048 bits) | 13.5 ms | 0.7 ms |
RSA (3072 bits) | 40.4 ms | 1.6 ms |
RSA (4096 bits) | 88.8 ms | 2.7 ms |
DSA (1024 bits) | 3.3 ms | 7.4 ms |
DSA (2048 bits) | 12 ms | 28.5 ms |
EC Signature Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 49.1 ms | 60.7 ms |
ECDSA (P-384) | 95 ms | 114.8 ms |
ECDSA (P-521) | 114.8 ms | 136.2 ms |
EdDSA (Ed25519) | 8.7 ms | 17.2 ms |
EdDSA (Ed448) | 40.6 ms | 80.9 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
ECDSA (P-256) | 4 ms | 4.6 ms |
ECDSA (P-384) | 9.7 ms | 11.2 ms |
ECDSA (P-521) | 22.6 ms | 26.4 ms |
Key Exchange Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 66.7 ms | 66.7 ms |
Diffie-Hellman (2048 bits) | 481.4 ms | 481.3 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
Diffie-Hellman (1024 bits) | 6.5 ms | 6.5 ms |
Diffie-Hellman (2048 bits) | 43 ms | 42.9 ms |
EC Key Exchange Algorithms
STM32MP135 @ 650 MHz
- • Benchmark generated with CycloneCRYPTO 2.3.4
- • Compiled using GCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 48.8 ms | 48.4 ms |
ECDH (P-384) | 89.3 ms | 89.4 ms |
ECDH (P-521) | 112.7 ms | 112.6 ms |
ECDH (X25519) | 4.8 ms | 4.8 ms |
ECDH (X448) | 20.7 ms | 20.8 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
ECDH (P-256) | 4.8 ms | 4.8 ms |
ECDH (P-384) | 12 ms | 12 ms |
ECDH (P-521) | 30.4 ms | 30.5 ms |