过期的证书可以生成sun.security.validator.ValidatorException错误吗?

时间:2019-07-17 12:45:58

标签: java ssl securityexception self-signed-certificate

我目前正在休假中代表一位同事。他负责的其中一个应用程序几天来一直报告以下错误。

  

错误:IOException sun.security.validator.ValidatorException:PKIX   路径构建失败:   sun.security.provider.certpath.SunCertPathBuilderException:无法执行   找到到所请求目标的有效认证路径

我做了一些研究,发现它可能与在信任存储区中找不到的自签名证书有关。

但是由于我之前没有进行任何更改并且一切正常,所以证书可以过期吗?过期的证书会产生这样的错误消息吗?如果是这样,我可以通过某种方式从密钥存储文件中确定失效日期吗?

1 个答案:

答案 0 :(得分:1)

它看起来好像不是过期的证书。根据{{​​3}},过期证书应产生CertPathValidatorException: timestamp check failed消息,例如

qtp1735121130-17, handling exception: javax.net.ssl.SSLHandshakeException:
   sun.security.validator.ValidatorException: PKIX path validation failed:
   java.security.cert.CertPathValidatorException: timestamp check failed

您可以看一下this question文章,看看您还能做什么,归结为使用-Djava.net.debug选项并分析日志。

首先,将信任库中的自签名证书与环境中实际使用的证书进行比较。自签名证书很容易颁发,也许有人发布了新版本。