nostr-protocol / nips

Nostr Implementation Possibilities
2.14k stars 506 forks source link

Private Nostr #1183

Open jb55 opened 1 month ago

jb55 commented 1 month ago

I wanted to create a tracking issue that collects some of the approaches for making notes more private, or gives more control over how notes are viewed and by who. I have expressed interest in doing a nostriga talk along these lines so I would love to gather all of the approaches for the talk if I end up doing it.

Please comment here if you have your own approach you want to add to this list!

staab commented 1 month ago

566 might be worth mentioning. There's also the signature stripping idea which may or may not be represented above. Also AUTH protected relays, which I've done a fair amount of work on with triflector and relay invite codes.

fiatjaf commented 1 month ago

https://github.com/nostr-protocol/nips/blob/master/29.md

jb55 commented 1 month ago

added!

vitorpamplona commented 1 month ago

Looks complete. The only other way would be to use Encrypted Group messages on https://github.com/nostr-protocol/nips/pull/686 but that's quite a privacy overkill for most of these "workgroup" notes.

You might want to separate encrypted vs non-encrypted stuff for the talk. The number of encrypted options alone can get overwhelming and distract from the goals of these approaches.

vitorpamplona commented 1 month ago

I am not sure if this helps, but I used this image in the past to try to map out all of these solutions

Screenshot 2024-04-18 at 6 08 31 PM

arthurfranca commented 1 month ago

1083

SnowCait commented 1 month ago

I just created Notestr for private notes (PoC). The flow is here. You can try it at https://notestr.pages.dev/example which allows your followees to read your private notes (through ephemeral events tentatively).

I think it would be easier to control private notes if they are all in one server. The servers should be decentralized and you can use any server as NIP-96.

erskingardner commented 1 month ago

Just added https://github.com/nostr-protocol/nips/pull/1206