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

Add support for adding and deleting PRF passkeys #57

Merged
merged 11 commits into from
Sep 25, 2023
Merged

Conversation

emlun
Copy link
Member

@emlun emlun commented Sep 22, 2023

Previously when adding or deleting passkeys, these passkeys were not added/deleted as PRF encryption keys to the wallet. These fixes that. 🙂

As a consequence, the passkey management controls now need to be "unlocked" with one of the passkeys before any passkeys can be added or deleted. This is because when adding a passkey, we need to unwrap the main encryption key in order to re-wrap it with the new PRF key. The main encryption key is not kept unwrapped in the session, instead a pair of "session keys" are used to decrypt the wallet for the duration of the session. Therefore we need to perform a PRF authentication ceremony to get an existing PRF key before we can add any more PRF keys.

@emlun
Copy link
Member Author

emlun commented Sep 22, 2023

This is mutually dependent on gunet/wallet-backend-server#27 for a couple of corresponding server-side changes.

@gkatrakazas gkatrakazas merged commit 5a1446c into master Sep 25, 2023
0 of 2 checks passed
@emlun emlun deleted the prf-add-passkey branch September 25, 2023 09:43
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.

None yet

3 participants