Convert Certificate Format SSL 인증서 변환 가이드

PFX 조합 및 추출 with OpenSSL

.pfx 에서 .crt 추출하기 (.pfx 암호 필요)
openssl pkcs12 -in cert.pfx -clcerts -nokeys -out domain.crt
.pfx 에서 .key 추출하기 (.pfx 암호 필요)
openssl pkcs12 -in cert.pfx -nocerts -nodes -out private.key
.crt 및 .key 를 조합하여 .pfx 만들기
openssl pkcs12 -export -in domain.crt -inkey private.key -out cert.pfx

PEM/PFX JavakeyStore(.jks) 변환

PEM 을 PKCS#12 으로 변환

cat domain.crt chain1.crt chain2.crt root.crt > cert.pem - 1개 cert.pem 파일로 통합

openssl pkcs12 -export -name example.com -in cert.pem -inkey private.key -out cert.pfx - cert.pfx 파일로 저장
.pfx 에서 .jks 변환
keytool -importkeystore -srckeystore cert.pfx -srcstoretype pkcs12 -destkeystore cert.jks -deststoretype jks

* pfx 에 개인키, 서버인증서, 체인인증서, 루트인증서 가 포함되어 있는 경우, KeyStore 에 모두 Import 됨


대상 키 저장소 비밀번호 입력: ******
새 비밀번호 다시 입력: ******
소스 키 저장소 비밀번호 입력: ****** (pfx암호)
www.securesign.kr 별칭에 대한 항목이 성공적으로 임포트되었습니다.
임포트 명령 완료: 성공적으로 임포트된 항목은 1개, 실패하거나 취소된 항목은 0개입니다.

JavakeyStore(.jks) 포함된 인증서 확인
keytool -list -v -keystore cert.jks

개인키, 서버인증서, 체인인증서, 루트인증서 등 포함된 인증서 목록이 출력 됨


키 저장소 비밀번호 입력: *****
키 저장소 유형: JKS
키 저장소 제공자: SUN
..
키 저장소에 1개의 항목이 포함되어 있습니다.
..
별칭 이름: www.securesign.kr
생성 날짜: 2015. 5. 26
항목 유형: PrivateKeyEntry
....
서버인증서
체인인증서
루트인증서

JavakeyStore(.jks) PFX 변환

JavakeyStore 를 PKCS#12 으로 변환
keytool -importkeystore -srckeystore cert.jks -srcstoretype JKS -srcstorepass "password" -destkeystore cert.pfx -deststoretype PKCS12 -deststorepass "password"

* cert.jks 파일을 cert.pfx 파일로 변환 저장 (원본 jks 파일 패스워드 필요, 대상 pfx 패스워드 지정)

PFX IBM HTTP Server Key Database File (.kdb) 변환

.pfx / .p12 를 IBM HTTP Server CMS .kdb 변환 - IBM 공식 매뉴얼