
첫 번째 단계는 Java 전용 포맷인 JKS를 더 널리 사용되는 PKCS12 형식으로 변환하는 것입니다. 이 작업은 keytool 커맨드라인 유틸리티를 사용하여 수행할 수 있습니다. 아래 명령어를 통해 변환할 수 있습니다.
keytool -importkeystore -srckeystore mykeystore.jks -destkeystore mykeystore.p12 -deststoretype PKCS12
명령어 실행 시, mykeystore.jks는 원본 JKS 파일명으로, mykeystore.p12는 생성할 PKCS12 파일명으로 교체하여 사용해야 합니다.
PKCS12 형식으로 변환된 파일에서 개인 키를 추출하기 위해 openssl 유틸리티를 사용합니다. 다음 명령어를 실행하여 개인 키를 key.pem 파일로 추출할 수 있습니다.
openssl pkcs12 -in mykeystore.p12 -nocerts -out key.pem
이 과정에서 PKCS12 파일을 생성할 때 설정한 비밀번호를 입력해야 할 수 있습니다.
이제 증명서를 추출할 차례입니다. openssl을 이용하여 아래 명령어를 실행하면, 증명서를 cert.crt 파일로 저장할 수 있습니다.
openssl pkcs12 -in mykeystore.p12 -clcerts -nokeys -out cert.crt
추출된 개인 키(key.pem)가 비밀번호로 보호되어 있고, 이를 비밀번호 없이 사용해야 하는 경우가 있습니다. 다음 명령어를 통해 비밀번호를 제거할 수 있습니다.
openssl rsa -in key.pem -out key-nopass.pem