Can esp32 decode ecdsa algorithm?

ESP32-WROOM-32 cannot connect to HTTPS server using ECDSA certificate - Is there a solution?

Hi everyone,

I am using ESP32-WROOM-32, the device needs to send data and perform OTA firmware via HTTPS to a backend WebServer. However, I get an error when connecting because the server is using ECDSA (Elliptic Curve) SSL certificate.

I learned that ESP32 (WiFiClientSecure / mbedTLS) usually does not support ECDSA, only supports RSA certificates.

So I want to ask: Is there a way for ESP32-WROOM-32 to support HTTPS connection with ECDSA certificate?

But ECDSA is supported!?

See this example: Wokwi - Online ESP32, STM32, Arduino Simulator

1 Like

Thanks for your help !
I will try again and see if everything is ok.

The other way around. Elliptic curves are more memory efficient than RSA, e.g., NIST P-256 (256 bit) is approx. RSA 3072 bit. It’s easier for microcontrollers to do elliptic curve stuff (elliptic curve digital signatures, or elliptic curve diffie-helman for key exchange).

The ESP32 has so much memory and compute capabilities that it of course supports both though.

And of course the underlying mbedTLS library is capable of them all, and some more.

Now, there might be some exotic curves that might not be enabled by default, but that’s another story. At least the NIST and Brainpool curves, as well as like Curve 25519 should be on.

1 Like