PACT: Rate-Limit Bots Without Identity, CAPTCHAs, or Attestation
Mozilla's PACT design rethinks web rate limiting as a zero-knowledge exchange where a site learns exactly one bit about you, under the limit or not, with CAPTCHA as the fallback instead of identity or device attestation.
Bots, credential stuffing, and comment spam force a choice: block them with identity or eat the abuse. PACT (Private Access Control Tokens), Mozilla's proposal for privacy-preserving rate limiting, offers a third path with three roles. Anchors issue Endorsement tokens from scarce resources like verified accounts or phone numbers. Moderators verify endorsements and issue stateful rate-limit Credentials. Clients, the browsers and agents presenting those credentials, stay anonymous.
The cryptography is Privacy Pass, the zero-knowledge protocol born in 2018. Issuer blinding means a moderator signs a credential it can't later recognize, so a site learns exactly one bit about you: under the limit or not. Anonymous Credit Tokens add private counter state, letting moderators count your requests without linking them. Prio-style MPC powers aggregate abuse scoring over privately aggregated, encrypted shares.
The design deliberately skips hardware device attestation, the route Apple's Private Access Tokens (2022) and Google's abandoned Web Environment Integrity (2023) took. PACT holds the line at one bit: no device handshake, no identity.
Nothing ships today. Drafts are planned for IETF and W3C, and no browser supports it yet. Users without endorsements get a CAPTCHA fallback rather than lockout, the correct failure mode. If PACT lands, anti-abuse flips from "prove who you are" to "prove you're under the limit", which changes login walls, VPN blocks, and how sites greet AI agents.