Skip to content
View proofofbots's full-sized avatar
  • Germany, Munich
  • Joined Aug 14, 2026

Block or report proofofbots

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
proofofbots/README.md

proofofbots

Research and resources on the tracking, bot detection and anti-fraud services the web runs on.

How they fingerprint, what they collect, what the signals actually prove.
Everything reproducible from a pinned build, with the limits written down.


Projects

Fingerprint Pro Internals fingerprint-pro-internals
Fingerprint Pro v4, deobfuscated and documented. 143 signals named, the obfuscated bundle unpacked, the binary wire format decoded, every collector runnable on its own.
Docs · Live explorer · Signal map
02 web-re-toolkit
Tooling for reversing obfuscated web bundles. Deobfuscation passes, instrumentation hooks and the workflow used for the teardowns here.
Docs
03 akamai solver
Akamai Bot Manager sensor data, taken apart and rebuilt step by step.
Guide
04 kasada solver
Kasada Bot Defence solver
Guide
05 undisclosed  queued
Not saying yet.

Rows fill in as each teardown ships. Nothing is announced before it is reproducible.


PGP

UID proofofbots <proofofbot@pm.me>
FINGERPRINT 1773 1743 DED0 58C5 AFD9 C2CF CE5E 01BD 4E25 92C1
ALGORITHM ed25519, created 2026-08-15
$ curl -sL https://raw.githubusercontent.com/proofofbots/proofofbots/main/README.md | gpg --import
$ gpg --fingerprint proofofbot@pm.me

Compare the printed fingerprint against the one above before you trust the key. Fetching it over the same channel as this page proves nothing on its own.

Public key block
-----BEGIN PGP PUBLIC KEY BLOCK-----

mDMEaoCCCRYJKwYBBAHaRw8BAQdAbVlQJWopN5k0NFbGuomlpUNRGwmHLogNocab
bgv3Tdy0HnByb29mb2Zib3RzIDxwcm9vZm9mYm90QHBtLm1lPoivBBMWCgBXFiEE
F3MXQ97QWMWv2cLPzl4BvU4lksEFAmqAggkbFIAAAAAABAAObWFudTIsMi41KzEu
MTIsMCwzAhsDBQsJCAcCAiICBhUKCQgLAgQWAgMBAh4HAheAAAoJEM5eAb1OJZLB
eTIA/1XAL2mJrRWSbnojbZe6lt73dtEw9okgsFK+/yu3VBJPAP9L279LMRN7QiHi
VNliFeVop9bQg4SCaWJf5AVx7P+LAg==
=JQPW
-----END PGP PUBLIC KEY BLOCK-----

Pinned Loading

  1. fingerprint-pro-internals fingerprint-pro-internals Public

    Documenting the internals of Fingerprint Pro's commercial agent, not the open-source FingerprintJS library

    JavaScript 44 12

  2. web-re-toolkit web-re-toolkit Public

    Headless Akamai & Kasada solver that runs without a browser, and the reversing toolkit it was built with

    Rust 14 3