Expand description
Common imports that should be useful for most uses of the crate
Re-exports§
pub use crate::CoreCrypto;pub use crate::MlsTransport;pub use crate::e2e_identity::E2eiEnrollment;pub use crate::e2e_identity::types::E2eiAcmeChallenge;pub use crate::e2e_identity::types::E2eiAcmeDirectory;pub use crate::e2e_identity::types::E2eiNewAcmeAuthz;pub use crate::e2e_identity::types::E2eiNewAcmeOrder;pub use crate::mls::conversation::ConversationId;pub use crate::mls::conversation::MlsConversation;pub use crate::transaction_context::e2e_identity::E2eiDumpedPkiEnv;
Structs§
- Certificate
Bundle  - Represents a x509 certificate chain supplied by the client It can fetch it after an end-to-end identity process where it can get back a certificate from the Authentication Service
 - Client
Id  - A Client identifier
 - Credential
 - Credential.
 - Entropy
Seed  - Wrapped 32-byte entropy seed with bounds check
 - Group
Epoch  - Group epoch. Internally this is stored as a 
u64. The group epoch is incremented with every valid Commit that is merged into the group state. - KeyPackage
 - The key package struct.
 - KeyPackage
In  - The key package struct.
 - Keystore
Error  - A key store operation failed
 - MlsBuffered
Conversation Decrypt Message  - Type safe recursion of MlsConversationDecryptMessage
 - MlsCiphersuite
 - A wrapper for the OpenMLS Ciphersuite, so that we are able to provide a default value.
 - MlsClient
Configuration  - Configuration parameters for [Client].
 - MlsCommit
Bundle  - Returned when a commit is created
 - MlsConversation
Configuration  - The configuration parameters for a group/conversation
 - MlsConversation
Decrypt Message  - Represents the potential items a consumer might require after passing us an encrypted message we have decrypted for him
 - MlsCrypto
Provider  - MlsCustom
Configuration  - The configuration parameters for a group/conversation which are not handled natively by openmls
 - MlsGroup
 - A 
MlsGrouprepresents an MLS group with a high-level API. The API exposes high level functions to manage a group by adding/removing members, get the current member list, etc. - MlsGroup
Config  - Specifies the configuration parameters for a 
MlsGroup. Refer to the User Manual for more information about the different configuration values. - MlsGroup
Info Bundle  - A [GroupInfo] with metadata
 - MlsMessage
In  - Before use with the 
MlsGroupAPI, the message has to be unpacked viaextractto yield its [MlsMessageInBody]. - MlsProposal
Bundle  - Returned when a Proposal is created. Helps roll backing a local proposal
 - MlsProposal
Ref  - Abstraction over a [openmls::prelude::hash_ref::ProposalRef] to deal with conversions
 - Obfuscated
 - We often want logging for some values that we shouldn’t know the real value of, for privacy reasons.
 - Session
 - A MLS Session enables a user device to communicate via the MLS protocol.
 - Verifiable
Group Info  - A type that represents a group info of which the signature has not been
verified. It implements the [
Verifiable] trait and can be turned into a group info by callingverify(...)with the signature key of theCredential. When receiving a serialized group info, it can only be deserialized into aVerifiableGroupInfo, which can then be turned into a group info as described above. - Welcome
Bundle  - Contains everything client needs to know after decrypting an (encrypted) Welcome message
 - Wire
Identity  - Represents the identity claims identifying a client Those claims are verifiable by any member in the group
 - X509
Identity  - Represents the parts of WireIdentity that are specific to a X509 certificate (and not a Basic one).
 
Enums§
- Ciphersuite
Name  - MLS ciphersuites.
 - Client
Identifier  - Used by consumers to initializes a MLS client. Encompasses all the client types available. Could be enriched later with Verifiable Presentations.
 - Device
Status  - Indicates the standalone status of a device Credential in a MLS group at a moment T. This does not represent the states where a device is not using MLS or is not using end-to-end identity
 - E2ei
Conversation State  - Indicates the state of a Conversation regarding end-to-end identity.
 - Error
 - Errors produced by the root module group
 - Group
Info Payload  - Represents the byte array in MlsGroupInfoBundle
 - Leaf
Error  - These errors can be raised from several different modules, so we centralize the definitions here to ease error-handling.
 - MlsCredential
Type  - Lists all the supported Credential types. Could list in the future some types not supported by openmls such as Verifiable Presentation
 - MlsGroup
Info Encryption Type  - GroupInfoEncryptionType
 - MlsProposal
 - Internal representation of proposal to ease further additions
 - MlsRatchet
Tree Type  - RatchetTreeType
 - MlsWire
Policy  - Wrapper over WireFormatPolicy
 - Node
 - Container enum for leaf and parent nodes.
 - Recursive
Error  - These errors wrap each of the module-specific errors in CoreCrypto.
 
Constants§
- INITIAL_
KEYING_ MATERIAL_ COUNT  - Default number of KeyPackages a client generates the first time it’s created
 
Traits§
- Epoch
Observer  - An 
EpochObserveris notified whenever a conversation’s epoch changes. 
Type Aliases§
- Cryptobox
Migration Error  - KeyPackage
Ref  - A reference to a key package. This value uniquely identifies a key package.
 - MlsError
 - A MLS operation failed, but we captured some context about how it did so
 - Proteus
Error  - A Proteus operation failed, but we captured some context about how it did so
 - RawEntropy
Seed  - 32-byte raw entropy seed