1
zhujie
5 天以前 ec15861e14c66c38b1a8f5fffc6975d7da6c315c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.mzl.flower.pay;
 
import java.security.KeyManagementException;
import java.security.NoSuchAlgorithmException;
import java.security.cert.CertificateException;
import java.security.cert.X509Certificate;
 
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSocketFactory;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
 
/**
 * SSL管理助手类
 * @author Administrator
 *
 */
public class SSLUtil implements X509TrustManager {
    private SSLSocketFactory sslFactory = null;
    
    private SSLUtil(){
    }
    
    public void checkClientTrusted(X509Certificate[] arg0, String arg1)
            throws CertificateException {
    }
 
    public void checkServerTrusted(X509Certificate[] arg0, String arg1)
            throws CertificateException {
    }
 
    public X509Certificate[] getAcceptedIssuers() {
        return null;
    }
    
    /** 获取SSL Socket工厂 */
    public SSLSocketFactory getSSLSocketFactory(){
        return sslFactory;
    }
    
    private static SSLUtil _instance = null;
    
    /** 获取SSL管理助手类实例 */
    synchronized public static SSLUtil getInstance() throws NoSuchAlgorithmException, KeyManagementException {
        if (_instance == null){
            _instance = new SSLUtil();
            SSLContext sc = SSLContext.getInstance("SSLv3");
            sc.init(null, new TrustManager[]{new SSLUtil()}, null);
            _instance.sslFactory = sc.getSocketFactory();
        }
        return _instance;
    }
 
}