d08f5007095524850b38928a6bdaae3f2fe3c931.svn-base 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. package com.chinacreator.process.util;
  2. import java.security.cert.CertificateException;
  3. import java.security.cert.X509Certificate;
  4. import javax.net.ssl.HostnameVerifier;
  5. import javax.net.ssl.HttpsURLConnection;
  6. import javax.net.ssl.SSLContext;
  7. import javax.net.ssl.SSLSession;
  8. import javax.net.ssl.TrustManager;
  9. import javax.net.ssl.X509TrustManager;
  10. public class SslUtils {
  11. private static void trustAllHttpsCertificates()
  12. throws Exception
  13. {
  14. TrustManager[] trustAllCerts = new TrustManager[1];
  15. TrustManager tm = new miTM();
  16. trustAllCerts[0] = tm;
  17. SSLContext sc = SSLContext.getInstance("SSL");
  18. sc.init(null, trustAllCerts, null);
  19. HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());
  20. }
  21. public static void ignoreSsl()
  22. throws Exception
  23. {
  24. HostnameVerifier hv = new HostnameVerifier() {
  25. public boolean verify(String urlHostName, SSLSession session) {
  26. return true;
  27. }
  28. };
  29. trustAllHttpsCertificates();
  30. HttpsURLConnection.setDefaultHostnameVerifier(hv);
  31. }
  32. static class miTM
  33. implements TrustManager, X509TrustManager
  34. {
  35. public X509Certificate[] getAcceptedIssuers()
  36. {
  37. return null;
  38. }
  39. public boolean isServerTrusted(X509Certificate[] certs) {
  40. return true;
  41. }
  42. public boolean isClientTrusted(X509Certificate[] certs) {
  43. return true;
  44. }
  45. public void checkServerTrusted(X509Certificate[] certs, String authType)
  46. throws CertificateException
  47. {
  48. }
  49. public void checkClientTrusted(X509Certificate[] certs, String authType)
  50. throws CertificateException
  51. {
  52. }
  53. }
  54. }