Yeah, funny you picked up on the derived IDs for groups. I talked about that with nostr:npub1klkk3vrzme455yh9rl2jshq7rc8dpegj3ndf82c3ks2sk40dxt7qulx3vt earlier today. I think that's mostly a client implementation detail instead of a protocol level thing but it's a cool idea to make it harder to triangulate on the size or membership of groups.
Feels like it's what nostr:nprofile1qqsf03c2gsmx5ef4c9zmxvlew04gdh7u94afnknp33qvv3c94kvwxgspr3mhxue69uhksmmyd33x7epwvdhhyctrd3jjuar0dak8xtcpz4mhxue69uhhyetvv9ujuerpd46hxtnfduhszxnhwden5te0wpuhyctdd9jzuenfv96x5ctx9e3k7mf0ss9zgs and nostr:nprofile1qqs84k6jpsav0jmdeqjn2zxlpnsajaw6f8l0m2d4e9t8gjsyn53s4nspzemhxue69uhhyetvv9ujuvrcvd5xzapwvdhk6qgdwaehxw309aukzcn49ekk2qghwaehxw309aex2mrp0yh8x6tpd4ehgu3wvdhk6pw0r8j have been doing in their group impls. They just use NIP-44 instead of MLS.
IMHO Large Groups do not need the same level of privacy that DMs or smaller groups need. It all depends on the size and expectations.
It would be nice to have the group ID derived from a seed so that the group can be split into as many subgroups as necessary. Clients would just derive... say 300 ids... and subscribe to all of them. Similarly, they would also randomly choose an ID out of the 300 to send each new message.
Discussion
We made the DM spec thinking on protections for activists. Making sure people can't bundle them as a group is key. I don't know if it is possible, but it would be great if the same protections were also available in large groups.
Keep in mind that if it is not in the protocol, it is going to be hard to get any traction. Giving options to clients just breaks interoperability.
I agree. But the only thing an observer can see is the relative activity level of the group. They don’t know if that activity is spread over a small number of users or a large number. These group ids can be rotated as often as the client wants as well.
Talking through it earlier, I felt like trying to do some complicate group id derivation and then publishing to multiple group ids was more security theatre rather than real security.
Spec will be ready this week. We can hash out the details then. 🤝