证书签发流程

wen IT资讯 29

本文目录导读:

证书签发流程

  1. 生成密钥对
  2. 创建证书签名请求
  3. 验证身份
  4. 签发证书
  5. 颁发和安装
  6. 证书使用与验证
  7. 总结核心思想
  8. 补充:证书吊销

证书签发流程主要涉及证书颁发机构(CA)证书申请者依赖方三个角色,其核心目的是创建一个防伪的、可验证的数字身份。

流程主要分为以下几个关键步骤:

生成密钥对

这是整个流程的起点,必须在申请者自己的设备上完成,以确保私钥的绝对安全。

  • 申请者使用本地工具(如 OpenSSL、浏览器内置功能)生成一对密钥:
    • 私钥:严格保密,永远不应泄露或传输。
    • 公钥:可以公开,将随证书请求一起发送给 CA。

创建证书签名请求

申请者需要向 CA 证明自己的身份,并请求 CA 对其公钥进行签名。

  • 申请者创建一个包含以下信息的 CSR 文件:
    • 申请者的公钥
    • 申请者的身份信息:如通用名称(通常是域名 www.example.com)、组织名称、国家/地区、电子邮件等。
    • 数字签名:申请者使用自己的私钥对整个 CSR 文件进行签名,CA 可以通过该签名验证 CSR 确实来自该私钥的持有者,且内容未被篡改。
  • 然后将 CSR 文件发送给 CA。

验证身份

CA 必须确认申请者就是其声称的实体,验证严格程度取决于证书类型:

  • 域名验证型(DV,Domain Validation):最快速、成本最低,CA 通常通过以下方式验证申请者对域名的控制权:
    • 发送一封包含验证链接的邮件到域名的 WHOIS 管理员邮箱。
    • 要求申请者在域名下放置一个特定的 DNS TXT 记录或 HTTP 文件。
  • 组织验证型(OV,Organization Validation):CA 会验证域名的控制权,并核实申请组织的真实存在(如检查商业注册信息),过程可能涉及人工审核。
  • 扩展验证型(EV,Extended Validation):最严格、成本最高,CA 需要进行深度背景调查,核实组织的法律身份、实际地址、运营能力等,审核过程严格且耗时。

签发证书

验证通过后,CA 开始创建数字证书。

  • CA 使用自己的根证书私钥中间证书私钥对申请者的 CSR 进行签名。
  • 构建证书数据:CA 将申请者的公钥、身份信息、证书有效期、序列号、CA 签名算法等信息整合起来。
  • 计算数字签名:CA 使用其私钥对证书数据进行哈希计算,得到哈希值,然后用私钥对该哈希值进行加密,形成证书的数字签名。
  • 生成最终证书文件:证书包含所有明文信息和数字签名。

颁发和安装

  • CA 将签好的证书文件(通常为 .crt.pem 格式)发送给申请者,同时会提供必要的中间证书(用于构建完整的证书链)。
  • 申请者收到证书后,将其与自己的私钥一起安装到服务器或设备上(Web 服务器、电子邮件客户端、代码签名工具)。
  • 安全提示:仅在部署时,私钥才需要与在同一台服务器上,任何中间传输都应加密(如通过 HTTPS),但理想情况下私钥从未离开过申请者的控制环境。

证书使用与验证

当用户(依赖方)访问该证书保护的服务器时,会触发证书验证流程:

  1. 服务器发送证书文件(和中间证书)给用户浏览器。
  2. 浏览器检查证书是否在有效期内,以及是否已被吊销(通过 CRL 或 OCSP)。
  3. 浏览器根据证书链逐级向上验证签名,直到找到内置在操作系统或浏览器中的受信任的根证书
  4. 验证通过,浏览器确认服务器身份,然后使用证书内的公钥进行安全通信(如建立 TLS/SSL 加密连接)。

总结核心思想

证书签发流程的核心是信任转移,通过 CA 对申请者公钥的签名,将用户对 CA 的信任(因为根证书预装在浏览器中)转移给了证书持有者,只要 CA 的签名有效,用户就可以信任该证书所绑定的公钥确实属于证书上声明的实体。

补充:证书吊销

如果证书的私钥泄露、域名所有权变更或组织信息过期,CA 需要吊销该证书,吊销的信息会发布到 CRL或 OCSP 响应器中,以供依赖方在验证时查询,这是一个重要的安全保障机制,但并非所有客户端都会严格执行实时吊销检查。

上一篇OCSP在线查询

下一篇OEM密钥管理

抱歉,评论功能暂时关闭!