gpt4 book ai didi

java - "java.security.UnrecoverableKeyException: Rejected by the jceks.key.serialFilter or jdk.serialFilter property"的原因是什么?

转载 作者:塔克拉玛干 更新时间:2023-11-03 05:23:56 28 4
gpt4 key购买 nike

当我调用 java.security.KeyStore 下的函数时:


public final Key getKey(String alias, char[] password)

我收到以下错误:

java.security.UnrecoverableKeyException: Rejected by the jceks.key.serialFilter or jdk.serialFilter property
at com.sun.crypto.provider.KeyProtector.unseal(KeyProtector.java:352)
at com.sun.crypto.provider.JceKeyStore.engineGetKey(JceKeyStore.java:136)
at java.security.KeyStore.getKey(KeyStore.java:1023)

这个错误在任何Java文档中都不存在,只是偶尔出现。此错误的原因是什么以及如何解决?

更新:现在@zeal 透露它与http://www.oracle.com/technetwork/java/javase/8u171-relnotes-4308888.html#JDK-8189997 有关.因此,无需额外配置,仅可使用 Key 实现的几个选项。然而在发行说明中我发现了一个声明:

Customers storing a SecretKey that does not serialize to the above types must modify the filter to make the key extractable.

这似乎是新东西,因为它表明 key 的序列化可以被程序覆盖,这是使其他 key 类型与 JCEKS keystore 兼容的唯一方法吗?

最佳答案

这是由于最新 Java 版本 JDK-8 build 171 中的问题引起的。已经从 jks 切换到 pkcs12,这是 jcrypto 中 java 端(最新的 JDK-8 build 171)的未解决问题:https://github.com/jcryptool/core/issues/120 .

解决方法是将 JRE 8 build 171 build 切换到 JRE 8 build 144/121

关于java - "java.security.UnrecoverableKeyException: Rejected by the jceks.key.serialFilter or jdk.serialFilter property"的原因是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49990904/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com