BAD SKY.NET

secp521r1

secp521r1 (NIST P-521) is the largest NIST curve in TLS. Libraries and the Firefox profile of curl-impersonate offer it, Chrome does not.

TLS supported groupCode 0x0019 (25)recommended

What it is

secp521r1 (group 25), known as NIST P-521, is the largest of the NIST prime curves used in TLS and is specified in RFC 8422. The 521 is not a typo: the curve is built on a prime of 521 bits, and it offers about 256 bits of security.

It is slower than the smaller curves and gives no practical benefit for typical web traffic, so few servers prefer it. It remains in many TLS libraries because it is part of the NIST set and some policies list it.

Chrome does not offer it, while the Firefox profile of curl-impersonate and most libraries still include it, usually after the smaller NIST curves.

Its key shares and signatures are larger than those of the smaller curves, which adds a little to every handshake that uses it.

Who sends it

Chrome 153 (macOS) browser Not sent
curl_cffi (impersonate chrome) Not sent
curl-impersonate chrome116 Not sent
curl-impersonate ff117 Sent at position 4
curl 8.7 (macOS) Sent at position 4
curl 7.88 (Debian 12) Sent at position 4
Python requests Sent at position 6
Python httpx Sent at position 6
Python httpx (HTTP/2) Sent at position 6
Go net/http Sent at position 5
Node.js fetch Sent at position 6
PHP Guzzle Sent at position 6

Measured on 2026-10-25 against our own test server: sent by 9 of 12 clients. Position counts from 1 and ignores GREASE values.

Why it matters for fingerprinting

This group is a clear browser signal. In our measurements Chrome 153, curl_cffi and curl-impersonate chrome116 do not offer it, while Python requests, httpx, Go net/http, Node.js fetch, Guzzle, both curl builds and the Firefox profile of curl-impersonate do. A ClientHello that claims to be Chrome but lists secp521r1 was not sent by Chrome.

Check whether your client sends it

Open the test from your browser, or call it from your script, and look for secp521r1 in the TLS details.

Run the TLS fingerprint test

References

Related