Crypto Benchmark on STM32F2 MCU
ARM Cortex-M3 @ 120 MHz
This benchmark conducted on STM3221G-EVAL Evaluation board with STM32F217IG 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 STM32F2 microcontroller.
STM32F2 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
STM32F217 @ 120 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 | 0.216 MB/s | 0.214 MB/s | - | - | - | - |
AES-128 | 1.156 MB/s | 1.141 MB/s | 0.612 MB/s | 0.611 MB/s | 0.709 MB/s | 0.708 MB/s |
AES-192 | 1.001 MB/s | 0.993 MB/s | 0.522 MB/s | 0.522 MB/s | 0.644 MB/s | 0.644 MB/s |
AES-256 | 0.882 MB/s | 0.878 MB/s | 0.457 MB/s | 0.457 MB/s | 0.596 MB/s | 0.596 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 10.526 MB/s | 10.526 MB/s | - | - | - | - |
AES-128 | 25.575 MB/s | 25.445 MB/s | - | - | - | - |
AES-192 | 25.51 MB/s | 25.316 MB/s | - | - | - | - |
AES-256 | 25.445 MB/s | 25.252 MB/s | - | - | - | - |
Hash Algorithms
STM32F217 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.6
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 7.812 MB/s | 51.813 MB/s |
SHA-1 | 1.725 MB/s | 47.619 MB/s |
SHA-224 | 1.67 MB/s | - |
SHA-256 | 1.67 MB/s | - |
SHA-384 | 0.844 MB/s | - |
SHA-512 | 0.844 MB/s | - |
SHA3-224 | 0.554 MB/s | - |
SHA3-256 | 0.523 MB/s | - |
SHA3-384 | 0.401 MB/s | - |
SHA3-512 | 0.278 MB/s | - |
Signature Algorithms
STM32F217 @ 120 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) | 168.9 ms | 27.3 ms |
RSA (2048 bits) | 967.3 ms | 101.2 ms |
RSA (3072 bits) | 2879.8 ms | 218.2 ms |
DSA (1024 bits) | 100.2 ms | 206.4 ms |
DSA (2048 bits) | 491 ms | 1024.3 ms |
EC Signature Algorithms
STM32F217 @ 120 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) | 288.8 ms | 363.1 ms |
ECDSA (P-384) | 543.4 ms | 674.6 ms |
ECDSA (P-521) | 636.8 ms | 760.4 ms |
EdDSA (Ed25519) | 84.1 ms | 166.5 ms |
EdDSA (Ed448) | 383.1 ms | 762.1 ms |
Key Exchange Algorithms
STM32F217 @ 120 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) | 401.8 ms | 402.1 ms |
Diffie-Hellman (2048 bits) | 2898.7 ms | 2899 ms |
EC Key Exchange Algorithms
STM32F217 @ 120 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) | 278.5 ms | 277.7 ms |
ECDH (P-384) | 514.9 ms | 522.5 ms |
ECDH (P-521) | 626.9 ms | 625.2 ms |
ECDH (X25519) | 46.6 ms | 47.3 ms |
ECDH (X448) | 193.5 ms | 196.5 ms |