An essay explaining why we don't plan to use MLS: https://www.poberezkin.com/posts/2025-08-12-mls-the-naked-king-of-end-to-end-encryption.html

A sidenote, is that Nostr's Whitenoise avoids its main problem.

TL;DR: MLS security model is "Trust me bro".

Reply to this note

Please Login to reply.

Discussion

If white noise avoids it, why not use it?

Lol what a shitshow.

โ€œThis essay is purposefully provocative. It has no intention to offend anybodyโ€

lol

Tldr on how white noise avoids the "main problem" (AS presumably)?

Here's what chatgpt summarised for me after a bit of back and forth.

We don't have an "Authentication service" that issues and verifies a user's identity. We use nostr pubkeys for identity.

I also think that we avoid the "participation privacy" issue that he mentions in the article but want to clarify what he means with him before claiming anything. ๐Ÿ˜‰

๐Ÿค™

Yes that's what I'm confused about. nostr:nprofile1qqsvnx99ww0sfall7gpv2jtz4ftc9v6wevgdd7g4hh7awkpfvwlezugpz4mhxue69uhkummnw3ezummcw3ezuer9wchsx06t26 identities are pubkeys too so what's the problem adopting MLS.

MLS is garbage made by retarded academics that have lost their touch with the real world long ago

exactly

large groups should be assumed to be public anyway, MLS is much worse than the signal protocol

It seems the AS is a mapping from some other identity to a pubkey. This is a worry if there is an "other" identity. nostr:nprofile1qqsvnx99ww0sfall7gpv2jtz4ftc9v6wevgdd7g4hh7awkpfvwlezugpz4mhxue69uhkummnw3ezummcw3ezuer9wchsx06t26 just like nostr already has pubkey identities, so what's the problem.

WhiteNoise is mentioned in the post.

What's not mentioned is how nostr:nprofile1qqsvnx99ww0sfall7gpv2jtz4ftc9v6wevgdd7g4hh7awkpfvwlezugpz4mhxue69uhkummnw3ezummcw3ezuer9wchsx06t26 is different from Whitenoise. Both use pubkeys as identities so both can use MLS without AS.

โ€”the lack of participation privacy

If you understand that in Keychat ID are decoupled from sending/receiving addresses and addresses are continuously rotated, youโ€™ll realize itโ€™s almost impossible for a message relay to identify the participants in a group.

nostr:nevent1qyt8wumn8ghj7un9d3shjtnwdaehgu3wvfskueqqyr495s3jlwnytxp8ehnkz3xmt4v0r630ptxhv768asdxxpj54sqng0nhfwf

This has the same problem that was drawing criticism with early design of SimpleX network - while there is no persistent/observable identity on the protocol level, there is a fixed transport identity - relays can see which IP addresses communicate with which IP addresses. So it would require a similar solution to what we did with SimpleX network to mitigate it.

As for address rotation, it's currently possible manually, so they are not completely static, and this feature is used a lot, and it will be automatic next year. The challenge with automatic rotation is reduced usability - data backups do not allow restoring connections, so it requires smarter approach to make sure that the solution is usable.

Keychatโ€™s receiving address is updated using the Signal double ratchet, and so far rotating the receiving address has had almost no impact on the stability of message reception.

White Noise and ANY application using nostr for identities can completely ignore this article. It simply doesn't apply, since nostr IS the "Authentication Service" mentioned here.

Yes, the post mentions WhiteNoise

You've established yourself as the secure chat. No refute there.

But you're not usable.

-Notifications are shit.

-No cross device support.

-A sea of technical settings.

-Backups are a disaster.

-Delivery is iffy.

Put the SIMPLE back in SimpleX, and make it as easy to use as Session.

Pre-set all settings, clean the UX, make notifs work, add multi-device support, make backups easy and use a seed phrase to unlock them. Then you will be my go to. Till then, it's Session for me.

Honestly they should make it where if only one device can carry the chat database, then a desktop or server should be the primary device and then a phone or other devices can link to it. Their current solution of linking a mobile to a desktop doesn't really work (at least on iOS) because mobile devices have issues running background processes.

I've never tried Session, and I don't know many people who use SimpleX. I do like SimpleX's idea of no accounts though (Session has accounts).

So the thing is that while Double Ratchet is a good encryption algorithm, MLS is a flawed implementation of it?

MLS uses ratcheting trees, it's different from Double Ratchet.