X.509 数字证书标准
x.509证书
X.509 是密码学里公钥证书的格式标准。 X.509 证书己应用在包括TLS/SSL(WWW万维网安全浏览的基石)在内的众多 Internet协议里.同时它也用在很多非在线应用场景里,比如电子签名服务。X.509证书里含有公钥、身份信息(比如网络主机名,组织的名称或个体名称等)和签名信息(可以是证书签发机构CA的签名,也可以是自签名)。对于一份经由可信的证书签发机构签名或者可以通过其它方式验证的证书,证书的拥有者就可以用证书及相应的私钥来创建安全的通信,对文档进行数字签名.
另外除了证书本身功能,X.509还附带了证书吊销列表和用于从最终对证书进行签名的证书签发机构直到最终可信点为止的证书合法性验证算法。
X.509是ITU-T标准化部门基于他们之前的ASN.1定义的一套证书标准。
X.509是一种国际电信联盟(ITU-T)和国际标准化组织(ISO)共同制定的数字证书标准。它是公钥基础设施(PKI)中使用的一种标准,用于在网络环境中验证身份和加密信息。X.509证书包含了以下信息:
- 版本号:证书的格式版本。
- 序列号:由证书颁发机构(CA)分配的唯一序列号。
- 签名算法:用于签名证书的算法标识。
- 颁发者名称:颁发证书的CA的名称。
- 有效期:证书的有效期,包括开始日期和结束日期。
- 主体名称:证书所有者(通常是请求证书的实体)的名称。
- 主体公钥信息:证书所有者的公钥,以及与公钥相关的算法标识。
- 颁发者唯一标识符(可选):用于标识颁发者的可选信息。
- 主体唯一标识符(可选):用于标识主体的可选信息。
- 扩展(可选):提供额外信息的字段,例如关键用途(key usage)、扩展关键用途(extended key usage)、主题备用名称(subject alternative name)等。
- 扩展:证书策略、证书路径构建等。
- 颁发者签名:CA对证书内容的数字签名,用于验证证书的完整性和真实性。
X.509证书广泛应用于SSL/TLS协议中,用于在互联网通信中建立安全连接。例如,当您访问一个使用HTTPS协议的网站时,浏览器会检查服务器提供的X.509证书,以确保连接的安全和服务器的身份。
X.509证书有三个主要版本:
- 版本1:最基本的证书格式,包含上述基本信息。
- 版本2:增加了关键用途和扩展关键用途字段。
- 版本3:增加了更多的灵活性和更多的扩展字段,是目前最常用的版本。
X.509证书的颁发和验证过程是确保网络安全通信的关键部分,它帮助防止中间人攻击和其他安全威胁。
X509和CA的关系
X.509是一种公钥基础设施(PKI)的标准格式,广泛应用于数字证书中,确保数据传输安全。CA(证书颁发机构)是创建和管理这些证书的可信机构。根CA信任模型是建立网络信任的关键。文章介绍了X.509证书的结构和内容,以及与CA的关系,同时提及了TLS/SSL协议在安全通信中的作用。
Certification authority (CA):被信任的证书颁发机构,负责创建公钥证书和提供数字签名。
CA certificate: 一个CA的公钥证书,可以是自己发给自己的,也可以来自别的CA。
所谓CA(Certificate Authority)认证中心,即采用PKI(Public Key Infrastructure)公开密钥基础架构技术,专门提供网络身份认证服务的机构。CA可以是民间团体,也可以是政府机构。CA负责签发和管理数字证书,且具有权威性和公正性,它的作用就像我们现实生活中颁发证件的公司,如护照办理机构。
根CA信任模型
面对全球这么广泛的用户,仅仅一个CA显然不够。PKI引入“信任模型”,用于描述和分析同一CA管理域内部或不同CA管理域之间信任关系的建立和传递过程。PKI信任模型主要采用根CA信任模型,也称作严格层次信任模型。
CA是一个宏观的概念,实现起来,要follow一个标准。这个标准是x509。 X.509是一种非常通用的证书格式
CA服务器是一个应用程序,他从技术上实现符合PKI和X509等相关证书的签发和管理功能。
证书分为CA证书和用户证书
证书的封装类型
- X509证书
X509证书包含的内容主要是用户信息、证书序列号、签发者、有效期、公钥、其他信息及CA的数字签名。 - PKCS#12证书
- PKCS#7证书