Expand description
§http-quik: High-Fidelity stealth transport engine
http-quik is a specialized HTTP transport library designed for absolute network identity parity
with Google Chrome. It provides low-level control over the entire protocol stack—from TLS
handshakes to HTTP/2 frame signaling—to ensure that every network interaction is
indistinguishable from a real browser.
This crate is a core component of the Phantom Engine ecosystem and provides the high-stealth transport layer required for modern agentic navigation.
§Why http-quik?
Modern Anti-Bot systems (like Cloudflare, Akamai, and DataDome) use “Passive Fingerprinting” to identify automated traffic. They inspect:
- TLS Fingerprint (JA3/JA4): The order of cipher suites, extensions, and elliptic curves.
- HTTP/2 Fingerprint (Akamai): The SETTINGS frame values, the order of pseudo-headers, and stream priority.
http-quik solves this by using a custom BoringSSL stack and a specialized HTTP/2 builder to replicate
these fingerprints with bit-perfect accuracy.
§Core Features
- BoringSSL Integration: Full control over ClientHello, including GREASE and extension permutation.
- Chrome 134 Identity: Pre-configured profiles for the latest Chrome stable releases.
- Connection Pooling: Managed H2 session reuse to maintain consistent behavioral fingerprints.
- Stealth Redirects: A redirect state machine that handles
sec-fetch-*headers and method rotation identical to Chromium.
§Getting Started
use http_quik::{Client, ChromeProfile, Platform};
#[tokio::main]
async fn main() -> Result<(), http_quik::Error> {
// Create a client with a macOS Chrome 134 identity
let client = Client::builder()
.profile(http_quik::profile::chrome_134::profile(Platform::MacOsArm))
.build()?;
// Execute a stealth request
let response = client.get("https://example.com").await?;
println!("Status: {}", response.status());
Ok(())
}§Safety & FFI
This crate uses boring and boring-sys for low-level TLS control. All unsafe blocks are
localized to the tls and client modules and are documented with safety rationales.
Re-exports§
pub use crate::client::connect;pub use crate::client::Client;pub use crate::client::ClientBuilder;pub use crate::client::Response;pub use crate::error::Error;pub use crate::error::Result;pub use crate::profile::chrome_134::AKAMAI_FINGERPRINT;pub use crate::profile::chrome_134::JA3_HASH;pub use crate::profile::ChromeProfile;pub use crate::profile::Platform;