Security 证书-.cer+。pfx

Security 证书-.cer+。pfx,security,ssl,certificate,Security,Ssl,Certificate,我正在学习如何使用证书,但我不知道.pfx和.cer之间的关系 我知道.cer是一个证书,而.pfx是一个可能包含各种信息的文件(我猜包括证书) 例如,在工作中有一个应用程序使用证书并使用xml引用这些文件 <node name="Traffic_Watcher"> <map /> <entry key="certificatePath" value="traffic_watcher.cer" /> <entry key="pri

我正在学习如何使用证书,但我不知道.pfx和.cer之间的关系

我知道.cer是一个证书,而.pfx是一个可能包含各种信息的文件(我猜包括证书)

例如,在工作中有一个应用程序使用证书并使用xml引用这些文件

<node name="Traffic_Watcher">
    <map />
    <entry key="certificatePath" value="traffic_watcher.cer" />
    <entry key="privateKeyFile" value="traffic_watcher.pfx" />
    <entry key="privateKeyFilePassword" value="password" />
</node>

为什么两个文件都需要?这是正常的还是仅此应用程序?

A是一个密钥库,它是一个保存私钥、公钥和证书的容器。它也可以是密码保护的,就像在本例中保护私钥一样

证书文件包含绑定到标识并签名的公钥

看起来应用程序希望证书在一个文件中,私钥在另一个文件中。在pfx中两者都有可能,但在本例中,应用程序正在查找两个不同的条目


拥有一个单独的证书文件并不少见,因为您可以将其免费提供给其他人,这样他们就可以验证您的签名(由您的私钥创建),或者使用它加密只有您的私钥才能解密的消息。在这种情况下,您永远不会发出包含私钥的pfx文件,但可以发出cer文件。

@gtrig如果我有自签名的*.pfx证书,我需要在客户端上手动安装*.cer证书,是否正确?如果我有有效的证书(不是自签名而是购买的),我不需要*.cer,不是吗?@oblomov86我相信你指的是信任列表。如果服务器上有自签名证书,并且您不希望在浏览器中看到警告,则可以将此证书添加到Windows、Java、Firefox等中的受信任证书列表中。仅当您信任此证书时,才能执行此操作。是的,一个有效的证书应该已经由一个可信的CA证书签名,所以你不需要把它放在你的可信列表中。