Crypto Benchmark on ESP32-S3 MCU
Tensilica Xtensa LX7 @ 240 MHz
This benchmark conducted on ESP32-S3-DevKitC-1 Development Board 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 Espressif ESP32-S3 microcontroller.
ESP32-S3 MCU also includes crypto hardware acceleration. In the following comparison charts, both hardware and software performance are presented in the relevant sections.
Cipher Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | CBC Encrypt (Software) | CBC Decrypt (Software) | CCM Encrypt (Software) | CCM Decrypt (Software) | GCM Encrypt (Software) | GCM Decrypt (Software) |
---|---|---|---|---|---|---|
3DES | 0.522 MB/s | 0.52 MB/s | - | - | - | - |
AES-128 | 1.862 MB/s | 1.785 MB/s | 0.955 MB/s | 0.956 MB/s | 1.158 MB/s | 1.131 MB/s |
AES-192 | 1.592 MB/s | 1.529 MB/s | 0.81 MB/s | 0.811 MB/s | 1.047 MB/s | 1.023 MB/s |
AES-256 | 1.39 MB/s | 1.336 MB/s | 0.703 MB/s | 0.704 MB/s | 0.955 MB/s | 0.935 MB/s |
Algorithm | CBC Encrypt (Hardware) | CBC Decrypt (Hardware) | CCM Encrypt (Hardware) | CCM Decrypt (Hardware) | GCM Encrypt (Hardware) | GCM Decrypt (Hardware) |
---|---|---|---|---|---|---|
AES-128 | 8.13 MB/s | 7.936 MB/s | 0.632 MB/s | 0.632 MB/s | 0.887 MB/s | 0.871 MB/s |
AES-256 | 8.064 MB/s | 7.575 MB/s | 0.619 MB/s | 0.619 MB/s | 0.874 MB/s | 0.858 MB/s |
Hash Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | Speed (Software) | Speed (Hardware) |
---|---|---|
MD5 | 17.241 MB/s | - |
SHA-1 | 3.058 MB/s | 25 MB/s |
SHA-224 | 2.145 MB/s | 25.641 MB/s |
SHA-256 | 2.15 MB/s | 25.641 MB/s |
SHA-384 | 1.312 MB/s | 27.777 MB/s |
SHA-512 | 1.314 MB/s | 27.777 MB/s |
SHA3-224 | 0.989 MB/s | - |
SHA3-256 | 0.935 MB/s | - |
SHA3-384 | 0.716 MB/s | - |
SHA3-512 | 0.497 MB/s | - |
Signature Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
RSA (1024 bits) | 96 ms | 14 ms |
RSA (2048 bits) | 590 ms | 52 ms |
RSA (3072 bits) | 1809 ms | 113 ms |
RSA (4096 bits) | 4090 ms | 199 ms |
DSA (1024 bits) | 61 ms | 121 ms |
DSA (2048 bits) | 303 ms | 626 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
RSA (1024 bits) | 32 ms | 10 ms |
RSA (2048 bits) | 141 ms | 37 ms |
RSA (3072 bits) | 368 ms | 80 ms |
RSA (4096 bits) | 753 ms | 142 ms |
DSA (1024 bits) | 25 ms | 50 ms |
DSA (2048 bits) | 91 ms | 202 ms |
EC Signature Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | Signature Generation (Software) | Signature Verification (Software) |
---|---|---|
ECDSA (P-256) | 191 ms | 233 ms |
ECDSA (P-384) | 355 ms | 426 ms |
ECDSA (P-521) | 418 ms | 491 ms |
EdDSA (Ed25519) | 58 ms | 115 ms |
EdDSA (Ed448) | 270 ms | 540 ms |
Algorithm | Signature Generation (Hardware) | Signature Verification (Hardware) |
---|---|---|
EdDSA (Ed25519) | 57 ms | 112 ms |
EdDSA (Ed448) | 166 ms | 331 ms |
Key Exchange Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
Diffie-Hellman (1024 bits) | 255 ms | 255 ms |
Diffie-Hellman (2048 bits) | 1896 ms | 1896 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
Diffie-Hellman (1024 bits) | 39 ms | 38 ms |
Diffie-Hellman (2048 bits) | 255 ms | 255 ms |
EC Key Exchange Algorithms
ESP32-S3 @ 240 MHz
- • Benchmark generated with CycloneCRYPTO 2.1.4
- • Compiled using GCC with optimization level 2
Algorithm | Public Key Generation (Software) | Shared Secret Computation (Software) |
---|---|---|
ECDH (P-256) | 188 ms | 186 ms |
ECDH (P-384) | 331 ms | 332 ms |
ECDH (P-521) | 406 ms | 406 ms |
ECDH (X25519) | 32 ms | 32 ms |
ECDH (X448) | 138 ms | 138 ms |
Algorithm | Public Key Generation (Hardware) | Shared Secret Computation (Hardware) |
---|---|---|
ECDH (X25519) | 32 ms | 32 ms |
ECDH (X448) | 86 ms | 86 ms |