Skip to content

Edit Mozilla MLS Explainer. - #2

Open
cindylindeed wants to merge 1 commit into
mozilla:mainfrom
cindylindeed:patch-1
Open

Edit Mozilla MLS Explainer.#2
cindylindeed wants to merge 1 commit into
mozilla:mainfrom
cindylindeed:patch-1

Conversation

@cindylindeed

@cindylindeed cindylindeed commented Aug 31, 2026

Copy link
Copy Markdown

Reviewed as requested by @Frosne.

Comment thread MessagingLayerSecurity.md
A client first creates a local MLS identity, which includes the credential and public key package used to participate in groups. The application stores or publishes this identity through its own service so other clients can add this client to a group.

```js
const identity = await mls.createIdentity("alice@example");

@cindylindeed cindylindeed Aug 31, 2026

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some questions:

  1. It's not 100% clear to me whether createIdentity() also generates the key package.
  2. Is alice@example the credential in this case?
  3. Are Alice's private keys generated at this step too?

Comment thread MessagingLayerSecurity.md
### Exporting an application secret

Some applications need group-derived secret material for application-specific cryptographic operations. For example, a file sharing application might use an exported secret to encrypt a file. Bytes exported from the group are converted to a WebCrypto API AES-256-GCM key.
Some applications need group-derived secret material for cryptographic operations external to MLS. For example, a file sharing application might use an exported secret to encrypt a file. Bytes exported from the group are converted to a WebCrypto API AES-256-GCM key.

@cindylindeed cindylindeed Aug 31, 2026

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is it conventional to hard-code the key type instead of using a more generic container?

Comment thread MessagingLayerSecurity.md
### Preparing a client

A client first creates a local MLS identity, which includes the credential and key package needed to participate in groups. The application can then store or publish this identity through its own service so that another client can add this client to a group.
A client first creates a local MLS identity, which includes the credential and public key package used to participate in groups. The application stores or publishes this identity through its own service so other clients can add this client to a group.

@cindylindeed cindylindeed Aug 31, 2026

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Any plans to bake in key rotation from the get-go? 😁

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant