PowForge vs Anubis
Anubis is a great first fence. It weeds out dumb crawlers with a SHA-256 proof-of-work gate. But in August 2025, Codeberg reported that AI bots learned to solve it. The hash race is over when the bots have ASICs or fine-tuned solvers. PowForge adds a second fence that hashes can't beat: Lightning payments. Bots can crack SHA-256 for free. They cannot crack Lightning for free.
Codeberg deployed Anubis after a wave of DDoS-grade AI crawlers bypassed robots.txt.
It worked — for months. Then in August 2025, they reported that AI bots had
learned to solve the Anubis SHA-256 challenge automatically.
The community started evaluating Iocaine and go-away as next steps.
The bypass signals that computational friction alone has a ceiling: when solving the puzzle
costs less than the scraping value, the puzzle stops mattering.
How Anubis and PowForge compare
| Dimension | PowForge (L402 tier) | Anubis |
|---|---|---|
| Proof type | Economic — Lightning payment | Computational — SHA-256 PoW |
| Bypassable by ASIC / learned solver? | No — Lightning payment requires real sats | Yes — demonstrated Aug 2025 (Codeberg) |
| Scales with bot capability | Yes — L402 price is adjustable, always real cost | No — fixed difficulty, arms race |
| Mobile / iOS Safari safe | Yes — both paths WASM-free | Yes — reverse proxy, not in-browser |
| Deployment model | Embeddable widget (npm / CDN) | Reverse proxy (entire site gate) |
| Granularity | Per-form / per-endpoint — price individual actions | All-or-nothing — whole site or route |
| Human UX (no Lightning) | SHA-256 PoW fallback (~4s) | SHA-256 PoW (~same) |
| Revenue from bot friction | Yes — L402 payments are real sats income | No — friction only, no payment flow |
| Open source | MIT | MIT |
| Self-hosted | Yes | Yes |
Codeberg AI-bot bypass: The Register, Aug 2025. L402 pricing is independently adjustable — raising sats cost doesn't require changing difficulty settings or updating the proxy config.
⚡ The economic second fence
A SHA-256 challenge costs CPU cycles. ASICs make that cost near-zero for well-funded bots. A Lightning payment costs real sats — the sats don't care how fast your solver is. Raise the L402 price per API call and you raise the real cost of scraping, independent of hash cracking capability. The second fence doesn't race with the bots.
When Anubis is the right call
Anubis is a reverse-proxy gate — it protects your entire site with zero code changes. If you just need to stop dumb crawlers at the edge without touching app code, Anubis is faster to deploy than PowForge. PowForge is the right next step when you want per-action pricing, payment revenue from friction, or adaptive cost that can't be cracked by solving puzzles faster.
Composable — run both
Anubis at the edge weeds out dumb bots cheaply. PowForge on high-value actions (registration, search, API calls) adds the economic layer that stops sophisticated bots that learned to solve PoW. They're complements, not competitors. The edge filter handles volume; L402 handles the tail of determined actors with compute.
Revenue from the bots
Every bot that pays a 3-sat L402 invoice funds your infrastructure. At scale, high-traffic scraping targets actually earn sats from scrapers — inverting the cost dynamic. Anubis makes scraping expensive for the bot; PowForge makes scraping profitable for you.
Add the economic fence
Drop-in npm package. Works alongside Anubis. Starts at 3 sats per action.
npm install @powforge/captcha