Crypto Benchmark on STM32WBA MCU
ARM Cortex-M33 @ 100 MHz
This benchmark conducted on STM32 Nucleo-64 development board with STM32WBA52CG 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 STM32WBA microcontroller.
STM32WBA MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang 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.28 MB/s | 0.272 MB/s | - | - | - | - |
AES-128 | 1.317 MB/s | 1.301 MB/s | 0.638 MB/s | 0.663 MB/s | 0.67 MB/s | 0.685 MB/s |
AES-192 | 1.159 MB/s | 1.149 MB/s | 0.561 MB/s | 0.581 MB/s | 0.626 MB/s | 0.639 MB/s |
AES-256 | 1.035 MB/s | 1.029 MB/s | 0.501 MB/s | 0.516 MB/s | 0.587 MB/s | 0.599 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
AES-128 | 15.797 MB/s | 15.576 MB/s | 8.92 MB/s | 8.826 MB/s | 14.771 MB/s | 14.577 MB/s |
AES-256 | 12.578 MB/s | 12.437 MB/s | 6.793 MB/s | 6.765 MB/s | 11.862 MB/s | 11.75 MB/s |
Hash Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 7.22 MB/s | 40.816 MB/s |
SHA-1 | 1.643 MB/s | 36.9 MB/s |
SHA-224 | 1.165 MB/s | 39.84 MB/s |
SHA-256 | 1.165 MB/s | 39.682 MB/s |
SHA-384 | 0.678 MB/s | - |
SHA-512 | 0.678 MB/s | - |
SHA3-224 | 0.644 MB/s | - |
SHA3-256 | 0.609 MB/s | - |
SHA3-384 | 0.467 MB/s | - |
SHA3-512 | 0.325 MB/s | - |
Signature Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 163.4 ms | 27.5 ms |
RSA (2048 bits) | 915 ms | 102.6 ms |
RSA (3072 bits) | 2687 ms | 220.7 ms |
RSA (4096 bits) | 5926.1 ms | 391.9 ms |
DSA (1024 bits) | 96.8 ms | 204.9 ms |
DSA (2048 bits) | 467.8 ms | 997.6 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
RSA (1024 bits) | 19.3 ms | 1.7 ms |
RSA (2048 bits) | 121.3 ms | 4.6 ms |
RSA (3072 bits) | 378 ms | 11.3 ms |
RSA (4096 bits) | 856.7 ms | 19.4 ms |
DSA (1024 bits) | 28.6 ms | 68.9 ms |
DSA (2048 bits) | 113 ms | 288.1 ms |
EC Signature Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 312.7 ms | 393.8 ms |
ECDSA (P-384) | 602 ms | 750.6 ms |
ECDSA (P-521) | 701.4 ms | 835.8 ms |
EdDSA (Ed25519) | 89.1 ms | 176.7 ms |
EdDSA (Ed448) | 395.5 ms | 790.8 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
ECDSA (P-256) | 27.5 ms | 29.3 ms |
ECDSA (P-384) | 71.9 ms | 80.4 ms |
ECDSA (P-521) | 166.9 ms | 190.7 ms |
EdDSA (Ed25519) | 39.9 ms | 78 ms |
EdDSA (Ed448) | 148.1 ms | 294.4 ms |
Key Exchange Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 374 ms | 374.2 ms |
Diffie-Hellman (2048 bits) | 2652.3 ms | 2652.7 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
Diffie-Hellman (1024 bits) | 58.2 ms | 58.2 ms |
Diffie-Hellman (2048 bits) | 417.5 ms | 417.4 ms |
EC Key Exchange Algorithms
STM32WBA52 @ 100 MHz
- • Benchmark generated with CycloneCRYPTO 2.2.4
- • Compiled using Clang with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 302.4 ms | 301.8 ms |
ECDH (P-384) | 574.5 ms | 583.6 ms |
ECDH (P-521) | 693.7 ms | 691.3 ms |
ECDH (X25519) | 49.4 ms | 49.4 ms |
ECDH (X448) | 202.6 ms | 202.6 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
ECDH (P-256) | 37.6 ms | 37.6 ms |
ECDH (P-384) | 100.1 ms | 100.1 ms |
ECDH (P-521) | 237.9 ms | 237.8 ms |
ECDH (X25519) | 22.1 ms | 22.1 ms |
ECDH (X448) | 78.2 ms | 78.2 ms |