I need to keep reading, but having got the basic gist, I feel like one of these models might be better:

Relays issuing their own ecash tokens in exchange for access

Aut-ct tokens

Proof of work (I don't favor this but it is especially simple)

To be clear we're talking about defending against high volume spam here; not against low quality or objectionable content.

nostr:nevent1qqsrw9nc8nauvj5pvz3xan7yqt27makh8prae2yn9wdxdk3jv5majqqppamhxw309asjumn0wvhxcmmv9upzqyp8l4du8d09pjvqp4ytezk0hs5smzdc2lruu92h9ftsfrzvq4vwqvzqqqqqqytxcdly

Reply to this note

Please Login to reply.

Discussion

Relays have no incentive to cooperate. You cannot pay "relays" collectively, you can only pay a specific relay. And other relays have no way to tell that the payment was real.

With proof-of-burn, you can pay the Bitcoin miners collectively, and anyone can verify the proof.

That's also true of aut-ct (which is private proof of utxo ownership) and proof of work. But in any case I see nothing wrong with a user paying several relays, separately?

Users paying relays directly goes against decentralization.

I am not sure about aut-ct; would't a proof of utxo ownership cease to be valid once you do not own the utxo? also, how do you do rate limiting with that?

Against decentralization? Not sure why; you choose to use specific relays already, right. If pay is cheap and low friction, don't see a problem there.

(Re: Utxo ownership, it can be snapshot based and size,age filtered. It protects against bursty traffic (so imo rate limiting is the only thing it works well for!) but such tokens can be created in large numbers at low cost so in many use cases they don't fit very well even though they are very private. Hence e.g. ecash paid with an ln deposit.)

Re centralization: If you choose to pay relay A and not relay B, then why would relay B accept your posts? I am assuming they would not; otherwise, relay A can easily spam relay B (if relays compete for payments, then they have an incentive to take down competition, and spam is a way to achieve that).

Hmm, an interesting perspective. First, to be clear, most of these proposals are "self-verifying" so to speak, so the question doesn't arise (i.e. proof of burn, proof of work and aut-ct). Specifically for a payment though, like ecash, I imagined it as "user has N entry point relays, relays talk to each other" and the latter is a matter of relationship between relays. I suspect that's how it works today. Relay X just blocks relay Y when it sees it sending a bunch of objectionable spam, otherwise they choose to cooperate. As for relays behaving adversarially because they might be in economic competition, that could be a good point, I'm not sure.