HeadlinesBriefing favicon HeadlinesBriefing.com

Who Does Anubis Stop?

Hacker News •
×

I have been working on a patch to the Linux kernel to support $ORIGIN for the interpreter (PT_INTERP) via bpf in binfmt_misc. Leveraging an LLM, I pre‑seeded it with the lore.kernel.org thread. The thread had adopted Anubis, an HTTP proxy that requires proof‑of‑work before allowing access to a resource.

My AI produced anubis-fetch, a tool that natively solves the PoW or, if needed, launches Chromium to visit the URL. It also impersonates a real Chrome TLS/JA3 fingerprint via req, clearing passive Cloudflare blocking. Example usage: `$ anubis-fetch https://lore.kernel.org/linux-mm/some-thread/T/`.

The PoW challenge is trivial for a bot—one‑time cost, cached cookie—but imposes a regressive tax on humans: seconds of spinning, extra battery drain, and exclusion for text browsers or screen readers. The difficulty (d) defines the expected work W = 16^d hashes. With a common default d=4, a native Go solver at ~50 MH/s takes ~1.3 ms, while in‑browser JS takes ~2 s. Assuming 2 s felt time and 20 J per solve, 1 M solves/day waste ~23 person‑years and ~2 MWh annually; 100 M solves/day waste ~2,300 person‑years and ~200 MWh.

Anubis’s goal is to stop AI, yet AI bypasses it easily, leaving humans and an open web to pay the cost. The system marginalizes weaker devices and mobile users, making the web less accessible.