【发布时间】:2019-02-12 19:47:16
【问题描述】:
如果我在 Android 9 上运行此代码,我会收到以下异常:
private static KeyStore.PrivateKeyEntry getPrivateKeyEntry(String alias) {
try {
KeyStore ks = KeyStore
.getInstance(SecurityConstants.KEYSTORE_PROVIDER_ANDROID_KEYSTORE);
ks.load(null);
KeyStore.Entry entry = ks.getEntry(alias, null);
if (entry == null) {
Log.w(TAG, "No key found under alias: " + alias);
Log.w(TAG, "Exiting signData()...");
return null;
}
if (!(entry instanceof KeyStore.PrivateKeyEntry)) {
Log.w(TAG, "Not an instance of a PrivateKeyEntry");
Log.w(TAG, "Exiting signData()...");
return null;
}
return (KeyStore.PrivateKeyEntry) entry;
} catch (Exception e) {
Log.e(TAG, e.getMessage(), e);
return null;
}
}
例外:
KeyStore 异常 android.os.ServiceSpecificException:(代码 7) 在 android.os.Parcel.createException(Parcel.java:1956) 在 android.os.Parcel.readException(Parcel.java:1910) 在 android.os.Parcel.readException(Parcel.java:1860) 在 android.security.IKeystoreService$Stub$Proxy.get(IKeystoreService.java:786) 在 android.security.KeyStore.get(KeyStore.java:195) 在 android.security.keystore.AndroidKeyStoreSpi.engineGetCertificateChain(AndroidKeyStoreSpi.java:118) 在 java.security.KeyStoreSpi.engineGetEntry(KeyStoreSpi.java:484) 在 java.security.KeyStore.getEntry(KeyStore.java:1560) 在 com.phenodev.testenc.KeyStoreHelper.getPrivateKeyEntry(KeyStoreHelper.java:151) 在 com.phenodev.testenc.KeyStoreHelper.encrypt(KeyStoreHelper.java:173) 在 com.phenodev.testenc.KeyStoreEncryptor.encrypt(KeyStoreEncryptor.java:19)
请帮忙解决。
【问题讨论】:
-
我也有同样的问题 :-(
标签: java android keystore android-keystore