Skip to main content

Module conversation

Module conversation 

Source
Expand description

MLS groups (aka conversation) are the actual entities cementing all the participants in a conversation.

This table summarizes what operations are permitted on a group depending its state: (PP=pending proposal, PC=pending commit)

can I ?0 PP / 0 PC1+ PP / 0 PC0 PP / 1 PC1+ PP / 1 PC
encrypt
handshake
merge
decrypt

Structs§

BufferedCommit
The data relevant after a buffered Commit was processed.
Commit
The data relevant after a Commit was processed.
CommitBundle
Returned when a commit is created
Conversation
A Conversation exposes the read-only interface of an MLS conversation.
ConversationConfiguration
The configuration parameters for a group/conversation
ConversationId
A unique identifier for a group/conversation. The identifier must be unique within a client.
ConversationIdRef
Reference to a ConversationId.
ConversationMut
A mutable view of an MLS conversation.
CustomConfiguration
The configuration parameters for a group/conversation which are not handled natively by openmls
GroupInfoBundle
A [GroupInfo] with metadata
Proposal
The data relevant after a Proposal was processed.
SecretKey
A secret key derived from the group secret.
Text
A decrypted MLS application message
WelcomeMessage
A Welcome Message as defined in RFC 9420.

Enums§

BufferedDecryptedMessage
A decrypted message that was buffered due to out-of-order delivery by the delivery service. It represents messages for the new epoch that arrived before the commit that created it.
DecryptedMessage
Represents the potential items a consumer might require after passing us an encrypted message we have decrypted for him
Error
GroupInfoEncryptionType
GroupInfoEncryptionType
GroupInfoPayload
Represents the byte array in GroupInfoBundle
RatchetTreeType
RatchetTreeType
WirePolicy
Wrapper over [WireFormatPolicy]

Type Aliases§

Result