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-CBC0.101 MB/s0.1 MB/s
3DES-CTR0.101 MB/s0.101 MB/s
AES128-CBC0.483 MB/s0.458 MB/s
AES192-CBC0.418 MB/s0.396 MB/s
AES256-CBC0.368 MB/s0.349 MB/s
AES128-CTR0.469 MB/s0.469 MB/s
AES192-CTR0.407 MB/s0.407 MB/s
AES256-CTR0.359 MB/s0.359 MB/s
SM4-CBC0.5 MB/s0.472 MB/s
SM4-CTR0.486 MB/s0.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-GCM0.302 MB/s0.302 MB/s
AES192-GCM0.275 MB/s0.274 MB/s
AES256-GCM0.252 MB/s0.252 MB/s
AES128-CCM0.252 MB/s0.252 MB/s
AES192-CCM0.215 MB/s0.215 MB/s
AES256-CCM0.188 MB/s0.188 MB/s
SM4-GCM0.309 MB/s0.308 MB/s
SM4-CCM0.262 MB/s0.262 MB/s
Ascon-AEAD1280.661 MB/s0.665 MB/s
ChaCha20Poly13050.584 MB/s0.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)
MD52.828 MB/s
SHA-10.717 MB/s
SHA-2240.66 MB/s
SHA-2560.66 MB/s
SHA-3840.375 MB/s
SHA-5120.375 MB/s
SHA3-2240.295 MB/s
SHA3-2560.279 MB/s
SHA3-3840.215 MB/s
SHA3-5120.149 MB/s
SM30.591 MB/s
Ascon-Hash2560.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 ms60.1 ms
RSA (2048 bits)1909.3 ms219.4 ms
DSA (1024 bits)201.3 ms418.2 ms
DSA (2048 bits)955.2 ms2004.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 ms220.1 ms
ECDSA (secp384r1)621.6 ms561.9 ms
ECDSA (secp521r1)1357.8 ms1192.9 ms
ECDSA (brainpoolP256r1)518.2 ms518.8 ms
ECDSA (brainpoolP384r1)1419.3 ms1420.6 ms
EdDSA (Ed25519)74.2 ms68.1 ms
EdDSA (Ed448)350.2 ms309.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 ms757.7 ms
Diffie-Hellman (2048 bits)5360.7 ms5361.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 ms212.6 ms
ECDH (secp384r1)536.7 ms535.9 ms
ECDH (secp521r1)1163 ms1161.7 ms
ECDH (brainpoolP256r1)481.6 ms481 ms
ECDH (brainpoolP384r1)1317.3 ms1316.5 ms
ECDH (brainpoolP512r1)2796.1 ms2795.2 ms
ECDH (SM2)215.4 ms214.8 ms
ECDH (X25519)39.8 ms41 ms
ECDH (X448)170.9 ms175.6 ms