The original spec (nip04, still used on Damus and Primal afaik) leaks metadata. Meaning the content is encrypted but others can see who sends messages to who at what time. Nip17 fixes this and is supported by a bunch of clients like Amethyst, key chat, yakihone and others. Main issue from a user point of view is that there's now multiple specs that are not compatible, so depending on the client people use they might not see DMs from people from the other client. Nip17 is superior in terms of privacy so unfortunate that not all clients support it after all that time.

Replies (2)

Keychat's avatar
Keychat 1 month ago
Keychat's avatar Keychat
We have identified the main issues with Nostr direct messages (DM), listed roughly from most to least significant: 1. Different clients implement different DM NIPs (NIP-4 vs NIP-17), causing a lack of interoperability. 2. Users connect to different relays with little or no overlap, so recipients may never receive messages. 3. Message notifications are unreliable. 4. Spam — the system is vulnerable to unwanted messages. 5. Metadata privacy concerns: with NIP-4, others can see who is messaging whom; with NIP-17, others can see who is receiving DMs. 6. No forward or backward secrecy: if a private key is compromised, both past and future messages can be decrypted. Note: “Nostr DM” here refers to the direct‑messaging feature of Nostr Microblog, not a standalone chat application. They embody different design trade‑offs. This is why we ranked metadata privacy concerns and the lack of forward/backward secrecy lower in the issue list. When you need to contact a Nostr microblog user, consider whether using Nostr DM is sufficient or whether you should use a dedicated chat app.
View quoted note →
Keychat's avatar
Keychat 1 month ago
Keychat's avatar Keychat
The relationship between NIP-4 and NIP-17 is similar to: iPhone ↔ iPhone: It uses iMessage first (Apple’s service). Blue bubbles. iPhone ↔ Android: It uses SMS/MMS (the carrier’s traditional texting standard). This isn’t an “Android-only protocol,” it’s the old common language that all phones can speak. Green bubbles. If at least one person in the chat is using a client that supports both NIP-4 and NIP-17, interoperability is no longer an issue.
View quoted note →