From 27aa8fcca4eddb015cdea82eb6d395c382abef49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=8E=8B=E5=AF=85?= <97163845@qq.com> Date: Tue, 8 Apr 2025 15:21:11 +0800 Subject: [PATCH] =?UTF-8?q?3800=E8=BD=AC1800=20ssl=E6=BC=8F=E5=8C=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/inspect/ivs/util/SslUtils.java | 62 +++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100644 inspect-ivs/src/main/java/com/inspect/ivs/util/SslUtils.java diff --git a/inspect-ivs/src/main/java/com/inspect/ivs/util/SslUtils.java b/inspect-ivs/src/main/java/com/inspect/ivs/util/SslUtils.java new file mode 100644 index 0000000..a3c8033 --- /dev/null +++ b/inspect-ivs/src/main/java/com/inspect/ivs/util/SslUtils.java @@ -0,0 +1,62 @@ +package com.inspect.ivs.util; + +import javax.net.ssl.*; +import java.security.cert.CertificateException; +import java.security.cert.X509Certificate; + +/** + * @description: + * @author: wangankang + * @create: 2022-12-01 + **/ +public class SslUtils { + private static void trustAllHttpsCertificates() throws Exception { + TrustManager[] trustAllCerts = new TrustManager[1]; + TrustManager tm = new miTM(); + trustAllCerts[0] = tm; + SSLContext sc = SSLContext.getInstance("SSL"); + sc.init(null, trustAllCerts, null); + HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); + } + + static class miTM implements TrustManager, X509TrustManager { + public X509Certificate[] getAcceptedIssuers() { + return null; + } + + public boolean isServerTrusted(X509Certificate[] certs) { + return true; + } + + public boolean isClientTrusted(X509Certificate[] certs) { + return true; + } + + public void checkServerTrusted(X509Certificate[] certs, String authType) + throws CertificateException { + return; + } + + public void checkClientTrusted(X509Certificate[] certs, String authType) + throws CertificateException { + return; + } + } + + /** + * 忽略HTTPS请求的SSL证书,必须在openConnection之前调用 + * + * @throws Exception + */ + public static void ignoreSsl() throws Exception { + HostnameVerifier hv = new HostnameVerifier() { + public boolean verify(String urlHostName, SSLSession session) { + return true; + } + }; + trustAllHttpsCertificates(); + HttpsURLConnection.setDefaultHostnameVerifier(hv); + } + +} +