Crypto Benchmark on SAM4L MCU
ARM Cortex-M4 @ 48 MHz
This benchmark conducted on SAM4L8 Xplained Pro Evaluation Kit (ATSAM4L8-XPRO) 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 Microchip SAM4L microcontroller.
SAM4L MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
SAM4L @ 48 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 | 0.08 MB/s | 0.079 MB/s | - | - |
3DES-CTR | 0.08 MB/s | 0.08 MB/s | - | - |
AES128-CBC | 0.372 MB/s | 0.361 MB/s | 9.115 MB/s | 9.107 MB/s |
AES192-CBC | 0.326 MB/s | 0.317 MB/s | - | - |
AES256-CBC | 0.289 MB/s | 0.283 MB/s | - | - |
AES128-CTR | 0.371 MB/s | 0.371 MB/s | - | - |
AES192-CTR | 0.325 MB/s | 0.325 MB/s | - | - |
AES256-CTR | 0.289 MB/s | 0.289 MB/s | - | - |
SM4-CBC | 0.341 MB/s | 0.331 MB/s | - | - |
SM4-CTR | 0.34 MB/s | 0.34 MB/s | - | - |
AEAD Algorithms
SAM4L @ 48 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Encryption (Software) |
Decryption (Software) |
---|---|---|
AES128-GCM | 0.208 MB/s | 0.207 MB/s |
AES192-GCM | 0.192 MB/s | 0.192 MB/s |
AES256-GCM | 0.179 MB/s | 0.178 MB/s |
AES128-CCM | 0.2 MB/s | 0.2 MB/s |
AES192-CCM | 0.173 MB/s | 0.173 MB/s |
AES256-CCM | 0.152 MB/s | 0.152 MB/s |
SM4-GCM | 0.197 MB/s | 0.197 MB/s |
SM4-CCM | 0.182 MB/s | 0.181 MB/s |
Ascon-AEAD128 | 0.369 MB/s | 0.372 MB/s |
ChaCha20Poly1305 | 0.349 MB/s | 0.349 MB/s |
Hash Algorithms
SAM4L @ 48 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Speed (Software) |
---|---|
MD5 | 1.877 MB/s |
SHA-1 | 0.445 MB/s |
SHA-224 | 0.403 MB/s |
SHA-256 | 0.403 MB/s |
SHA-384 | 0.207 MB/s |
SHA-512 | 0.207 MB/s |
SHA3-224 | 0.15 MB/s |
SHA3-256 | 0.142 MB/s |
SHA3-384 | 0.109 MB/s |
SHA3-512 | 0.076 MB/s |
SM3 | 0.357 MB/s |
Ascon-Hash256 | 0.139 MB/s |
Signature Algorithms
SAM4L @ 48 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
RSA (1024 bits) | 536.1 ms | 99.9 ms |
RSA (2048 bits) | 2803.4 ms | 367 ms |
RSA (3072 bits) | 7955.5 ms | 788.3 ms |
DSA (1024 bits) | 306.4 ms | 644.5 ms |
DSA (2048 bits) | 1409.4 ms | 2995.1 ms |
EC Signature Algorithms
SAM4L @ 48 MHz
- • Benchmark generated with CycloneCRYPTO 2.5.0
- • Compiled using ARMCC with optimization level 3
Algorithm | Generation (Software) |
Verification (Software) |
---|---|---|
ECDSA (secp256r1) | 355.6 ms | 319.7 ms |
ECDSA (secp384r1) | 878 ms | 793.9 ms |
ECDSA (secp521r1) | 1888 ms | 1661.1 ms |
ECDSA (brainpoolP256r1) | 669.1 ms | 666.7 ms |
ECDSA (brainpoolP384r1) | 1785.4 ms | 1779.7 ms |
ECDSA (brainpoolP512r1) | 3731.4 ms | 3783.2 ms |
SM2 | 317.1 ms | 317.1 ms |
EdDSA (Ed25519) | 86.5 ms | 77.5 ms |
EdDSA (Ed448) | 395.5 ms | 344.3 ms |
Key Exchange Algorithms
SAM4L @ 48 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) | 1064.4 ms | 1065.1 ms |
Diffie-Hellman (2048 bits) | 7349 ms | 7349.8 ms |
EC Key Exchange Algorithms
SAM4L @ 48 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) | 315.2 ms | 314.3 ms |
ECDH (secp384r1) | 770.8 ms | 769.5 ms |
ECDH (secp521r1) | 1631.5 ms | 1629.3 ms |
ECDH (brainpoolP256r1) | 622.7 ms | 621.8 ms |
ECDH (brainpoolP384r1) | 1658.7 ms | 1657.5 ms |
ECDH (brainpoolP512r1) | 3463.8 ms | 3462.3 ms |
ECDH (SM2) | 317.1 ms | 316.2 ms |
ECDH (X25519) | 47 ms | 47 ms |
ECDH (X448) | 197 ms | 197 ms |