
# 私有CA及私有证书相关概念
本章节介绍与华为云PCA服务相关的概念及其解释。
私有证书管理（Private Certificate Authority，PCA）是一个私有CA和私有证书管理平台。您可以通过简单的可视化操作，建立自己完整的CA层次体系并使用它签发证书，实现了在组织内部签发和管理自签名私有证书。主要用于对组织内部的应用身份认证和数据加解密。
#### 根CA
颁发机构（CA）的公钥证书，是公钥基础设施（PKI）体系中的信任锚。可签发子CA、私有证书与证书吊销列表。当被导入客户端信任列表后，可对其签发的证书进行校验。如何获取根CA，请参见[激活私有CA](https://support.huaweicloud.com/tg-ccm/ccm_01_0017.html)。
#### 子CA
也称中间CA或子CA，用于隔绝根CA与私有证书，是划分CA层次结构的关键，在证书链校验过程中对下一层证书进行校验。当路径深度大于0时，子CA可向下签发子CA。如何获取子CA，请参见[激活私有CA](https://support.huaweicloud.com/tg-ccm/ccm_01_0017.html)。
![](https://support.huaweicloud.com/productdesc-ccm/public_sys-resources/note_3.0-zh-cn.png)
子CA的路径深度，即当前CA可以签发下级子CA的层次数量，用于控制证书链深度（证书链最后一层为私有证书）。
#### 私有证书
私有证书又称终端实体证书，安装在终端实体上的证书，含客户端证书（应用于客户端）、服务器证书（应用于服务器）等。承担实体的身份验证的作用，不可用于签发证书，属于证书链中的最后一层，是拥有该证书的实体与其它实体进行HTTPS通信的凭证。私有证书内容，如[图 私有证书]所示。如何获取私有证书，请参见[申请私有证书](https://support.huaweicloud.com/tg-ccm/ccm_01_0025.html)。
图1私有证书   
![](https://support.huaweicloud.com/productdesc-ccm/zh-cn_image_0000001887704614.png)
#### 证书吊销列表
证书吊销列表（Certificate Revocation List，CRL）是指在有效期内就被其父CA吊销的证书的名单，其中被吊销的CA/证书，包含子CA与私有证书。证书吊销列表是一种有固定格式的结构化数据文件，其中包含颁发者信息、吊销列表的生效时间、列表下一次更新时间、签发算法、指纹以及已被吊销证书的序列号与对应的吊销时间和吊销理由码。证书吊销列表具体内容，如[图 证书吊销列表]所示。如何配置证书吊销列表，请参见[配置证书吊销列表](https://support.huaweicloud.com/tg-ccm/ccm_01_0354.html)。
图2证书吊销列表   
![](https://support.huaweicloud.com/productdesc-ccm/zh-cn_image_0000001932864445.png)
#### 证书链
从根CA到私有证书之间的完整的证书链路，即各个层级证书按序链在一起的文件，用于进行身份的逐层校验。各级证书的链接关系，如[图 证书链]所示。
PCA服务支持创建最多七级的CA层级结构，一个好的私有CA层次结构可实现对证书的精细化控制，以及提升PKI（公钥基础设施）体系的安全性，具体请参见[私有CA层次结构设计](https://support.huaweicloud.com/bestpractice-ccm/ccm_06_0009.html)。
图3证书链   
![](https://support.huaweicloud.com/productdesc-ccm/zh-cn_image_0000001932864449.png)
证书校验主要体现在两方面：
- 证书链的完整性校验，逐层校验证书的有效性。
- 证书链中的根CA是否被校验方所信任（提前预置到信任列表中）。
 
证书校验过程中主要包含的校验项：
- 实体所宣称的主体信息（如服务端的域名）是否在证书可选名称的范围内。
- 证书是否过期。
- 密钥用法是否符合当前操作（如密钥协商、数字签名等）。
- 数字签名验证。
- 是否已被吊销。
  ![](https://support.huaweicloud.com/productdesc-ccm/public_sys-resources/note_3.0-zh-cn.png)
  此处未列举出所有校验项，X509证书允许用户增加多种自定义扩展项，详情请参考相关国际标准。
  
 
#### PCA证书有效期
在证书链中，根CA是整条链的信任起点，一旦根CA过期，其与其子CA签发的所有证书将不再被信任，因此根CA的有效期是其下层所有证书的有效期上限。即使签发下层证书时，可以将有效期填写超过根CA的有效期（不做强制要求下），但在校验证书链时，只要链中根CA过期，校验就会失败。
在PCA服务中，强制要求新签发的证书的到期时间不可超过其父CA的到期时间，确保从根CA到私有证书之间的链路上，有效期逐层递减。PCA服务对各类证书有效期的约束见[表 证书有效期约束]。
不同类型证书的有效期是根据其扮演的角色而定的。使用越频繁的证书，其密钥材料泄露风险更高，有效期应尽量设置更小。例如，根CA通常只用于签发子CA，使用频率最少，且使用最高的安全保护措施（PCA中使用KMS进行CA密钥管理），有效期一般设置为10\~30年左右。子CA根据其所在的层级，越往下有效期逐级减少，最下层的证书用于签发大量的私有证书，有效期通常设置为2\~5年左右。私有证书，频繁用于通信，通常根据使用场景的安全要求，将有效期设置为几个小时、几个月以及一两年不等。
 表1证书有效期约束 
| CA/证书 | 最小有效期 | 最大有效期 | 是否支持延长 | 有效期其它约束  |
|:---|:---|:---|:---|:---|
| 根CA   | 1小时   | 30年   | 否      | 无        |
| 子CA   | 1小时   | 20年   | 否      | 在父CA有效期内 |
| 私有证书  | 1小时   | 20年   | 否      | 在父CA有效期内 |
   
