Nostr Idea: Close Friends: encrypt the content with a secret key that you share with your "friends", keep rotating the key. Is anybody on it already?

Replies (18)

Why? Being selective with relays(which allow expiration) it could be a good enough way to have that functionality. The only problem is "leaks" and post compromise security. Which is possible with expiration and key rotation ?
Vitor Pamplona's avatar Vitor Pamplona
Can the chosen relay link IP-emphemeral identities and start putting a sequence of messages together? Can't they just see when the group id has changed and link the two? I am not doubting MLS, but I have seen too many people claim privacy until I run their server and start logging down everything every connection does to locate, track and identify each participant. If the relay can do it. They can either sell that info for profit OR be required by court order to track and identify users. If they can do it, they will do it. That's why I am using Tor when connecting to DM relays. Every app session is a new Tor exit node. Relays can't know where each message is coming from. It's the only way I found to keep things private.
View quoted note →
fiatjaf's avatar fiatjaf
To be fair, it's not unreasonable to have this primal desire for subkeys and key rotation. The problem is that: 1) it's not possible to do without centralization (or a blockchain) -- Bluesky tried, and the best solution they came up with was a big server that hosts a history of keys for everybody and can censor anyone; 2) doing it by means of Nostr events that declare subkeys or delegation or whatnot, creates insurmountable complexity that turns Nostr into an unusable pile of bloatware and away its most basic feature: the chance of working; 3) it's not the only way to protect your key from rogue computers and apps -- NIP-46 and other methods exist and are much nicer to use, with still many unexplored possibilities; 4) it's not clear that more than 16 people in the entire world want this at all -- when was the last time a normal person thought about rotating their PGP keys?
View quoted note →
fiatjaf's avatar fiatjaf
What about the UX for managing all these keys? Every time you try a new app you must create a new key using your master key, so where does that master key live? In an offline hardware device?, then it will be incredibly hard and only 5 people in the world will do it, everybody else will just paste nsecs and the protocol will be bloated for no reason. Or in an online device or server that keeps running 24/7 and answering requests for creating new keys somehow? Now we have just recreated NIP-46 but 100 times worse.
View quoted note →
There are always going to be tradeoffs, I can easily see a shared key shared through gift wrap DMs be a good enough usecase for something like say: regular "Instagram stories", it is good enough privacy of content. Privacy of metadata is also very hard to crack I. This case, but still maybe doable with chain analysis kind of stuff. So.. Should you sell drugs with this something like this? Probably not, could you share fun food pics on your stories with your friends that you don't want to tell the whole world about? Yes.
What @ABH3PO meant is that he is not proposing that Nostr users have subkeys for themselves, just encryption keys that they use to encrypt messages in a group. The goals are very different and in this case it doesn't pose any problems to the protocol.
Idk I think key rotation or encryption key is over complicate something we don't need nip17 dont leak metadata, unless you are supposing people will lose the nsec and all their history gets compromised or something.
Vitor Pamplona's avatar Vitor Pamplona
Did you know that NIP-17 was designed to keep metadata private even if devs make mistakes in their apps? Designing a DM protocol where you control the server and app on a single codebase is very different than designing something anyone can code flawlessly from scratch.
View quoted note →
Keychat's avatar
Keychat 1 year ago
👍 Your idea is the symmetric ratchet in the Signal protocol's double ratchet algorithm.