1:通过SSLSocketFactory和HttpsURLConnection调用
参见azazar的bitcoin.jsonrpcclient
环境:JDK1.7
依赖:openssl 生成的server.cert和server.pem
导入server.cert到java keystore
1A:JKS
keytool -import -alias aliasName -v -file C:\..\server.cert -keystore C:\..\jks.keystore -storepass pwd
keytool -list -v -keystore C:\..\jks.keystore -storepass pwd
1B:
HostnameVerifier:不检查证书的CN和请求的hostname是否一致
public
static
HostnameVerifier createHostnameVerifier() {
return
new
HostnameVerifier() {
@Override
public
boolean
verify(String paramString, SSLSession paramSSLSession) {
return
true
;
}
};
}
1C:
SSLSocketFactory
public
static
SSLSocketFactory createSslSocketFactory(String JKSPath,String JKSPwd)
throws
Exception {
KeyStore keyStore = KeyStore. getInstance(
"JKS"
);
//
TODO
need to be changed into real path in linux