TLS_DHE_RSA_WITH_AES_128_GCM_SHA256
A TLS 1.2 cipher suite with finite-field Diffie-Hellman key exchange and AES-128-GCM. Libraries offer it, browsers do not.
What it is
TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 (code 0x009E) is a TLS 1.2 cipher suite defined in RFC 5288. It uses ephemeral finite-field Diffie-Hellman (DHE) for the key exchange, an RSA certificate, AES-128 in Galois/Counter Mode for the records and SHA-256 for the PRF.
Like ECDHE, DHE gives forward secrecy, but it is much slower for the same security level, because it works with large numbers instead of elliptic curve points. In TLS 1.2 the server also picks the Diffie-Hellman group on its own, and weak or badly generated groups led to problems such as the Logjam attack. RFC 7919 later added named finite-field groups to fix the group choice.
RFC 9325 says TLS 1.2 implementations SHOULD NOT negotiate TLS_DHE_* suites, and its list of recommended TLS 1.2 suites contains only ECDHE suites.
Who sends it
Measured on 2026-10-25 against our own test server: sent by 7 of 12 clients. Position counts from 1 and ignores GREASE values.
Why it matters for fingerprinting
None of the Chrome-like clients we measured offer any DHE suite. OpenSSL-based clients such as Python requests, httpx, Node.js fetch and Guzzle, and both curl builds, still do, so any TLS_DHE_ suite in a ClientHello is a strong sign that the client is not a current browser.
Positions in our data: 8th for Node.js fetch, 12th for Debian curl and Guzzle, 15th for Python requests and httpx, and 25th for macOS curl.
Check whether your client sends it
Open the test from your browser, or call it from your script, and look for TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 in the TLS details.
Run the TLS fingerprint test