am 10633c96: Merge "Fix Android Keystore key factories to obey JCA contract." into mnc-dev
* commit '10633c96b55d13f05304b758b01be48035adece3': Fix Android Keystore key factories to obey JCA contract.
This commit is contained in:
@@ -124,22 +124,27 @@ public class AndroidKeyStoreKeyFactorySpi extends KeyFactorySpi {
|
||||
|
||||
@Override
|
||||
protected PrivateKey engineGeneratePrivate(KeySpec spec) throws InvalidKeySpecException {
|
||||
throw new UnsupportedOperationException(
|
||||
"To generate a key pair in Android KeyStore, use KeyPairGenerator initialized with"
|
||||
throw new InvalidKeySpecException(
|
||||
"To generate a key pair in Android Keystore, use KeyPairGenerator initialized with"
|
||||
+ " " + KeyGenParameterSpec.class.getName());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected PublicKey engineGeneratePublic(KeySpec spec) throws InvalidKeySpecException {
|
||||
throw new UnsupportedOperationException(
|
||||
"To generate a key pair in Android KeyStore, use KeyPairGenerator initialized with"
|
||||
throw new InvalidKeySpecException(
|
||||
"To generate a key pair in Android Keystore, use KeyPairGenerator initialized with"
|
||||
+ " " + KeyGenParameterSpec.class.getName());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected Key engineTranslateKey(Key arg0) throws InvalidKeyException {
|
||||
throw new UnsupportedOperationException(
|
||||
"To import a key into Android KeyStore, use KeyStore.setEntry with "
|
||||
+ KeyProtection.class.getName());
|
||||
protected Key engineTranslateKey(Key key) throws InvalidKeyException {
|
||||
if (key == null) {
|
||||
throw new InvalidKeyException("key == null");
|
||||
} else if ((!(key instanceof AndroidKeyStorePrivateKey))
|
||||
&& (!(key instanceof AndroidKeyStorePublicKey))) {
|
||||
throw new InvalidKeyException(
|
||||
"To import a key into Android Keystore, use KeyStore.setEntry");
|
||||
}
|
||||
return key;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -185,15 +185,20 @@ public class AndroidKeyStoreSecretKeyFactorySpi extends SecretKeyFactorySpi {
|
||||
|
||||
@Override
|
||||
protected SecretKey engineGenerateSecret(KeySpec keySpec) throws InvalidKeySpecException {
|
||||
throw new UnsupportedOperationException(
|
||||
"To generate secret key in Android KeyStore, use KeyGenerator initialized with "
|
||||
throw new InvalidKeySpecException(
|
||||
"To generate secret key in Android Keystore, use KeyGenerator initialized with "
|
||||
+ KeyGenParameterSpec.class.getName());
|
||||
}
|
||||
|
||||
@Override
|
||||
protected SecretKey engineTranslateKey(SecretKey key) throws InvalidKeyException {
|
||||
throw new UnsupportedOperationException(
|
||||
"To import a secret key into Android KeyStore, use KeyStore.setEntry with "
|
||||
+ KeyProtection.class.getName());
|
||||
if (key == null) {
|
||||
throw new InvalidKeyException("key == null");
|
||||
} else if (!(key instanceof AndroidKeyStoreSecretKey)) {
|
||||
throw new InvalidKeyException(
|
||||
"To import a secret key into Android Keystore, use KeyStore.setEntry");
|
||||
}
|
||||
|
||||
return key;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user