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

Commit 86f5bb1a authored by Dmitry Dementyev's avatar Dmitry Dementyev
Browse files

Remove deprecated generateAndStoreKey method implementation

Bug: 77156834
Test: GTS, apct.
Change-Id: I23791fced21308467afc60cc16efc4aee7074134
parent 8dc5b8b5
Loading
Loading
Loading
Loading
+1 −10
Original line number Original line Diff line number Diff line
@@ -443,16 +443,7 @@ public class RecoveryController {
     */
     */
    public byte[] generateAndStoreKey(@NonNull String alias)
    public byte[] generateAndStoreKey(@NonNull String alias)
            throws InternalRecoveryServiceException, LockScreenRequiredException {
            throws InternalRecoveryServiceException, LockScreenRequiredException {
        try {
        throw new UnsupportedOperationException();
            return mBinder.generateAndStoreKey(alias);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        } catch (ServiceSpecificException e) {
            if (e.errorCode == ERROR_INSECURE_USER) {
                throw new LockScreenRequiredException(e.getMessage());
            }
            throw wrapUnexpectedServiceSpecificException(e);
        }
    }
    }


    /**
    /**
+2 −17
Original line number Original line Diff line number Diff line
@@ -78,23 +78,8 @@ public final class KeyChainSnapshot implements Parcelable {
    private byte[] mEncryptedRecoveryKeyBlob;
    private byte[] mEncryptedRecoveryKeyBlob;


    /**
    /**
     * @hide
     * Use builder to create an instance of the class.
     * Deprecated, consider using builder.
     */
     */
    public KeyChainSnapshot(
            int snapshotVersion,
            @NonNull List<KeyChainProtectionParams> keyChainProtectionParams,
            @NonNull List<WrappedApplicationKey> wrappedApplicationKeys,
            @NonNull byte[] encryptedRecoveryKeyBlob) {
        mSnapshotVersion = snapshotVersion;
        mKeyChainProtectionParams =
                Preconditions.checkCollectionElementsNotNull(keyChainProtectionParams,
                        "KeyChainProtectionParams");
        mEntryRecoveryData = Preconditions.checkCollectionElementsNotNull(wrappedApplicationKeys,
                "wrappedApplicationKeys");
        mEncryptedRecoveryKeyBlob = Preconditions.checkNotNull(encryptedRecoveryKeyBlob);
    }

    private KeyChainSnapshot() {
    private KeyChainSnapshot() {


    }
    }
@@ -108,7 +93,7 @@ public final class KeyChainSnapshot implements Parcelable {
    }
    }


    /**
    /**
     * Number of user secret guesses allowed during Keychain recovery.
     * Number of user secret guesses allowed during KeyChain recovery.
     */
     */
    public int getMaxAttempts() {
    public int getMaxAttempts() {
        return mMaxAttempts;
        return mMaxAttempts;
+1 −1
Original line number Original line Diff line number Diff line
@@ -106,7 +106,7 @@ public final class KeyDerivationParams implements Parcelable {
    /**
    /**
     * @hide
     * @hide
     */
     */
    KeyDerivationParams(@KeyDerivationAlgorithm int algorithm, @NonNull byte[] salt,
    private KeyDerivationParams(@KeyDerivationAlgorithm int algorithm, @NonNull byte[] salt,
            int memoryDifficulty) {
            int memoryDifficulty) {
        mAlgorithm = algorithm;
        mAlgorithm = algorithm;
        mSalt = Preconditions.checkNotNull(salt);
        mSalt = Preconditions.checkNotNull(salt);
+1 −10
Original line number Original line Diff line number Diff line
@@ -465,16 +465,7 @@ public class RecoveryController {
    @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE)
    @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE)
    public byte[] generateAndStoreKey(@NonNull String alias, byte[] account)
    public byte[] generateAndStoreKey(@NonNull String alias, byte[] account)
            throws InternalRecoveryServiceException, LockScreenRequiredException {
            throws InternalRecoveryServiceException, LockScreenRequiredException {
        try {
        throw new UnsupportedOperationException("Operation is not supported, use generateKey");
            return mBinder.generateAndStoreKey(alias);
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        } catch (ServiceSpecificException e) {
            if (e.errorCode == ERROR_INSECURE_USER) {
                throw new LockScreenRequiredException(e.getMessage());
            }
            throw wrapUnexpectedServiceSpecificException(e);
        }
    }
    }


    /**
    /**
+5 −5
Original line number Original line Diff line number Diff line
@@ -157,8 +157,8 @@ public class RecoverySession implements AutoCloseable {
     * @param vaultChallenge Data passed from server for this recovery session and used to prevent
     * @param vaultChallenge Data passed from server for this recovery session and used to prevent
     *     replay attacks.
     *     replay attacks.
     * @param secrets Secrets provided by user, the method only uses type and secret fields.
     * @param secrets Secrets provided by user, the method only uses type and secret fields.
     * @return The recovery claim. Claim provides a b binary blob with recovery claim. It is
     * @return The binary blob with recovery claim. It is encrypted with verifierPublicKey
     *     encrypted with verifierPublicKey and contains a proof of user secrets, session symmetric
     * and contains a proof of user secrets possession, session symmetric
     *     key and parameters necessary to identify the counter with the number of failed recovery
     *     key and parameters necessary to identify the counter with the number of failed recovery
     *     attempts.
     *     attempts.
     * @throws CertificateException if the {@code verifierCertPath} is invalid.
     * @throws CertificateException if the {@code verifierCertPath} is invalid.
@@ -228,7 +228,8 @@ public class RecoverySession implements AutoCloseable {
     *
     *
     * @param recoveryKeyBlob Recovery blob encrypted by symmetric key generated for this session.
     * @param recoveryKeyBlob Recovery blob encrypted by symmetric key generated for this session.
     * @param applicationKeys Application keys. Key material can be decrypted using recoveryKeyBlob
     * @param applicationKeys Application keys. Key material can be decrypted using recoveryKeyBlob
     *     and session.
     *     and session key generated by {@link #start}.
     * @return {@code Map} from recovered keys aliases to their references.
     * @throws SessionExpiredException if {@code session} has since been closed.
     * @throws SessionExpiredException if {@code session} has since been closed.
     * @throws DecryptionFailedException if unable to decrypt the snapshot.
     * @throws DecryptionFailedException if unable to decrypt the snapshot.
     * @throws InternalRecoveryServiceException if an error occurs internal to the recovery service.
     * @throws InternalRecoveryServiceException if an error occurs internal to the recovery service.
@@ -288,8 +289,7 @@ public class RecoverySession implements AutoCloseable {
    }
    }


    /**
    /**
     * Deletes all data associated with {@code session}. Should not be invoked directly but via
     * Deletes all data associated with {@code session}.
     * {@link RecoverySession#close()}.
     */
     */
    @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE)
    @RequiresPermission(android.Manifest.permission.RECOVER_KEYSTORE)
    @Override
    @Override
Loading