CA 서명 클라이언트 인증서를 추가할 때 Firefox 오류 메시지

CA 서명 클라이언트 인증서를 추가할 때 Firefox 오류 메시지

Firefox의 "인증서 탭"에 인증서를 추가하려고 하면 이 메시지가 나타납니다. 이전에 서버(CA이기도 함)를 통해 생성하고 서명했습니다.

파일을 디코딩할 수 없습니다. PKCS #12 형식이 아니거나, 손상되었거나, 입력한 비밀번호가 올바르지 않습니다.

비밀번호를 묻고 이런 메시지가 뜹니다. 뭐가 문제 야? 나는 이것을 팔로우하고 있다지도 시간.

업데이트 #1

내가 사용한 명령은 다음과 같습니다.

 openssl genrsa -out rootCA.key 2048
 openssl req -x509 -new -nodes -key rootCA.key -days 1024 -out rootCA.pem       
 openssl genrsa -out device.key 2048     
 openssl req -new -key device.key -out device.csr       
 openssl x509 -req -in device.csr -CA rootCA.pem \
        -CAkey rootCA.key -CAcreateserial -out device.crt -days 500

추가된 인증서는 device.crt이고 인증서 탭에는 Firefox에서 요청한 PKS12가 있습니다. 형식을 변경해야 합니까?

답변1

1: 인증서 파일 형식을 확인하세요.

가져오려는 파일이 실제로 .pk12 파일이 아닌 것 같습니다. 가져오려는 파일 유형을 확인하려면 다음 명령을 실행합니다.

openssl pkcs12 -info -in keyStore.p12

다음이 표시되어야 합니다.

Enter Import Password:
MAC Iteration 2048
MAC verified OK
PKCS7 Encrypted data: pbeWithSHA1And40BitRC2-CBC, Iteration 2048
Certificate bag
Bag Attributes
    localKeyID: 74 FF 2A 04 58 90 06 B5 A0 5C EF DA C0 9B 6C AD 91 BD 1F 54 
    friendlyName: [friendly name]
subject=/C=US/ST=NY/O=My Company/OU=dept/CN=blah.blah.com
issuer=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
-----BEGIN CERTIFICATE-----

!!!REMOVED CERTIFICATE!!!!

-----END CERTIFICATE-----
Certificate bag
Bag Attributes: <No Attributes>
subject=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
issuer=/O=My Company/OU=dept/[email protected]/L=My Town/ST=NY/C=US/CN=blah.blah.com
-----BEGIN CERTIFICATE-----

!!!REMOVED CERTIFICATE!!!

-----END CERTIFICATE-----
PKCS7 Data
Shrouded Keybag: pbeWithSHA1And3-KeyTripleDES-CBC, Iteration 2048
Bag Attributes
    localKeyID: 74 FF 2A 04 58 90 06 B5 A0 5C EF DA C0 9B 6C AD 91 BD 1F 54 
    friendlyName: [friendly name]
Key Attributes: <No Attributes>
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
-----BEGIN ENCRYPTED PRIVATE KEY-----

!!!REMOVED CERTIFICATE!!!

-----END ENCRYPTED PRIVATE KEY-----

OP는 위 명령을 실행했는데 다음 오류가 발생했습니다.

your command didn't work 
3077953260:error:0D0680A8:asn1 encoding routines:ASN1_CHECK_TLEN:wrong tag:tasn_dec.c:1320: 3077953260:error:0D07803A:asn1 encoding routines:ASN1_ITEM_EX_D2I:nested asn1 error:tasn_dec.c:382:Type=PKCS12

이 오류는 OP에 보유한 .crt 파일이 pkcs12/pfx 파일이 아님을 알려줍니다.

이 시점에서 OP는 또 다른 질문을 했습니다.CA 루트 키를 사용하여 CSR에 서명할 수 없습니다.“그들은 같은 문제와 관련된 질문을 했습니다.

주석 중 하나를 읽은 후 OP는 실제로 pkcs12/pfx 형식의 인증서가 필요한 Firefox의 대화 상자에 .crt 파일을 로드하려고 합니다. .crt를 pkcs12/pfx 인증서로 변환하는 방법을 알아보려면 아래를 참조하세요.

2. Firefox “인증서” 대화상자

Firefox 지원 포럼에서 다음과 같은 질문을 발견했습니다. 인증서에 .crt 형식의 인증서를 설치하십시오.그 내용은 다음과 같습니다.

"사용자 인증서" 탭에 있어야 하는 .crt 형식의 인증서가 있습니다.

Firefox에서는 .p12 및 .pfx 형식의 인증서만 허용합니다.

이 인증서를 "인증서" 탭으로 어떻게 가져오나요?

.crt를 .p12로 변환할 수 있는지 확인하려고 했지만 성공하지 못했습니다. (동일한 인증서를 .p7b 및 .spc 형식으로 변환할 수 있었습니다)

.crt 파일이 있는 것처럼 들리므로 openssl을 사용하여 해당 파일을 pkcs12/pfx 파일로 변환할 수 있습니다.

openssl pkcs12 -export -in certificate.cer -inkey privateKey.key \
      -out certificate.pfx -certfile CACert.cer

노트:이 예에서 CACert.cer은 CA의 .crt 파일입니다. 이 명령은 .crt 파일과 CA의 .crt 파일을 pkcs12/pfx 파일에 혼합합니다.

OP는 다음 명령을 실행했습니다.

sudo openssl pkcs12 -export -in certs/device.crt -inkey private/device.key -out safaa.pfx -certfile certs/myca.crt

인용하다

관련 정보