Crypto Benchmark on M467 MCU
ARM Cortex-M4 @ 200 MHz
This benchmark conducted on NuMaker-IoT-M467 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 M467 microcontroller.
M467 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC 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.524 MB/s | 0.515 MB/s | - | - | - | - |
AES-128 | 2.498 MB/s | 2.533 MB/s | 1.284 MB/s | 1.283 MB/s | 1.293 MB/s | 1.306 MB/s |
AES-192 | 2.196 MB/s | 2.241 MB/s | 1.121 MB/s | 1.119 MB/s | 1.202 MB/s | 1.213 MB/s |
AES-256 | 1.959 MB/s | 2.011 MB/s | 0.994 MB/s | 0.992 MB/s | 1.126 MB/s | 1.134 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
AES-128 | 17.211 MB/s | 17.211 MB/s | 3.324 MB/s | 3.314 MB/s | 2.35 MB/s | 2.347 MB/s |
AES-192 | 16.556 MB/s | 16.528 MB/s | 3.215 MB/s | 3.206 MB/s | 2.336 MB/s | 2.335 MB/s |
AES-256 | 15.923 MB/s | 15.923 MB/s | 3.107 MB/s | 3.098 MB/s | 2.323 MB/s | 2.321 MB/s |
Hash Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 13.831 MB/s | - |
SHA-1 | 2.881 MB/s | 40.322 MB/s |
SHA-224 | 2.828 MB/s | 41.666 MB/s |
SHA-256 | 2.827 MB/s | 41.841 MB/s |
SHA-384 | 1.447 MB/s | 43.103 MB/s |
SHA-512 | 1.448 MB/s | 43.103 MB/s |
SHA3-224 | 0.917 MB/s | 18.832 MB/s |
SHA3-256 | 0.866 MB/s | 18.484 MB/s |
SHA3-384 | 0.665 MB/s | 18.552 MB/s |
SHA3-512 | 0.462 MB/s | 18.656 MB/s |
Signature Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 83.4 ms | 15.5 ms |
RSA (2048 bits) | 431.3 ms | 57.1 ms |
RSA (3072 bits) | 1220.9 ms | 122.9 ms |
RSA (4096 bits) | 2637.2 ms | 217.1 ms |
DSA (1024 bits) | 47.9 ms | 100.1 ms |
DSA (2048 bits) | 218.1 ms | 462.8 ms |
DSA (3072 bits) | 467.3 ms | 998.9 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
RSA (1024 bits) | 4.6 ms | 0.4 ms |
RSA (2048 bits) | 47.1 ms | 1.3 ms |
RSA (3072 bits) | 75 ms | 2.7 ms |
RSA (4096 bits) | 191.5 ms | 4.6 ms |
DSA (1024 bits) | 11.3 ms | 27.3 ms |
DSA (2048 bits) | 35.9 ms | 98.4 ms |
DSA (3072 bits) | 70.8 ms | 209 ms |
EC Signature Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 179.1 ms | 227.2 ms |
ECDSA (P-384) | 317.3 ms | 388.6 ms |
ECDSA (P-521) | 342 ms | 404 ms |
EdDSA (Ed25519) | 40.7 ms | 80.3 ms |
EdDSA (Ed448) | 177.5 ms | 352.7 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
ECDSA (P-256) | 13 ms | 21.8 ms |
ECDSA (P-384) | 25.4 ms | 40.1 ms |
ECDSA (P-521) | 40.6 ms | 65.7 ms |
EdDSA (Ed25519) | 24.9 ms | 49.2 ms |
EdDSA (Ed448) | 81.4 ms | 162.3 ms |
Key Exchange Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 164.8 ms | 164.8 ms |
Diffie-Hellman (2048 bits) | 1129.4 ms | 1129.6 ms |
Diffie-Hellman (3072 bits) | 3613.5 ms | 3614.7 ms |
Diffie-Hellman (4096 bits) | 8355.5 ms | 8356.4 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
Diffie-Hellman (1024 bits) | 4.3 ms | 4.3 ms |
Diffie-Hellman (2048 bits) | 24.3 ms | 24.3 ms |
Diffie-Hellman (3072 bits) | 71.6 ms | 71.6 ms |
Diffie-Hellman (4096 bits) | 158.3 ms | 158.3 ms |
EC Key Exchange Algorithms
M467 @ 200 MHz
- • Benchmark generated with CycloneCRYPTO 2.4.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 175 ms | 174.5 ms |
ECDH (P-384) | 300.8 ms | 305.4 ms |
ECDH (P-521) | 335.6 ms | 334.5 ms |
ECDH (X25519) | 22.7 ms | 22.7 ms |
ECDH (X448) | 90.7 ms | 90.7 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
ECDH (P-256) | 6.1 ms | 6.1 ms |
ECDH (P-384) | 12.8 ms | 12.8 ms |
ECDH (P-521) | 22.6 ms | 22.6 ms |
ECDH (X25519) | 14 ms | 14 ms |
ECDH (X448) | 43.7 ms | 43.8 ms |