gpt4 book ai didi

Java keytool 不喜欢 OpenSSL CSR

转载 作者:行者123 更新时间:2023-12-02 02:24:14 31 4
gpt4 key购买 nike

我正在尝试使用 OpenSSL 创建自签名 SSL 证书,然后将该证书添加到 JKS 文件(Java keystore ),以便我可以让基于 Jetty 的 Web 服务将该自签名证书提供给 HTTP 客户端通过 HTTPS。

我创建了 OpenSSL 自签名证书:

openssl req -x509 -newkey rsa:4096 -keyout mykey-dev.pem -out mycsr-dev.pem -days 3650

然后我创建了 JKS:

keytool -alias myorg -keyalg RSA -keystore myapp.jks -keysize 2048

相信我现在需要将 CSR (mycsr-dev.pem) 导入 JKS:

keytool -importcert -trustcacerts -file mycsr-dev.pem -alias myorg -keystore myapp.jks

这会产生以下错误:

keytool error: java.lang.Exception: Public keys in reply and keystore don't match

知道问题出在哪里吗?

最佳答案

出现此问题的原因是 keytool genkey -alias myorg ... 创建了一个 key 对,而 openssl req 命令还创建了一个不相关的 key 对。因此,尝试将 openssl req 命令中的证书导入 myorg 别名下的 JKS keystore 会导致两个不同的公钥之间发生冲突。如果您打算将受信任的证书导入 keystore ,则只需在所需的别名下进行导入,无需提前使用 keytool genkey ... 创建别名。

关于Java keytool 不喜欢 OpenSSL CSR,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48030418/

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