Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 07181ef0 authored by Eric Biggers's avatar Eric Biggers Committed by Automerger Merge Worker
Browse files

Merge "SyntheticPasswordManager: rename derivePassword() to deriveSubkey()"...

Merge "SyntheticPasswordManager: rename derivePassword() to deriveSubkey()" am: a2f9e65a am: 0573cdea am: b089c8aa am: 9e339979 am: 6a4f104b

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2132301



Change-Id: I64eb1071dd19e1e8405e1cce4ec8dfcea1e642f5
Signed-off-by: default avatarAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
parents fa2cbdf6 6a4f104b
Loading
Loading
Loading
Loading
+11 −7
Original line number Diff line number Diff line
@@ -192,7 +192,11 @@ public class SyntheticPasswordManager {
            mVersion = version;
        }

        private byte[] derivePassword(byte[] personalization) {
        /**
         * Derives a subkey from the synthetic password. For v3 and later synthetic passwords the
         * subkeys are 256-bit; for v1 and v2 they are 512-bit.
         */
        private byte[] deriveSubkey(byte[] personalization) {
            if (mVersion == SYNTHETIC_PASSWORD_VERSION_V3) {
                return (new SP800Derive(mSyntheticPassword))
                    .withContext(personalization, PERSONALISATION_CONTEXT);
@@ -203,28 +207,28 @@ public class SyntheticPasswordManager {
        }

        public byte[] deriveKeyStorePassword() {
            return bytesToHex(derivePassword(PERSONALIZATION_KEY_STORE_PASSWORD));
            return bytesToHex(deriveSubkey(PERSONALIZATION_KEY_STORE_PASSWORD));
        }

        public byte[] deriveGkPassword() {
            return derivePassword(PERSONALIZATION_SP_GK_AUTH);
            return deriveSubkey(PERSONALIZATION_SP_GK_AUTH);
        }

        public byte[] deriveDiskEncryptionKey() {
            return derivePassword(PERSONALIZATION_FBE_KEY);
            return deriveSubkey(PERSONALIZATION_FBE_KEY);
        }

        public byte[] deriveVendorAuthSecret() {
            return derivePassword(PERSONALIZATION_AUTHSECRET_KEY);
            return deriveSubkey(PERSONALIZATION_AUTHSECRET_KEY);
        }

        public byte[] derivePasswordHashFactor() {
            return derivePassword(PERSONALIZATION_PASSWORD_HASH);
            return deriveSubkey(PERSONALIZATION_PASSWORD_HASH);
        }

        /** Derives key used to encrypt password metrics */
        public byte[] deriveMetricsKey() {
            return derivePassword(PERSONALIZATION_PASSWORD_METRICS);
            return deriveSubkey(PERSONALIZATION_PASSWORD_METRICS);
        }

        /**