Crypto Benchmark on i.MX RT1050 MCU
ARM Cortex-M7 @ 600 MHz
This benchmark conducted on MIMXRT1050-EVK i.MX RT1050 Evaluation Kit 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 NXP i.MX RT1050 microcontroller.
i.MX RT1050 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | CBC Encrypt (Software) | CBC Decrypt (Software) | CCM Encrypt (Software) | CCM Decrypt (Software) | GCM Encrypt (Software) | GCM Decrypt (Software) |
---|---|---|---|---|---|---|
3DES | 3.13 MB/s | 3.072 MB/s | - | - | - | - |
AES-128 | 12.594 MB/s | 12.562 MB/s | 6.402 MB/s | 6.451 MB/s | 7.32 MB/s | 7.299 MB/s |
AES-192 | 10.976 MB/s | 11.061 MB/s | 5.537 MB/s | 5.574 MB/s | 6.729 MB/s | 6.711 MB/s |
AES-256 | 9.718 MB/s | 9.891 MB/s | 4.88 MB/s | 4.911 MB/s | 6.23 MB/s | 6.218 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
AES-128 | 59.88 MB/s | 60.24 MB/s | - | - | - | - |
Hash Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 60.975 MB/s | - |
SHA-1 | 17.889 MB/s | 81.3 MB/s |
SHA-224 | 16.528 MB/s | - |
SHA-256 | 16.528 MB/s | 94.339 MB/s |
SHA-384 | 6.738 MB/s | - |
SHA-512 | 6.738 MB/s | - |
SHA3-224 | 3.702 MB/s | - |
SHA3-256 | 3.497 MB/s | - |
SHA3-384 | 2.678 MB/s | - |
SHA3-512 | 1.857 MB/s | - |
Signature Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 16.5 ms | 2.7 ms |
RSA (2048 bits) | 87 ms | 9.5 ms |
RSA (3072 bits) | 249.7 ms | 20.2 ms |
RSA (4096 bits) | 544.3 ms | 35.5 ms |
DSA (1024 bits) | 9.6 ms | 19.4 ms |
DSA (2048 bits) | 43.3 ms | 90 ms |
EC Signature Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 45.7 ms | 57.7 ms |
ECDSA (P-384) | 81.6 ms | 101.4 ms |
ECDSA (P-521) | 75.6 ms | 91.1 ms |
EdDSA (Ed25519) | 9.1 ms | 18.1 ms |
EdDSA (Ed448) | 42.8 ms | 85.2 ms |
Key Exchange Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 35.5 ms | 35.5 ms |
Diffie-Hellman (2048 bits) | 243.5 ms | 243.3 ms |
EC Key Exchange Algorithms
MIMXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC with optimization level 2
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 44.7 ms | 44.5 ms |
ECDH (P-384) | 76.9 ms | 77.4 ms |
ECDH (P-521) | 74.1 ms | 73.9 ms |
ECDH (X25519) | 5.1 ms | 5.1 ms |
ECDH (X448) | 21.9 ms | 21.8 ms |