BotBrowser Knowledge Hub — Page 12

Browse page 12 of BotBrowser articles on browser fingerprint protection, privacy signals, proxy consistency, and deployment.

  1. fingerprint

    Edge-Layer Rules a Page Script Cannot Evaluate

    A public ruleset splits 126 rules into 95 a page can check and 31 that need the network edge. Real handshakes show why the heaviest ones sit on the far side.

    Read article →
  2. fingerprint

    Intl.NumberFormat: Rounding Mode and Sign Display

    One probe on number formatting: which rounding mode is the default, what each mode does at a .5 boundary, and how a sign or a trailing zero quietly disappears.

    Read article →
  3. fingerprint

    Iterator Helpers: Laziness, Single Use and Early Stop

    One probe on iterator helpers: when each helper pulls a value, why the result cannot be iterated twice, and how take stops a source that drop must walk.

    Read article →
  4. fingerprint

    Sparse Array Holes and What Each Method Does With Them

    One probe on a single hole: which methods skip it, which visit it, what it becomes when materialised, and why indexOf and includes disagree about it.

    Read article →
  5. fingerprint

    Text Measurement Fingerprinting: Sub-Pixel Tracking

    Canvas measureText() exposes sub-pixel metrics that vary with fonts and browser setups. Compare this signal with Canvas and understand BotBrowser profile limits.

    Read article →
  6. fingerprint

    What Public Detector Suites Actually Test

    Two public suites publish 49 tests between them. Reading their own catalogues shows 11 read the connection, and four shared names are classified differently.

    Read article →
  7. fingerprint

    Array Sort and Comparators: A Function You Can Get Wrong

    Sort fixed arrays: the default string order, in-place mutation, a stable sort, where undefined and NaN land, how a bad comparator yields a wrong order, and subtraction overflow.

    Read article →
  8. fingerprint

    ArrayBuffer and TypedArray: One Buffer, Many Views

    Read one ArrayBuffer as Uint8Array, Uint32Array and DataView: byte versus element length, why slice copies and subarray aliases, byte order, and how a transfer detaches the source.

    Read article →
  9. fingerprint

    BotD Detector Registry: Which Checks Actually Run

    Read the pinned FingerprintJS BotD registry and run its detectors over explicit component states to see which automation checks fire, which stay silent, and which fail open.

    Read article →
  10. fingerprint

    btoa and atob: the Latin-1 boundary

    Run btoa and atob over accented, CJK and emoji strings to see exactly where each throws, what atob returns, whether padding is optional, and which alphabet is rejected.

    Read article →
  11. fingerprint

    Intl.Collator: Locale Order Is Not Code-Unit Order

    One probe on fixed lists: how a locale comparison differs from a code-unit sort, how numeric, sensitivity and caseFirst change the outcome, and what resolvedOptions reports.

    Read article →
  12. fingerprint

    Crypto-JS Random Source: Which Branch Your Build Uses

    Read crypto-js 4.2.0 and 3.1.2 source, then measure which entropy call each version makes, how many calls a request costs, and what a stubbed crypto object can change.

    Read article →