[PM-31112] Decouple local tools crypto from user key#19433
[PM-31112] Decouple local tools crypto from user key#19433mzieniukbw wants to merge 11 commits intomainfrom
Conversation
|
Fixed Issues (1)Great job! The following issues were fixed in this Pull Request
|
libs/tools/generator/extensions/history/src/legacy-password-history-decryptor.ts
Show resolved
Hide resolved
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## main #19433 +/- ##
==========================================
- Coverage 45.37% 45.36% -0.01%
==========================================
Files 3764 3764
Lines 110625 110617 -8
Branches 16818 16821 +3
==========================================
- Hits 50191 50181 -10
- Misses 58227 58230 +3
+ Partials 2207 2206 -1 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
|
Looks like we can't use sdk-managed state. Need to make change to SDK first. |
mcamirault
left a comment
There was a problem hiding this comment.
Tools changes still look good
|
Changes in this PR impact the Autofill experience of the browser clientBIT has tested the core experience with these changes and all feature flags disabled. ✅ Fortunately, these BIT tests have passed! 🎉 |
Changes in this PR impact the Autofill experience of the browser clientBIT has tested the core experience with these changes and the feature flag configuration used by ✅ Fortunately, these BIT tests have passed! 🎉 |





🎟️ Tracking
https://bitwarden.atlassian.net/browse/PM-31112
Requires bitwarden/sdk-internal#829
📔 Objective
Decouples local tools crypto from direct use of user key into an indirect local user data key. Used by password generator history and email forwarders encryption.
This will allow for user key rotation without logout, since we just have to re-encrypt the local user data key with the new user key, without re-encrypting all other data.
The local user data key state is not exposed in SDK. For backwards compatibility the local user data key is user key wrapped user key - this allows us to use it as drop in replacement
The SDK's CryptoClient exposes two new WASM stop-gap functions for encryption with the local user data key - intended to be only used by tools at this moment.
📸 Screenshots