I think it is possible to do an adapted version of the Signal protocol using a special kind of relay and a special kind of message. The targeting and querying wouldn't use public keys, but single-use blind tokens that the relay servers wouldn't be able to associate with any entity (unless, of course, to an IP, but we can work around that later) but would still be able to account for, charge money for or use other forms of whitelisting.

This wouldn't be Nostr properly, instead it would be a different protocol, very similar to Nostr, but optimized for private communication. This way Nostr can be left as a public broadcasting service, which is what it excels in.

Anyway, if you have an idea of how this could work please talk about it or do something (as I said, I have a rough idea of how this could work, but it's not fleshed out and I don't give it a very high chance that I am correct on my hypothesis).

Reply to this note

Please Login to reply.

Discussion

I see value in doing secure messaging over nostr rather than a separate network. With a network dedicated to secure messaging, you lose the effect of blending in with other types of use and thus leak more information to your network provider about your types of activity.

I do in fact see the public nature of relays as a potentially good thing for the core design of secure message delivery, as you're forced to minimize the trust in put in relays. The issue of trusting relays with traffic information (who sends and receives what) can be solved with separate solutions, used by users/clients that want better anonymity without affecting messaging compatibility with other users/clients.

I wouldn't see the issue of relays wanting to know the identity of its users specifically as a hindrance to secure messaging on nostr, but rather a problem that should be solved in and of itself. And as I mentioned in https://github.com/nostr-protocol/nips/pull/306 I think it can be solved with anonymous tokens based on blind signatures.

I'm using SimpleX, no ids, no metadata, relays based. Still under dev, messages work fine but no audio call.

https://simplex.chat/

Interesting, I was thinking how Signal should get rid of their shitcoin and leverage web5 but relaxing Nostr DM is nice too, with zaps:)

btw what’s your thought on the UK online safety bill’s impact on internet privacy and on Nostr?

https://www.internetsociety.org/resources/doc/2022/iib-encryption-uk-online-safety-bill/

I agree; also I'd add that rather than broadcasting the DM on multiple relays the user should have only 1 selected (in their NIP-0) for recieving messages to. PUSH only, don't store the content on the server after it has been recieved (like Whatsapp, not like telegram). Making it economic to host these relays for free.

Also I'd add, allow a binary node to node Noise communication protocol (even Wireguard is fine), so I can message someone via my own node who forwards it on to their selected node on my behalf. So I don't leak IP metadata when communicating to someone on a unique node. It can be done without Noise/binary but it considerably improves scalability to do it this way. Can be simple still - super simple but scalable would be Wiregard + BSON (binary json)