x.509 PKCS12 PKCS7

来源:互联网 发布:linux程序设计第4版pdf 编辑:程序博客网 时间:2024/05/01 15:02
x509是数字证书的规范,P7和P12是两种封装形式。比如说同样的电影,有的是avi格式,有的是mpg,大概就这个意思。

P7一般是把证书分成两个文件,一个公钥一个私钥,有PEM和DER两种编码方式。PEM比较多见,就是纯文本的,P7一般是分发公钥用,看到的就是一串可见字符串,扩展名经常是.crt,.cer,.key等。DER是二进制编码。


PKCS#12是“个人信息交换语法”。它可以用来将x.509的证书和证书对应的私钥打包,进行交换。比如你在windows下,可以将IE里的证书连带私钥导出,并设置一个口令保护。这个pfx格式的文件,就是按照pkcs#12的格式打包的。当然pkcs#12不仅仅只是作以上用途的。它可以用来打包交换任何信息。你可以和张三李四用PKCS#12来交换私人数据,包括x.509证书和私钥。你在交换x.509证书和私钥可以采用任何数据格式,例如PKCS#12。

P12是把证书压成一个文件,.pfx 。主要是考虑分发证书,私钥是要绝对保密的,不能随便以文本方式散播。所以P7格式不适合分发。.pfx中可以加密码保护,所以相对安全些。

在实践中要中,用户证书都是放在USB Key中分发,服务器证书经常还是以文件方式分发。服务器证书和用户证书,都是X509证书,就是里面的属性有区别。


通过CA产生的出来的证书格式文件一般是以PFX P12格式发布给使用者(公钥与私钥),用户拿到证书后,
可以通过IE来导入或直接双击向导安装证书,此时私钥安装到系统的私有密钥库中。使用时系统会自动查找到
私钥。而最安全的方式还是使用其它USB硬件来存储,私钥将无法再从硬件锁只导出,并且支持硬件访问需要
用户的密钥才能访问到硬件内的私钥,永远保证了私钥不出硬件锁!提高了安全性,灵活性,且可以移动的方便性。

而相互双方通迅时使用且交换的是带公钥的证书如CER文件


0 0
原创粉丝点击