A Rust implementation of the Messaging Layer Security (MLS) protocol as specified in RFC 9420. It is a software library meant to be a building block for applications that need end-to-end encryption of group messages, with an interface that hides the complexity of the underlying cryptography. OpenMLS does not implement its own primitives: it relies on pluggable cryptography providers (a RustCrypto-based one and a libcrux-based one) and storage providers (in-memory, SQLite and others). It supports three ciphersuites, builds for several platforms including WebAssembly, and provides an interoperability client and a delivery-service example. It is the reference-style Rust implementation of the standard that has its own entry in this matrix as MLS (Messaging Layer Security) .
OriginsAn open implementation of the IETF MLS standard for secure group messaging, so applications can adopt it without writing their own cryptography
Database N/A
Query Language N/A
Data FormatsMLS messages as defined in RFC 9420 (TLS-style presentation language)
Collaborative Live Editing N/A
Rich Text Editing N/A
Mobile SupportLibrary-level: builds for Android and iOS targets are produced in CI but not tested
Web SupportYes, as a library compiled to WebAssembly (the 'js' feature)
Native AppsLibrary-level
TermsFree and open source (MIT)
Funds Not stated by the project.
Based OnRFC 9420, Messaging Layer Security
Governing Body - List
Cryspen
Phoenix R&D
P2P ArchitectureProtocol library for end-to-end encrypted groups; MLS expects a delivery service to carry messages, which OpenMLS provides only as an example, so it is transport-agnostic rather than peer-to-peer by itself
Overlay NetworkNone: OpenMLS defines no network
Content Addressing No.
Local-FirstNot a data layer; group state is held by each client
E2EEYes: end-to-end encryption of group messages, as defined by MLS (RFC 9420)
CRDTs Lib No: not a CRDT library.
Byzantine Fault TolerancePartial: MLS detects invalid commits and OpenMLS offers fork-resolution helpers; it is not a consensus protocol
SignatureYes: members authenticate with signature keys in credentials, as MLS specifies
PermissionsGroup membership is managed through MLS proposals and commits by members; no separate permission model is described in the README
Semantic Web Compatibility N/A: no RDF, JSON-LD or SPARQL layer.
Smart Contract N/A: no ledger or smart-contract component.
Protocol Stack PositionApplication-layer cryptographic protocol, independent of transport
Asset / Value Embedding None: no token or value-transfer mechanism.
Protocol Maturity / StandardizationImplements an IETF RFC (9420); the library itself is pre-1.0 and supports three ciphersuites
Relationships
How this tool connects to other tools and organizations, from relationships reviewed by the OpenHaven data steward. They describe how projects connect, not how good they are.