[security] .pfx를 .cer로 변환

.pfx (개인 정보 교환) 파일을 .cer (보안 인증서) 파일로 변환 할 수 있습니까? 내가 실수하지 않으면 .cer이 어떻게 .pfx에 포함되어 있지 않습니까? 가능한 경우 추출하는 방법이 필요합니다.



답변

내가 생각하는 간단한 방법은 Windows Management Console의 인증서 관리자를 사용하여 가져 와서 내보내는 것입니다.


답변

PFX 파일은 PKCS # 12 개인 정보 교환 구문 표준 번들입니다. 여기에는 X.509 인증서와 함께 제공되는 임의의 수의 개인 키와 인증 기관 체인 (인증서 세트)이 포함될 수 있습니다.

클라이언트 인증서를 추출하려는 경우 OpenSSL의 PKCS12 도구를 사용할 수 있습니다 .

openssl pkcs12 -in input.pfx -out mycerts.crt -nokeys -clcerts

위 명령은 인증서를 PEM 형식으로 출력합니다. “.crt”파일 확장자는 macOS와 Window에서 모두 처리됩니다.

DER 인코딩 파일에 일반적으로 사용되는 질문에 “.cer”확장자를 언급했습니다. 이진 인코딩. “.crt”파일을 먼저 시험해보고 승인되지 않으면 PEM에서 DER로 쉽게 변환하십시오.

openssl x509 -inform pem -in mycerts.crt -outform der -out mycerts.cer


답변

PowerShell에서 작업하는 경우 pfx 파일 InputBundle.pfx가 지정된 다음과 같은 것을 사용 하여 DER 인코딩 (이진) 인증서 파일 OutputCert.der 를 생성 할 수 있습니다 .

Get-PfxCertificate -FilePath InputBundle.pfx |
Export-Certificate -FilePath OutputCert.der -Type CERT

명확성을 위해 줄 바꿈이 추가되었지만 물론이 모든 것을 한 줄에 가질 수 있습니다.

ASCII / Base64로 인코딩 된 PEM 형식의 인증서가 필요한 경우 /superuser/351548/windows-integrated-utility-to-convert 와 같이 다른 곳에서 설명한대로 추가 단계를 수행 할 수 있습니다. 데르 투팜

DER로 인코딩 된 형식과 다른 형식으로 내 보내야하는 -Type경우 Export-Certificate 의 매개 변수를 다음과 같이 .NET에서 지원되는 형식을 사용하도록 변경할 수 있습니다 help Export-Certificate -Detailed.

-Type <CertType>
    Specifies the type of output file for the certificate export as follows.
     -- SST: A Microsoft serialized certificate store (.sst) file format which can contain one or more certificates. This is the default value for multiple certificates.
     -- CERT: A .cer file format which contains a single DER-encoded certificate. This is the default value for one certificate.
     -- P7B: A PKCS#7 file format which can contain one or more certificates.


답변

가장 간단한 방법을 추가하고 싶었습니다.

  1. pfx 파일을 마우스 오른쪽 버튼으로 클릭하고 “설치”를 클릭 한 다음 마법사를 따라 상점에 추가하십시오 (개인 저장소에 추가).

  2. 시작 메뉴에서 certmgr.msc를 입력하고 CertManager 프로그램으로 이동하십시오.

  3. pfx 인증서를 찾으십시오 (위의 탭은 다양한 상점 임). 내보내기 단추를 클릭하고 마법사를 따르십시오 (.CER로 내보내는 옵션이 있음)

기본적으로 Andrew의 답변과 동일하지만 Windows 관리 콘솔을 사용하지 않습니다 (가져 오기 / 내보내기로 바로 이동).


답변

openssl rsa -in f.pem -inform PEM -out f.der -outform DER


답변