- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
/watertao/archive/2012/04/08/2437720.htmlX.509 数字证书结构简介1、简介X.509被广泛使用的数字证书标准,是由国际电联电信委员会(ITU-T)为单点登录(SSO-Single Sign-on)和授权管理基础设施(PMI-Privilege Management Infrastructure)制定的PKI标准。X.509定义了(但不仅限于)公钥证书、证书吊销清单、属性证书和证书路径验证算法等证书标准。在X.509系统中,CA签发的证书依照X.500的管理,绑定了一个唯一甄别名(DN-Distinguished Name ),可以包含多个字段和值,还可以支持别名(Alternative Name )。 一个组织受信任的根证书会分发给所有需要用到的PKI系统的员工手上。主流浏览器:IE、Netscape/Mozilla,Opera和Safari会预先安装一部分根证书,这些根证书都是受信任的证书认证机构CA,这样他们颁发的证书,浏览器将可以直接信任。虽然用户可以删除或者禁用这些根证书,但事实上,用户很少这么做。在最新的微软平台,甚至会在用户移除了预先安置的根证书后,当用户再访问这些被删除的根证书网站的时候,会自动将这些根证书恢复到信任列表中。 X.509包含了一个证书吊销列表(CRL-Certificate Revocation List)实施的标准,这在PKI系统中经常被人所忽略。IETF提出的检查证书有效性的方法是在线证书状态(OCSP- Online Certificate Status Protocol)。Firefo3 缺省就是使用OCSP协议。?2、历史和用途 X.509最初是在1988年的7月3日发布的,版本是X.509 v1,当时是作为ITU X.500目录服务标准的一部分。它设定了一系列严格的CA分级体系来颁发数字证书。和其他网络信任模型(譬如PGP)对比,任何人,不仅仅是特定的CA,可以签发并验证其他密钥证书的有效性。 X.509 2 版引入了主体和签发人唯一标识符的概念,以解决主体和/或签发人名称在一段时间后可能重复使用的问题。大多数证书监视文档都极力建议不要重复使用主体或签发人名称,而且建议证书不要使用唯一标识符。版本 2 证书尚未得到广泛使用。 X.509 3 版是最新的版本(1996 年)。它支持扩展的概念,因此任何人均可定义扩展并将其纳入证书中。现在常用的扩展包括:KeyUsage(仅限密钥用于特殊目的,例如“只签”)和 AlternativeNames(允许其它标识与该公钥关联,例如 DNS 名、电子邮件地址、IP 地址)。扩展可标记为“极重要”,以表示应选中该扩展并强制执行或使用。例如,如果某一证书将 KeyUsage 扩展标记为“极重要”,而且设置为“keyCertSign”,则在 SSL 通信期间该证书出现时将被拒绝,因为该证书扩展表示相关私钥应只用于签写证书,而不应该用于 SSL。?3、X.509数字证书的编码 X.509证书的结构是用ASN1(Abstract Syntax Notation One)进行描述数据结构,并使用ASN1语法进行编码。 ASN1采用一个个的数据块来描述整个数据结构,每个数据块都有四个部分组成: 1)数据块数据类型标识(一个字节) 数据类型包括简单类型和结构类型。 简单类型是不能再分解类型,如整型(INTERGER)、比特串(BIT STRING)、字节串(OCTET STRING)、对象标示符(OBJECT IDENTIFIER)、日期型(UTCTime)等。 结构类型是由简单类型和结构类型组合而成的,如顺序类型(SEQUENCE, SEQUENCE OF)、选择类型(CHOICE)、集合类型(SET)等。 顺序类型的数据块值由按给定顺序成员成员数据块值按照顺序组成; 选择类型的数据块值由多个成员数据数据块类型中选择一个的数据块值; 集合数据块类型由成员数据块类型的一个或多个值构成。 这个标识字节的结构如下: 1.1)Bit8-bit7用来标示 TAG 类型,共有四种,分别是universal(00)、application(01)、context-specific(10)和private(11)。 1.2)Bit6表示是否为结构类型(1位结构类型);0则表明编码类型是简单类型。 1.3)Bit5-bit1是类型的TAG值。根据bit8-bit7的不同值有不同的含义,具体含义见下表。 当Bit8-bit7为universal(00)时,bit5-bit1的值表示不同的universal的值: 标记(TAG) 对应类型 备注 [UNIVERSAL 1] BOOLEAN [有两个值:false或true]
文档评论(0)