Java 实现自带的 X509TrustManger 介面,忽略证书验证过程,忽略之后任何 https 网站皆能正常访问

import java.net.URL;import java.security.cert.CertificateException;import java.security.cert.X509Certificate;import javax.net.ssl.HttpsURLConnection;import javax.net.ssl.SSLContext;import javax.net.ssl.SSLSocketFactory;import javax.net.ssl.TrustManager;import javax.net.ssl.X509TrustManager;/** * @author  * */public class MyX509TrustManager implements X509TrustManager {    @Override    public void checkClientTrusted(X509Certificate[] chain,        String authType)            throws CertificateException {    }    @Override    public void checkServerTrusted(X509Certificate[] chain,        String authType)            throws CertificateException {    }    @Override    public X509Certificate[] getAcceptedIssuers() {        return null;    }    /**     * 测试     *     * @param args     * @throws Exception     */    public static void main(String[] args) throws Exception {        String urlString = "";        URL url = new URL(urlString);        HttpsURLConnection httpsConn =            (HttpsURLConnection) url.openConnection();        TrustManager[] tm = {new MyX509TrustManager()};        // 建立 SSLContext        SSLContext sc = SSLContext.getInstance("TLSv1.2");        // 初始化 SSLContext        sc.init(null, tm, new java.security.SecureRandom());        // 获取 SSLSocketFactory 物件        SSLSocketFactory ssf = sc.getSocketFactory();        // 设定当前使用的 SSLSoctetFactory        httpsConn.setSSLSocketFactory(ssf);    }}

关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章