KeyStore clientStore = KeyStore.getInstance("PKCS12");
clientStore.load(new FileInputStream("D://dev_env//jdk//jdk1.6.0_27//jre//szmsa.p12"), "12345678".toCharArray());
KeyManagerFactory kmf = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm());
kmf.init(clientStore, "12345678".toCharArray());
KeyManager[] kms = kmf.getKeyManagers();
KeyStore trustStore = KeyStore.getInstance("JKS");
trustStore.load(new FileInputStream("D://dev_env//jdk//jdk1.6.0_27//jre//cacerts"), "changeit".toCharArray());
TrustManagerFactory tmf = TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm());
tmf.init(trustStore);
TrustManager[] tms = tmf.getTrustManagers();
SSLContext sslContext = null;
sslContext = SSLContext.getInstance("TLS");
sslContext.init(kms, tms, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sslContext.getSocketFactory());
URL url = new URL(TEST_URL);
HttpsURLConnection con = (HttpsURLConnection) url.openConnection();
con.connect();
InputStream inputStream = con.getInputStream();
System.out.println(inputStream2String(inputStream));
inputStream.close();
con.disconnect();
把Test_RUL改成IP
需要修改地方:
// HttpsURLConnection con = (HttpsURLConnection) url.openConnection();
HttpsURLConnection con = (HttpsURLConnection)url.openConnection();
con.setHostnameVerifier(new HostnameVerifier() {
@Override
public boolean verify(String hostname, SSLSession session) {
return true;
}
});