Crypto Benchmark on Kinetis K64 MCU
ARM Cortex-M4 @ 120 MHz
This benchmark conducted on FRDM-K64F Freedom Development Platform for Kinetis® K64, K63, and K24 MCUs 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 Kinetis K64 microcontroller.
Kinetis K64 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
K64 @ 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.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
K64 @ 120 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.0
- • Compiled using ARMCC 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
K64 @ 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) | 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
K64 @ 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) | 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
K64 @ 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) | 295.8 ms | 294.2 ms |
Diffie-Hellman (2048 bits) | 1970.8 ms | 1964.2 ms |
EC Key Exchange Algorithms
K64 @ 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) | 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 |