f4f8bdfcf4e66096

Seen (all time)
(past week)
173K times (0.00%)
400 times (0.00%)
Rank (all time)
(past week)
1420 / 449629
1722 / 11858
TLS VersionTLS 1.0
Handshake VersionTLS 1.2
Cipher Suites
exact match
GREASE (0x0a0a)
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca9)
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcca8)
LEGACY_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 (0xcc14)
LEGACY_TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 (0xcc13)
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_AES_128_CBC_SHA (0xc009)
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA (0xc013)
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA (0xc00a)
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)
renegotiation_info (0xff01)
server_name (0x0000)
extended_master_secret (0x0017)
SessionTicket TLS (0x0023)
signature_algorithms (0x000d)
status_request (0x0005)
signed_certificate_timestamp (0x0012)
application_layer_protocol_negotiation (0x0010)
ChannelID (0x7550)
ec_point_formats (0x000b)
supported_groups (0x000a)
GREASE (0x0a0a)
Supported Groups
exact match
GREASE (0x0a0a)
x25519 (0x001d)
secp256r1 (0x0017)
secp384r1 (0x0018)
Signature Algorithms
exact match
rsa_pkcs1_sha512 (0x0601)
ecdsa_secp521r1_sha512 (0x0603)
rsa_pkcs1_sha384 (0x0501)
ecdsa_secp384r1_sha384 (0x0503)
rsa_pkcs1_sha256 (0x0401)
ecdsa_secp256r1_sha256 (0x0403)
rsa_pkcs1_sha1 (0x0201)
ecdsa_sha1 (0x0203)
EC Point Formatsuncompressed (0x00)
ALPNh2
http/1.1
Key Share
PSK Key Exchange Modes
Supported Versions
Certificate Compression Algorithms
Record Size Limit
nid-794676440092745578
Related
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"}
tlsConn := tls.UClient(tcpConn, &tlsConfig, tls.HelloCustom)
clientHelloSpec := tls.ClientHelloSpec {
	CipherSuites: []uint16{
		tls.GREASE_PLACEHOLDER,
		tls.TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,
		tls.TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,
		tls.OLD_TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,
		tls.OLD_TLS_ECDHE_RSA_WITH_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_AES_128_CBC_SHA,
		tls.TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,
		tls.TLS_ECDHE_ECDSA_WITH_AES_256_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.RenegotiationInfoExtension{Renegotiation: tls.RenegotiateOnceAsClient},
		&tls.SNIExtension{},
		&tls.UtlsExtendedMasterSecretExtension{},
		&tls.SessionTicketExtension{},
		&tls.SignatureAlgorithmsExtension{SupportedSignatureAlgorithms: []tls.SignatureScheme{
			tls.PKCS1WithSHA512,
			tls.ECDSAWithP521AndSHA512,
			tls.PKCS1WithSHA384,
			tls.ECDSAWithP384AndSHA384,
			tls.PKCS1WithSHA256,
			tls.ECDSAWithP256AndSHA256,
			tls.PKCS1WithSHA1,
			tls.ECDSAWithSHA1,
		},},
		&tls.StatusRequestExtension{},
		&tls.SCTExtension{},
		&tls.ALPNExtension{AlpnProtocols: []string{"h2","http/1.1"}},
		&tls.FakeChannelIDExtension{},
		&tls.SupportedPointsExtension{SupportedPoints: []byte{
			0x00, // pointFormatUncompressed
		}},
		&tls.SupportedCurvesExtension{[]tls.CurveID{
			tls.CurveID(tls.GREASE_PLACEHOLDER),
			tls.X25519,
			tls.CurveP256,
			tls.CurveP384,
		}},
		&tls.UtlsGREASEExtension{},
	},
}
tlsConn.ApplyPreset(&clientHelloSpec)
        
n, err = tlsConn.Write([]byte("Hello, World!"))
// or tlsConn.Handshake() for better control

Times seen (per hour)

Percent seen (24 hour averaged)

User Agents