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.5.0
  • Compiled using GCC with optimization level 3
AlgorithmEncryption
(Software)
Decryption
(Software)
Encryption
(Hardware)
Decryption
(Hardware)
3DES-CBC0.637 MB/s0.63 MB/s--
3DES-CTR0.639 MB/s0.638 MB/s--
AES128-CBC2.207 MB/s2.164 MB/s7.299 MB/s8.064 MB/s
AES192-CBC1.904 MB/s1.876 MB/s--
AES256-CBC1.675 MB/s1.652 MB/s7.246 MB/s7.692 MB/s
AES128-CTR2.217 MB/s2.217 MB/s7.518 MB/s7.518 MB/s
AES192-CTR1.915 MB/s1.912 MB/s--
AES256-CTR1.68 MB/s1.683 MB/s7.462 MB/s7.462 MB/s
SM4-CBC2.457 MB/s2.409 MB/s--
SM4-CTR2.475 MB/s2.469 MB/s--

AEAD Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmEncryption
(Software)
Decryption
(Software)
AES128-GCM1.353 MB/s1.349 MB/s
AES192-GCM1.231 MB/s1.228 MB/s
AES256-GCM1.129 MB/s1.127 MB/s
AES128-CCM1.121 MB/s1.122 MB/s
AES192-CCM0.961 MB/s0.962 MB/s
AES256-CCM0.841 MB/s0.842 MB/s
SM4-GCM1.443 MB/s1.438 MB/s
SM4-CCM1.254 MB/s1.256 MB/s
Ascon-AEAD1281.589 MB/s1.56 MB/s
ChaCha20Poly13053.289 MB/s3.289 MB/s

Hash Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmSpeed
(Software)
Speed
(Hardware)
MD513.698 MB/s-
SHA-12.793 MB/s25.641 MB/s
SHA-2242.336 MB/s25.641 MB/s
SHA-2562.341 MB/s26.315 MB/s
SHA-3841.517 MB/s28.571 MB/s
SHA-5121.517 MB/s28.571 MB/s
SHA3-2241.166 MB/s-
SHA3-2561.102 MB/s-
SHA3-3840.848 MB/s-
SHA3-5120.589 MB/s-
SM32.169 MB/s-
Ascon-Hash2560.593 MB/s-

Signature Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmGeneration
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
RSA (1024 bits)80 ms10 ms25 ms7 ms
RSA (2048 bits)490 ms39 ms118 ms26 ms
RSA (3072 bits)1505 ms83 ms315 ms57 ms
RSA (4096 bits)3398 ms147 ms660 ms101 ms
DSA (1024 bits)48 ms97 ms19 ms39 ms
DSA (2048 bits)246 ms504 ms73 ms157 ms

EC Signature Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmGeneration
(Software)
Verification
(Software)
Generation
(Hardware)
Verification
(Hardware)
ECDSA (secp256r1)73 ms66 ms67 ms60 ms
ECDSA (secp384r1)191 ms177 ms134 ms122 ms
ECDSA (secp521r1)420 ms377 ms253 ms221 ms
ECDSA (brainpoolP256r1)143 ms144 ms69 ms68 ms
ECDSA (brainpoolP384r1)393 ms398 ms140 ms136 ms
ECDSA (brainpoolP512r1)836 ms859 ms244 ms240 ms
SM264 ms64 ms64 ms64 ms
EdDSA (Ed25519)26 ms24 ms--
EdDSA (Ed448)103 ms92 ms--

Key Exchange Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmPublic Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
Diffie-Hellman (1024 bits)214 ms214 ms36 ms36 ms
Diffie-Hellman (2048 bits)1584 ms1585 ms245 ms245 ms

EC Key Exchange Algorithms

ESP32-S3 @ 240 MHz

  • Benchmark generated with CycloneCRYPTO 2.5.0
  • Compiled using GCC with optimization level 3
AlgorithmPublic Key Generation
(Software)
Shared Secret Computation
(Software)
Public Key Generation
(Hardware)
Shared Secret Computation
(Hardware)
ECDH (secp256r1)64 ms63 ms63 ms62 ms
ECDH (secp384r1)166 ms166 ms127 ms127 ms
ECDH (secp521r1)361 ms360 ms239 ms238 ms
ECDH (brainpoolP256r1)132 ms132 ms64 ms64 ms
ECDH (brainpoolP384r1)364 ms364 ms131 ms131 ms
ECDH (brainpoolP512r1)774 ms774 ms228 ms228 ms
ECDH (SM2)64 ms63 ms65 ms65 ms
ECDH (X25519)14 ms15 ms--
ECDH (X448)53 ms52 ms--