网站大量收购独家精品文档,联系QQ:2885784924

X.509_数字证书结构和实例讲解.doc

  1. 1、本文档共13页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
X.509_数字证书结构和实例讲解

X.509 数字证书结构和实例 一、?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)等。 顺序类型的数据块值由按给定顺序成员成员数据块值按照顺序组成; 选择类型的数据块值由多个成员数据数据块类型中选择一个的数据块值; 集合数据块类型由成员数据块类型的一个或多个值构成。 这个标识字节的结构如下: 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] [UNIVERSAL 2] INTEGER [整型值] [UNIVERSAL 3] BIT STRING [0位或多位] [UNIVERSAL 4] OCTET STRING [0字节或多字节] [UNIVERSAL 5] NULL [UNIVERSAL 6] OBJECT IDENTIFIER [相应于一个对象的独特标识数字] [UNIVERSAL 7] OBJECT DESCRIPTOR ?[一个对象的简称] [UNIVERSAL 8] EXTERNAL, INSTANCE OF [ASN.1没有定义的数据类型] [UNIVERSAL 9] REAL [实数值] [UNIVERSAL 10] ENUMERATED [数值列表,这些数据每个都有独特的标识符,作为ASN.1定义数据类型的一部分] [UNIVERSAL 12] UTF8String [UNIVERSAL 13] RELATIVE-OID [UNIVERSAL 16] SEQUENCE, SEQUENCE OF [有序数列,SEQUENCE里面的每个数值都可以是不同类型的,而SEQUENCE OF里是0个或多个类型相同的数据] [UNIVERSAL 17] SET, SET OF [无序数列,SET里面的每个数值都可以是不同类型的,而SET OF里是0个或多个类型相同的数据] [UNIVERSAL 18] Numeric String [0-9以及空格] [UNIVERSAL 19] Printable String [A-Z、a-z、0-9、空格以及符号()+,-./:=?] [UNIVERSAL 20] TeletexString, T61String [UNIVERSAL 21] VideotexString [UNIVERSAL 22] IA5String [UNIVERSAL 23] UTCTime [统一全球时间格式] [UNIVERSAL 24] GeneralizedTime [UNIVERSAL 25] GraphicString [UNIVERSAL 26] VisibleString, ISO646String [UNIVERSAL 27] GeneralString [UNIVERSAL 28] UniversalString [UNIVERSAL 29] CHARACTER STRING [UNIVERSAL 30] BMPString [UNIVERSAL 31] reserved for future use 当Bit8-bit7为context-specific(10)时,bit5-bit1的值表示特殊内容: [0] –- 表示证书的版本 [1] –- issuerUniqueID,表示证书发行者的唯一id [2] –- subjectUniqueID,表示证书

您可能关注的文档

文档评论(0)

33ggoup + 关注
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档