首页 文章

私钥和密钥库中签名证书之间的链接

提问于
浏览
1

我在做 jetty SSL configuration .

我使用keytool创建了CSR,它为密钥库添加了一个私钥,

收到基于CSR的证书,将证书转换为DER格式,并将证书作为trustcacerts导入密钥库

签名证书在证书路径中具有根/中间证书

在将其转换为DER格式后,我还在受信任的根证书下的IE中安装了根证书和中间证书 .

使用https时,浏览器显示证书错误并将证书视为自签名证书 .

Question

这是否意味着由于证书在证书路径中没有Root / intermediate证书,因此不考虑已安装的签名证书?

虽然从CA收到的签名证书具有指向证书路径中的根/中间证书的链接 .

如果在此过程中出现任何问题,请说明 . 为此添加keytool命令 .

创建密钥库

keytool -keystore serverdns.keystore -alias server -genkey -keyalg RSA -keysize 2048

创建CSR

keytool -certreq -alias server -keystore serverdns.keystore -file server.csr

安装签名证书

keytool -import -trustcacerts -alias cert -keystore serverdns.keystore -file signedcert.der.cer

我在安装签名证书时尝试使用相同的别名“服务器”,但是由于错误而失败了

keytool错误:java.lang.Exception:无法从回复 Build 链

2 回答

  • 1

    您需要使用与私钥和CSR相同的别名导入签名证书 . 否则它们之间没有连接,新证书只是另一个证书 . 您不应该在此步骤中使用 -trustcacerts ,如果系统询问您是否信任该证书,则说明别名错误 .

  • -1

    keytool错误:java.lang.Exception:无法从回复 Build 链

    如果您的CA位于信任库中,请查看选项-trustcacerts . 此外,您必须先将CA的中间证书添加到密钥库,然后再将其添加到signedcert.der.cer

相关问题