pull down to refresh

Something I'm concerned about is that all these publicly-shared pubkeys is that it will make spam trivial, just like with publicly-shared email addresses. Afterall, email spam is endemic because everyone re-uses the same email address for decades.
One possible solution to avoid spam would be to have no publicly-known pubkey, but instead create a pubkey per conversation. You meet your friend IRL, you both create new keypairs, and you share the new pubkeys with each other. Your Nostr client would also need to reject messages to that pubkey that are not signed by your friend's pubkey, otherwise you would still get spammers who spew DMs at every pubkey they see. To beef up privacy, your client would use the double-ratchet algorithm from Signal to change you and your friend's pubkey after each message.
The obvious downside, though, is that this only really works when talking to your friends/family/coworkers. But if you want to accept contacts from randos (e.g. you're a journalist who wants to receive anonymous tips), the above solution won't work. I'm still thinking about how to solve this problem.
that's pretty fair. there's definitely discussion on key delegation but I think nostr approaches it with relay separation. so you could run a relay that filters out unallowed pubkeys. so instead of creating a new keypair, you could just add your friends pubkey to your allow list and only communicate via that relay. obviously relays could charge for this.
reply
Nice idea! Combined with PoW (NIP-13) we can achieve a good spam protection. I was thinging about more pub keys to permit keys rotation/invalidation, but I suppose the two use are in contrast...
reply
Yeah I think spam is a complex problem yet to be solved in todays internet
reply
I think the only long-term solution is to require LN-payment for any kind of network use. All other solutions (aside from central authority) would seem to fail.
reply
My solution is: if you're an anon here's an invoice for 1000 sats, pay it and attach your message
reply