Skip to content

FayeDel/openmls_dave

Repository files navigation

openmls_dave

My own implementation of Discord Audio & Video End-to-End Encryption (DAVE) Protocol , using OpenMLS, Python and Rust.

I don't intentionally try to use this mainstream, this project mostly will serve as a learning experience with Rust, and OpenMLS.

This uses uv extensively, and uses ty to typecheck. This also uses maturin to compile Rust bindings, alongside PyO3 to interface with the py/pyi code.

This also uses black, isort and ruff for coding style.

There's no official documentation yet; this is a WIP (whenever I have time available) (I still need to look into DAVE's voice opcodes, etc.), and this README.md will be redone (eventually).

However, installation of this library is:

pip install openmls_dave

Features

  • MLS (RFC 9420) group key agreement
  • SFrame media encryption
  • Forward secrecy on membership changes
  • Full type hints (via .pyi)

About

My own implementation of Discord's DAVE protocol, using OpenMLS, Python and Rust.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors