gpt4 book ai didi

ssl - keytool -importkeystore 似乎不起作用

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:14 25 4
gpt4 key购买 nike

在 soapUI 5.1.3 中,我在首选项 > ssl 设置中将 keystore 设置为 C:\ccc_acp.keystore,然后我可以连接到我的目标 https 服务器。

然后我在 C:\Program Files\Java\jdk1.6.0_38\jre\lib\security 中运行以下命令>

keytool -importkeystore -srckeystore C:\ccc_acp.keystore -destkeystore .\cacerts

没有任何错误并且keytool返回

Import command completed: 2 entries successfully imported, 0 entries failed or cancelled

然后在 soapUI 5.1.3 中,我将 keystore 设置为 C:\Program Files\Java\jdk1.6.0_38\jre\lib\security\cacerts,但是当我连接到同一个 https 服务器时,它返回 SSLHandshakeException:收到致命警报:handshake_failure。

为什么会这样?

事实上我对这个词感到有些迷茫,当说证书时,它是指公钥吗?或私钥?还是两者兼而有之?

我可以在 cacerts 中导入私钥吗?

运行keytoool命令时

keytool -list -v -keystore .\cacerts

我看到一个条目

Entry type: PrivateKeyEntry

这表明它是私钥?

和一个条目

Entry type: trustedCertEntry

这表明它是公钥?TrustedCert 仅表示公钥?

抱歉,我是 SSL 的新手。

最佳答案

In soapUI 5.1.3, I set the keystore to C:\ccc_acp.keystore in preferences > ssl settings, then I can connect to my target https server.

请稍等。这是一个 KeyStore,即包含私钥,还是只是一个信任库,即只包含受信任的证书?或者换个方式问,服务器是否使用自签名证书?

Then I run the following command in C:\Program Files\Java\jdk1.6.0_38\jre\lib\security>

keytool -importkeystore -srckeystore C:\ccc_acp.keystore -destkeystore .\cacerts

no any error and keytool return

Import command completed: 2 entries successfully imported, 0 entries failed or cancelled

奇怪的事情,除非它是信任库而不是 keystore ,并且服务器使用的是自签名证书。您必须告诉我们是哪一个。

then in soapUI 5.1.3, I set the keystore to C:\Program Files\Java\jdk1.6.0_38\jre\lib\security\cacerts, but when I connect to the same https server, it return SSLHandshakeException:Received fatal alert:handshake_failure.

您必须提供比这更多的信息。整个堆栈跟踪,首先,最好是通过设置 -Djavax.net.debug=SSL,handshake

产生的输出

why will this happen?

没有上面提到的额外信息就不可能说。

And in fact I feel some lost on the term, when said cert., is it mean public key? or private key? or both?

都没有。证书是公钥的标识包装器,可以是自签名的或由其他人签名的。

Could I import a private key in cacerts?

你不想。 cacerts 文件是一个 trustsfore,而不是 KeyStore。见上文。

When run the keytoool command

keytool -list -v -keystore .\cacerts

I see an entry with

Entry type: PrivateKeyEntry

this indicate it is a private key?

当然可以。它还表明您是从 KeyStore 而不是信任库开始的,如上所述。

所以你到目前为止所做的一切都是完全无效的。

你需要把你开始的原始文件命名为KeyStore,truststore保持默认,也就是JRE自带的cacerts文件,没有被你篡改,全部重试,没有任何用处关键工具。

and an entry with

Entry type: trustedCertEntry

this indicate it is a public key?

不,它表示它是受信任的证书。

TrustedCert means public key only?

不,见上文。

sorry that I am new to SSL.

很新。我不知道你在读什么,或者你从哪里得到这些废话,但这完全是错误的。我建议您忘记这一切,然后通过通读 JSSE 引用指南重新开始。

关于ssl - keytool -importkeystore 似乎不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30285800/

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