
🦀 Stealth-HTTP-Client für Rust. Imitiert echte Browser-TLS-Fingerprints für unerkennbare Anfragen. Schnell, typsicher und für präzises Networking entwickelt.
. Ein fortschrittlicher Stealth-HTTP-Client für Rust.
Entwickelt für datenschutzbewusste Entwickler, die volle Kontrolle über ihren Netzwerk-Fingerprint benötigen.
Sieht aus wie ein Browser. Verhält sich wie ein Browser. Geschrieben in Rust.
Basiert auf bogdanfinn/tls-client – der branchenführenden TLS-Fingerprinting-Bibliothek, der Sicherheitsexperten weltweit vertrauen. Wir nutzen bogdanfinns kampferprobte Shared Libraries (.dll/.so/.dylib) über FFI-Bindungen, weil:
RustTLSX bringt diese bewährte Technologie mit einer typsicheren, ergonomischen API in die Rust-Welt, die 6x schneller ist als Python-Alternativen.
Moderne Webanwendungen analysieren jeden Aspekt deiner HTTP-Anfragen – nicht nur Header und Cookies, sondern auch die tiefen kryptografischen Signaturen deines TLS-Handshakes. Standard-Rust-HTTP-Clients (reqwest, hyper, ureq) erzeugen leicht erkennbare Muster, die automatisierten Traffic sofort identifizieren.
RustTLSX löst dies, indem es Folgendes bietet:
Lade die erforderliche TLS-Client-Bibliothek für deine Plattform von den tls-client-Releases herunter:
tls-client-windows-64-1.3.3.dlltls-client-linux-ubuntu-amd64-1.3.3.sotls-client-darwin-amd64-1.3.3.dylibLege die Bibliotheksdatei in deinem Projektstammverzeichnis, im Systembibliothekspfad (/usr/local/lib/) ab oder stelle sicher, dass sie über PATH erreichbar ist.
Füge RustTLSX zu deiner Cargo.toml hinzu:
[dependencies]
rust-tlsx = "0.1"
use rust_tlsx::{TlsClient, BrowserProfile};
fn main() -> anyhow::Result<()> {
let client = TlsClient::new(BrowserProfile::Firefox120)
.header("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0")
.timeout(30);
let response = client.get("https://example.com")?;
println!("Status: {}", response.status);
println!("Body: {}", response.body);
Ok(())
}
RustTLSX unterstützt über 30 Browser-Profile gängiger Browser:
// Chrome versions
BrowserProfile::Chrome103
BrowserProfile::Chrome107
BrowserProfile::Chrome109
BrowserProfile::Chrome120
// Firefox versions
BrowserProfile::Firefox102
BrowserProfile::Firefox105
BrowserProfile::Firefox108
BrowserProfile::Firefox120
// Safari versions
BrowserProfile::Safari15_6_1
BrowserProfile::Safari16_0
BrowserProfile::SafariIos16_0
// Opera and others
BrowserProfile::Opera89
BrowserProfile::Opera90
let client = TlsClient::new(BrowserProfile::Chrome109)
.header("Accept", "application/json")
.header("Accept-Language", "en-US,en;q=0.9")
.cookie("session", "abc123")
.cookie("token", "xyz789");
let response = client.get("https://api.example.com")?;
let body = r#"{"username": "user", "password": "pass"}"#;
let response = client.post("https://example.com/login", Some(body.to_string()))?;
let client = TlsClient::new(BrowserProfile::Firefox120)
.timeout(60); // seconds
let response = client.get("https://slow-api.example.com")?;
RustTLSX basiert auf einer Grundlage bewährter Exzellenz, statt das Rad neu zu erfinden. Wir verwenden bogdanfinns kompilierte Bibliotheken (.dll/.so/.dylib) über FFI, weil:
Forschungsinvestition: Bogdanfinn hat Tausende Stunden in das Reverse-Engineering des Browser-TLS-Verhaltens investiert. Diese Forschung zu reproduzieren würde Jahre dauern und wahrscheinlich schlechtere Ergebnisse liefern.
Kampferprobte Zuverlässigkeit: Diese Bibliotheken werden weltweit von großen Sicherheitsfirmen, Datenschutz-Tools und Forschungseinrichtungen eingesetzt. Sie wurden gegen jedes große Schutzsystem getestet.
Kontinuierliche Weiterentwicklung: Browser-Fingerprints ändern sich ständig. Bogdanfinns Bibliotheken erhalten regelmäßige Updates, um neuen Browserversionen und Schutzsystem-Updates zu entsprechen.
Leistungsoptimierung: Die native C/Go-Implementierung ist stark auf Geschwindigkeit und Speichereffizienz optimiert und liefert eine Leistung, die reine Rust-Implementierungen nicht erreichen können.
Dynamisches Laden zur Laufzeit: Bibliotheken werden bei Bedarf über FFI geladen, wodurch die Komplexität des statischen Linkens entfällt und die Leistung erhalten bleibt.
Speicherverwaltung: Rusts Ownership-Modell gewährleistet eine sichere Interaktion mit nativen Bibliotheken und verhindert Speicherlecks sowie Use-after-Free-Bugs, die in C/C++-Implementierungen häufig vorkommen.
Fehlerbehandlung: Umfassende, auf Result basierende Fehlerbehandlung liefert detaillierte Diagnosen bei gleichzeitiger Typsicherheit.
Verbindungsverwaltung: Intelligentes Pooling und Wiederverwendung von TLS-Verbindungen mit browser-genauen Verhaltensmustern.