这个pkcs12文件有什么问题(pfx)

All*_* Hu 8 openssl

我创建了一个我的私人CA并形成了一个用于测试的pkcs12证书文件,我在我的linux框中用openssl做了这个:

  • (1)openssl req -config /etc/openssl.cnf -subj/CN = aa1 @ 2C/O = Ruckus Wireless,Inc./ST = CA/C = US -batch -new -nodes -key users/2C.key -out users/2C.csr
  • (2)openssl ca -config /etc/openssl.cnf-extensions client_cert -batch -in users/2C.csr -out users/2C.crt
  • (3)openssl pkcs12 -export -out users/2C.pfx -inkey users/2C.key -in users/2C.crt -certfile cacert.pem -passout stdin

之后,我在Windows 7机器上复制2c.pfx并尝试安装它,但错误消息突然出现: 无效的公钥安全对象文件:此文件无效,可用作以下内容:个人信息交换.

造成这种情况的原因是什么?我是否形成了错误的pfx文件?

Nat*_*ium 10

我也收到消息了

无效的公钥安全对象文件:此文件无法用作以下用途:个人信息交换。

问题是 p12 文件位于映射为驱动器的网络共享上。将文件复制到我的真实硬盘驱动器 (C:) 解决了问题。


jww*_*jww 3

这有点晦涩(我不记得见过它,但是嘿......)。首先,确保您将证书导入到正确的存储中。我遇到的大多数导入错误都是由于错误的存储造成的。我相信您需要在本地计算机的受信任根证书颁发机构存储中安装证书(中间证书颁发机构不起作用)。如果不是店的问题的话......

其次,从 Microsoft 论坛尝试一下。无法导入证书(p12 或 pfx 文件)。(我复制了它,以防微软重新安排他们的网站。但要明确的是,这是其他人的解决方案):

secedit /configure /cfg %windir%\inf\defltbase.inf /db defltbase.sdb /verbose
Run Code Online (Sandbox Code Playgroud)

顺便说一句,我认为您可以根据 Microsoft 工具使用以下内容检查其格式是否正确。我没有方便的 Windows 机器来测试它。

certutil -dump 2C.pfx
Run Code Online (Sandbox Code Playgroud)