Module treesync

Source
Expand description

This module implements the ratchet tree component of MLS.

It exposes the Node enum that can contain either a LeafNode or a ParentNode.

Modules§

errors
TreeSync errors

Structs§

EncryptionKey
EncryptionKey contains an HPKE public key that allows the encryption of path secrets in MLS commits.
LeafNode
This struct implements the MLS leaf node.
LeafNodeParameters
Parameters for a leaf node that can be chosen by the application.
LeafNodeParametersBuilder
Builder for LeafNodeParameters.
ParentNode
This struct implements the MLS parent node. It contains its public key, parent hash and unmerged leaves. Additionally, it may contain the private key corresponding to the public key.
RatchetTree
An exported ratchet tree as used in, e.g., GroupInfo.
RatchetTreeIn
A ratchet tree made of unverified nodes. This is used for deserialization and verification.

Enums§

LeafNodeSource
The source of the LeafNode.
LeafNodeUpdateError
Leaf Node Update Error
Node
Container enum for leaf and parent nodes.
RatchetTreeError
An error during processing of an incoming ratchet tree.