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.
§Changelog
For recent updates and release notes, please see the CHANGELOG.md on GitHub.
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;