如何导出 pfx 格式的证书?

如何导出 pfx 格式的证书?

我正在运行 Windows 10。我已经在计算机上安装了一个证书。我在 MMC 中看到了它。但是当我尝试导出该证书的 pfx 文件时。该选项被禁用。

我之前能够在同一台机器(例如机器 A)上成功导出该证书的 pfx 文件。但是当我使用我指定的密码在另一台机器(例如机器 B)上安装 pfx 文件时,它不起作用。它说密码不正确或类似的东西。所以我回到证书机器(机器 A),删除证书并再次安装证书。

之后,我再也无法导出 pfx 文件。有办法解决这个问题吗?

你能告诉我如何修复这个问题吗?

当我尝试 repairstore 时,出现“未找到对象”错误:

C:\WINDOWS\system32>certutil -repairstore my ‎356000019dba8d5ddd348062b90000000001d
my "Personal"
CertUtil: -repairstore command FAILED: 0x80090011 (-2146893807 NTE_NOT_FOUND)
CertUtil: Object was not found.

在此处输入图片描述

答案1

您看到的是 Windows 的一个限制:如果您没有证书的私钥,它不会让您使用 PKCS12 格式。由于您只导入了 CER 文件,因此您没有密钥。

如果你确实需要仅包含证书的 PKCS12 文件,请使用以下 OpenSSL 命令

openssl pkcs12 -export -nokeys -in certificate.cer -out pkcs12.pfx

答案2

在我的例子中,问题在于我试图用来生成 PFX 的计算机与用来生成 CSR 的计算机不是同一台。我的说明页顶部的大红色注释指出,必须是同一台机器。

相关内容