二、证书的内容及用途 对应结构体 X509_CINF
CFCA所发放的证书均遵循X.509 V3标准,其基本格式及其用途如下:
1.Certificate Format Version
证书版本号,用来指定证书格式用的X.509版本号,用于目录查询。
2.Certificate Serial Number
证书序列号,证书颁发者指定证书唯一序列号, 以标识CA发出的所有证书,用于目录查询。
3.Signature Algorithm Identifier
签名算法标识,用来指定本证书所用的签名算法(如SHA-1、RSA)。
4.Issuer
签发此证书的CA名称,用来指定签发证书的CA的可识别的唯一名称(DN, Distinguished Name),用于认证。
5.ValidityPeriod
证书有效期,指定证书起始日期(notBefore)和终止日期(notAfter),用于校验证书的有效性。
6.Subject
用户主体名称,用来指定证书用户的X.500唯一名称(DN),用于认证。
7.Subject Public Key Information
用户主体公钥信息。
(1)Algorithm Identifier,算法标识。用来标识公钥使用的算法。
(2)Subject Public Key,用户主体公钥。用来标识公钥本身,用于加/解密和数字签名。
8.Issuer Unique ID
颁发者可选唯一标识,很少用。
9.Subject Unique ID
主体证书拥有者唯一标识,很少用。
10.Extensions
证书扩充部分(扩展域),用来指定额外信息。
(1)Authority Key Identifier,签发者CA的公钥标识。
Key Identifier,公钥标识;
Cert Issuer,证书签发者的甄别名,电子邮件、IP地址等;
Cert Serial Number,签发证书的序列号,用于签发根证书及交叉认证。
(2)Subject Key Identifier,用户主体的公钥标识。证书主体所含密钥的唯一标识,用来区分一个证书
拥有者的多对密钥,主要用于对由以前公钥加密过的文件进行解密。
(3)CRL Distribution Point, CRL 分布。指明CRL分段的地点,用于分布式存放。(4)Key Usage, 证书中的 公钥用途 ,用来指定公钥用途,数字签名、加密等。
(5)Private Key Usage Period, 用户的私钥有效期。用来指定用户签名私钥的起始日期和终止日期。
(6)Certificate Policies,CA承认的证书政策列表。用来指定用户证书所适用的政策, 证书政策可由对象
标识符表示,一个详细提示(200字符)。
(7)Policy Mappings, 策略映射。表明在两个CA之间一个或多个策略标识的等价映射关系——仅在CA证书里存在。(8)Subject Alt Name, 用户的代用名。用来指定用户的代用名。
(9)Issuer Alt Name,CA 的代用名。用来指定CA的代用名。
(10)Basic Constraints, 基本制约 。用来表明 证书用户 是 最终用户 还是 CA ,用于交易路径。
(11)Subject Directory Attributes, 用户主体目录属性。指出证书拥有者的一系列属性。
11.Signature Acgorithm CA 签名算法标识。
12.CA Signature CA 签名。
包括但不限于验证证书链是否完整、证书是否过期、证书是否可信任、证书是否被吊销等。