cer,pvk和pfx文件有什么区别?

cer,pvk和pfx文件有什么区别? 另外,我保留哪些文件,以及我希望将哪些文件交给我的对方?

Windows使用.cer扩展名为X.509证书。 这些可以是“二进制”(ASN.1 DER),也可以使用Base-64进行编码,并且应用了页眉和页脚(PEM)。 Windows将识别。 要validation证书的完整性,您必须使用发行者的公钥检查其签名,而这又是另一个证书。

Windows使用.pfx作为PKCS#12文件。 该文件可以包含各种encryption信息,包括证书,证书链,根授权证书和私钥。 其内容可以使用密码保护(使用密码)以保护私钥私密性并保持根证书的完整性。

Windows使用.pvk作为私钥文件。 我不确定Windows遵循什么标准(如果有的话)。 希望他们是PKCS#8编码密钥。 Emmanuel Bourg报告说这是一种专有格式。 一些文档是可用的。

你不应该透露你的私钥。 这些包含在.pfx和.pvk文件中。

一般而言,您只能与其他方交换您的证书(.cer)和任何中间颁发者的证书(即您的所有CA的证书,除根CA之外)。

在Windows平台中,这些文件types用于证书信息。 通常用于SSL证书和公钥基础结构(X.509)。

  • CER文件: CER文件用于存储X.509证书。 通常用于SSLauthentication,以validation和识别Web服务器的安全性。 该文件包含有关证书所有者和公钥的信息。 CER文件可以是二进制文件(ASN.1 DER),也可以用包含页眉和页脚(PEM)的Base-64进行编码,Windows将识别这些布局中的任何一种。
  • PVK文件:代表私钥。 Windows使用PVK文件存储用于在各种Microsoft产品中进行代码签名的私钥。 PVK是专有格式。
  • PFX文件个人交换格式,是一个PKCS12文件。 这包含各种encryption信息,例如证书,根授权证书,证书链和私钥。 它使用密码进行encryption保护,保护私钥私密性并保持根证书的完整性。 PFX文件也用于各种Microsoft产品,如IIS。

有关更多信息,请访问: 证书文件:.Cer x .Pvk x .Pfx

我实际上遇到过这样的事情,不久之前… 检查了MSDN上 (见第一个答案)

综上所述:

.cer – 以X.509标准格式存储的证书。 此证书包含有关证书所有者的信息…以及公钥和私钥。

.pvk – 文件用于存储代码签名的私钥。 您也可以创build基于.pvk私钥文件的证书。

.pfx – 代表个人交换格式。 它用于在单个文件中交换公共和私人对象。 可以从.cer文件创build一个pfx文件。 也可以用来创build一个软件发行者证书 。

我根据评论的build议总结了网页上的信息。

以下是我个人的超级浓缩笔记,就目前这个话题而言,对于任何感兴趣的人来说:

  • PKCS12PEM都可以存储整个证书链: 公钥,私钥和根(CA)证书 。
  • .pfx == .p12 ==“ PKCS12
    • 完全encryption
  • .pem == .cer == .cert ==“ PEM
    • base-64 (string)编码X509证书 (二进制)与页眉和页脚
      • base-64基本上只是一个“A-Za-z0-9 + /”string,用来一次性表示0-63,6位的二进制数据,有时候还有1或2个“=”字符结束时有剩余物(“=”是“填充/垃圾/忽略/丢弃”字符)
      • 页眉和页脚是类似于“—– BEGIN CERTIFICATE —–”和“—– END CERTIFICATE —–”或“—– BEGIN ENCRYPTED PRIVATE KEY — – “和”—–开始encryption私钥—–“
    • Windows将.cer和.cert识别为证书文件
  • .jks ==“ Java密钥库
    • 只是API使用的特定于Java的文件格式
      • .p12和.pfx文件也可以与JKS API一起使用
  • 信任存储 ”包含公开的,可信的, 根(CA)证书 ,而“ 身份/密钥存储 ”包含私人身份证书; 但是,文件方面,他们是一样的。