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
i.MXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Encryption (Software) |
Decryption (Software) |
Encryption (Hardware) |
Decryption (Hardware) |
---|---|---|---|---|
3DES-CBC | 2.536 MB/s | 2.478 MB/s | - | - |
3DES-CTR | 2.55 MB/s | 2.551 MB/s | - | - |
AES128-CBC | 12.468 MB/s | 12.453 MB/s | 59.88 MB/s | 60.606 MB/s |
AES192-CBC | 10.869 MB/s | 10.964 MB/s | - | - |
AES256-CBC | 9.633 MB/s | 9.803 MB/s | - | - |
AES128-CTR | 11.976 MB/s | 11.976 MB/s | - | - |
AES192-CTR | 10.504 MB/s | 10.493 MB/s | - | - |
AES256-CTR | 9.337 MB/s | 9.337 MB/s | - | - |
SM4-CBC | 10.515 MB/s | 10.351 MB/s | - | - |
SM4-CTR | 10.162 MB/s | 10.162 MB/s | - | - |
AEAD Algorithms
i.MXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Encryption (Software) |
Decryption (Software) |
---|---|---|
AES128-GCM | 7.315 MB/s | 7.293 MB/s |
AES192-GCM | 6.724 MB/s | 6.706 MB/s |
AES256-GCM | 6.226 MB/s | 6.211 MB/s |
AES128-CCM | 6.385 MB/s | 6.393 MB/s |
AES192-CCM | 5.524 MB/s | 5.534 MB/s |
AES256-CCM | 4.873 MB/s | 4.875 MB/s |
SM4-GCM | 6.587 MB/s | 6.57 MB/s |
SM4-CCM | 5.339 MB/s | 5.344 MB/s |
Ascon-AEAD128 | 12.254 MB/s | 12.077 MB/s |
ChaCha20Poly1305 | 6.816 MB/s | 6.811 MB/s |
Hash Algorithms
i.MXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) |
Speed (Hardware) |
---|---|---|
MD5 | 50.251 MB/s | - |
SHA-1 | 17.211 MB/s | 81.3 MB/s |
SHA-224 | 16.155 MB/s | - |
SHA-256 | 16.155 MB/s | 95.238 MB/s |
SHA-384 | 6.706 MB/s | - |
SHA-512 | 6.706 MB/s | - |
SHA3-224 | 3.646 MB/s | - |
SHA3-256 | 3.447 MB/s | - |
SHA3-384 | 2.648 MB/s | - |
SHA3-512 | 1.841 MB/s | - |
SM3 | 13.661 MB/s | - |
Ascon-Hash256 | 4.642 MB/s | - |
Signature Algorithms
i.MXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
RSA (1024 bits) | 17.5 ms | 2.8 ms |
RSA (2048 bits) | 89.9 ms | 9.8 ms |
RSA (3072 bits) | 255.3 ms | 20.6 ms |
RSA (4096 bits) | 553.6 ms | 36 ms |
DSA (1024 bits) | 9.7 ms | 19.9 ms |
DSA (2048 bits) | 43.7 ms | 91.1 ms |
EC Signature Algorithms
i.MXRT1052 @ 600 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
ECDSA (secp256r1) | 12.9 ms | 11.6 ms |
ECDSA (secp384r1) | 31.1 ms | 28.2 ms |
ECDSA (secp521r1) | 66.6 ms | 58.9 ms |
ECDSA (brainpoolP256r1) | 24.6 ms | 24.6 ms |
ECDSA (brainpoolP384r1) | 63.4 ms | 63.4 ms |
ECDSA (brainpoolP512r1) | 129.6 ms | 131.7 ms |
SM2 | 11.3 ms | 11.3 ms |
EdDSA (Ed25519) | 3.7 ms | 3.4 ms |
EdDSA (Ed448) | 22 ms | 19.7 ms |
Key Exchange Algorithms
i.MXRT1052 @ 600 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) | 36 ms | 36 ms |
Diffie-Hellman (2048 bits) | 245.1 ms | 244.8 ms |
EC Key Exchange Algorithms
i.MXRT1052 @ 600 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) | 11.4 ms | 11.4 ms |
ECDH (secp384r1) | 27.3 ms | 27.2 ms |
ECDH (secp521r1) | 57.5 ms | 57.4 ms |
ECDH (brainpoolP256r1) | 22.9 ms | 22.8 ms |
ECDH (brainpoolP384r1) | 58.9 ms | 58.8 ms |
ECDH (brainpoolP512r1) | 120.2 ms | 120.1 ms |
ECDH (SM2) | 11.3 ms | 11.3 ms |
ECDH (X25519) | 2 ms | 2 ms |
ECDH (X448) | 11.3 ms | 11.2 ms |