做为文件形式存在的证书通常有这几种格式:浏览器
1.带有私钥的证书安全
由Public Key Cryptography Standards #12,PKCS#12标准定义,包含了公钥和私钥的二进制格式的证书形式,以pfx做为证书文件后缀名。网络
2.二进制编码的证书网站
证书中没有私钥,DER 编码二进制格式的证书文件,以cer做为证书文件后缀名。编码
3.Base64编码的证书加密
证书中没有私钥,BASE64 编码格式的证书文件,也是以cer做为证书文件后缀名。spa
由定义能够看出,只有pfx格式的数字证书是包含有私钥的,cer格式的数字证书里面只有公钥没有私钥。blog
在pfx证书的导入过程当中有一项是“标志此密钥是可导出的。这将您在稍候备份或传输密钥”。通常是不选中的,若是选中,别人就有机会备份你的密钥了。若是是不选中,其实密钥也导入了,只是不能再次被导出。这就保证了密钥的安全。图片
若是导入过程当中没有选中这一项,作证书备份时“导出私钥”这一项是灰色的,不能选。只能导出cer格式的公钥。若是导入时选中该项,则在导出时“导出私钥”这一项就是可选的。二进制
若是要导出私钥(pfx),是须要输入密码的,这个密码就是对私钥再次加密,这样就保证了私钥的安全,别人即便拿到了你的证书备份(pfx),不知道加密私钥的密码,也是没法导入证书的。相反,若是只是导入导出cer格式的证书,是不会提示你输入密码的。由于公钥通常来讲是对外公开的,不须要加密。
pfx证书,同时包含了公钥信息和私钥信息
cer证书只包含公钥信息
若是客户端与网站通讯时须要用到私钥(基本全部须要数字证书的网站都会用到私钥),则cer证书是没法正常访问网站的,网站会提示“该页要求客户证书”:
因为cer证书只包含公钥信息,通常只能用于解密使用(解密该公钥对应的私钥加密的数据)。
Pfx证书既能够导出为pfx证书,也能够导出为cer证书。
Pfx证书导出时,会提示是否导出私钥,导出私钥即pfx证书,不到出则是cer证书。
若是选择导出私钥,出于安全性考虑,浏览器会提示你指定一个密码用于保护该私钥,往后再次导入该pfx证书时,浏览器会要求你提供该私钥保护密码。
导入pfx证书时,须要指定私钥保护密码,另外还有一个选项“标志此密钥为可导出密钥。这将容许您稍后备份或传输密钥”,出于安全性考虑,该选项默认是不勾选的,若是不勾选,下次从浏览器导出该证书时,则没法导出pfx格式了,只能导出不包含私钥的cer格式了。
pfx证书导入时,若是未勾选“密钥可导出”,则下次导出时,因为没法导出私钥,只能导出cer证书了。
pfx证书默认导入到“我的”选项卡下。
cer证书只能导入到“其余人”选项卡下,没法导入到“我的”选项卡下。
cer证书不能导出为pfx证书。
图片部分来自网络