Crypto Benchmark on K64 MCU
ARM Cortex-M4 @ 120 MHz
This benchmark conducted on Kinetis K64_120 MCU will help you in qualifying performance of CycloneCRYPTO (Crypto Library), CycloneSSL (TLS 1.3 / DTLS 1.2 Library), CycloneSSH (SSH Library with SCP & SFTP) and CycloneTCP (TCP/IPv4/IPv6 Stack with secure protocols like HTTPS, FTPS, MQTTS, Secure WebSocket, Secure CoAP, Secure Modbus/TCP, SNMPv3...) running on NXP K64 MCU. Note: NXP K64 includes Symmetric Crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC 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.154 MB/s | 0.152 MB/s | - | - | - | - |
AES-128 | 0.813 MB/s | 0.785 MB/s | 0.43 MB/s | 0.43 MB/s | 0.569 MB/s | 0.569 MB/s |
AES-192 | 0.698 MB/s | 0.679 MB/s | 0.364 MB/s | 0.363 MB/s | 0.508 MB/s | 0.507 MB/s |
AES-256 | 0.611 MB/s | 0.595 MB/s | 0.317 MB/s | 0.316 MB/s | 0.463 MB/s | 0.462 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
3DES | 1.248 MB/s | 1.183 MB/s | - | - | - | - |
AES-128 | 2.305 MB/s | 2.18 MB/s | 1.321 MB/s | 1.348 MB/s | 0.975 MB/s | 0.978 MB/s |
AES-192 | 2.194 MB/s | 2.08 MB/s | 1.246 MB/s | 1.271 MB/s | 0.954 MB/s | 0.957 MB/s |
AES-256 | 2.105 MB/s | 2.001 MB/s | 1.188 MB/s | 1.21 MB/s | 0.937 MB/s | 0.94 MB/s |
Hash Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC with optimization level 3
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 6.042 MB/s | 8.097 MB/s |
SHA-1 | 1.685 MB/s | 4.122 MB/s |
SHA-224 | 1.585 MB/s | 2.681 MB/s |
SHA-256 | 1.585 MB/s | 2.683 MB/s |
SHA-384 | 0.725 MB/s | - |
SHA-512 | 0.725 MB/s | - |
SHA3-224 | 0.525 MB/s | - |
SHA3-256 | 0.496 MB/s | - |
SHA3-384 | 0.381 MB/s | - |
SHA3-512 | 0.264 MB/s | - |
Signature Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC with optimization level 3
Signature | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 147.4 ms | 26.2 ms |
RSA (2048 bits) | 746.8 ms | 94.4 ms |
DSA (1024 bits) | 85.1 ms | 175.5 ms |
DSA (2048 bits) | 375.8 ms | 791.4 ms |
EC Signature Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC with optimization level 3
Signature | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 326.4 ms | 409.8 ms |
ECDSA (P-384) | 588.1 ms | 727.3 ms |
ECDSA (P-521) | 616.9 ms | 732.8 ms |
EdDSA (Ed25519) | 70.8 ms | 139.5 ms |
EdDSA (Ed448) | 299.1 ms | 593.5 ms |
Key Exchange Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 295.8 ms | 294.2 ms |
Diffie-Hellman (2048 bits) | 1970.8 ms | 1964.2 ms |
EC Key Exchange Algorithms
NXP K64 @ 120 MHz
Benchmark generated with CycloneCRYPTO 2.1.0
Compiled using ARM CC with optimization level 3
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 315 ms | 314 ms |
ECDH (P-384) | 555.1 ms | 562.7 ms |
ECDH (P-521) | 602.1 ms | 600.2 ms |
ECDH (X25519) | 39.3 ms | 39.3 ms |
ECDH (X448) | 152.7 ms | 152.7 ms |