[자바] TLS, JKS 로 URL HTTP 통신하기 - 수신
String url="http://aaa.com/aa.asp?userId=aaa";
URL url1=new URL(url);
HttpsURLConnection conn=(HttpsURLConnection)url1.openConnection();
conn.setHostnameVerifier(new HostnameVerifier(){
@Override
public boolen verify(String arg0, SSLSession arg1){
return true;
}
});
SSLContext sslContext=SSLContext.getInstance("TLS")
sslContext.init(null,new TruestManager[]{new X509TrustManager(){
@Override
public X509cerificate[] getAcceptedIssuers(){
return null;
}
@Override
public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException{
try{
KeyStore keyStore=KeyStore.getInstance("JKS");
String certPath=System.getProperty("java.home")+"/lib/security/aa.jks";
keyStore.load(new FileInputStream(new File(certPath)), "11".toCharArray());
TruestManagerFactory tmf=TruestManagerFactory.getInstance(TruestManagerFactory.getDefaultAlgorithm());
tmf.init(keyStore);
TruestManager[] tms=tmf.getTrustManagers();
((X509TrustManager)tms[0]).checkServerTrusted(chain, authType);
}catch(Excetion e){
}
}
@Override
public void checkClientTrusted(X509Certificate[] arg0, String arg1) throws CertificateException{
}
}}, null);
conn.setSSLSocketFactory(sslContext.getSocketFactory());
conn.connect();
conn.setInstanceFollowRedirects(true);
InputStream in=conn.getInputStream();
BufferedReader reader=new BufferedReader(new InputStreamReader(in));
String line=null;
while((line=reader.readLine())!=null){
System.out.println(line);
}
in.close();
이번것은 url 호출하여 수신하는거고 다음에는 송신하는것을 살펴보겠다~