Meta's engineering team details the cryptographic architecture behind Advanced Browsing Protection (ABP) in Messenger, which checks clicked links against a malicious URL database without revealing the queried URL to the server. The system combines Private Information Retrieval (PIR) with an Oblivious Pseudorandom Function (OPRF), a pre-computed ruleset for balancing URL-prefix bucket lookups, AMD SEV-SNP confidential computing (TEE), Oblivious RAM (Path ORAM) to hide memory access patterns, and Oblivious HTTP (OHTTP) via a third-party proxy to strip client identifiers. Together these layers ensure that Meta's servers learn minimal information about which links users click, while still being able to warn users about malicious URLs from a continuously updated watchlist.
Table of contents
Private Information Retrieval – The Starting Point for ABPHow ABP Handles Prefix Queries for URLsPre-processing RulesetsSafeguarding Client QueriesThe ABP Request LifecycleSort: