3efdc18f67deb05a

Seen (all time)
(past week)
4.0M times (0.01%)
90K times (0.02%)
Rank (all time)
(past week)
386 / 376964
246 / 12435
TLS VersionTLS 1.0
Handshake VersionTLS 1.2
Cipher Suites
exact match
GREASE (0x0a0a)
TLS_AES_128_GCM_SHA256 (0x1301)
TLS_AES_256_GCM_SHA384 (0x1302)
TLS_CHACHA20_POLY1305_SHA256 (0x1303)
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 (0xc02b)
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (0xc02f)
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 (0xc02c)
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (0xc030)
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca9)
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca8)
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA (0xc014)
TLS_RSA_WITH_AES_128_GCM_SHA256 (0x009c)
TLS_RSA_WITH_AES_256_GCM_SHA384 (0x009d)
TLS_RSA_WITH_AES_128_CBC_SHA (0x002f)
TLS_RSA_WITH_AES_256_CBC_SHA (0x0035)
TLS_RSA_WITH_3DES_EDE_CBC_SHA (0x000a)
Compression Methodsnull (0x00)
Extensions
exact match
GREASE (0x0a0a)
server_name (0x0000)
extended_master_secret (0x0017)
renegotiation_info (0xff01)
supported_groups (0x000a)
ec_point_formats (0x000b)
SessionTicket TLS (0x0023)
status_request (0x0005)
signature_algorithms (0x000d)
signed_certificate_timestamp (0x0012)
key_share (0x0033)
psk_key_exchange_modes (0x002d)
supported_versions (0x002b)
compressed_certificate (0x001b)
GREASE (0x0a0a)
pre_shared_key (0x0029)
Supported Groups
exact match
GREASE (0x0a0a)
x25519 (0x001d)
secp256r1 (0x0017)
secp384r1 (0x0018)
Signature Algorithmsecdsa_secp256r1_sha256 (0x0403)
rsa_pss_rsae_sha256 (0x0804)
rsa_pkcs1_sha256 (0x0401)
ecdsa_secp384r1_sha384 (0x0503)
rsa_pss_rsae_sha384 (0x0805)
rsa_pkcs1_sha384 (0x0501)
rsa_pss_rsae_sha512 (0x0806)
rsa_pkcs1_sha512 (0x0601)
rsa_pkcs1_sha1 (0x0201)
EC Point Formatsuncompressed (0x00)
ALPN
Key Share GREASE (0x0a0a) - 1-byte key
x25519 (0x001d) - 32-byte key
PSK Key Exchange Modes psk_dhe_ke (0x01)
Supported Versions
exact match
GREASE (0x0a0a)
TLS 1.3 (0x0304)
TLS 1.2 (0x0303)
TLS 1.1 (0x0302)
TLS 1.0 (0x0301)
Certificate Compression Algorithms brotli (0x0002)
Record Size Limit
nid4538996821126459482
Cluster Cluster #13
20 fingerprints, comprising 26.3% of connections
Related 8299d854fe94c0fd (compare) Seen 165768 times (0.00%)
d8790c8ed8d85177 (compare) Seen 1396011 times (0.00%)
031590c9b4042e4f (compare) Seen 46137 times (0.00%)
e0bfc6ef97116168 (compare) Seen 8080469 times (0.03%)
8940a9905960db5d (compare) Seen 110078 times (0.00%)
bc3118430dde084a (compare) Seen 7307434 times (0.02%)
d14a8ab82c67f180 (compare) Seen 2116641 times (0.01%)
bf499db05ab31baf (compare) Seen 14182 times (0.00%)
bbf04e5f1881f506 (compare) Seen 80590024 times (0.27%)
a0fc4d4585c055bc (compare) Seen 10449 times (0.00%)
871d9e781c7fa031 (compare) Seen 26837 times (0.00%)
Labels
uTLS generated code
// import tls "github.com/refraction-networking/utls"
tcpConn, err := net.Dial("tcp", "tlsfingerprint.io:443")
if err != nil {
	fmt.Printf("net.Dial() failed: %+v\n", err)
	return
}

