首页 文章

keytool错误:java.lang.Exception:回复中的公钥和密钥库不匹配

提问于
浏览
1

将证书文件导入密钥库时出现此问题:

keytool error:java.lang.Exception:回复和密钥库中的公钥不匹配

我做这个操作:

1)在服务器上创建我的密钥库:

keytool -genkey -keystore C:\keystore\keystore -alias jboss -keyalg RSA

2)我有domain.pfx并将其转换为此命令:

  • openssl pkcs12 -in domain.pfx -clcerts -nokeys -out domain.cer

  • openssl pkcs12 -in domain.pfx -nocerts -nodes -out domain_encrypted.key

  • openssl rsa -in domain_encrypted.key -out domain.key

现在我有3个新文件:

  • domain.cer

  • domain_encrypted.key

  • domain.key

3)最后,将domain.cer导入jboss别名中的C:\ keystore \ keystore:

keytool -import -alias jboss -keystore C:\keystore\keystore -file C:\cert\domain.cer

但我有这个错误:

keytool error:java.lang.Exception:回复和密钥库中的公钥不匹配

问题是什么?

2 回答

  • -1

    密钥库包含两种条目类型:

    • 私钥输入(使用在密钥库中导入的证书绑定存储在密钥库中的私钥 . )此处,别名必须与创建密钥库文件时使用的别名保持一致 .

    • 可信条目: - 此条目包含所有可信证书条目,包括根证书和中间证书 .

    如果密钥库绑定到tomcat的 server.xml 文件中的域,则它必须包含私钥条目 .

    现在,根据您执行的步骤,您首先创建了一个密钥库(在其中生成了私钥),然后您尝试在密钥库中导入证书 . 但是在命令中你没有使用你使用 openssl 转换的私钥;您使用了生成密钥库时刚刚生成的私钥 .

    当你拥有 domain.pfx 时,你可以使用下面的 keytool 命令直接转换它:

    keytool -importkeystore -srckeystore domain.pfx -srcstoretype pkcs12 -destkeystore name_of_the_keystore_file.jks -deststoretype jks
    

    注意:确保密钥库密码和密钥密码保持不变 .

  • 0

    我今天遇到了同样的问题 . 我通过在导入证书时使用不同的别名来解决它 . 因此,在导入证书时生成keystone和alias2时我有alias1 .

相关问题