Proof of work challenges are quite effective against bot swarms. Some data of my experiments:
Posted by Glade_Art@reddit | linux | View on Reddit | 3 comments
You may know about Anubis by Techaro, the PoW challenge thing that protects websites from bots. It's used on several major sites, including FFmpeg, Arch, and the Linux Foundation. This experiment is specifically about Anubis.
Note that Anubis does not use up all CPU cores for its challenge to not overheat devices and for a better UX. Some PoW challenge systems do all cores, making them more effective. However, it appears as if Anubis gets the job done just fine.
Wall_of_Force@reddit
could gpu based pow work better, to force bots to have a working gpu?
Glade_Art@reddit (OP)
The problem with that is that the challenges would be made harder since it's for fast GPU hardware, but many devices don't have proper GPUs. Overall, using CPUs for it seems to work just fine for stopping bots.
marc-andre-servant@reddit
Yes, it's quite easy, just implement a memory-constrained hashing algorithm like DaggerHashimoto. The limiting constraint becomes memory bandwidth, so GPUs win because they have much larger memory buses and speeds than CPUs. With WebGPU, this can even run inside a browser.
Of course, the issue is that a lot of humans only have integrated graphics, and in the web scraping prevention use case, your adversary is AI training corporations, who by definition have entire datacenters filled with GPUs specifically optimized for maximum memory throughput. This would be the opposite of the solution we want.