openmls_traits

Crates.ioopenmls_traits
lib.rsopenmls_traits
version0.3.0
sourcesrc
created_at2022-02-03 09:37:20.061185
updated_at2024-09-04 15:18:01.575638
descriptionTraits used by OpenMLS
homepage
repositoryhttps://github.com/openmls/openmls/tree/main/traits
max_upload_size
id526124
size61,251
core (github:openmls:core)

documentation

https://docs.rs/openmls_traits

README

OpenMLS Traits

This crate defines a number of crates that have to be implemented in order to use OpenMLS.

The OpenMLS repository provides a default implementation for these traits

⚠️ These traits are responsible for all cryptographic operations and randomness within OpenMLS. Please ensure you know what you're doing when implementing your own versions.

Traits

There are 4 different traits.

OpenMlsRand

This trait defines two functions to generate arrays and vectors, and is used by OpenMLS to generate randomness.

OpenMlsCrypto

This trait defines all cryptographic functions required by OpenMLS, in particular

  • HKDF
  • Hashing
  • AEAD
  • Signatures
  • HPKE

OpenMlsKeyStore

This trait defines a CRUD API for a key store that is used to store long-term key material from OpenMLS.

OpenMlsCryptoProvider

Additionally, there's a wrapper trait defined that is expected to be passed into the public OpenMLS API.

Types

For interoperability this crate also defines a number of types and algorithm identifiers.

Commit count: 1292

cargo fmt