X.509 是用于的标准格式 公钥证书,是将加密密钥对与网站,个人或组织等身份安全地关联的数字文档。
X.1988于500年与X.509电子目录服务标准一起首次引入,现已被IETF的公钥基础结构(X.509)改编为可用于互联网。PKI十)工作组。 RFC 5280 分析X.509 v3证书,X.509 v2证书吊销列表(CRL),并描述用于X.509证书路径验证的算法。
X.509证书的常见应用包括:
密钥对和签名
无论其预期的应用程序是什么,每个X.509证书都包含一个 公钥, 电子签名,以及有关与证书及其颁发者相关的身份的信息 认证中心(CA):
- 这款 公钥 是的一部分 密钥对 其中还包括 私钥。 私钥保持安全,公钥包含在证书中。 此公钥/私钥对:
- 允许私钥的所有者对文档进行数字签名; 任何具有相应公钥的人都可以验证这些签名。
- 允许第三方发送使用公钥加密的消息,只有私钥的所有者才能解密。
- A 电子签名 是已用私钥加密的文档的编码哈希(固定长度摘要)。 当X.509证书由 公众信任的CA(例如SSL.com),第三方可以使用该证书来验证提供该证书的实体的身份。请注意: 并非X.509证书的所有应用程序都需要公众信任。 例如,公司可以颁发自己的私人信任证书供内部使用。 有关更多信息,请阅读有关 私人与公共 PKI.
- 每个X.509证书都包含指定 主题, 发行CA以及其他必填信息,例如证书的 版本 和 有效期。 此外,v3证书还包含一组 扩展 定义属性,例如可接受的密钥用法和将密钥对绑定到的其他身份。
证书字段和扩展
要在野外查看典型X.509证书的内容,我们将检查www.ssl.com的SSL /TLS 证书,如Google Chrome中所示。 (您可以通过单击地址栏左侧的锁,在自己的浏览器中检查所有HTTPS网站上的所有内容。)
- 第一组详细信息包括有关 咨询内容,包括公司的名称和地址以及 通用名称 证书旨在保护的网站(或完全限定域名)。 (请注意: 此 产品序列号 此主题字段中显示的是内华达州的企业标识号,而不是证书本身的序列号。)
- 向下滚动,我们会遇到有关 发行者。 并非偶然,在这种情况下, 工作机构 是主题和发行人的“ SSL Corp”,但发行人的 通用名称 是颁发CA证书的名称,而不是URL。
- 在颁发者下方,我们可以看到证书的 产品序列号 (一个唯一表示证书的正整数), X.509版本 (3),则 签名算法,以及指定证书的日期 有效期限.
- 接下来,我们到达 公钥, 签名以及相关信息。
- 除以上字段外,X.509 v3证书还包括一组 扩展 在证书使用方面提供了额外的灵活性。 例如, 主题备用名称 扩展名允许证书绑定到多个身份。 (因此,有时将多域证书称为 SAN证书)。 在下面的示例中,我们可以看到证书实际上涵盖了XNUMX个不同的SSL.com子域:
- 这款 指纹 下方显示的Chrome中的证书信息不是证书本身的一部分,而是独立计算的哈希值,可用于唯一标识证书。
证书链
出于管理和与安全相关的原因,通常将X.509证书合并为 链 进行验证。 如以下Google Chrome的屏幕截图所示,SSL /TLS www.ssl.com的证书由SSL.com的中间证书之一签名, SSL.com EV SSL Intermediate CA RSA R3
。 反过来,中间证书由SSL.com的EV RSA根签名:
对于公共信任的网站,Web服务器将提供自己的网站 终端实体 证书,以及验证所需的任何中间体。 带有公共密钥的根CA证书将包含在最终用户的操作系统和/或浏览器应用程序中,从而形成一个完整的 信任链.
废止
必须先失效的X.509证书 之后无效 日期可能是 撤销。 正如刚才提到的, RFC 5280 概要文件证书吊销列表(CRL),可以由浏览器和其他客户端软件查询的带时间戳的吊销证书列表。
在网络上,事实证明CRL在实践中无效,并且已被其他吊销检查解决方案所取代,包括OCSP协议( RFC 2560),OCSP装订(发布于 RFC 6066第8节,例如“证书状态请求”),以及在各种网络浏览器中实施的各种特定于供应商的解决方案。 有关棘手的吊销检查历史以及当前的Bowers如何检查证书吊销状态的更多信息,请阅读我们的文章, 页面加载优化:OCSP装订及 浏览器如何处理已撤销的SSL /TLS 证书?
常见问题解答
X.509 是用于的标准格式 公钥证书,是将加密密钥对与网站,个人或组织等身份安全地关联的数字文档。 RFC 5280 分析X.509 v3证书,X.509 v2证书吊销列表(CRL),并描述用于X.509证书路径验证的算法。