java keystore 和密码更改

标签 java keytool

我更改了 keystore 的密码:

keytool -list -storetype JCEKS -keystore store.jceks -storepasswd -new secret

这里我有 3 个条目

        passwd = new char[] { 's', 'e', 'c', 'r', 'e', 't' };
        fis = new FileInputStream("myKeys.jceks");
        ks.load(fis, passwd);
KeyStore.SecretKeyEntry skEntry = (KeyStore.SecretKeyEntry) ks.getEntry(alias, new KeyStore.PasswordProtection(
        passwd));

这里我遇到了异常:

java.security.UnrecoverableKeyException: Given final block not properly padded

你能帮我看看出了什么问题吗?

最佳答案

您可能更改了 key 存储区的密码,但没有更改 key 条目的密码? 两者都可以单独更改。

passwdStore = new char[] { 's', 'e', 'c', 'r', 'e', 't' };
passwdEntry = new char[] { 'p', 'a', 's', 's', 'w', '2' };
fis = new FileInputStream("myKeys.jceks");
ks.load(fis, passwdStore);
KeyStore.SecretKeyEntry skEntry = (KeyStore.SecretKeyEntry) ks.getEntry(alias, new KeyStore.PasswordProtection(passwdEntry));

关于java keystore 和密码更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9665801/

相关文章:

java - 是否有现成的可同时进行 cucumber 测试的基础设施?

java - 类 TextBook 中的构造函数 TextBook 无法应用于给定类型

java - 使用Tabactivity Result代码获取0,返回Intent数据为null

java - 使用 JdbcDirectory 在数据库中创建 Lucene 索引

keytool 错误 : java. lang.Exception:只允许一个命令:指定了 -exportcert 和 -list

java - Keytool 认为 cacerts 不存在

android - 使用有效期至 2033 年的 pfx 签署 Android apk?

java - 如何使用keytool生成公钥证书和.jks文件?

java - Maven:访问自签名存储库时出现 SunCertPathException

java - 服务 tomcat9 在 Ubuntu 18.04 中无法运行