Group configuration

The group configuration can be specified by building a MlsGroupConfig object or choosing the default value. The default velaue contains safe values for all parameters and is suitable for scenarios whithout particular requirements.

The following parameters can be set:

wire_format_policyWireFormatPolicyDefines the wire format policy for outgoing and incoming handshake messages.
padding_sizeusizeSize of padding in bytes. The default is 0.
max_past_epochsusizeMaximum number of past epochs for which application messages can be decrypted. The default is 0.
number_of_resumption_secretsusizeNumber of resumtion secrets to keep. The default is 0.
use_ratchet_tree_extensionboolFlag indicating the Ratchet Tree Extension should be used. The default is false.
required_capabilitiesRequiredCapabilitiesExtensionRequired capabilities (extensions and proposal types).
sender_ratchet_configurationSenderRatchetConfigurationSender ratchet configuration.

Example configuration:

    let mls_group_config = MlsGroupConfig::builder()
            10,   // out_of_order_tolerance
            2000, // maximum_forward_distance