From f4fe318a85f4cefe00ca15e49914ea2b7b061bea Mon Sep 17 00:00:00 2001 From: Hubert Chathi Date: Thu, 17 Jan 2019 23:52:36 -0500 Subject: [PATCH] update with user-signing and self-signing keys --- proposals/1756-cross-signing.md | 357 +++++++++++++-------------- proposals/images/1756-graph2.dot | 23 +- proposals/images/1756-graph2.dot.png | Bin 29214 -> 49417 bytes 3 files changed, 187 insertions(+), 193 deletions(-) diff --git a/proposals/1756-cross-signing.md b/proposals/1756-cross-signing.md index 11bfe2c15..097470110 100644 --- a/proposals/1756-cross-signing.md +++ b/proposals/1756-cross-signing.md @@ -1,4 +1,4 @@ -# Cross-signing devices with master keys +# Cross-signing devices with device signing keys ## Background @@ -8,215 +8,188 @@ this user must then verify each key on each of their devices. If Alice has *n* devices, and Bob has *m* devices, then for Alice to be able to communicate with Bob on any of their devices, this involves *n×m* key verifications. -One way to addresss this is for each user to use a "master key" for their -identity which signs all of their devices. Thus another user who wishes to -verify their identity only needs to verify their master, key and can use the -master key to verify their devices. +One way to address this is for each user to use a device signing key to signs +all of their devices. Thus another user who wishes to verify their identity +only needs to verify the device signing key and can use the signatures created +by the device signing key to verify their devices. [MSC1680](https://github.com/matrix-org/matrix-doc/issues/1680) presents a -different solution to the problem. +different solution to the problem. A comparison between this proposal and +MSC1680 is presented below. ## Proposal -Each user has a "master identity key" that is used to sign their devices, and -is signed by all of their devices. When one user (Alice) verifies another -user's (Bob's) identity, Alice will sign Bob's master identity key with her -master identity key. (This will mean that verification methods will need to be -modified to pass along the master identity key.) Alice's device will trust -Bob's device if: - -- Alice's device is using a master identity key that has signed Bob's master - identity key, -- Bob's master identity key has signed Bob's device, and -- none of those signatures have been revoked. - -If Alice believes that her master identity key has been compromised, she can -revoke it and create a new one. This means that all trust involving Alice -(i.e. Alice trusting other people and other people trusting Alice) needs to -start from scratch. - -The master identity key's private key can be stored encrypted on the server -(possibly along with the megolm key backup). Clients may or may not want to -store a copy of the private key locally. Doing so would mean that an attacker -who steals a device has access to the private key, and so can forge trusted -devices until the user notices and resets their master key. However, not doing -so means that when the user verifies another user, they will need to re-fetch -the private key, which means that they will need to re-enter their recovery -key to decrypt it. - -When a user logs in with a new device, they will fetch and decrypt the private -master key, sign the new device's key with the master key, and sign the master -key with the device's key. - -Users will only be allowed to see signatures made by their own master identity -key, or signatures made by other users' master identity keys on their own -devices. +Each user has a self-signing key pair that is used to sign their own devices, +and a user-signing key pair that is used to sign other users' signing keys. A +user's user-signing key is also signed by their own self-signing key. When one +user (e.g. Alice) verifies another user's (Bob's) identity, Alice will sign +Bob's self-signing key with her user-signing key. (This will mean that +verification methods will need to be modified to pass along the self-signing +identity key.) Alice's device will trust Bob's device if: + +- Alice's device is using a self-signing key that has signed her user-signing key, +- Alice's user-signing key has signed Bob's self-signing key, and +- Bob's self-signing key has signed Bob's device key. + +### Key security + +A user's private half of their user-signing key pair may be kept unlocked on a +device, but their self-signing key should not; the private half of the +self-signing key pair should only be stored encrypted, requiring a passphrase +to access. By keeping the user-signing key unlocked, Alice can verify Bob's +identity and distribute signatures to all her devices without needing to enter +a passphrase to decrypt the key. + +If a user's device is compromised, they can issue a new user-signing key, +signed by their self-signing key, rendering the old user-signing key useless. +If they are certain that the old user-signing key has not yet been used by an +attacker, then they may also reissue signatures made by the old user-signing +key by using the new user-signing key. Otherwise, they will need to re-verify +the other users. + +If a user's self-signing key is compromised, then the user will need to issue +both a new self-signing key and a new device-signing key. The user may sign +their new self-signing key with their old self-signing key, allowing other +users who have verified the old self-signing key to automatically trust the new +self-signing key if they wish to. Otherwise, the users will need to re-verify +each other. + +The private halves of the user-signing key pair and self-signing key pair may +be stored encrypted on the server (possibly along with the megolm key backup) +so that they may be retrieved by new devices. FIXME: explain how to do this + +### Signature distribution + +Currently, users will only be allowed to see signatures made by their own +self-signing or user-signing keys, or signatures made by other users' +self-signing keys about their own devices. This is done in order to preserve +the privacy of social connections. Future proposals may define mechanisms for +distributing signatures to other users in order to allow for other web-of-trust +use cases. ### API description -#### Possible API 1 +Public keys for the self-signing and user-signing keys are uploaded to the +servers using `/keys/device_signing/upload`. This endpoint requires [UI +Auth](https://matrix.org/docs/spec/client_server/r0.4.0.html#user-interactive-authentication-api). -Use the same API as MSC1680, but with additions. - -API to create new virtual device: - -`POST /devices/create` - -returns - -``` json -{ - "device_id": "ABCDEFG" -} -``` - -The server should not allow any client to use this device ID when logging in or -registering; if a client tries to log in using this device ID, then the server -must respond with an error. (FIXME: what error?) - -Send public key using `/keys/upload` as a normal device, but with a special -"algorithms" list: - -`POST /keys/upload` +`POST /keys/device_signing/upload` ``` json { - "device_keys": { + "self_signing_key": { + "user_id": "@alice:example.com", + "usage": ["self_signing"], + "keys": { + "ed25519:base64+self+signing+public+key": "base64+self+signing+public+key", + } + }, + "user_signing_key": { "user_id": "@alice:example.com", - "device_id": "ABCDEFG", - "algorithms": ["m.master"], "keys": { - "ed25519:ABCDEFG": "base64+public+key" + "ed25519:base64+device+signing+public+key": "base64+device+signing+public+key", }, + "usage": ["user_signing"], "signatures": { "@alice:example.com": { - "ed25519:ABCDEFG": "base64+self+signature" + "ed25519:base64+self+signing+public+key": "base64+signature" } } } } ``` -(This may require changes in what `device_id`s are accepted by `/keys/upload`.) +In order to ensure that there will be no collisions in the `signatures` +property, the server must respond with an error (FIXME: what error?) if any of +the uploaded public keys match an existing device ID for the user. Similarly, +if a user attempts to log in specifying a device ID matching one of the signing +keys, the server must respond with an error (FIXME: what error?). -Attestations/revocations will be uploaded and retrieved as described in -MSC1680. Creating a new master key would involve revoking the old master key -by sending a signed revocation and deleting the device using `DELETE -/devices/{deviceId}`, and then creating a new master key. +If a user-signing key is uploaded, it must be signed by the current +self-signing key (or the self-signing key that is included in the request) -Private master key could be stored as part of the key backup (MSC1219), maybe -as a special room ID + session ID, or possibly in the `auth_data` for the -backup version (the latter would mean that changing the master key would -require creating a new backup version, which may be what users need to do -anyways). Or the private master key could be stored in account data, -e.g. `/user/{userId}/account_data/m.master.{deviceId}`. +If a previous self-signing key exists, then the new self-signing key must have +a `replaces` property whose value is the previous public self-signing key. +Otherwise the server must respond with an error (FIXME: what error?). The new +self-signing key may also be signed with the old self-signing key. -#### Possible API 2 +FIXME: document `usage` property -Treat master key separately from normal devices and adding special handling for -them. This might result in a nicer API, but make the implementation more -complicated. For example, the server could automatically add master key -signatures into a device's `signatures` field, rather than shipping the -attestations separately. +After uploading self-signing and user-signing keys, they will be included under +the `/keys/query` endpoint under the `self_signing_key` and `user_signing_key` +properties, respectively. The `user_signing_key` will only be included when a +user requests their own keys. -Send public key using `/keys/upload`, under the `master_key` property. -(Alternatively, could use a special endpoint, like `/keys/master/upload`.) - -`POST /keys/upload` +`POST /keys/query` ``` json { - "master_key": { - "user_id": "@alice:example.com", - "key_id": "ABCDEFG", - "algorithm": "ed25519", - "key": "base64+public+key", - "signatures": { - "@alice:example.com": { - "ed25519:ABCDEFG": "base64+self+signature" - } - } - } + "device_keys": { + "@alice:example.com": [] + }, + "token": "string" } ``` -The key ID must be unique within the scope of a given user, and must not match -any device ID. This is required so that there will be no collisions in the -`signatures` property. - -(FIXME: how do we make sure that the key ID doesn't collide with an existing -device ID? Just send an error and let the client retry?) - -The server should not allow any client to use the key ID as their device ID -when logging in or registering; if a client tries to log in using this device -ID, then the server must respond with an error. (FIXME: what error?) - -Uploading a new master key should invalidate any previous master key. - -After uploading a master key, it will be included under the `/keys/query` -endpoint under the `master_key` property. - -`GET /keys/query` +response: ``` json { "failures": {}, - "master_key": { + "device_keys": { + "@alice:example.com": { + // ... + } + }, + "self_signing_key": { "@alice:example.com": { "user_id": "@alice:example.com", - "key_id": "ABCDEFG", - "algorithm": "ed25519", - "key": "base64+public+key", - "signatures": { - "@alice:example.com": { - "ed25519:ABCDEFG": "base64+self+signature" - } + "usage": ["self_signing"], + "keys": { + "ed25519:base64+self+signing+public+key": "base64+self+signing+public+key" } } } } ``` -Signatures can be uploaded using `/keys/upload`, under the `signatures` -property. (Alternatively, could use a special endpoint, like -`/keys/signatures/upload`.) +Signatures of keys can be uploaded using `/keys/signatures/upload`. -For example, Alice signs one of her devices (HIJKLMN), and Bob's master key. +For example, Alice signs one of her devices (HIJKLMN), and Bob's self-signing key. -`POST /keys/upload` +`POST /keys/signatures/upload` ``` json { - "signatures": { - "@alice:example.com": { - "HIJKLMN": { - "user_id": "@alice:example.com", - "device_id": "HIJKLMN", - "algorithms": [ - "m.olm.curve25519-aes-sha256", - "m.megolm.v1.aes-sha" - ], - "keys": { - "curve25519:HIJKLMN": "base64+curve25519+key", - "ed25519:HIJKLMN": "base64+ed25519+key" - }, - "signatures": { - "@alice:example.com": { - "ed25519:ABCDEFG": "base64+signature+of+HIJKLMN" - } + "@alice:example.com": { + "HIJKLMN": { + "user_id": "@alice:example.com", + "device_id": "HIJKLMN", + "algorithms": [ + "m.olm.curve25519-aes-sha256", + "m.megolm.v1.aes-sha" + ], + "keys": { + "curve25519:HIJKLMN": "base64+curve25519+key", + "ed25519:HIJKLMN": "base64+ed25519+key" + }, + "signatures": { + "@alice:example.com": { + "ed25519:base64+user+signing+public+key": "base64+signature+of+HIJKLMN" } } - }, - "@bob:example.com": { - "OPQRSTU": { - "user_id": "@bob:example.com", - "key_id": "OPQRSTU", - "algorithm": "ed25519", - "key": "base64+ed25519+key", - "signatures": { - "@alice:example.com": { - "ed25519:ABCDEFG": "base64+signature+of+OPQRSTU" - } + } + }, + "@bob:example.com": { + "bobs+base64+self+signing+public+key": { + "user_id": "@bob:example.com", + "keys": { + "ed25519:bobs+base64+self+signing+public+key": "bobs+base64+self+signing+public+key" + }, + "usage": ["self_signing"], + "signatures": { + "@alice:example.com": { + "ed25519:base64+user+signing+public+key": "base64+signature+of+bobs+self+signing+key" } } } @@ -228,7 +201,18 @@ After Alice uploads a signature for her own devices, her signature will be included in the results of the `/keys/query` request when *anyone* requests her keys: -`GET /keys/query` +`POST /keys/query` + +``` json +{ + "device_keys": { + "@alice:example.com": [] + }, + "token": "string" +} +``` + +response: ``` json { @@ -249,7 +233,7 @@ keys: "signatures": { "@alice:example.com": { "ed25519:HIJKLMN": "base64+self+signature", - "ed25519:ABCDEFG": "base64+signature+of+HIJKLMN" + "ed25519:base64+user+signing+public+key": "base64+signature+of+HIJKLMN" } }, "unsigned": { @@ -258,41 +242,40 @@ keys: } } }, - "master_keys": { - "@alice:example.com": { - "user_id": "@alice:example.com", - "key_id": "ABCDEFG", - "algorithm": "ed25519", - "key": "base64+public+key", - "signatures": { - "@alice:example.com": { - "ed25519:ABCDEFG": "base64+self+signature" - } - } + "self_signing_key": { + "user_id": "@alice:example.com", + "usage": ["self_signing"], + "keys": { + "ed25519:base64+self+signing+public+key": "base64+self+signing+public+key", } } } ``` -After Alice uploads a signature for Bob's master key, her signature will be -included in the results of the `/keys/query` request when Alice requests Bob's -key: +After Alice uploads a signature for Bob's user-signing key, her signature will +be included in the results of the `/keys/query` request when Alice requests +Bob's key: `GET /keys/query` ``` json { "failures": {}, - "master_key": { + "device_keys": { + "@bob:example.com": { + // ... + } + }, + "self_signing_key": { "@bob:example.com": { "user_id": "@bob:example.com", - "key_id": "OPQRSTU", - "algorithm": "ed25519", - "key": "base64+ed25519+key", + "keys": { + "ed25519:bobs+base64+self+signing+public+key": "bobs+base64+self+signing+public+key" + }, + "usage": ["self_signing"], "signatures": { "@alice:example.com": { - "ed25519:OPQRSTU": "base64+self+signature+OPQRSTU", - "ed25519:ABCDEFG": "base64+signature+of+OPQRSTU" + "ed25519:base64+user+signing+public+key": "base64+signature+of+bobs+self+signing+key" } } } @@ -300,6 +283,8 @@ key: } ``` +FIXME: s2s stuff + ## Comparison with MSC1680 MSC1680 suffers from the fact that the attestation graph may be arbitrarily @@ -323,8 +308,8 @@ look like: If Bob replaces his Dynabook without re-verifying with Alice, this will split the graph and Alice will not be able to verify Bob's other devices. In -contrast, in this proposal, Alice and Bob's master keys directly sign each -other, and the attestation graph would look like: +contrast, in this proposal, Alice and Bob sign each other's self-signing key +with their user-signing keys, and the attestation graph would look like: ![](images/1756-graph2.dot.png) @@ -337,12 +322,16 @@ devices, as there may be stale attestations and revocations lingering around. (This also relates to the question of whether a revocation should only revoke the signature created previously by the device making the attestation, or whether it should be a statement that the device should not be trusted at all.) -In contrast, with this proposal, there is a clear way to rebuild the -attestation graph: create a new master identity key, and re-verify all devices -with it. +In contrast, with this proposal, if a device is stolen, then only the +user-signing key must be re-issued. ## Security considerations +This proposal relies on servers to communicate when self-signing or +user-signing keys are deleted and replaced. An attacker who is able to both +steal a user's device and control their homeserver could prevent that device +from being marked as untrusted. + ## Conclusion This proposal presents an alternative cross-signing mechanism to MSC1680. diff --git a/proposals/images/1756-graph2.dot b/proposals/images/1756-graph2.dot index 6a45abe9b..8eaa1df84 100644 --- a/proposals/images/1756-graph2.dot +++ b/proposals/images/1756-graph2.dot @@ -1,13 +1,18 @@ -graph { +digraph { A1 [label="A's PDP-11"] -AM [label="A's master key"] A2 [label="A's Osborne 2"] +AS [label="A's self-signing key"] +AU [label="A's user-signing key"] +BU [label="B's user-signing key"] +BS [label="B's self-signing key"] B1 [label="B's Dynabook"] -BM [label="B's master key"] B2 [label="B's VAX"] -A1 -- AM -AM -- A2 -AM -- BM -B1 -- BM -BM -- B2 -} \ No newline at end of file +AS -> A1 +AS -> A2 +AS -> AU +AU -> BS +BS -> BU +BU -> AS +BS -> B1 +BS -> B2 +} diff --git a/proposals/images/1756-graph2.dot.png b/proposals/images/1756-graph2.dot.png index 93379122bb948f3edecd2133c7f34972589825e1..3af9270f094b2361858930630945b05e40b2c6fd 100644 GIT binary patch literal 49417 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 GQu0Bt7+ePe1W@TYUs^3Vjg81* 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

uud2Zki_XHF3;Vjc|~P{e<3QC2?#Q= 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 ZwJnJord#H|})G(jZw8Nr)7(Bcl`{%HCve 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