기타
pem <-> jks 인증서 형식 변환하기
junseok
2023. 12. 5. 10:16
사용프로그램
- openssl
- keytool
기본 인증서 구성 파일
- 메인 인증서
- 개인키
- 체인 인증서
- 루트 인증서
pem -> jsk
1. pem 형식으로 파일을 합쳐줍니다.
a. 파일의 순서는 다음과 같습니다.
개인키 -> 메인 인증서 -> 체인 인증서 -> 루트인증서
$ cat newkey.pem cert.pem DigiCertCA.pem DigiCertRoot.pem > test.com.pem
2. openssl을 이용하여 pem -> pkcs12 포맷으로 변환해 줍니다.
a. 변환 시 password를 임의로 지정해 줍니다.
$ openssl pkcs12 -export -out test.com.p12 -in test.com.pem
3. keytool을 이용하여 pkcs12 -> jks 포맷으로 변환해줍니다.
a. 변환 시 password는 openssl에서 설정한 비밀번호로 설정해 줍니다.
keytool -importkeystore -srckeystore test.com.p12 -srcstoretype pkcs12 -destkeystore test.com.jks -deststoretype jks
4. 이제 jks 형식으로 변환 된 인증서를 확인해 봅니다.
$ keytool -list -keystore test.com.jks
jks -> pem
이제 반대로 jks 형식의 인증서를 pem 형식으로 바꿔 보겠습니다.
1. jks 형식의 인증서를 pkcs12 형식으로 변환시켜 줍니다.
keytool -importkeystore -srckeystore test.com.jks -destkeystore test.com.p12 -deststoretype PKCS12
2. pkcs12 형식에서 pem 형식으로 변환해 줍니다.
openssl pkcs12 -in test.com.p12 -out test.com.pem
3. pem 형식에서 private key를 추출해 줍니다.
openssl pkcs12 -in test.com.p12 -nodes -nocerts -out key.pem