Crypto Benchmark on Tiva TM4C129 MCU
ARM Cortex-M4F @ 120 MHz
This benchmark conducted on TM4C1294 Connected LaunchPad™ Evaluation Kit (EK-TM4C1294XL) 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 Texas Instruments Tiva TM4C129 microcontroller.
Tiva TM4C129 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.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.153 MB/s | 0.147 MB/s | - | - | - | - |
AES-128 | 0.758 MB/s | 0.741 MB/s | 0.407 MB/s | 0.406 MB/s | 0.488 MB/s | 0.487 MB/s |
AES-192 | 0.656 MB/s | 0.644 MB/s | 0.347 MB/s | 0.346 MB/s | 0.443 MB/s | 0.442 MB/s |
AES-256 | 0.578 MB/s | 0.57 MB/s | 0.302 MB/s | 0.302 MB/s | 0.405 MB/s | 0.404 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 10.764 MB/s | 10.799 MB/s | - | - | - | - |
AES-128 | 13.458 MB/s | 13.422 MB/s | - | - | 12.69 MB/s | 12.706 MB/s |
AES-192 | 12.853 MB/s | 12.82 MB/s | - | - | 12.135 MB/s | 12.195 MB/s |
AES-256 | 12.345 MB/s | 12.315 MB/s | - | - | 11.682 MB/s | 11.723 MB/s |
Hash Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 5.181 MB/s | 39.682 MB/s |
SHA-1 | 1.035 MB/s | 39.062 MB/s |
SHA-224 | 1.172 MB/s | 38.167 MB/s |
SHA-256 | 1.172 MB/s | 38.167 MB/s |
SHA-384 | 0.731 MB/s | - |
SHA-512 | 0.731 MB/s | - |
SHA3-224 | 0.558 MB/s | - |
SHA3-256 | 0.527 MB/s | - |
SHA3-384 | 0.404 MB/s | - |
SHA3-512 | 0.28 MB/s | - |
Signature Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 158.2 ms | 27.6 ms |
RSA (2048 bits) | 799.8 ms | 98 ms |
DSA (1024 bits) | 91.9 ms | 187.6 ms |
DSA (2048 bits) | 402.7 ms | 843.5 ms |
EC Signature Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 360.9 ms | 452.4 ms |
ECDSA (P-384) | 636.2 ms | 784 ms |
ECDSA (P-521) | 664 ms | 787.1 ms |
EdDSA (Ed25519) | 80.7 ms | 157.6 ms |
EdDSA (Ed448) | 357.1 ms | 698.3 ms |
Key Exchange Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 317 ms | 317.2 ms |
Diffie-Hellman (2048 bits) | 2130.6 ms | 2130.7 ms |
EC Key Exchange Algorithms
TM4C129 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 348.6 ms | 347.3 ms |
ECDH (P-384) | 598.7 ms | 606.6 ms |
ECDH (P-521) | 646.3 ms | 644.3 ms |
ECDH (X25519) | 43.5 ms | 43.5 ms |
ECDH (X448) | 174.2 ms | 174.2 ms |