TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
A legacy TLS cipher suite for ECDSA certificates with AES-128-CBC and SHA-1. Chrome does not send it; most libraries do.
What it is
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA (code 0xC009) comes from the elliptic curve TLS specification, now RFC 8422. It uses ephemeral elliptic curve Diffie-Hellman with an ECDSA certificate, AES-128 in CBC mode and HMAC-SHA1 for record integrity.
The key exchange gives forward secrecy, but the record layer has the known problems of CBC with MAC-then-encrypt and relies on SHA-1. RFC 9325 says CBC suites SHOULD NOT be used unless encrypt_then_mac is negotiated.
It is the ECDSA counterpart of TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA, which is still in Chrome's list. A server that holds only an ECDSA certificate and supports no AEAD suite would need this one; such servers are very rare today.
Servers can safely leave it disabled: every client in our data that offers it also offers ECDHE suites with AES-GCM, which are stronger in every respect.
Who sends it
Measured on 2026-10-25 against our own test server: sent by 6 of 12 clients. Position counts from 1 and ignores GREASE values.
Why it matters for fingerprinting
In our data Chrome 153, curl_cffi and curl-impersonate chrome116 do not send it, although they do send the RSA variant. The Firefox profile of curl-impersonate sends it 11th, Go net/http 7th, Debian curl and Guzzle 22nd, macOS curl 24th and Node.js fetch 26th. Python requests and httpx do not send it either.
So this suite separates the Chrome profile from the Firefox profile, and Go from Python.
Check whether your client sends it
Open the test from your browser, or call it from your script, and look for TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA in the TLS details.
Run the TLS fingerprint test