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

相关内容