known client
Apple Safari / WebKit
Apple SecureTransport cipher-suite signature — Safari (macOS/iOS), WKWebView, and native URLSession apps; the 3DES legacy tail (0xC008/0xC012/0x000A) is Apple's tell, no other modern stack carries it. Platform entry like Android's Conscrypt: Apple system TLS legitimately offers any ALPN (h2, http/1.1, dot, none), so the cipher list alone is the signature — not ALPN-gated
Apple Safari / WebKit: a browser-shaped hello, but without the post-quantum key share a current Chrome or Firefox would send.
- JA4
- JA4_r
- JA3
- JA3_raw
Read
Spread measures reach, not intent: it can’t tell one scraper visiting 500 domains from 500 people visiting one each. Stability is a claim about software — whether the stack is deterministic — nothing about who runs it.
Footprint
ClientHello anatomy
The underscore groups of JA4_r are the raw cipher suites · extensions · signature algorithms behind the hash.
The post-quantum key share is a structural fact about the hello, not a verdict — GREASE values are flagged the same neutral way.
- 00x1301TLS_AES_128_GCM_SHA256
- 10x1302TLS_AES_256_GCM_SHA384
- 20x1303TLS_CHACHA20_POLY1305_SHA256
- 30xc02cTLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
- 40xc02bTLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
- 50xcca9TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305
- 60xc030TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
- 70xc02fTLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
- 80xcca8TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305
- 90xc00aTLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
- 100xc009TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
- 110xc014TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
- 120xc013TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
- 130x009dTLS_RSA_WITH_AES_256_GCM_SHA384
- 140x009cTLS_RSA_WITH_AES_128_GCM_SHA256
- 150x0035TLS_RSA_WITH_AES_256_CBC_SHA
- 160x002fTLS_RSA_WITH_AES_128_CBC_SHA
- 170xc008unknown (0xc008)
- 180xc012unknown (0xc012)
- 190x000aunknown (0x000a)
- 00x0000server_name (SNI)
- 10x0005status_request (OCSP)
- 20x000asupported_groups
- 30x000bec_point_formats
- 40x000dsignature_algorithms
- 50x0010application_layer_protocol_negotiation (ALPN)
- 60x0012signed_certificate_timestamp
- 70x0015padding
- 80x0017extended_master_secret
- 90x001bcompress_certificate
- 100x0023session_ticket
- 110x002bsupported_versions
- 120x002dpsk_key_exchange_modes
- 130x0033key_share
- 140xff01renegotiation_info
Stored sorted — under one JA4 the wire order varies by construction, so no single order is “the” order.
- 00x001dx25519
- 10x0017secp256r1 (P-256)
- 20x0018secp384r1 (P-384)
- 30x0019secp521r1 (P-521)
- 00x0403ecdsa_secp256r1_sha256
- 10x0804rsa_pss_rsae_sha256
- 20x0401rsa_pkcs1_sha256
- 30x0503ecdsa_secp384r1_sha384
- 40x0805rsa_pss_rsae_sha384
- 50x0805rsa_pss_rsae_sha384
- 60x0501rsa_pkcs1_sha384
- 70x0806rsa_pss_rsae_sha512
- 80x0601rsa_pkcs1_sha512
- 90x0201rsa_pkcs1_sha1
Reach — domains contacted
- 37%
- 17%
- 14%
- 5.0%
- 3.0%
- 2.0%
- 2.0%
- 1.7%
- 1.3%
- 1.3%
- 1.3%
- 1.3%
- 1.0%
- 1.0%
- 0.7%
Top 15 of 41. Share is the fraction of this fingerprint’s observations reaching each name.