keystore: Change superclass of UserPresenceUnavailableException.

Also add additional comments to isTrustedUserPresenceRequired().

Test: m -j KeystoreTests && adb install -r
out/target/product/${TARGET_PRODUCT}/data/app/KeystoreTests/KeystoreTests.apk
    adb shell am instrument

Bug: 73392697
Bug: 76462141
Change-Id: Iabcc331adda53e2a5cad5ead6002dfbc29188da2
Signed-off-by: Allen Webb <allenwebb@google.com>
This commit is contained in:
Allen Webb
2018-03-29 09:50:45 -07:00
parent 912853be10
commit be10891cab
3 changed files with 6 additions and 3 deletions

View File

@@ -38717,7 +38717,7 @@ package android.security.keystore {
ctor public UserNotAuthenticatedException(java.lang.String, java.lang.Throwable);
}
public class UserPresenceUnavailableException extends java.security.InvalidAlgorithmParameterException {
public class UserPresenceUnavailableException extends java.security.InvalidKeyException {
ctor public UserPresenceUnavailableException();
ctor public UserPresenceUnavailableException(java.lang.String);
ctor public UserPresenceUnavailableException(java.lang.String, java.lang.Throwable);

View File

@@ -445,6 +445,9 @@ public final class KeyProtection implements ProtectionParameter, UserAuthArgs {
/**
* Returns {@code true} if the key is authorized to be used only if a test of user presence has
* been performed between the {@code Signature.initSign()} and {@code Signature.sign()} calls.
* It requires that the KeyStore implementation have a direct way to validate the user presence
* for example a KeyStore hardware backed strongbox can use a button press that is observable
* in hardware.
*/
public boolean isTrustedUserPresenceRequired() {
return mTrustedUserPresenceRequired;

View File

@@ -16,13 +16,13 @@
package android.security.keystore;
import java.security.InvalidAlgorithmParameterException;
import java.security.InvalidKeyException;
/**
* Indicates the condition that a proof of user-presence was
* requested but this proof was not presented.
*/
public class UserPresenceUnavailableException extends InvalidAlgorithmParameterException {
public class UserPresenceUnavailableException extends InvalidKeyException {
/**
* Constructs a {@code UserPresenceUnavailableException} without a detail message or cause.
*/