Switch to CryptAuth V2 Enrollment |
||
Issue descriptionThis migration is necessary in order to enable other CryptAuth V2 migrations (device sync, using our own keys, etc). It will also mean that we can stop looking at the V1 enrollment path altogether, making maintenance much easier. Josh is taking this on and will be writing a design doc as a first step.
,
Jan 4
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b0f93bf3242f6fb888242ffa26e445a27749fc8f commit b0f93bf3242f6fb888242ffa26e445a27749fc8f Author: Josh Nohle <nohle@google.com> Date: Fri Jan 04 22:36:31 2019 Add protos for CryptAuth v2 Enrollment Add protos that will be needed for the CryptAuth v2 Enrollment protocol. These are copies of files already used by the CryptAuth backend. Bug: 899080 Change-Id: I0ad036e37bce9104130c9aaf72edea635f67b50d Reviewed-on: https://chromium-review.googlesource.com/c/1395812 Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Commit-Queue: Josh Nohle <nohle@chromium.org> Cr-Commit-Position: refs/heads/master@{#620090} [modify] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/BUILD.gn [add] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/cryptauth_better_together_feature_metadata.proto [add] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/cryptauth_client_app_metadata.proto [add] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/cryptauth_common.proto [add] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/cryptauth_directive.proto [add] https://crrev.com/b0f93bf3242f6fb888242ffa26e445a27749fc8f/chromeos/services/device_sync/proto/cryptauth_enrollment.proto
,
Jan 11
This issue has an owner, a component and a priority, but is still listed as untriaged or unconfirmed. By definition, this bug is triaged. Changing status to "assigned". Please reach out to me if you disagree with how I've done this.
,
Jan 16
(6 days ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/6e8e26d318957dac1e502f482e377c0218a5867a commit 6e8e26d318957dac1e502f482e377c0218a5867a Author: Josh Nohle <nohle@google.com> Date: Wed Jan 16 19:16:35 2019 Add CryptAuthKey class Adds a class to hold material for keys managed by CryptAuth v2 Enrollment. The class can also be used to hold material for ephemeral keys, such as Diffie-Hellman key-pairs. Bug: 899080 Change-Id: I66ad858db5382cb0ec9ff3f39fdf5881321122da Reviewed-on: https://chromium-review.googlesource.com/c/1399471 Commit-Queue: Josh Nohle <nohle@chromium.org> Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Cr-Commit-Position: refs/heads/master@{#623323} [modify] https://crrev.com/6e8e26d318957dac1e502f482e377c0218a5867a/chromeos/services/device_sync/BUILD.gn [add] https://crrev.com/6e8e26d318957dac1e502f482e377c0218a5867a/chromeos/services/device_sync/cryptauth_key.cc [add] https://crrev.com/6e8e26d318957dac1e502f482e377c0218a5867a/chromeos/services/device_sync/cryptauth_key.h [add] https://crrev.com/6e8e26d318957dac1e502f482e377c0218a5867a/chromeos/services/device_sync/cryptauth_key_unittest.cc
,
Jan 16
(6 days ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/9a5253dab172a8d5e576dc48dc25e456eaa0b031 commit 9a5253dab172a8d5e576dc48dc25e456eaa0b031 Author: Josh Nohle <nohle@google.com> Date: Wed Jan 16 20:53:36 2019 Add CryptAuthKeyBundle class Adds a class to hold a group of related CryptAuthKeys, uniquely identified by their handles. All keys will be active or inactive, and no more than one key can be active at a time. Only the active key should be used for encryption, signing, etc. The inactive keys are retained in case CryptAuth decides to activate them in a future via a SyncSingleKeyResponse::KeyAction. All key bundles used in Chrome OS are enumerated in the CryptAuthKeyBundle::Name enum class. The corresponding name string that will be sent to CryptAuth in the SyncSingleKeysRequest::key_name protobuf field can be retrieved via KeyBundleNameEnumToString(). Currently, the only key bundle being used corresponds to the CryptAuth name "PublicKey". Bug: 899080 Change-Id: Ia6d608a94559cb886e97c6859dc98d38225fdf16 Reviewed-on: https://chromium-review.googlesource.com/c/1405726 Commit-Queue: Josh Nohle <nohle@chromium.org> Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Cr-Commit-Position: refs/heads/master@{#623345} [modify] https://crrev.com/9a5253dab172a8d5e576dc48dc25e456eaa0b031/chromeos/services/device_sync/BUILD.gn [add] https://crrev.com/9a5253dab172a8d5e576dc48dc25e456eaa0b031/chromeos/services/device_sync/cryptauth_key_bundle.cc [add] https://crrev.com/9a5253dab172a8d5e576dc48dc25e456eaa0b031/chromeos/services/device_sync/cryptauth_key_bundle.h [add] https://crrev.com/9a5253dab172a8d5e576dc48dc25e456eaa0b031/chromeos/services/device_sync/cryptauth_key_bundle_unittest.cc
,
Jan 16
(6 days ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b65d6967cb3f3a8b91c1ea72a6927ade1ff0be44 commit b65d6967cb3f3a8b91c1ea72a6927ade1ff0be44 Author: Josh Nohle <nohle@google.com> Date: Wed Jan 16 23:22:16 2019 Qualify CryptAuthKeyBundle::NameList() with class name Fixes potential linker errors. Bug: 899080 Change-Id: I1a50b6eb573924e126d84c141520140fca7697f3 Reviewed-on: https://chromium-review.googlesource.com/c/1415760 Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Commit-Queue: Josh Nohle <nohle@chromium.org> Cr-Commit-Position: refs/heads/master@{#623442} [modify] https://crrev.com/b65d6967cb3f3a8b91c1ea72a6927ade1ff0be44/chromeos/services/device_sync/cryptauth_key_bundle.cc
,
Jan 18
(5 days ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a96136463f8a55944c7ed296820cf9e6b711c062 commit a96136463f8a55944c7ed296820cf9e6b711c062 Author: Josh Nohle <nohle@google.com> Date: Fri Jan 18 02:07:18 2019 Add CryptAuthEnrollmentResult class This class holds the status of a CryptAuth v2 Enrollment attempt and potentially a new ClientDirective from the SyncKeysResponse. The CryptAuthEnroller will construct this object and pass it to the CryptAuthEnrollmentManager when the enrollment finishes, successfully or not. The CryptAuthEnrollmentManager will forward this on the the CryptAuthEnrollmentScheduler to process the ClientDirective and schedule a retry attempt if necessary. The CryptAuthEnrollmentManager will use the CryptAuthEnrollmentResult::ResultCode for metrics. Bug: 899080 Change-Id: Id70526ef9e02c9029ee174b7612711ac0f31c06f Reviewed-on: https://chromium-review.googlesource.com/c/1409805 Commit-Queue: Josh Nohle <nohle@chromium.org> Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Cr-Commit-Position: refs/heads/master@{#623957} [modify] https://crrev.com/a96136463f8a55944c7ed296820cf9e6b711c062/chromeos/services/device_sync/BUILD.gn [add] https://crrev.com/a96136463f8a55944c7ed296820cf9e6b711c062/chromeos/services/device_sync/cryptauth_enrollment_result.cc [add] https://crrev.com/a96136463f8a55944c7ed296820cf9e6b711c062/chromeos/services/device_sync/cryptauth_enrollment_result.h
,
Today
(13 hours ago)
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/3843be316caab65a9d144c80fb627205598f5eac commit 3843be316caab65a9d144c80fb627205598f5eac Author: Josh Nohle <nohle@google.com> Date: Tue Jan 22 18:52:06 2019 CryptAuthKeyBundle: DCHECK DeleteKey; change NameList() to AllNames() Fail if the handle passed to CryptAuthKeyBundle::DeleteKey() doesn't exist in the bundle. Also, change NameList() to AllNames() since the function does not return a list. Bug: 899080 Change-Id: Ib962b658b16157fde8dff42e7e4f630b56e0907b Reviewed-on: https://chromium-review.googlesource.com/c/1423666 Reviewed-by: Kyle Horimoto <khorimoto@chromium.org> Commit-Queue: Josh Nohle <nohle@chromium.org> Cr-Commit-Position: refs/heads/master@{#624848} [modify] https://crrev.com/3843be316caab65a9d144c80fb627205598f5eac/chromeos/services/device_sync/cryptauth_key_bundle.cc [modify] https://crrev.com/3843be316caab65a9d144c80fb627205598f5eac/chromeos/services/device_sync/cryptauth_key_bundle.h [modify] https://crrev.com/3843be316caab65a9d144c80fb627205598f5eac/chromeos/services/device_sync/cryptauth_key_bundle_unittest.cc |
||
►
Sign in to add a comment |
||
Comment 1 by bugdroid1@chromium.org
, Dec 17