We've tried rate-limiting Cashu mints with PoW but turns out if you want mobile phones with javascript to compete against DoS servers, the server always wins...
I'm convinced now that the only practical use of PoW is Bitcoin and it's better to use sats to slow things down.
Login to reply
Replies (16)
Ecash sat stamp
1. Dont use JS for POW, use WASM and load several threads by detecting available cores.
2. Yes, servers/asics will always win when there is financial motive.
Wasn’t that the whole point of reusable PoW tokens?!
Agreed
That’s an interesting realization. PoW is great for trustless, decentralized security, but when the competition is asymmetric (mobile vs. server farms), it breaks down. Using sats as a rate limiter makes sense it aligns incentives and adds an economic cost to spam without the computational arms race. Maybe a hybrid approach could work? A small PoW requirement to deter casual spam, plus sats to make large-scale abuse costly.
If you want something from the universe > PoW
If you want something from an entity > sats
Yep you need some absolute cost to take it away that is the same for everybody.
How about if the person trying to access the mint doesn't have Sats?
Sats are the PoW.
Why does a mint need a rate limit? To be more precise, I don't understand the context of a legitimate user 'competing' with a DDoS server. I can understand that there might be attackers who want to attack the mint for reasons other than financial gain, but why does the issue of competition with regular users come up? It's not like this is a system where you get a reward for completing a challenge.
Sats are PoW. Difficulty-adjusted PoW.
I came to the same conclusion in the past, e.g. in this conversation:
And agree with the reasoning... without the system having a massive asymmetry in favor of the defender, it's not viable, and *even then*, it may not work (hence I am dubious about Tor's recent efforts).
Funnily enough even back then I saw a good solution being .. ecash :) (privacypass etc) but yeah LN sats could also be viable depending on the system.

Gist
SNICKER BIP draft
SNICKER BIP draft. GitHub Gist: instantly share code, notes, and snippets.
we ended up solving it with fees for ecash tx's 😉

Trying to add a new mint to an app with a built in NIP-60 (still an API call)
Trying to call the API to request a Lightning invoice to initially top up
