A Rust library for passive analysis of TCP, HTTP, and TLS traffic
Huginn Net is a modular ecosystem of Rust libraries forpassive fingerprinting and analysis of multiple network protocols, includingTCP, HTTP, and TLS.
Inspired by p0f and JA4, Huginn Net extends passive OS fingerprinting and TLS fingerprinting to support modern detection standards and multi-protocol analysis.
The ecosystem consists of 5 specialized crates that can be used independently or together. It leveragespnet,pcap-file, andtls-parser to analyze raw packets.
This ecosystem is under active development. Feedback and contributions welcome.

| Crate | Description |
|---|---|
| huginn-net | Complete multi-protocol analysis suite for TCP, HTTP, and TLS fingerprinting |
| huginn-net-tcp | TCP fingerprinting and OS detection when you only need TCP/OS analysis |
| huginn-net-http | HTTP analysis and browser detection when you only need HTTP analysis |
| huginn-net-tls | JA4 TLS client fingerprinting when you only need TLS/JA4 analysis |
| huginn-net-db | P0f database parser and matching engine for advanced custom signature parsing |
| Layer | Name | Protocol / Feature | Example in Huginn Net |
|---|---|---|---|
| 7 | Application Layer | TLS | JA4 (FoxIO-style) |
| 7 | Application Layer | HTTP | HTTP/1.1 & HTTP/2, Headers, Cookies, Referer, User-Agent, Lang |
| 4 | Transport Layer | TCP | OS Fingerprinting (p0f-style) |
Choose your approach: Use the complete suite or individual protocol crates.
For complete network analysis (TCP + HTTP + TLS):
[dependencies]
huginn-net = "…"For targeted analysis with better performance:
[dependencies]
huginn-net-tcp = "…" # TCP/OS fingerprinting only
huginn-net-http = "…" # HTTP analysis only
huginn-net-tls = "…" # TLS/JA4 analysis onlyFor changes, refer to the release notes.