Crypto Benchmark on i.MX RT1064 MCU
ARM Cortex-M7 @ 600 MHz

This benchmark conducted on MIMXRT1064-EVK i.MX RT1064 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 RT1064 microcontroller.

i.MX RT1064 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.MXRT1064 @ 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-CBC2.523 MB/s2.147 MB/s--
3DES-CTR2.56 MB/s2.559 MB/s--
AES128-CBC12.484 MB/s12.437 MB/s61.349 MB/s60.975 MB/s
AES192-CBC10.881 MB/s10.964 MB/s--
AES256-CBC9.643 MB/s9.813 MB/s--
AES128-CTR11.99 MB/s11.976 MB/s--
AES192-CTR10.504 MB/s10.504 MB/s--
AES256-CTR9.345 MB/s9.345 MB/s--
SM4-CBC10.515 MB/s10.351 MB/s--
SM4-CTR10.162 MB/s10.162 MB/s--

AEAD Algorithms

i.MXRT1064 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Encryption
(Software)
Decryption
(Software)
AES128-GCM7.32 MB/s7.299 MB/s
AES192-GCM6.729 MB/s6.711 MB/s
AES256-GCM6.23 MB/s6.215 MB/s
AES128-CCM6.393 MB/s6.402 MB/s
AES192-CCM5.527 MB/s5.537 MB/s
AES256-CCM4.875 MB/s4.882 MB/s
SM4-GCM6.578 MB/s6.561 MB/s
SM4-CCM5.336 MB/s5.344 MB/s
Ascon-AEAD12812.254 MB/s12.077 MB/s
ChaCha20Poly13056.816 MB/s6.811 MB/s

Hash Algorithms

i.MXRT1064 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Speed
(Software)
Speed
(Hardware)
MD550.251 MB/s-
SHA-116.92 MB/s81.967 MB/s
SHA-22416.181 MB/s-
SHA-25615.797 MB/s96.153 MB/s
SHA-3846.702 MB/s-
SHA-5126.706 MB/s-
SHA3-2243.646 MB/s-
SHA3-2563.447 MB/s-
SHA3-3842.648 MB/s-
SHA3-5121.841 MB/s-
SM313.642 MB/s-
Ascon-Hash2564.642 MB/s-

Signature Algorithms

i.MXRT1064 @ 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 ms2.8 ms
RSA (2048 bits)89.9 ms9.8 ms
RSA (3072 bits)255.2 ms20.7 ms
RSA (4096 bits)553.6 ms36 ms
DSA (1024 bits)9.7 ms19.8 ms
DSA (2048 bits)43.7 ms91.1 ms

EC Signature Algorithms

i.MXRT1064 @ 600 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using ARMCC with optimization level 3
Algorithm Generation
(Software)
Verification
(Software)
ECDSA (secp256r1)13 ms11.7 ms
ECDSA (secp384r1)31.1 ms28.3 ms
ECDSA (secp521r1)66.7 ms58.9 ms
ECDSA (brainpoolP256r1)24.6 ms24.6 ms
ECDSA (brainpoolP384r1)63.9 ms63.9 ms
ECDSA (brainpoolP512r1)129.6 ms131.8 ms
SM211.3 ms11.3 ms
EdDSA (Ed25519)3.8 ms3.4 ms
EdDSA (Ed448)22 ms19.8 ms

Key Exchange Algorithms

i.MXRT1064 @ 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.1 ms35.9 ms
Diffie-Hellman (2048 bits)245.1 ms244.9 ms

EC Key Exchange Algorithms

i.MXRT1064 @ 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.6 ms11.4 ms
ECDH (secp384r1)27.3 ms27.2 ms
ECDH (secp521r1)57.5 ms57.4 ms
ECDH (brainpoolP256r1)22.9 ms22.8 ms
ECDH (brainpoolP384r1)59.3 ms59.3 ms
ECDH (brainpoolP512r1)120.1 ms120 ms
ECDH (SM2)11.4 ms11.3 ms
ECDH (X25519)2.1 ms2 ms
ECDH (X448)11.4 ms11.2 ms