Hacker News new | past | comments | ask | show | jobs | submit login

yup. we layer megolm on top of olm (double ratchet) to scale to ~1000 or further.

Looks like every device still has to establish an olm channel with every other device in the group. Does that scale?

you're right that that's the slow bit (typically about 50ms to set up each channel, so across 1000 devices that's 5s to establish the initial mesh), but the important thing is that having established the channels, they are only used to sync key data for the megolm layer which sits on top. megolm keys typically rotate every 100 messages or every day (whichever comes first), and this uses the existing olm channels. In turn, the olm channels themselves only resetup when conversation changes direction (or if they stall).

https://blog.jabberhead.tk/2019/03/10/a-look-at-matrix-orgs-... is quite a good overview of this (from the XMPP perspective!), as is https://www.uhoreg.ca/blog/20170910-2110 (from the Matrix perspective).

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact