How should group chats work in decentralized systems?
marindedic.com
How should group chats work in decentralized systems?
1–10 of 36 posts
Re: How should group chats work in decentralized systems?
#2Re: How should group chats work in decentralized systems?
#3In other words, show the kick/invite options to users when it does happen, but destroy and create a new group behind the scenes.
Re: How should group chats work in decentralized systems?
#4Re: How should group chats work in decentralized systems?
#5The hardest problem is social. Who is going to use this?
Re: How should group chats work in decentralized systems?
#6One option that you sort-of mentioned but missed: go with the static groups, but don’t let the users feel that. In other words, show the kick/invite options to users when it does happen, but destroy and create a new group behind the scenes.
Re: How should group chats work in decentralized systems?
#7This is a nice little write up and I kinda feel like the author (sensibly) chose centralization just on a smaller scale. I also think that the algorithm is pretty similar to the og textsecure2[1] protocol signal used (and still uses?) in terms of key generation. It's different in that messages are in a distributed hash table instead of sent through a server and also that there's less cross-verification by chat member…
Re: How should group chats work in decentralized systems?
#8Re: How should group chats work in decentralized systems?
#9Re: How should group chats work in decentralized systems?
#10I did want to point out that Matrix does do distributed eventually-consistent authorization, which is their key invention IMHO. (Rooms are distributed among the homeservers, none of which are privileged over the others. You could (and their long-term plan from back in the day) was to run a tiny little single-device homeserver on every device to achieve P2P.)
It's tricky, but a very cool algorithm! Several entities (including myself as a hobby project) are working in combining the Matrix eventually-consistent CRDT with MLS for encryption for a no-compromise distributed E2EE system. It's possible, but very hard, as you might imagine.
Edit: Here's one academic paper writing up the abstract algorithm behind Matrix https://dl.acm.org/doi/10.1145/3381991.3395399