1. 인증서 변환
java에 사용되는 인증서는 일반적인 cafile이 아닌 keystore가 사용된다.
- keystore.jks - 서버(SimpleHttpsServer) 에서 사용하는 인증키 저장소
- truststore.jks - 클라이언트(HttpsClientWithCustomCert) 에서 서버 인증시 사용하는 인증서 저장소
서버에 있는 인증서를 truststore.jks로 변형하여 사용하여야한다.
변환법
1) keystore
- 먼저 certfile 과 keyfile을 이용하여 pkcs12 의 인증서를 생성한다.
openssl pkcs12 -export -in [CERTFILE.crt] -inkey [KEYFILE.key] -out [OUTFILE.p12] -name "some alias"
- 이후 keytool을 이용하여 pkcs12 파일을 keystore파일로 변환한다.
keytool -importkeystore -deststorepass changeit -destkeypass changeit -destkeystore [OUTFILE.jks]
-srckeystore [INFILE.p12] -srcstoretype PKCS12 -srcstorepass [PASSWORD] -alias "some alias"
2) truststore
- 먼저 cafile을 der 파일로 변환한다.
openssl x509 -outform der -in [CAFILE] -out [OUTPUTFILE]
- 이후 keystore을 이용하여 der파일을 truststore로 만든다.
keytool -import -alias "some alias" -keystore [OUTFILE.jks] -file [INFILE.der]
2.자바 적용하기
1) ConfigInfo.java
public static final Properties getSSLSettings() {
final Properties properties = new Properties();
properties.setProperty("com.ibm.ssl.trustStore",
"C:\\Program Files (x86)\\Java\\jre1.8.0_25\\truststore.jks");
properties.setProperty("com.ibm.ssl.trustStoreType",
"JKS");
properties.setProperty("com.ibm.ssl.trustStorePassword",
"[PASSWORD]");
return properties;
}
2)Pubsync.java
connOpts.setSSLProperties(ConfigInfo.getSSLSettings());
불펌이 많아 댓글에 메일주소 알려주시면 보내드리도록 하겠습니다.
'IT > 개발' 카테고리의 다른 글
ELK 트러블슈팅 note (0) | 2020.01.14 |
---|---|
클라우드에 관하여 정리 (0) | 2016.01.20 |
[C]파일 암/복호화 (0) | 2015.11.23 |
[C]char 형 포인터 - 배열 변경 (0) | 2015.11.23 |
[C]문자열 원하는곳에서 2번 자르기 (0) | 2015.11.23 |
[C]1초마다 시간 다르게 셋팅 (0) | 2015.11.23 |
[C]파일 시저 암복호화 (1) | 2015.02.03 |
[android]루팅없이 화면 폰 동영상 찍는법(4.4이상) (0) | 2015.01.20 |
정규식 (나름)정리 (0) | 2015.01.05 |