Java trustmanager behavior on expired certificates

前端 未结 3 628
离开以前
离开以前 2020-12-29 08:00

Does java\'s TrustManager implementation ignore if a certificate has expired?
I tried the following:
- Using keytool and parameter -startdate \"1

3条回答
  •  一生所求
    2020-12-29 08:35

    I've just had a similar issue myself while overriding checkServerTrusted.

    Turns out that if you need to check expiration you can call X509Certificate.checkValidity() and it will throw either a CertificateExpiredException or a CertificateNotYetValidException. Both of these extend CertificateException so they can be happily thrown by checkServerTrusted.

    To solve your problem you could implement a new X509TrustManager which creates your original instance in its constructor, implements all methods as calls to the original instance, and adds a call to checkValidity for each certificate in certs[] inside checkServerTrusted.

提交回复
热议问题