-
Notifications
You must be signed in to change notification settings - Fork 476
Closes #11368 - CreditCardEnc scrubbing on key loss; key management refactor #11371
Conversation
8b3fdbc to
e98f5c5
Compare
|
Hopefully will still end up with less code once docstrings are in-place! TODO still: docstrings, changelog, maybe a bit of cleanup around |
223cf57 to
a2e1ed7
Compare
a2e1ed7 to
a258728
Compare
|
Cleaned up the Fenix PR that fixes breaking changes: mozilla-mobile/fenix#22773 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great. I love the new key management code.
…ds storage - remove KeyRecoveryHandler indirection, I don't think it was adding any value - AutofillCrypto and LoginsCrypto are now taking shape of a 'key manager' type objects - they know how to get, validate and store keys, as well as recover corresponding storage classes from key loss. - AutofillCrypto now scrubs credit cards - removes encrypted CC numbers and resets the sync engine - in case of key loss.
This adds an abstract KeyManager class to our storage component, which establishes a pattern of managing keys as used by our storage classes that require encryption. AutofillCrypto and LoginsCrypto become implementors of this basis class, allowing them to explicitly share structure and some core functionality.
d63ecbd to
0f4449c
Compare
0f4449c to
b07f14d
Compare
|
Going to wait until Monday to land this, just in case :) |
Restarting |
|
Thanks, @gabrielluong :) |
Two parts to this:
Closes #11368 - Handle key recovery flow for credit cards storage
any value
manager' type objects - they know how to get, validate and store keys,
as well as recover corresponding storage classes from key loss.
and resets the sync engine - in case of key loss.
Closes #11099: Introduce KeyManager structure
This adds an abstract KeyManager class to our storage component, which
establishes a pattern of managing keys as used by our storage classes
that require encryption.
AutofillCrypto and LoginsCrypto become implementors of this basis class,
allowing them to explicitly share structure and some core functionality.
Pull Request checklist
After merge