Crypto Benchmark on M5531 MCU
ARM Cortex-M55 @ 220 MHz

This benchmark conducted on NuMaker-M5531 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 Nuvoton M5531 microcontroller.

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

Cipher Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.799 MB/s0.789 MB/s--
3DES-CTR0.813 MB/s0.813 MB/s--
AES128-CBC4.361 MB/s4.191 MB/s19.305 MB/s19.23 MB/s
AES192-CBC3.85 MB/s3.716 MB/s18.248 MB/s18.181 MB/s
AES256-CBC3.445 MB/s3.34 MB/s17.211 MB/s17.152 MB/s
AES128-CTR4.852 MB/s4.849 MB/s19.011 MB/s19.011 MB/s
AES192-CTR4.226 MB/s4.226 MB/s18.018 MB/s17.985 MB/s
AES256-CTR3.745 MB/s3.745 MB/s17.035 MB/s17.006 MB/s
SM4-CBC3.195 MB/s3.075 MB/s21.551 MB/s21.505 MB/s
SM4-CTR3.448 MB/s3.448 MB/s21.276 MB/s21.231 MB/s

AEAD Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
AES128-GCM2.395 MB/s2.398 MB/s3.125 MB/s3.125 MB/s
AES192-GCM2.23 MB/s2.233 MB/s3.096 MB/s3.095 MB/s
AES256-GCM2.086 MB/s2.088 MB/s3.065 MB/s3.063 MB/s
AES128-CCM2.625 MB/s2.63 MB/s4.524 MB/s4.543 MB/s
AES192-CCM2.253 MB/s2.257 MB/s4.357 MB/s4.37 MB/s
AES256-CCM1.974 MB/s1.977 MB/s4.253 MB/s4.269 MB/s
SM4-GCM1.99 MB/s1.992 MB/s3.181 MB/s3.18 MB/s
SM4-CCM1.805 MB/s1.808 MB/s5.078 MB/s5.099 MB/s
Ascon-AEAD1283.402 MB/s3.483 MB/s--
ChaCha20Poly13056.325 MB/s6.325 MB/s--

Hash Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Speed
(Software)
Speed
(Hardware)
MD518.552 MB/s-
SHA-14.244 MB/s41.666 MB/s
SHA-2243.436 MB/s44.444 MB/s
SHA-2563.436 MB/s44.444 MB/s
SHA-3841.933 MB/s45.871 MB/s
SHA-5121.933 MB/s45.871 MB/s
SHA3-2241.832 MB/s32.051 MB/s
SHA3-2561.732 MB/s31.746 MB/s
SHA3-3841.327 MB/s31.645 MB/s
SHA3-5120.921 MB/s31.545 MB/s
SM33.003 MB/s42.918 MB/s
Ascon-Hash2561.258 MB/s-

Signature Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)57.9 ms8.1 ms4.7 ms0.4 ms
RSA (2048 bits)327.8 ms29.5 ms27 ms1.2 ms
RSA (3072 bits)970.1 ms63 ms72.9 ms2.4 ms
RSA (4096 bits)2148.9 ms111.1 ms113.7 ms4.2 ms
DSA (1024 bits)32.3 ms66.9 ms6.1 ms14.7 ms
DSA (2048 bits)159.3 ms332.7 ms19.4 ms52.9 ms
DSA (3072 bits)343.6 ms719.7 ms38.1 ms111.3 ms

EC Signature Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)48.3 ms45 ms12.7 ms17.1 ms
ECDSA (secp384r1)117.7 ms108.7 ms29.7 ms39 ms
ECDSA (secp521r1)253.6 ms227.7 ms62.4 ms78.8 ms
ECDSA (brainpoolP256r1)96.4 ms97.8 ms18.5 ms23.1 ms
ECDSA (brainpoolP384r1)241.4 ms244.4 ms44.6 ms54.1 ms
ECDSA (brainpoolP512r1)478.5 ms489.3 ms86.6 ms102.8 ms
SM250.6 ms37.4 ms14.7 ms11 ms
EdDSA (Ed25519)11.2 ms9.8 ms--
EdDSA (Ed448)48.1 ms42.8 ms--

Key Exchange Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
Diffie-Hellman (1024 bits)137.6 ms137.2 ms4.5 ms4.5 ms
Diffie-Hellman (2048 bits)977.7 ms977.4 ms24.4 ms24.2 ms
Diffie-Hellman (3072 bits)3178.7 ms3178.8 ms70.3 ms70 ms
Diffie-Hellman (4096 bits)7377.8 ms7377.7 ms152.8 ms152.5 ms

EC Key Exchange Algorithms

M5531 @ 220 MHz

  • Benchmark generated with CycloneCRYPTO 2.6.4
  • Compiled using Clang with optimization level 3
Algorithm Public Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)42.1 ms42 ms6.5 ms6.4 ms
ECDH (secp384r1)102.4 ms102.5 ms14.7 ms14.6 ms
ECDH (secp521r1)219.2 ms219 ms27.9 ms27.7 ms
ECDH (brainpoolP256r1)89.3 ms89.3 ms11.5 ms11.3 ms
ECDH (brainpoolP384r1)223.6 ms223.5 ms26.8 ms26.7 ms
ECDH (brainpoolP512r1)443 ms442.9 ms51.2 ms51.2 ms
ECDH (SM2)42.4 ms42.2 ms6.6 ms6.4 ms
ECDH (X25519)6.1 ms6.1 ms--
ECDH (X448)24.8 ms24.8 ms--