JAVA实现https单向认证
Posted gccbuaa
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA实现https单向认证相关的知识,希望对你有一定的参考价值。
//关于http 须要两个jar包 httpclient-4.0.jar httpcore-4.0.1.jar private static final HttpClient httpClient = new DefaultHttpClient(); try { //获得密匙库 KeyStore trustStore = KeyStore.getInstance("jks"); String keyStoreFile = "xxxxx.keystore"; String keyPwd = "xxxxxxx"; FileInputStream instream = new FileInputStream(new File(keyStoreFile)); //密匙库的password trustStore.load(instream, keyPwd.toCharArray()); //注冊密匙库 SSLSocketFactory socketFactory = new SSLSocketFactory(trustStore); //不校验域名 socketFactory.setHostnameVerifier(SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER); Scheme sch = new Scheme("https", socketFactory, 443); httpClient.getConnectionManager().getSchemeRegistry().register(sch); } catch (Exception e) { e.printStackTrace(); } //以下这段是调用代码。能够有非常多种写法。不局限于用HttpPost HttpPost httpPost = new HttpPost( url ); StringEntity entity = new StringEntity(params); entity.setContentEncoding("UTF-8"); httpPost.setEntity( entity ); //发送请求 HttpResponse response = httpClient.execute( httpPost ); String jsonStr = EntityUtils.toString( response.getEntity() );
以上是关于JAVA实现https单向认证的主要内容,如果未能解决你的问题,请参考以下文章