Created
December 22, 2011 12:37
-
-
Save henrik242/1510165 to your computer and use it in GitHub Desktop.
Disable validation of SSL certificates in Java
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
public static void disableCertificateValidation() { | |
// Create a trust manager that does not validate certificate chains | |
TrustManager[] trustAllCerts = new TrustManager[] { | |
new X509TrustManager() { | |
public X509Certificate[] getAcceptedIssuers() { | |
return new X509Certificate[0]; | |
} | |
public void checkClientTrusted(X509Certificate[] certs, String authType) {} | |
public void checkServerTrusted(X509Certificate[] certs, String authType) {} | |
}}; | |
// Ignore differences between given hostname and certificate hostname | |
HostnameVerifier hv = new HostnameVerifier() { | |
public boolean verify(String hostname, SSLSession session) { return true; } | |
}; | |
// Install the all-trusting trust manager | |
try { | |
SSLContext sc = SSLContext.getInstance("SSL"); | |
sc.init(null, trustAllCerts, new SecureRandom()); | |
HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory()); | |
HttpsURLConnection.setDefaultHostnameVerifier(hv); | |
} catch (Exception e) {} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment