Subject: [MLS] Mandatory extensions in MLS?

From: Rohan Mahy <[email-masked]>
Date: Mon, 4 Oct 2021 05:14:05 -0700

Hello,

Do we want to be able to support mandatory extensions in MLS? Many
protocols which have an extensibility mechanism have a way to indicate that
understanding an extension is mandatory for certain behaviors. If we do not
add this capability now, we can never add it later without updating the MLS
version number.

For MLS, this would mean having a way to require a member understand an MLS
extension before it can join a group. The three extension types defined
currently are:
 MLS ciphersuites,
 MLS extension types, and
 MLS credential types.

One logical way to add mandatory extensions would be to pick one of these
types (the MLS extensions type) and use the high order bit or a specific
range to indicate that a member must understand and implement the extension
to join a group which uses that extension. The IANA values could be changed
as follows:

Values from 0x8000-0xffff indicate understanding the extension is required
0x7f00 - 0x7fff  Reserved for Private Use (not required)
0xff00 - 0xfff   Reserved for Private Use (required)

If a required ciphersuite or credential becomes necessary, a new extension
type could be created to add an extension in the KeyPackage or GroupInfo
which would be required and would indicate support for the mandatory
ciphersuites or credentials.

In order to prevent some other entity from adding an MLS client that does
not support a mandatory extension, we already have the KeyPackage Client
Capabilities, which lists which extensions are supported by the client.

Thoughts?
Thanks,
-rohan

*Rohan Mahy  *l  Vice President Engineering, Architecture

Chat: @rohan_wire on Wire

Wire <https://wire.com/en/download/> - Secure team messaging.

*Zeta Project Germany GmbH  *l  Rosenthaler Straße 40,
<https://maps.google.com/?q=Rosenthaler+Stra%C3%9Fe+40,%C2%A0+10178+Berlin,%C2%A0+Germany&entry=gmail&source=g>10178
Berlin,
<https://maps.google.com/?q=Rosenthaler+Stra%C3%9Fe+40,%C2%A0+10178+Berlin,%C2%A0+Germany&entry=gmail&source=g>
Germany
<https://maps.google.com/?q=Rosenthaler+Stra%C3%9Fe+40,%C2%A0+10178+Berlin,%C2%A0+Germany&entry=gmail&source=g>

Geschäftsführer/Managing Director: Morten J. Broegger

HRB 149847 beim Handelsregister Charlottenburg, Berlin

VAT-ID DE288748675