7 ms·
Proof-of-work to protect lore.kernel.org and git.kernel.org against AI crawlers
- skeptrune 2y agoI am really enjoying seeing this use-case for PoW gain popularity. Hopefully it normalizes the technique and it can start to become more common for anti-spam systems.
- charcircuit 2y agoSpammers are willing to dedicate more processing power than regular users. It doesn't make sense to do. It's either meaningless or ruins the user experience for normal people.
- losvedir 2y agoRegular users aren't trying to load billions of pages.
- charcircuit 2y agoWhat's your point?
- mariusor 2y agoWhen the compute power to access a page has just doubled, when you view 10 pages it's not a problem, but when you view 1 billion of them, it is.
- charcircuit 2y agoThe compute power is not going to be a problem even at a billion pages. Lets say that a challenge targeted towards a cheap phone can be solved by a workstation CPU at 1000 challenges per second. And let's say each challenge lets you visit 100 pages. So for a billion pages you need only a few hours of 1 machine's compute. If you try and make the amount of compute to be a problem, then it will become a problem to regular users of the site and it will drive away regular people.
- mariusor 2y agoYou seem to be very confident, but from what I've seen online most people that employed this type of countermeasures did really have a drop in requests. I can't find the graphs I've seen about this at the moment, but I'll update if I do.
- charcircuit 2y agoIt only protects against people who aren't specifically targeting you. I am confident because I've had people target a site of mine.
- mariusor 2y agoThen I think you're talking about a different problem than the Konstantin and wikipedia, and sourcehut and codeberg and everyone else is complaining about lately, which is the subject under discussion.
- charcircuit 2y agoIt will buy time until the next generation of crawlers is created.
- Sesse__ 2y agoWhy do you assume that spammers and AI crawlers do not have access to large amounts of compute? You can make it more expensive, but these crawlers already have made it clear that they do not care particularly about cost (or they would not crawl so completely indiscriminately).
- codetrotter 2y agohttps://blog.torproject.org/introducing-proof-of-work-defense-for-onion-services/ https://blog.torproject.org/introducing-proof-of-work-defens... Tor has similarly been using Proof of Work as part of the defense for onion services for around a year and a half now. I’ve also seen some clear net web sites that use PoW to slow down account creation. Some websites will even adjust the difficulty for individual visitors depending on the recent number of sign-ups coming from their IP block. More signups from an IP block -> higher PoW difficulty for anyone from that IP block -> fewer accounts created by anyone in that IP block over a span of time.
- cowboylowrez 2y ago>Difficulty is set at 4 leading zeroes, unless you're coming from US in which case there's also a tariff of 5 more leading zeroes. isn't linux afraid of retaliatory tariffs? should I stock up on linuxes just in case? I've already beefed up toilet paper reserves.
- perihelions 2y agoIf they go overboard people will start switching to FreeTrade-BSD
- lionkor 2y agoSanctioning Linux, due to its totalitarian government (bdfl)
- BrenBarn 2y agoIf tariffs are imposed on Antarctica, penguin prices will go up. This will in turn raise Linux prices because penguins are crucial mascot components in all Linux systems.
- flowerthoughts 2y agoI haven't heard penguins being deported by ICE or having their visas revoked, so I assume that at least the penguin tourism industry is still doing well in the US? Of course, they're not allowed to work as mascots while touristing. wink wink
- chr15m 2y agoThis is infinitely better than using CloudFlare. I hope it works and more people adopt it.
- ToucanLoucan 2y agoGenuine question: How? Is there a downside to CloudFlare I'm not aware of?
- Rebelgecko 2y agoCloudflare will just straight up block me sometimes, with no way to see the page. For whatever reason this used to happen to me a lot with car dealer websites. Maybe checking lots of different dealerships' inventory looking for a specific car made me look like a bot. And even in cases where Cloudflare forces a captcha, this POW ran much more quickly than I could solve one by hand
- nosioptar 2y agoIt was nearly instant on my shitty old phone.
- deleted 2y ago[deleted]
- megous 2y agoBlocking me from contributing to any gitlab hosted project for ~4 years already. I wanted to send a glib2 patch today, again realized that, no, I can't still sign up to CF protected gitlab instances. :) Makes me appretiate the Linux kernel mailing list based contribution method. Very open, very simple. At this point I guess CF will never fix compatibility bugs in their interstitial pages, and in captcha, with non-default setup of Firefox.
- g-b-r 2y agoFor what it's worth, ensuring that JIT is enabled for challenges.cloudflare.com can help a lot. No, not to the point of making it bearable, but at least it becomes rarer for it to take minutes.
- perihelions 2y agoAny chance there's some way, going forwards, to dual-purpose these webserver PoW's, so they solve some socially beneficial compute problem at the same time? I recall reading ideas like that in the early days of cryptocurrency, before humans ruined it. - Server: here's a bit of a cancer protein - Client: okay, here's some compute - Verifier: the compute checks out - Server: okay, you are authorized to access cat.gif
- wizzwizz4 2y agoIt's difficult to break important problems down into NP-hard problems. Search problems are, afaik, the current state-of-the-art; but to my knowledge "a bit of a cancer protein" isn't useful, and "an entire cancer protein" would take a few hours at least.
- xnx 2y agoVery true. Perhaps a better system would be to credit "points" for solving fewer/larger problems that could be spent a bit at a time? That sounds even more complex than charging regular money though.
- xmcqdpt2 2y agoYou could do like a captcha but for computers. Here are some molecule, find the ground state geometry of all of them. You give some you already solved just to root out whether the solver is actually solving or faking it.
- sva_ 2y ago> Difficulty is set at 4 leading zeroes, unless you're coming from US in which case there's also a tariff of 5 more leading zeroes. > You can see it in action on this recently decommissioned system I'm using for testing purposes: https://ams.source.kernel.org/ https://ams.source.kernel.org/ Something seriously wrong with it. When I run it with my normal German/EU home connection, it does ~17k iterations. When I run it with a US Atlanta VPN, it only takes ~6k iterations.
- Rebelgecko 2y agoI think that part was a joke
- lionkor 2y agoI think OP, like me, wishes it wasn't (it would be very funny)
- thayne 2y agoNot for those of us who live in the US. It would basically lock out real people in the US, while doing nothing to block bots, which could just use a different source ip.
- Rebelgecko 2y agoI think 1 or 2 extra 0s would be funny but 5 seems excessive
- sadeshmukh 2y agoAh yes, 100x worse for US users is amazing.
- xena 2y agoIt's luck-based, I'm working on making a check that's more deterministic, but I'm also trying to figure out how to not lock out big-endian systems in the process. I may have to just give up on that though :(
- unsnap_biceps 2y agoIt appears they're using https://github.com/TecharoHQ/anubis https://github.com/TecharoHQ/anubis for the proof of work proxy
- stevenhuang 2y agoI enjoyed their succinct project description: > Weighs the soul of incoming HTTP requests using proof-of-work to stop AI crawlers
- Havoc 2y agooh that's fantastic
- abetusk 2y agoI think these solutions are really novel and interesting but I'd like to point out that this is literally one of the use cases for cryptocurrency, or microtransactions in general. Cryptocurrencies, at least the PoW ones, offload the proof-of-work so that it doesn't need to be done in real time. Paying fractions of a penny to view websites has minimal impact on average users but is punishing to spammers.
- mschuster91 2y agoThe problem is, it kills anonymity - it allows at the very least the government to tie each web page visit, each resource load, back to a real person. And no, "anonymous mixer" services don't work either. They're yet another layer of useless profiteering middlemen, which the web already has more than enough of.
- pitaj 2y agoWhat about Monero/XMR? Isn't is fully anonymous by design?
- mschuster91 2y agoTOR used to make the same claims, turned out the NSA actually can to a degree correlate traffic given that they have their eyes literally everywhere on the planet. I wouldn't trust anything to be safe from the dragnet surveillance apparatus of FVEY.
- pitaj 2y agoThat seems to be a much weaker claim than "allows at the very least the government to tie each web page visit, each resource load, back to a real person"
- mschuster91 2y agoThat was related to payment via Monero/XMR/... The problem is, if you want some "proof of money"/"proof of stake", site operators set that up on their own which is a ton of work and people will not want to set up payments for their favourite porn site AND the government can trace back people from payments to site visits, or site operators contract a major vendor (similar to Stripe, Paypal, ...) who handles it and can then trivially be subpoena-ed for records.
- bhouston 2y agoI am not sure we want to prevent AI crawlers but rather we want the crawlers to just not negatively affect the websites. We want AI automation everywhere and crawling is important.
- wnoise 2y agoThe DoSes are AI-for-training-data, not AI-for-automation. AI-for-automation is for the time being going to be the same order of magnitude as standard activity.
- fritzo 2y agoCrawling is important, and PoW incentivizes the creation of a data broker as a cached middle layer to reduce negative effects on the website by amortizing PoW cost among crawlers.
- budududuroiu 2y ago> We want AI automation everywhere Who is we? I definitely don’t want AI automation everywhere
- shanemhansen 2y agoI wonder how well this will actually work. The core problem is that alot of crawlers aren't spending their money. They are part of a botnet so they are just spending the victim's money. But hopefully most of the crawlers aren't botnets or funded by free VC money so they have an economic incentive to avoid crawling systems requiring proof-of-work.
- Havoc 2y agoPretty sure the AI crawlers aren't botnets
- thayne 2y agoI'd bet some of them, run by less scrupulous entities, are.
- theshrike79 2y agoIt's not about stopping, more about slowing down. (numbers for presentation purposes only) If every request goes from 10ms to 100ms - a human won't care as they'll click like 5-6 times total, while reading the output between page load, but a bot will crawl the site 10 times slower.
- xena 2y agoThis is absolutely surreal to see in action! I hope that I can manage to afford to not have to do my dayjob anymore.
- dharmab 2y agoContext for others: Xe is the author of the software used for this (https://anubis.techaro.lol/docs/ https://anubis.techaro.lol/docs/)
- tym0 2y agoIs it possible to resolve the PoW "manually" (i.e. Without browser JS execution) for personal use? Like picking up the problem from the http headers and returning it as an follow up query. Or is running a browser part of the PoW essentially?
- sakras 2y agoMaybe I'm missing something, but why do people expect PoW to be effective against companies who's whole existence revolves around acquiring more compute?
- xmcqdpt2 2y agoI was under the impression that the bad crawlers exist because it's cheaper to reload the data all the time than to cache it somewhere. If this changes the cost balance, those companies might decide to download only once instead of over and over again, which would probably be satisfactory to everyone.
- kklisura 2y agoSo, market/companies refused to regulate themselves (by adhering to the robots.txt) so we're now forced to innovate some solutions against them.
- hooverd 2y agoThey are using white-labeled Anubis or stock Anubis?
- lousken 2y agoi wonder how much traffic lore.kernel generates since it's such a basic site how it was before crawling and after also where is the anubis avatar, that's so disappointing not to see it
- notherhack 2y agoSee https://news.ycombinator.com/item?id=43556521 https://news.ycombinator.com/item?id=43556521 wherein a hosting company sees AI bot scans that appear to be coming from millions of unique addresses, thousands of ASNs, many residential and often with a single connection from an IP. The AI bots are proxying through either hacked IoT devices or apps that pay people pennies to let their phone be used as a proxy. Likely your proof of work will be distributed to the proxies. It'll just make millions of webcams and phones run a little hotter without slowing down the AI bots at all.
- deleted 2y ago[deleted]
- throwCPjuh9kR 2y agoI don't know about the implementation details, but there are a lot of cryptocurrency proof of work algorithms that requires a lot of memory access like Monero's RandomX. Those can't be realistically run on most underpowered devices.
- MBCook 2y agoProof of work still takes time. It will slow each individual requester down. Meaning for the same request rate they would need more hosts, which costs them more money.
- xxprogamerxy 2y agoI'm a bit skeptical if this will do the trick. These PoW challenges can be parallelized across different websites and may not be as off-putting as intended. Here some quick back-of-the-napkin math: DeepMind's MassiveText dataset was sourced from ~2.35B documents. A difficulty of 4 leading zeros requires an expected 16^4 SHA-256 hashes per site. Benchmarks [1] show an H100 at ~12k MH/s, meaning it would take just ~3.5 hours to solve for all 2.35B pages. [1] https://gist.github.com/Chick3nman/e1417339accfbb0b040bcd0a0a9c6d54#file-h100_pcie_v6-2-6-benchmark-L306 https://gist.github.com/Chick3nman/e1417339accfbb0b040bcd0a0...
- xena 2y agoSHA-256 is a hack to buy time. This will be replaced with something better. It would be faster for me to replace it if I didn't have to do my dayjob: https://patreon.com/cadey https://patreon.com/cadey
- xxprogamerxy 2y agoNot meant as a criticism of the project in general. I appreciate people working on this. I'm curious, what other approaches are you currently considering? In my mind, all roads lead to rate-limiting identifiers with privacy through zk-proofs.
- xena 2y agoI'm looking at using equi-x, but failing that I may unironically do protein folding.
- neurostimulant 2y agoI thought Anubis author doesn't want you to remove the anime girl images? I guess kernel.org is exempted. gitlab.gnome.org still has the anime girl though. https://anubis.techaro.lol/docs/funding https://anubis.techaro.lol/docs/funding
- mariusor 2y agoSeeing as it's open-source under an MIT license, I would think that everyone is allowed to modify the source and do whatever they want with it. The monetary payment for removal of the logo is just for companies that don't posses the "know how" to do that and can instead pay a consulting fee.