Keychat's avatar
Keychat 7 months ago
We think there are two main approaches to implementing private groups on Nostr. The first approach uses access control to ensure that only group members can retrieve notes, without using encryption. NIP-42 is based on this idea. However, this approach relies on the relay. The second approach is end-to-end encryption. You can refer to the comparison note we wrote for an overview of different group encryption schemes. In terms of how notes are displayed, groups can be categorized as *chat groups* or *feed groups*. Based on member relationships, private groups can be divided into friend groups and topic-based groups among strangers. For friend groups, pairwise group or MLS (Messaging Layer Security) is suitable. For topic-based groups among strangers, shared key group and MLS are appropriate choices. Chat groups are better suited for friend groups, while feed groups work better for topic-based groups among strangers.

Replies (3)

Really appreciate the though Keychat puts into this! I conceptually understand the difference between these group configuations. Still practically trying to sort out implemintation and that's parts just been messy. I think most are going to want a combination of these things. Many are going assume end-to-end encryption at scale by default (thanks to how centralized fiat SM has technologically dumbed everyone down). There's just a lot that has to be done on the client and user side right now to get this all to work.