-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Use Android secure storage (for 23+, or earlier if possible) for FxA state #5938
Comments
Wait it actually looks like |
@ekager will talk to @linuxwolf about what is possible with AndroidKeyStore, and give an update and then we'll size it. |
will discuss with @ekager. My understanding is |
FYI I think this is a prerequisite for #5544 to land because once we set an encryption key for logins we would have to worry about moving users forward if we change the key which could get messy. |
It sounds like there are 2 keys here: sync key and login encryption key. Is the login key dependent in some way on how we store the sync key? Why can't we a) store the sync key normally until we figure what our sync key storage story is, and then b) encrypt it, and decrypt it when we pass that into AS? |
This is indeed a per-requisite for securely storing logins data. FxA state contains everything you'd need to fetch logins from a sync server. So, encrypting logins storage at rest is moot if you store FxA state in plaintext. |
Secure storage support for FxA state is tracked in mozilla-mobile/android-components#3982 |
Opened #6066 to track the similar issue for securely storing the logins db key. AC issue here to track lowering the min API for dataprotect |
@ekager when you summarize the approach and discussion you had w/ @linuxwolf can you also give an update in https://bugzilla.mozilla.org/show_bug.cgi?id=1587993 ? |
Sizing as E2 because this should primarily be done in AC. |
This was merged in mozilla-mobile/android-components#5053 |
Support for this merged, but we still need to flip the flag in Fenix. |
@grigoryk i'm going to close this bc it looks like your change landed. |
Why/User Benefit/User Problem
As an Android 23+ user, Android provides secure storage for keys, and I want my sync key to be stored safely in this manner.
Dependencies
What/Requirements
Use
AndroidKeyStore
to manage Sync keys.See Lockwise documentation and implementation
Acceptance Criteria (how do I know when I’m done?)
┆Issue is synchronized with this Jira Task
The text was updated successfully, but these errors were encountered: