leyline-http 0.1.5

HTTP client that impersonates Chrome, Firefox, and Safari on the wire: TLS (JA3/JA4), HTTP/2, and HTTP/3 fingerprints
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use super::*;

#[test]
fn ja3_format() {
    let input = Ja3Input {
        ciphers: &[
            "TLS_AES_128_GCM_SHA256".into(),
            "TLS_RSA_WITH_AES_128_CBC_SHA".into(),
        ],
        curves: &["X25519".into(), "SECP256R1".into()],
        extension_ids: &[0x0000, 0x000a, 0x000b],
        tls_record_version: 771,
    };
    let hash = compute_ja3(&input);
    assert_eq!(hash.len(), 32);
}