Skip to main content

Module timing_noise

Module timing_noise 

Source
Expand description

Performance timing noise injection.

Injects deterministic jitter into performance.now(), performance.timeOrigin, Date.now(), and performance.getEntries*() to break hardware-speed and headless-detection timing fingerprints.

Monotonicity of performance.now() is preserved — the wrapped function never returns a value lower than its previous call.

§Example

use stygian_browser::timing_noise::{timing_noise_script, TimingNoiseConfig};
use stygian_browser::noise::NoiseSeed;

let cfg = TimingNoiseConfig { enabled: true, jitter_ms: 0.3, seed: NoiseSeed::from(1_u64) };
let js = timing_noise_script(&cfg);
assert!(js.contains("performance.now"));
assert!(js.contains("__stygian_time_offset"));

Structs§

TimingNoiseConfig
Configuration for performance timing noise.

Functions§

timing_noise_script
Generate the timing noise injection script for config.