Crypto Benchmark on STM32F1 MCU
ARM Cortex-M3 @ 72 MHz
This benchmark conducted on STM3210C-EVAL evaluation board with STM32F107VC 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 STM32F1 microcontroller.
Cipher Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Encryption (Software) |
Decryption (Software) |
---|---|---|
3DES-CBC | 0.101 MB/s | 0.1 MB/s |
3DES-CTR | 0.101 MB/s | 0.101 MB/s |
AES128-CBC | 0.483 MB/s | 0.458 MB/s |
AES192-CBC | 0.418 MB/s | 0.396 MB/s |
AES256-CBC | 0.368 MB/s | 0.349 MB/s |
AES128-CTR | 0.469 MB/s | 0.469 MB/s |
AES192-CTR | 0.407 MB/s | 0.407 MB/s |
AES256-CTR | 0.359 MB/s | 0.359 MB/s |
SM4-CBC | 0.5 MB/s | 0.472 MB/s |
SM4-CTR | 0.486 MB/s | 0.485 MB/s |
AEAD Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Encryption (Software) |
Decryption (Software) |
---|---|---|
AES128-GCM | 0.302 MB/s | 0.302 MB/s |
AES192-GCM | 0.275 MB/s | 0.274 MB/s |
AES256-GCM | 0.252 MB/s | 0.252 MB/s |
AES128-CCM | 0.252 MB/s | 0.252 MB/s |
AES192-CCM | 0.215 MB/s | 0.215 MB/s |
AES256-CCM | 0.188 MB/s | 0.188 MB/s |
SM4-GCM | 0.309 MB/s | 0.308 MB/s |
SM4-CCM | 0.262 MB/s | 0.262 MB/s |
Ascon-AEAD128 | 0.661 MB/s | 0.665 MB/s |
ChaCha20Poly1305 | 0.584 MB/s | 0.583 MB/s |
Hash Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) |
---|---|
MD5 | 2.828 MB/s |
SHA-1 | 0.717 MB/s |
SHA-224 | 0.66 MB/s |
SHA-256 | 0.66 MB/s |
SHA-384 | 0.375 MB/s |
SHA-512 | 0.375 MB/s |
SHA3-224 | 0.295 MB/s |
SHA3-256 | 0.279 MB/s |
SHA3-384 | 0.215 MB/s |
SHA3-512 | 0.149 MB/s |
SM3 | 0.591 MB/s |
Ascon-Hash256 | 0.247 MB/s |
Signature Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
RSA (1024 bits) | 350.1 ms | 60.1 ms |
RSA (2048 bits) | 1909.3 ms | 219.4 ms |
DSA (1024 bits) | 201.3 ms | 418.2 ms |
DSA (2048 bits) | 955.2 ms | 2004.9 ms |
EC Signature Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
ECDSA (secp256r1) | 244.8 ms | 220.1 ms |
ECDSA (secp384r1) | 621.6 ms | 561.9 ms |
ECDSA (secp521r1) | 1357.8 ms | 1192.9 ms |
ECDSA (brainpoolP256r1) | 518.2 ms | 518.8 ms |
ECDSA (brainpoolP384r1) | 1419.3 ms | 1420.6 ms |
EdDSA (Ed25519) | 74.2 ms | 68.1 ms |
EdDSA (Ed448) | 350.2 ms | 309.9 ms |
Key Exchange Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) |
Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 757.2 ms | 757.7 ms |
Diffie-Hellman (2048 bits) | 5360.7 ms | 5361.2 ms |
EC Key Exchange Algorithms
STM32F107 @ 72 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) |
Shared Secret Computation (Software) |
---|---|---|
ECDH (secp256r1) | 213.1 ms | 212.6 ms |
ECDH (secp384r1) | 536.7 ms | 535.9 ms |
ECDH (secp521r1) | 1163 ms | 1161.7 ms |
ECDH (brainpoolP256r1) | 481.6 ms | 481 ms |
ECDH (brainpoolP384r1) | 1317.3 ms | 1316.5 ms |
ECDH (brainpoolP512r1) | 2796.1 ms | 2795.2 ms |
ECDH (SM2) | 215.4 ms | 214.8 ms |
ECDH (X25519) | 39.8 ms | 41 ms |
ECDH (X448) | 170.9 ms | 175.6 ms |