IETF115 Trip Report (Can Matrix help messaging standardisation through MIMI?)
November 09, 2022 [Matrix]Geeks don't like to be formal, but we do like to be precise. That is the contrast that comes to mind as I attend my first IETF meeting, IETF 115 in London in November 2022.
Like most standards bodies, IETF appears to have been formed as a reaction to stuffy, process-encumbered standards bodies. The introductory material emphasises a rough-consensus style, with an emphasis on getting things done and avoiding being a talking shop. This is backed up by the hackathon organised on the weekend before the conference, allowing attendees to get a taste of really doing stuff, writing code to solve those thorny problems.
But the IETF has power, and, rightly, with power come checks and balances, so although there is no formal secretary for the meeting I was in, a volunteer was found to take minutes, and they made sure to store them in the official system. It really matters what happens here, and the motley collection of (mostly slightly aging) participants know that.
There is an excitement about coming together to solve technical problems, but there is also an understandable caution about the various agendas being represented.
We were at the meeting to discuss something incredibly exciting: finding a practical solution for how huge messaging providers (e.g. WhatsApp) can make their systems "interoperable". In other words, making it possible for people using one instant messenger to talk to people using another one.
Because of the EU's new Digital Markets Act (DMA), the largest messaging providers are going to be obliged to provide ways for outside systems to link into them, and the intention of the meeting I went to ("More Instant Messaging Interoperability", codenamed MIMI) is to agree on a way they can link together that makes the experience good for users.
The hardest part of this is preserving end-to-end encryption across different instant messengers. If the content of a message is encrypted, then you can't have a translation layer ("bridge", in Matrix terminology) that converts those contents from one format into another, because the translator would need to decrypt the message first. Instead, either the client (the app on the user's device) needs to understand all possible formats, or we need to agree on a common format.
The meeting was very interesting, and conversation on the day revolved around what exactly should be in scope or out of scope for the group that will continue this work. In particular, we discussed whether the group should work on questions of how to identify and find people on other messaging networks, and to what extent the problems of spam and abuse should be considered. Mostly the conclusion was that the "charter" of the "working group", when/if it is formed, should leave these topics open, so that the group can decide the details when it is up and running.
From a Matrix point of view, this is very exciting, because we have been working on exactly how to do this stuff for years, and our goal from the beginning has been to allow interoperability between other systems. So we have a lot to offer on how to design a system that allows rich interactions to work between very different systems, while providing effective systems to fight abuse. One part that we can't tackle without the co-operation of the dominant messengers is end-to-end encryption, because we can't control the message formats that are used on the clients, so it's really exciting that MIMI's work might improve that situation.
I personally feel a little skeptical that the "gatekeepers" will implement DMA in a really good way, like what we were discussing at IETF. I think it's more likely that they will do the bare minimum, and make it difficult to use so that the experience is so bad that no-one uses it. However, if one or two major players do adopt a proper interoperable standard, it could pick up all the minor players, and become something genuinely useful.
I really enjoyed going to the IETF meeting, and am incredibly grateful to the dedicated people doing this work. I really hope that the MIMI group forms and successfully creates a useful standard. I'm also really optimistic that the things we've learned while creating Matrix can help with this process.
Whether this standard begins to solve the horrible problems we have with closed messaging silos and user lock-in to potentially exploitative or harmful platforms is probably out of our hands.
If you'd like to get involved with MIMI, check out the page here:datatracker.ietf.org/group/mimi/about.