公钥证书与 PKI 详解
在使用公钥加密算法和数字签名技术的时候都需要使用他人的公钥,那我们如何确保这个公钥的真实性呢?口说无凭,需要一个证明,这个证明就是由一个可信的认证中心颁布的一张证书。
公钥证书(Public Key Certificate)
公钥证书( Public key certificate,PKc):用来证明公开密钥拥有者的身份。此文件包含了公钥信息、拥有者身份信息(主体)、以及数字证书认证机构(CA)对这份文件的数字签名。通常简称为证书
证书标准(X.509)
常见的格式标准,包含以下关键字段:
![]() |
![]() |
---|---|
证书的工作原理
PKI
公钥基础设施(Public-Key lnfrastructure,PKI)是为了能够更有效地要运用公钥而制定的一系列规范和规格的总称。(PKI只是一个总称,并非指某一个单独的规范或规格。)
PKI的组成要素
- 数字证书(Digital Certificate):包含公钥、持有者信息、CA签名等数据的电子文件。
- 根 CA:顶级信任源,通常离线保护。
- 中间 CA:由根 CA 签发,用于业务扩展,降低根证书泄露风险
- 终端实体:使用pki的终端
- CA认证机构:CA作为数字证书签发机构,PKI的信任核心,负责颁发、管理和吊销数字证书
- RA(注册机构):验证用户身份,处理证书申请
- 证书存储库:集中存储已颁发的证书和证书吊销列表(CRL)
证书撤销机制
- CRL(证书撤销列表)::CRL 是由 CA 发布的包含已被撤销证书列表的文件。它用于告知用户哪些证书不再可信。
- OCSP(在线证书状态协议):实时查询证书状态。
密钥管理系统:安全地生成公钥-私钥对、进行私钥保护、密钥备份与恢复、密钥销毁
PKI 工作流程
- 证书申请
- 实体生成密钥对,向 RA 提交 CSR(证书签名请求),包含公钥和身份信息。
- 身份验证
- RA 验证申请者身份(如域名控制权验证)。
- 证书签发
- CA 使用私钥对 CSR 签名,生成证书。
- 证书分发
- 证书发布到存储库,供依赖方下载。
- 证书验证
- 依赖方检查证书链、有效期、撤销状态,并验证 CA 签名。
- 证书撤销
- 若私钥泄露或身份变更,CA 将证书加入 CRL 或通过 OCSP 标记为失效。
四、PKI 的优缺点
- 优点
- 自动化信任:无需手动交换密钥。
- 可扩展性:通过中间 CA 支持大规模部署。
- 标准化:X.509 和 TLS 协议广泛兼容。
- 缺点
- 单点故障:根 CA 被入侵会导致整个体系崩溃(如 2011 年 DigiNotar 事件)。
- 撤销延迟:CRL 更新不及时或 OCSP 响应慢。
- 管理成本:维护 CA 和密钥生命周期复杂。
公钥证书是 PKI 的核心载体,通过 CA 的信任背书实现安全通信。PKI 的健壮性依赖于严格的管理流程和技术防护(如 HSM 和证书透明度)。尽管存在挑战,它仍是互联网信任体系的基石,广泛应用于加密、身份认证和数据完整性保护。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 懒懒洋洋的blog!
评论