config := tls.Config{ServerName: "tlsfingerprint.io"}
// This fingerprint includes feature(s), not fully supported by TLS.
// uTLS client with this fingerprint will only be able to to talk to servers,
// that also do not support those features. 
tlsConn := tls.Client(tcpConn, &tlsConfig, utls.HelloCustom)
clientHelloSpec := tls.ClientHelloSpec {
	CipherSuites: []uint16{
		tls.GREASE_PLACEHOLDER,
		tls.TLS_AES_128_GCM_SHA256,
		tls.TLS_AES_256_GCM_SHA384,
		tls.TLS_CHACHA20_POLY1305_SHA256,
		tls.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
		tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
		tls.TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
		tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
		tls.TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,
		tls.TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,
		tls.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
		tls.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
		tls.TLS_RSA_WITH_AES_128_GCM_SHA256,
		tls.TLS_RSA_WITH_AES_256_GCM_SHA384,
		tls.TLS_RSA_WITH_AES_128_CBC_SHA,
		tls.TLS_RSA_WITH_AES_256_CBC_SHA,
		tls.TLS_RSA_WITH_3DES_EDE_CBC_SHA,
	},
	CompressionMethods: []byte{
		0x00, // compressionNone
	},
	Extensions: []tls.TLSExtension{
		&tls.UtlsGREASEExtension{},
		&tls.SNIExtension{},
		&tls.UtlsExtendedMasterSecretExtension{},
		&tls.RenegotiationInfoExtension{renegotiation: tls.RenegotiateOnceAsClient},
		&tls.SupportedCurvesExtension{[]tls.CurveID{
			tls.CurveID(tls.GREASE_PLACEHOLDER),
			tls.X25519,
			tls.CurveP256,
			tls.CurveP384,
		}},
		&tls.SupportedPointsExtension{SupportedPoints: []byte{
			0x00, // pointFormatUncompressed
		}},
		&tls.SessionTicketExtension{},
		&tls.StatusRequestExtension{},
		&tls.SignatureAlgorithmsExtension{SupportedSignatureAlgorithms: []SignatureScheme{
			tls.ECDSAWithP256AndSHA256,
			tls.PSSWithSHA256,
			tls.PKCS1WithSHA256,
			tls.ECDSAWithP384AndSHA384,
			tls.PSSWithSHA384,
			tls.PKCS1WithSHA384,
			tls.PSSWithSHA512,
			tls.PKCS1WithSHA512,
			tls.PKCS1WithSHA1,
		},},
		&tls.SCTExtension{},
		&tls.KeyShareExtension{[]tls.KeyShare{
			{Group: tls.CurveID(tls.GREASE_PLACEHOLDER), Data: []byte{0}},
			{Group: tls.X25519},
		}},
		&tls.PSKKeyExchangeModesExtension{[]uint8{
			tls.PskModeDHE,
		}},
		&tls.SupportedVersionsExtension{[]uint16{
			tls.GREASE_PLACEHOLDER,
			tls.VersionTLS13,
			tls.VersionTLS12,
			tls.VersionTLS11,
			tls.VersionTLS10,
		}},
		&tls.FakeCertCompressionAlgsExtension{[]tls.CertCompressionAlgo{
			tls.CertCompressionBrotli,
		}},
		&tls.UtlsGREASEExtension{},
		&tls.GenericExtension {id: 0x0029}, // WARNING: UNKNOWN EXTENSION, USE AT YOUR OWN RISK
	},
}
tlsConn.ApplyPreset(clientHelloSpec)
        
n, err = tlsConn.Write("Hello, World!")
// or tlsConn.Handshake() for better control

Times seen (per hour)

Percent seen (24 hour averaged)

User Agents