Crypto Benchmark on STM32WL3 MCU
ARM Cortex-M0+ @ 64 MHz

This benchmark conducted on NUCLEO-WL33CC1 development board with STM32WL33CC 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 STM32WL3 microcontroller.

STM32WL3 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.

Cipher Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.072 MB/s0.071 MB/s--
3DES-CTR0.072 MB/s0.072 MB/s--
AES128-CBC0.315 MB/s0.303 MB/s3.846 MB/s3.815 MB/s
AES192-CBC0.271 MB/s0.262 MB/s--
AES256-CBC0.239 MB/s0.231 MB/s3.551 MB/s3.514 MB/s
AES128-CTR0.303 MB/s0.303 MB/s3.741 MB/s3.734 MB/s
AES192-CTR0.262 MB/s0.262 MB/s--
AES256-CTR0.232 MB/s0.232 MB/s3.46 MB/s3.447 MB/s
SM4-CBC0.32 MB/s0.307 MB/s--
SM4-CTR0.307 MB/s0.307 MB/s--

AEAD Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM0.176 MB/s0.175 MB/s3.68 MB/s3.653 MB/s
AES192-GCM0.161 MB/s0.161 MB/s--
AES256-GCM0.149 MB/s0.148 MB/s3.367 MB/s3.344 MB/s
AES128-CCM0.16 MB/s0.159 MB/s2.929 MB/s2.929 MB/s
AES192-CCM0.137 MB/s0.137 MB/s--
AES256-CCM0.119 MB/s0.119 MB/s2.547 MB/s2.531 MB/s
SM4-GCM0.177 MB/s0.177 MB/s--
SM4-CCM0.162 MB/s0.162 MB/s--
Ascon-AEAD1280.28 MB/s0.277 MB/s--
ChaCha20Poly13050.238 MB/s0.238 MB/s--

Hash Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Speed
(Software)
MD51.858 MB/s
SHA-10.447 MB/s
SHA-2240.318 MB/s
SHA-2560.318 MB/s
SHA-3840.2 MB/s
SHA-5120.2 MB/s
SHA3-2240.138 MB/s
SHA3-2560.131 MB/s
SHA3-3840.1 MB/s
SHA3-5120.07 MB/s
SM30.294 MB/s
Ascon-Hash2560.104 MB/s

Signature Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
RSA (1024 bits)1203.3 ms131 ms
RSA (2048 bits)8149.9 ms495.7 ms
DSA (1024 bits)715.4 ms1445.7 ms
DSA (2048 bits)4038.9 ms8217.3 ms

EC Signature Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
ECDSA (secp256r1)682 ms622 ms
ECDSA (secp384r1)1976.2 ms1809.1 ms
ECDSA (secp521r1)4801.5 ms4247 ms
ECDSA (brainpoolP256r1)1627.2 ms1646.7 ms
ECDSA (brainpoolP384r1)4828 ms4858.9 ms
ECDSA (brainpoolP512r1)10728.6 ms10947.1 ms
SM2718.6 ms503 ms
EdDSA (Ed25519)503 ms463.7 ms
EdDSA (Ed448)2001.1 ms1817.9 ms

Key Exchange Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Diffie-Hellman (1024 bits)3699.1 ms3695.5 ms

EC Key Exchange Algorithms

STM32WL33 @ 64 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.2
  • Compiled using ARMCC with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
ECDH (secp256r1)577.5 ms576.6 ms
ECDH (secp384r1)1674.4 ms1673.3 ms
ECDH (secp521r1)4068.9 ms4067 ms
ECDH (brainpoolP256r1)1506.1 ms1505.2 ms
ECDH (brainpoolP384r1)4468 ms4467 ms
ECDH (brainpoolP512r1)9930.8 ms9929.4 ms
ECDH (SM2)577.6 ms576.7 ms
ECDH (X25519)280.5 ms280.4 ms
ECDH (X448)1011.5 ms1011.5 ms