【问题标题】:How to change the key password from an PKCS12 keystore如何从 PKCS12 密钥库更改密钥密码
【发布时间】:2019-10-21 05:26:42
【问题描述】:

我正在尝试更改存储在 p12 密钥库中的证书的密码。我设法通过使用 ikeycmd 更改了密钥库密码,但对于 keypass 似乎没有任何作用。这是我尝试的命令:

keytool -keypasswd -storetype PKCS12 -keystore $KEYSTORE_FILE -alias $KEY_ALIAS -keypass $KEY_PASSWORD -new $new_pass -storepass $store_pass

我收到以下输出: keytool 错误:java.lang.UnsupportedOperationException:如果 -storetype 为 PKCS12,则不支持 -keypasswd 命令

我尝试在没有 -storetype PKCS12 选项的情况下运行该命令,但得到: keytool 错误(可能未翻译):java.io.IOException: Invalid keystore format

有人可以帮忙吗?谢谢。

【问题讨论】:

    标签: certificate keytool pkcs#12


    【解决方案1】:

    根据互联网标准,这些是您在创建/处理PCKS12 密钥库时应遵循的事项:

    1. PKCS12 应仅包含 1 个密钥对条目,即与证书链关联的私钥。
    2. 唯一入口的key密码与keystore密码相同。

    Java 也遵循这些规则。这就是为什么当您提供存储类型为 PKCS12 时尝试更改密钥密码时出错的原因。

    因此,理想情况下,您应该只更改 PKCS12 密钥库的密钥库密码。您不应该更改密钥密码。

    但是,如果 pkcs12 密钥库不遵循上述规则,并且您正在尝试纠正它,但使用 java keytool 命令没有成功,我建议尝试使用 keystore-explorer(GUI与任何密钥库交互的工具)。

    可以选择更改条目的密钥密码。

    【讨论】:

      猜你喜欢
      • 2015-09-22
      • 1970-01-01
      • 2011-02-22
      • 2015-04-05
      • 2023-03-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-03
      相关资源
      最近更新 更多