微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android Keystore 无法为 Keystore Key 创建密码

如何解决Android Keystore 无法为 Keystore Key 创建密码

我无法在任何手机上重现此内容,只有来自用户的日志。他们有一部华为手机,看起来他们的 Keystore 代码已被修改,因为没有任何行号与 googlesource 一致。尝试从密钥创建密码对象时会发生这种情况。 Cipher.init用户拥有华为(Nova 3i)。我看到了华为的其他一些问题:Huawei p8 or p8 Lite has problem with Keystore Encryption

java.security.InvalidKeyException:密钥库操作失败 在 android.security.KeyStore.getInvalidKeyException(KeyStore.java:924) 在 android.security.KeyStore.getInvalidKeyException(KeyStore.java:949) 在 android.security.keystore.KeyStoreCryptoOperationUtils.getInvalidKeyExceptionForInit(KeyStoreCryptoOperationUtils.java:54) 在 android.security.keystore.KeyStoreCryptoOperationUtils.getExceptionForCipherInit(KeyStoreCryptoOperationUtils.java:89) 在 android.security.keystore.AndroidKeyStoreCipherSpiBase.ensureKeystoreOperationInitialized(AndroidKeyStoreCipherSpiBase.java:265) 在 android.security.keystore.AndroidKeyStoreCipherSpiBase.engineInit(AndroidKeyStoreCipherSpiBase.java:148) 在 javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2980) 在 javax.crypto.Cipher.tryCombinations(Cipher.java:2891) 在 javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2796) 在 javax.crypto.Cipher.chooseProvider(Cipher.java:773) 在 javax.crypto.Cipher.init(Cipher.java:1288) 在 javax.crypto.Cipher.init(Cipher.java:1223)

引起:android.security.KeyStoreException:设备被锁定 在 android.security.KeyStore.getKeyStoreException(KeyStore.java:862)

有没有人在华为手机或其他手机上遇到过这种情况?看起来密钥可以在某个时候使用,但不能再次使用。密钥生成示例

val keyStore = KeyStore.getInstance(ANDROID_KEYSTORE)
keyStore.load(null)
val keyGenerator = KeyGenerator.getInstance(
        KeyProperties.KEY_ALGORITHM_AES,ANDROID_KEYSTORE)
val builder = KeyGenParameterSpec.Builder(
        keyName,KeyProperties.PURPOSE_ENCRYPT or KeyProperties.PURPOSE_DECRYPT)
    .setBlockModes(KeyProperties.BLOCK_MODE_GCM)
    .setEncryptionPaddings(KeyProperties.ENCRYPTION_PADDING_NONE)
keyGenerator.init(builder.build())
val key = keyGenerator.generateKey()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。