Skip to content
forked from openmls/openmls

Rust implementation of the Messaging Layer Security (MLS) protocol

License

Notifications You must be signed in to change notification settings

21-DOT-DEV/openmls

This branch is 103 commits behind openmls/openmls:main.

Folders and files

NameName
Last commit message
Last commit date
Jul 10, 2024
Sep 3, 2024
Sep 2, 2024
Aug 30, 2024
Aug 22, 2024
Mar 12, 2024
Jul 25, 2024
Sep 3, 2024
Sep 3, 2024
Apr 26, 2024
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Sep 3, 2024
Dec 12, 2022
Sep 3, 2024
Oct 28, 2021
Nov 11, 2020
Dec 12, 2022
Jul 23, 2024
Sep 2, 2024
Feb 22, 2022
Sep 2, 2024
Nov 30, 2021
May 30, 2023

Repository files navigation

OpenMLS

OpenMLS Chat OpenMLS List

Tests & Checks codecov

Docs Book Rust Version

OpenMLS is a Rust implementation of the Messaging Layer Security (MLS) protocol, as specified in RFC 9420.

It is a software library that can serve as a building block in applications that require end-to-end encryption of messages. It has a safe and easy-to-use interface that hides the complexity of the underlying cryptographic operations.

Supported ciphersuites

  • MLS_128_HPKEX25519_AES128GCM_SHA256_Ed25519 (MTI)
  • MLS_128_DHKEMP256_AES128GCM_SHA256_P256
  • MLS_128_HPKEX25519_CHACHA20POLY1305_SHA256_Ed25519

Supported platforms

OpenMLS is built and tested on the Github CI for the following rust targets.

  • x86_64-unknown-linux-gnu
  • i686-unknown-linux-gnu
  • x86_64-pc-windows-msvc
  • i686-pc-windows-msvc
  • x86_64-apple-darwin

Unsupported, but built on CI

The Github CI also builds (but doesn't test) the following rust targets.

  • aarch64-apple-darwin
  • aarch64-unknown-linux-gnu
  • aarch64-linux-android
  • aarch64-apple-ios
  • aarch64-apple-ios-sim
  • wasm32-unknown-unknown
  • armv7-linux-androideabi
  • x86_64-linux-android
  • i686-linux-android

OpenMLS supports 32 bit platforms and above.

Cryptography Dependencies

OpenMLS does not implement its own cryptographic primitives. Instead, it relies on existing implementations of the cryptographic primitives used by MLS. There are two different cryptography providers implemented right now. But consumers can bring their own implementation. See traits for more details.

Working on OpenMLS

For more details when working on OpenMLS itself please see the Developer.md.

Maintenance & Support

OpenMLS is maintained and developed by Phoenix R&D and Cryspen.

Acknowledgements

Zulip graciously provides the OpenMLS community with a "Zulip Cloud Standard" tier Zulip instance.

About

Rust implementation of the Messaging Layer Security (MLS) protocol

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Rust 99.7%
  • Other 0.3%