Expand description
§netfp
Rust primitives and implementations for network fingerprinting.
§Supported fingerprints
- JA3 and JA3S passive TLS client and server fingerprinting
- JARM active TLS server fingerprinting
§Crate features
ja3(default) — enables JA3 and JA3S fingerprinting.jarm(default) — enables JARM probe generation and fingerprinting.
§License
Licensed under the MIT License.
§Credit
JA3, JA3S, and JARM were created by Salesforce. Their original implementations
are available in the JA3 and
JARM repositories under the BSD 3-Clause
License.
See tls for message parsing and encoding. Fingerprint functions are
available with the ja3 and jarm features, both enabled by default.
Modules§
- primitives
- Integer types used by network protocol length fields.
- tls
- Types for parsing and encoding TLS messages.
Enums§
- Error
- Errors that can occur while constructing, encoding, or parsing network protocol data.
Functions§
- generate_
jarm_ probes - Builds ten JARM probes in the required order.
- ja3_
fingerprint - Computes a 32-character JA3 fingerprint from a parsed
TlsClientHello. - ja3s_
fingerprint - Computes a 32-character JA3S fingerprint from a parsed
TlsServerHello. - jarm_
fingerprint - Computes a 62-character JARM fingerprint from
TlsServerHelloprobe responses.