TLS Fingerprinting
This page explains everything you need to know about TLS when making requests based modules.
Why Antibots Use TLS Fingerprinting
TLS fingerprinting is a powerful technique employed by antibot systems to distinguish between legitimate browser traffic and automated requests. When a client initiates a TLS handshake, it reveals specific characteristics about the underlying software making the connection.
Standard HTTP request libraries (like Python's requests
, Node.js's axios
, or Go's net/http
) have distinctly different TLS fingerprints compared to real web browsers. These libraries typically:
Use different cipher suite preferences
Support different TLS extensions
Order TLS extensions in predictable patterns
Have library-specific SSL/TLS implementation details
Since automated bots and scrapers commonly rely on these standard libraries, antibot systems can easily identify and block requests that don't match expected browser fingerprints. This creates an effective first line of defense against automated traffic, as legitimate users virtually never use request libraries directly.
Solution: Browser-Matching TLS Clients
To bypass TLS fingerprinting, you need HTTP clients that can mimic real browser TLS behavior. Two excellent options are available:
tls-client
Repository: https://github.com/bogdanfinn/tls-client
A Go-based HTTP client that can impersonate various browsers' TLS fingerprints with high fidelity. Multiple wrappers for Python and Node.js are available and listed here: https://bogdanfinn.gitbook.io/open-source-oasis/community-projects
azuretls-client
Repository: https://github.com/Noooste/azuretls-client
A Go HTTP client designed to replicate browser TLS characteristics and bypass fingerprinting detection.
Recommended Configuration
Both clients support the Chrome133
profile. As of the time of writing, the parameters you need to mimic Chrome are:
Profile:
Chrome133
Random TLS extension order: Enabled
This configuration ensures your requests closely mimic genuine Chrome browser traffic.
By using these specialized clients with proper configuration, you can effectively bypass TLS fingerprinting while maintaining the convenience of programmatic HTTP requests. Get in touch: discord.gg/akamai
Last updated