国密证书的域名匹配规则与国际SSL证书类似,主要依据X.509标准,核心是  Subject  Alternative  Name  (SAN)  字段。同时,国密证书也有一些需要特别注意的地方。

以下是详细的匹配规则和注意事项。

一、核心匹配规则

国密证书通过以下两种方式记录域名,浏览器会优先使用SAN字段进行匹配。

字段      说明      作用  

通用名称  (CN)          证书的“通用名称”,只能填写一个主域名。  |  曾是主要匹配依据,现已被SAN字段取代,作为辅助信息存在。  

主题备用名称  (SAN)        证书的扩展字段,是域名匹配的唯一强制依据,可包含多个域名或IP地址。  可包含多个精确域名和通配符域名。  

根据SAN字段中域名的类型,匹配规则如下:

      精确域名:只对完全一致的域名生效。例如,证书绑定  `www.example.com`,则只能用于  `www.example.com`,不能用于  `example.com`  或其他子域名。

      通配符域名(泛域名):使用通配符  `*`  来匹配同一级别的所有子域名。

              匹配示例:证书  `*.example.com`  可以匹配  `blog.example.com`、`shop.example.com`  等。

              不匹配示例:证书  `*.example.com`  不能匹配  `a.b.example.com`(跨级),也不能匹配  `example.com`(主域名本身,但多数CA会默认赠送,见下文)。

      IP地址:证书也可以直接绑定IP地址。需要在CSR中通过SAN扩展指定,如  `subjectAltName  =  IP:192.168.1.100`。

二、关键注意事项

在实际操作中,这几点需要特别留意:

1.    证书颁发后不可修改:证书的绑定域名在提交给CA机构审核后将无法修改。提交前务必仔细核对所有域名。

2.    国密证书的双证书机制:国密SSL证书通常包含加密证书和签名证书两张证书。申请时可选择生成两套CSR或共用一套,部署时需将两张证书都配置好。

3.    客户端兼容性是前提:确保用户的浏览器或应用支持国密算法(SM2/SM3/SM4)。可选用360安全浏览器、奇安信可信浏览器等,或在App中集成国密SDK。

4.    主域名的自动包含:通配符证书通常会自动包含其主域名。例如  `*.example.com`  的证书会默认保护  `example.com`。但若通配符不是一级域名,如  `*.test.example.com`,则不会自动保护  `example.com`。

5.    域名验证方式:申请时需证明域名所有权,可选DNS验证(添加TXT记录)、邮箱验证(使用特定前缀邮箱)或文件验证。通配符证书通常只能使用DNS或邮箱验证。

6.    证书链的完整性:部署时务必保证完整的证书链(包括根证书和中间证书)已正确安装,否则浏览器可能提示证书不受信。

7.    证书文件大小:一张证书绑定的域名不宜过多(建议不超过100个),否则证书文件过大会影响握手效率。

总结

申请国密证书时,可以遵循这几步来确保顺利:

1.    理清需求:明确需要保护的是单个域名、多个域名,还是某一级的所有子域名。

2.    仔细填写:在CSR或申请表单中,将所有需要保护的精确域名和通配符域名准确填入SAN字段。

3.    注意兼容:确认服务端和客户端的部署环境都支持国密算法。

4.    反复核对:提交前,务必再次检查所有域名信息,因为一旦提交就无法更改。