3 个版本
新 0.1.0-pre.3 | 2024 年 8 月 22 日 |
---|---|
0.1.0-pre.2 | 2024 年 7 月 24 日 |
0.1.0-pre.1 | 2024 年 7 月 23 日 |
#662 in 加密学
242 每月下载次数
用于 openmls_test
145KB
3K SLoC
OpenMLS
OpenMLS 是一种 Rust 实现,根据 RFC 9420 中指定的消息层安全性 (MLS) 协议。
它是一个软件库,可以作为需要端到端加密消息的应用程序的基础构建块。它具有安全且易于使用的接口,可以隐藏底层加密操作的复杂性。
支持的密码套件
- MLS_128_HPKEX25519_AES128GCM_SHA256_Ed25519 (MTI)
- MLS_128_DHKEMP256_AES128GCM_SHA256_P256
- MLS_128_HPKEX25519_CHACHA20POLY1305_SHA256_Ed25519
支持的平台
OpenMLS 在以下 rust 目标上构建和测试。
- x86_64-unknown-linux-gnu
- i686-unknown-linux-gnu
- x86_64-pc-windows-msvc
- i686-pc-windows-msvc
- x86_64-apple-darwin
不支持,但在 CI 上构建
Github CI 还构建(但不测试)以下 rust 目标。
- 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 支持 32 位平台及以上。
加密依赖项
OpenMLS 没有实现自己的加密原语。相反,它依赖于 MLS 所使用的加密原语的现有实现。目前实现了两种不同的加密提供程序。但消费者可以提供自己的实现。有关更多信息,请参阅 traits。
在 OpenMLS 上工作
有关在 OpenMLS 本身上工作的更多详细信息,请参阅 Developer.md。
维护和支持
OpenMLS 由 Phoenix R&D 和 Cryspen 维护和开发。
致谢
依赖项
~9.5MB
~238K SLoC