数字证书_X.509
x.509所包含的证书字段
字段 | 描述 |
版本 | 当前证书的X.509所包含的版本号 |
序列号 | 证书颁发机构(CA)生成的唯一序列号 |
签名算法 | 签名使用的签名算法,如SHA1withRSA |
证书颁布发者 | 发布并对证书进行签名的组织名称 |
有效期 | 此证书有效的开始时间和结束时间 |
对象名称 | 证书所代表的实体,比如一个人或者一个组织 |
对象的公钥信息 | 证书对象的公钥,生成公钥的算法,以及附加参数 |
发布者ID(可选) | 证书颁发者的唯一标识符 |
对象ID(可选) | 证书所代表对象的唯一标识符 |
扩展字段 |
可选择的扩展字段集,每个扩展字段都可以被标识为关键或者是非关键的字段,关键的扩展字段非常重要,证书使用者一定要能够理解,如果证书使用者无法识别出关键扩展字段,就必须拒绝该证书 目前常用的扩展字段包括: 基本约束---对象与证书颁发机构的关系 证书策略---授予证书的策略 密钥使用---对公开密钥的使用限制 |
证书颁发机构数字签名 | 证书的颁发机构使用指定的签名算法及颁发机构的私钥对上述所有字段生成的数字签名 |
证书签发
数字证书的颁发过程实际上就是对数字证书的内容,包括证书所代表对象的公钥进行数字签名,而验证证书的过程,实际就是校验证书数字签名,包含了对证书有效期的难。
证书校验
客户端接收到数字证书时,首先会检查证书的证机构,如果该机构是权威的证书认证机构,则通过该权威认证机构的根证书获得证书颁发的公钥,通过该公钥,对证书的数字签名进行校验。