Skip to content
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

New keystore format #90

Merged
merged 3 commits into from
Jan 28, 2022
Merged

New keystore format #90

merged 3 commits into from
Jan 28, 2022

Conversation

rdnt
Copy link
Owner

@rdnt rdnt commented Jan 27, 2022

Keystores will all be persisted to disk in a structure called the 'Enclave', which makes sure keystores are all encrypted using the same master password.
This enclave format is abstracted away from the user, and the only implication is that the keystore service needs to be updated to include a proper 'Initialize' function, for when the enclave does not yet exist.

A custom key is used for the encryption of any keystore before finally encrypting a structure with all the keystores with the master password.
This will enable per-keystore sharing with other devices/users, without requiring a master password re-prompt or providing the ability to have multiple master passwords (no use of it anyway).
The only shared secret between users will be the actual keystore encryption key.

Onboarding detection is broken, some custom errors need to be reported when accessing all the keystores without being authenticated, which will indicate that the enclave is not yet initialized. This will be addressed in a separate PR.

@rdnt rdnt added the wip work in progress label Jan 27, 2022
@rdnt rdnt changed the title Draft: new keystore format New keystore format Jan 27, 2022
@rdnt rdnt merged commit aede97d into main Jan 28, 2022
@rdnt rdnt deleted the new-keystore-format branch January 28, 2022 18:46
@rdnt rdnt removed the wip work in progress label Jul 15, 2022
rdnt added a commit that referenced this pull request Aug 30, 2023
* New enclave keystore encapsulation format, update keystore repository to accomodate it
* Add keystorerepo healthcheck back
* Refine client backend, cleanup, properly handle initialization of enclave on keystore creation

Former-commit-id: aede97d
rdnt added a commit that referenced this pull request Aug 30, 2023
* New enclave keystore encapsulation format, update keystore repository to accomodate it
* Add keystorerepo healthcheck back
* Refine client backend, cleanup, properly handle initialization of enclave on keystore creation

Former-commit-id: 04b23b7 [formerly a9ef929]
Former-commit-id: 07033ac100c244395ed9ab4016386ebad24d6c6e
rdnt added a commit that referenced this pull request Aug 30, 2023
* New enclave keystore encapsulation format, update keystore repository to accomodate it
* Add keystorerepo healthcheck back
* Refine client backend, cleanup, properly handle initialization of enclave on keystore creation

Former-commit-id: a9ef929
rdnt added a commit that referenced this pull request Aug 30, 2023
* New enclave keystore encapsulation format, update keystore repository to accomodate it
* Add keystorerepo healthcheck back
* Refine client backend, cleanup, properly handle initialization of enclave on keystore creation
rdnt added a commit that referenced this pull request Aug 30, 2023
* New enclave keystore encapsulation format, update keystore repository to accomodate it
* Add keystorerepo healthcheck back
* Refine client backend, cleanup, properly handle initialization of enclave on keystore creation
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