Keychat's one-to-one chats and small groups are encrypted using the Signal protocol. Moreover, a small group is a pairwise group; when a member sends a group message, it essentially sends a one-to-one message to the other members. Therefore, the encryption security of small groups is almost equivalent to that of one-to-one chats, but the number of members it can support is limited.
Consequently, our large groups are encrypted with MLS.
The Signal protocol is more suitable for one-to-one chats than MLS because its post-compromise security (PCS) ratcheting occurs more frequently.
Additionally, all Keychat messages (whether one-to-one, small group, or large group) can be intuitively understood using the metaphor of a "letter.” 👇
Keychat uses Signal/MLS protocol to ensure message encryption security and meta-data privacy.
The content of the letter can be exposed easily by opening the envelope. Keychat messages are end-to-end encrypted via Signal/MLS protocol, with a unique encryption key generated for each message. Only the sender and receiver can decrypt the message.
The addresses of both parties on the envelope can be tracked. In theory, this problem is solved if they change addresses daily. So Keychat reuses Signal/MLS protocol to update sending and receiving addresses for nearly every message.
nostr:nevent1qvzqqqqqqypzp4cd2qy32p9ejtgc8zpz4uj96hmt8gttstv30t9hjfxw7c0dft8wqy28wumn8ghj7un9d3shjtnyv9kh2uewd9hsz9nhwden5te0wfjkccte9ehx7um5wghxyctwvsqs6amnwvaz7tmwdaejumr0dsqzq4zryqc8lcr7l95ucq98asrggkv95f6fd9kjywr5ydl7pcycuucwalacwv
Login to reply
Replies (3)
"when a member sends a group message, it essentially sends a one-to-one message to the other members. Therefore, the encryption security of small groups is almost equivalent to that of one-to-one chats, but the number of members it can support is limited."
Because of this, some Nostr clients seem to have trouble distinguishing whether a message delivered to me is from a small group chat or a 1-to-1 DM. I've been switching between so many different clients that I've forgotten which ones they were.
Keychat message receiving addresses are independent of the ID and are continually updated, so you hardly ever encounter this situation. This is because other Nostr DMs only receive messages addressed to the ID.
When someone adds you as a friend using your npub and sends a request message, that first message is delivered to your ID (the npub). After that, the receiving address keeps updating for all subsequent messages.