CA证书的学习笔记

/*****************************
* Author : Samson
* Date : 12/06/2015
* Test platform:
* gcc 4.8.4
* GNU bash, 4.3.30
* Debian GNU/Linux 8
* ***************************/

利用一个公钥验证其相应私钥签名的文件或数据,但是仅此而已,我们没有办法知道这个私钥的持有人的真实身份,任何人都可以生成一对甚至无数对公开密钥对,密钥对跟特定的实体间没有任何必然的联系。数字证书正是为了建立实体跟密钥对之间的联系而存在,证书验证中心CA充当了确认特定实体跟密钥对之间关系的确认人,且通过自己的私钥对这些确认的信息和公钥一起签名来保证其可信性和不可改变性。这里的前提是,CA是所有用户都信任的。

在数字签名的流程中,事实上在生成密钥对之后,用户首先需要把自己的信息和公钥一起交给CA验证,申请一个属于自己的并得到CA和其他用户认可的证书,然后才能正式使用证书相应的私钥对进行数据签名,也只有在这样的前提下,其数字签名才能具有实质上的意义。

在线证书服务协议(OCSP)

证书的封装类型:
X.509 :
包含 用户信息、公钥、序列号、CA签名和其他证书信息。
适用范围:
用户和被验证用户处于同一个CA域内的验证模型,用户不需要考虑私钥存储的问题;
openssl支持:
生成、使用和其他管理都支持
windows后缀名:
der
cer
crt

PKCS#12:
包含:
X.509证书和其相应私钥;

适用范围:
需要同时使用X.509证书和其私钥的应用,如导入到浏览器的证书;
openssl支持:
生成、使用和其他管理都基本支持;
windows后缀:
pfx
p12

PKCS#7证书:
包含:
多个X.509证书和CRL;
适用范围:
需要同时使用多个用户证书和CRL的验证过程或其他应用。
openssl支持:
生成和管理支持。
windows后缀名:
p7

使用证书:
证书应用模型:
使用数字证书的目的只有一个,在数字世界建立一个跟现实世界完全相类似的信息模型。数字证书的作用很简单,几乎就是跟现实世界的证书(比如身份证)作用一一对应的。现实世界中的身份证是怎么使用的呢? 首先,公安局(CA)颁发了你的身份证(数字证书),然后你要别确认你的身份的时候,你拿出你的身份证,对方如果相信自己是具体验证身份证真伪的能力,那么他就会通过查看公安局盖章(CA签名),你的资料信息(用户主体信息)和其他信息来确认身份证是公安局分发的还是伪造的。当然,若这些都通过了,他可能还拿出一份公安局公布的无效身份证的资料(CRL)对照一下,看看你的身份证号码(证书序列号)是不是已经名列其中了。

有证书链的情况下用户A和用户B进行验证的整个操作流程:
CA1是签发A证书的  CA2是签发B证书的
B接收到A发送过来的整个证书链之后,B进行验证的整个操作流程如下:
从CA1提取公钥,验证用户证书A的合法性和有效性;
从根CA提取公钥,验证CA1证书的合法性和有效性;
利用根CA的公钥验证根CA证书的合法性和有效性(因为它是自签名根证书);
B查找自己的信息证书库,看看上述通过验证的根CA是否在信任列表中,若在,那么验证通过,否则验证不通过。

用户身份确认:
上面我们已经顺利通过一个证书的验证了,实质上,我们仅仅是对证书本身的合法性和有效性进行了验证,对于用户是否确实拥有这个证书还需要进一步确认。
需要再次强调的,仅有证书是没有多大意义的。造成不要以为自己得到了管理员的一个数字证书就可以窃喜不已,事实上它毫无用处,在实际的应用协议中,在通过对你出示的证书进行验证之后,还要验证你是否确实拥有该证书。过程很简单,提取证书中的公钥,使用此公钥加密一个随机数,然后发送给你,并要求你解密后返回该随机数。如果你确实是证书的主人,那么你拥有相应的私钥,你可以解密发送过来的信息并得到随机数,然后返回给对方证明你的身份,对方比较本地保存的随机数和你返回的随机数,如果一致,证明你能够正确解密证书上公钥加密的数据,确认你拥有证书相应的私钥。

pubic key infrastructure:PKI  公钥基础设施
2397
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值