-
Notifications
You must be signed in to change notification settings - Fork 333
Add MLS public keys to clients #2147
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
Conversation
8b02712
to
52010b1
Compare
41b18a8
to
2324fa6
Compare
64b957f
to
dc85333
Compare
6ae2d14
to
631e529
Compare
c831726
to
1fa42e8
Compare
8d240f8
to
39c8741
Compare
1fa42e8
to
4ddc932
Compare
4873468
to
310f548
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This looks good! A couple of minor comments are inlined.
I'm not sure why you prefer the more general type signatures. It makes it tricker to use CPS functions like |
This was just a suggestion. Of course, if you have good reasons not to have more general type signatures, that is fine. I'm not requesting to change them. |
695c2c5
to
3dcb548
Compare
…tti/mls-client-api
…pcapriotti/mls-client-api
This PR introduces changes to the client API needed to support validation of MLS key packages. See https://wearezeta.atlassian.net/wiki/spaces/CORE/pages/553418860/MLS+implementation+in+wire-server#Changes-to-the-client-API for details.
The client JSON object now has an additional field
mls_public_keys
, containing an object mapping signature schemes to public keys, e.g.At the moment,
ed25519
is the only supported signature scheme, corresponding to MLS ciphersuite 1.When creating a new client with
POST /clients
, the fieldmls_public_keys
can be set, and the corresponding public keys are bound to the device identity on the backend, and will be used to veriy uploaded key packages with a matching signature scheme.When updating a client with
PUT /clients/:client
, the fieldmls_public_keys
can also be set, with a similar effect. If a given signature scheme already has a public key set for that device, the request will fail.Tracked by https://wearezeta.atlassian.net/browse/FS-472.
Checklist
make git-add-cassandra-schema
to update the cassandra schema documentation.changelog.d
.