This service is exactly that. A remote worker so your phone doesn't have to do it.

Reply to this note

Please Login to reply.

Discussion

If users are paying for this then the PoW becomes pointless. They can just pay to publish directly. I don't want my relay wasting CPU cycles to find a special hash for an event. I would rather just collect a toll from users if I wanted to keep out spam.

For now all I'm doing is enforcing NIP-05 verification and that cut out a significant amount of spam already.

That’s fair. But then users have to pay each relay individually, and perhaps their events can’t be broadcast by others as the pubkey key won’t match.

Have you seen this? It’s a zero step instant free NIP-05 spammers have already been using. It makes that spam filtering approach very limited.

https://github.com/renzholy/nost-vip

And keep in mind, it could cost only 10 sat for a low PoW. It only needs to be above what spam can’t afford or be profitable if paying.

And it’s not a single no spam ever solution. It’s just one of many tactics.

Yeah I see how it could possibly work.

The relay takes a toll from the user in sats, then adds a random nonce to the event until an event ID with N leading zeros is found, just like in Bitcoin. This event ID would tell other relays that the required PoW had been performed on the event.

It would have to be up to the relay operators to ensure they were charging enough to pay for their own computing costs.

But how would you handle the fact that currently clients publish to multiple relays at once? Would users end up having to pay this toll 10x over?

I think a lot of people would choose to set up blastr relays like mutinywallet has

They are gonna ruin nostr by trying to make it like crypto lol

Relays should act like every other decentralized tech, federated view and serve uploads

If the work is done, all relays can verify it. One work per message, not per relay. The blastr relay would be a great place to put this worker service, to do the work before it gets broadcast wide.

Clients can have a pre publish step where they request a PoW, get back the event and sign it, and then after that publish to whatever relays they want as normal.

Proof of work can also be adaptive by relays. It maybe ask you for 0. If you seem suspicious, it could ask for 10, then 20, etc.

In a pay to post system, most users will just pick 2-3 read relays and then write to one blastr relay like mutinywallet

Sure, but at some point blastr relays will become rate limited themselves or need a PoW event to prove they are not spam.

The secondary issue is relay event aggregation. You can’t just block IPs, as you don’t know the poster. And we need aggregation or we will never get a broader set of stats like reaction counts, replies, etc. you will be stuck with a smaller pool.

There's many ways to get NIP-05 but the most egregious spam is mostly coming from npubs with no profile data or NIP-05.

That may be from what your relay sees.

Definitely not the case from what I see across 120+ relays and 250k+ post spam filter events a day.

I see meta events, valid NIP-05, contact lists, reactions, reposts.. everything. It’s slowly getting more intricate.

And this is with maybe 100 people attacking the network today. I’m working to protect it at 100,000 attackers… not just today.

The economics of it mean that'll change as the relays get wiser about it. There's no cost to doing those thingss.