Windows 인증서 가져오기에서 개인 키 비밀번호를 허용하지 않습니다.

Windows 인증서 가져오기에서 개인 키 비밀번호를 허용하지 않습니다.

여기에 제공된 지침을 따르려고 합니다.https://codekabinett.com/rdumps.php?Lang=2&targetDoc=create-install-ssl-tls-certificate-sql-server테스트에 사용할 자체 서명된 인증서를 설정합니다. 인증서와 키를 성공적으로 생성하고 이를 .pfx 파일로 변환할 수 있었습니다. 이제 인증서 가져오기 마법사를 사용하여 실제로 해당 pfx를 로컬 컴퓨터로 가져오려고 합니다. 파일을 선택하면 개인 키에 대한 비밀번호를 묻습니다. 나는 이것이 인증서를 생성하거나 pfx로 변환할 때 선택한 비밀번호라고 가정합니다. 어느 쪽이든 비밀번호는 허용되지 않습니다. 제가 잘못 입력한 것은 아닌지 다시 한 번 확인했습니다. 모든 파일을 삭제하고 두 파일에 대해 동일한 비밀번호를 사용하여 다시 만들었습니다. 여전히 거부되었습니다. 이 시점에서 나는 무엇을 더 시도해야 할지 잘 모르겠습니다. 내가 여기서 무엇을 놓치고 있는 걸까요?

참고로, 파일을 생성하는 데 사용한 명령은 다음과 같습니다.

openssl req -x509 -newkey rsa:4096 -keyout C:\Users\pbuchheit\sqlkey.pem -out c:\Users\pbuchheit\sqlcert.pem -days 3650 -extensions server_ssl

openssl pkcs12 -export -out C:\Users\pbuchheit\sqlcert.pfx -inkey C:\Users\pbuchheit\sqlkey.pem -in C:\Users\pbuchheit\sqlcert.pem

업데이트:

문제는 pfx 파일과 관련이 있는 것 같습니다. 일반 인증서(.crt) 파일을 설치하지 않으면 정상적으로 작동합니다. crt와 키를 pfx로 변환할 때 비밀번호가 삭제되거나 변경될 수 있나요?

답변1

나는 마침내 여기서 답을 찾았습니다.https://stackoverflow.com/a/70369871/1860222. 분명히 가져오기 마법사는 쓰레기 피드백을 제공했으며 문제는 비밀번호와 관련이 없었습니다. 결과적으로 openssl은 기본적으로 Windows 10과 호환되지 않는 암호화를 사용합니다. pfx에 대한 암호화를 Windows가 처리할 수 있는 것으로 명시적으로 설정하면 가져오기가 제대로 작동했습니다.

최종 명령은 다음과 같습니다.

openssl pkcs12 -export -certpbe PBE-SHA1-3DES -keypbe PBE-SHA1-3DES -nomac -out C:\Users\pbuchheit\turadev.pfx -inkey C:\Users\pbuchheit\turadev.key -in C:\Users\pbuchheit\turadev.crt

관련 정보