-
Notifications
You must be signed in to change notification settings - Fork 61
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Extensions #473
Comments
Thanks for the analysis here. To your point about “dynamic GIEs” — My initial concept here was that the GIEs included in the GroupContext would be fixed for all time. The ratchet tree extension would not be included in the GroupContext; as you say, it just uses the Welcome for E2E tunneling. Boiling this down a bit, it seems like there are a few problems to solve here:
For the former, there's a pretty simple solution available: Just have separate fields in the GroupContext for permanent and ephemeral extensions.
The joiner processing would then place the For the latter problem, I think your ExtensionUpdate is about the right approach. It might be simpler just to have the update proposal provide wholesale replacement to the extensions, so that we don't have to design a merge algorithm. I'm not totally sure this is worth doing right now, since it seems easy to do as an extension. But especially if we keep it simple, I'm not strongly opposed. |
@kkohbrok @raphaelrobert and I discussed real-time, propose to do the following:
|
After a thorough review of the current MLS extension system, there are a few questions and we also have a few suggestions for changes.
How we interpret the spec currently:
Open questions:
Extension
struct in the spec? E.g. a message type that indicates whether a GIE should be included in the GroupContext (see proposal below).We need more guidance regarding extensions in order to keep implementations aligned and capable of interop.
Concrete proposed improvements:
A first suggestion would be to allow for the creation of extensions that have dynamic content. This would allow them to use MLS to agree on arbitrary data.
The requirement would be to make GIEs with dynamic content more robust by introducing a new proposal type to update the content of extensions:
Another improvement to the current extension system would be to be more clear about the kinds of extensions by introducing a dedicated
MessageType
field for every extension:This would allow generic
GroupInfo
extensions, which in turn allow committers of Add proposals to communicate arbitrary data to new group members in a robust fashion.The text was updated successfully, but these errors were encountered: