Live data from Hacker News

Proof-of-Work Defense for Onion Services

blog.torproject.org

131–140 of 159 posts

Re: Proof-of-Work Defense for Onion Services

#132
post #36

Really interesting! Digging into the proposal [1]: > make it harder for attackers to overload the service with introduction request > We hope that this proposal can help us defend against the script-kiddie attacker and small botnets. Sets expectations: does not counter large botnets. > We hope that this proposal will allow the motivated user to always connect A user who really wants to connect can get through durring…

So now you have the drawbacks of both as well, in that the guy who has the most compute to use as a toaster can DoS everyone else. Plus, PoW is nothing but wasted, needless computation . Computing is not free . Every watt spent doing anything PoW is just that much more intensification of our current climate crisis. As someone with temps of 109 with heat index of 120 coming in the next few days, with all due respect,…

> Every watt spent doing anything PoW is just that much more intensification of our current climate crisis.

> It isn't interesting. It's the most egregious example of conspicuous consumption on the planet.

This cannot be overstated. PoW needs to die. It is a lazy implementation that just sounds clever but is nothing of the sort. It kills our habitat. It has to go.

Re: Proof-of-Work Defense for Onion Services

#133

It's a shame that Torproject has decided to reinvent its own wheel, lagging 10 years behind the crypto crowd, instead of integrating with existing coin(s). The problem is, such integration would require the chosen coin to be anonymous, which is essentially forbidden: https://www.theverge.com/2023/8/23/23843161/tornado-cash-ind...

Integrating with a coin would defeat the propose, since getting coins for PoW would make the ddos financially rewarding. Allowing the attacker to outcompete normal user who just want to access the site.

Re: Proof-of-Work Defense for Onion Services

#135
post #96

Earlier quoted context omitted.

Requiring regular users to compute PoW is a terrible idea. Actually it has the exact opposite effect. It will keep the attackers in, and the regular users out. The problem is that we don't know how much is a cheap computation without first relying on a marketplace of computation and discovering the price. That marketplace of computation does exist, and it's called blockchain.

I think this just crowdsources the server’s load. Servers will certainly have to handle fewer requests thanks to PoW, at the expense of clients’s CPU time. The upside is that the server does not go down, so at least some users will be able to access the website, compared to zero users

>The upside is that the server does not go down, so at least some users will be able to access the website, compared to zero users

Yes but the price is very important. Imagine you visit a country, and paid car rides, (i.e. taxis) cost one thousand dollars per hour. It might be the best ride you have ever taken, but it excludes 99.999% of the users due to price.

The problem is, it is impossible to figure out, how much computation is a cheap computation without first relying on a marketplace of computation and discover the price that way. The blockchain technology serves exactly that purpose. The producers of PoW, the miners, sell their PoW to consumers. Consumers bargain the price, by using it less when it's expensive, and more when it's cheap.

The blockchain logic states that: "Requiring users to give proof of burnt energy -> good idea" "Requiring users to burn energy themselves and then give proof of burnt energy -> terrible idea"

Re: Proof-of-Work Defense for Onion Services

#137

I'm surprised something like this wasn't done sooner, and also haven't read the proposal [0] in enough detail to tell if this will lead to more data affecting the anonymity of users. Should be fine though, since it's tied user-to-service and not stored anywhere. I'm wondering how much this will decrease load on the service being proxied vs the nodes themselves though, I assume it'll have more benefit to services sinc…

> I'm surprised something like this wasn't done sooner, It should have been, but was delayed by people shrieking about oceans boiling.

>shrieking

No one is doing any such thing.

Re: Proof-of-Work Defense for Onion Services

#139
post #138

Interesting, but I don’t understand how it is better than regular captchas for this task Maybe captcha serving itself can be DDoSed, because of the image size?

Captchas require human intervention. This method is transparent for the legitimate user.

Sure, but it seems easier to defeat than captchas, especially for a big opponent like a state, which can possibly allocate enough computing power to make the difficulty target too high for regular users

Whereas with captchas, the government need to pay real people to fill them, which doesn’t scale

Edit: I read the paper (https://gitlab.torproject.org/tpo/core/torspec/-/blob/main/p...) and I understand what you meant. This is not meant to replace captchas but to automatically discard low profile attacks. Nice.

Re: Proof-of-Work Defense for Onion Services

#140
post #26

Earlier quoted context omitted.

There are PoW algorithms specifically developed to resist GPU and ASIC. Typically they do this by being memory intensive instead of (or in addition to) being compute intensive.

Regardless, you need a device that’s more powerful than whatever the attacker is using. The article says they target 1 minute solve times under load. If that’s 1 minute on a 5GHz, 64 core machine with 512GB ram, an A100 and an FPGA, then it’s going to be at least 5-15 minutes on your phone. Also, the server farm can parallelize work across an arbitrary number of challenges, but legitimate users cannot.

> you need a device that’s more powerful than whatever the attacker is using.

No, the point of the PoW is only to mitigate DDoS and it can do that.

Post reply on HN