Post-Quantum OpenMLS

OpenMLS now offers security against harvest-now-decrypt-later (HNDL) quantum adversaries. In #1546 we merged support for the X-Wing KEM draft, which is an early draft for securely combining elliptic-curve-based Diffie-Hellman with ML-KEM. In particular, OpenMLS now supports the ciphersuite MLS_256_XWING_CHACHA20POLY1305_SHA256_Ed25519 with ciphersuite 0x004D. There is no IANA code-point for this ciphersuite yet, such that interoperability may not be guaranteed. We work with other implementers towards interoperability of this ciphersuite. The implementation uses Cryspen’s formally verified ML-KEM and x25519 implementations from libcrux.

Read More

OpenMLS 0.5 released

Today, we are releasing OpenMLS v0.5. This release has been a while in the making and covers substantial changes since the last release. We are grateful for the support of the Sovereign Tech Fund towards this goal. These are some of the changes: The implementation caught up with the latest changes in the protocol specification. The last version was roughly based on draft 12. Since then, the protocol has iteratively evolved all the way through draft 20.

Read More

OpenMLS Update

After a few months of silence, we are picking up work on OpenMLS again! 🎉 Phoenix R&D and Cryspen join forces to bring OpenMLS closer to v1.0. The MLS protocol draft is in the IETF working group’s last call and is thus on track to become an RFC soon. We want to make sure that OpenMLS is ready for wider adoption by the time the RFC is ready. To achieve this we start by catching up with all the changes to the protocol (up to the current draft-16), improving test coverage of the code, and working towards a more comprehensive test framework for interoperability.

Read More

OpenMLS v0.4 Release

Today, we are excited to announce the release of v0.4 of OpenMLS! 🎉 Some time has passed since we wrote about our roadmap to v0.4. In this post, we want to provide some insight into what has happened in the development of OpenMLS generally, but also relative to the goals we included in the roadmap. Our high-level goal with v0.4 was to reach a state where we have an API stable enough and an implementation robust enough such that people interested in OpenMLS can start exploring it in the context of their own projects.

Read More

OpenMLS v0.4 Roadmap

It’s time for another update on OpenMLS because many things are happening behind the scenes. Today we are excited to announce a public roadmap for OpenMLS v0.4. This will not even be close to a v1.0 release because the spec is still not finished and it’s unclear how the library will be used. Nonetheless will v0.4 be a significant release with a mostly stable API and most functionality being implemented.

Read More

OpenMLS Performance

In this blog post, I explore how MLS’ aspiration to be scalable manifests itself in OpenMLS. The charter in particular claims the following: Resource requirements have good scaling in the size of the group (preferably sub-linear) While performance can be theoretically analysed for MLS it is also interesting to see whether the performance goals hold up in a real implementation. This of course only looks at a single implementation. Nonetheless, I think that it gives a good impression on the actual performance of MLS implementations.

Read More