如何在Android应用程序中验证SSL证书的有效性

时间:2019-06-24 13:51:45

标签: android ssl-certificate

在致电服务之前,我需要验证SSL证书的有效性。如果证书无效,则需要显示警报。请给我一些想法。

1 个答案:

答案 0 :(得分:3)

可以通过在X509HostnameVerifier上设置自定义SSLSocketFactory来自定义主机名验证。某些实现已在android中提供:AllowAllHostnameVerifierBrowserCompatHostnameVerifierStrictHostnameVerifier / * ... * /

public class MyHostnameVerifier extends AbstractVerifier {
  boolean verify(String hostname, SSLSession session) {
    X509Certificate[] chain = session.getPeerCertificateChain();
    /* made some checks... */
    return checked;
  }
}
sslSocketFactory.setHostnameVerifier(new MyHostnameVerifier());