InstallCert.java 接收服务器证书时出现 PKIX 错误
PKIX error while receiving server certificate by InstallCert.java
我正在尝试使用 installCert.java
获取服务器 ssl 证书
在link下方
https://github.com/escline/InstallCert/blob/master/InstallCert.java
我可以为某些服务器获取服务器证书,但在尝试获取某些服务器证书时出现以下错误
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:PKIX 路径构建失败:
sun.security.provider.certpath.SunCertPathBuilderException:
我搜索了一下,但每个人都说你应该将你的证书文件输入到 java cacerts 但我使用这个 java class 来获取证书文件。
我也在 socket.startHandshake();
处收到错误
System.out.println("Opening connection to " + host + ":" + port + "...");
SSLSocket socket = (SSLSocket) factory.createSocket(host, port);
socket.setSoTimeout(10000);
try {
System.out.println("Starting SSL handshake...");
socket.startHandshake();
socket.close();
System.out.println();
System.out.println("No errors, certificate is already trusted");
} catch (SSLException e) {
该错误表示您的 JVM 不信任服务器证书
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException
您需要在 JVM 的信任库中手动 包含 CA 根证书,默认情况下是 cacerts 文件。 CA 根是服务器证书或中间实体(如果存在)的颁发者
我正在尝试使用 installCert.java
获取服务器 ssl 证书在link下方
https://github.com/escline/InstallCert/blob/master/InstallCert.java
我可以为某些服务器获取服务器证书,但在尝试获取某些服务器证书时出现以下错误
javax.net.ssl.SSLHandshakeException:
sun.security.validator.ValidatorException:PKIX 路径构建失败: sun.security.provider.certpath.SunCertPathBuilderException:
我搜索了一下,但每个人都说你应该将你的证书文件输入到 java cacerts 但我使用这个 java class 来获取证书文件。
我也在 socket.startHandshake();
System.out.println("Opening connection to " + host + ":" + port + "...");
SSLSocket socket = (SSLSocket) factory.createSocket(host, port);
socket.setSoTimeout(10000);
try {
System.out.println("Starting SSL handshake...");
socket.startHandshake();
socket.close();
System.out.println();
System.out.println("No errors, certificate is already trusted");
} catch (SSLException e) {
该错误表示您的 JVM 不信任服务器证书
sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException
您需要在 JVM 的信任库中手动 包含 CA 根证书,默认情况下是 cacerts 文件。 CA 根是服务器证书或中间实体(如果存在)的颁发者