证书基本结构与编码.pptx
《证书基本结构与编码.pptx》由会员分享,可在线阅读,更多相关《证书基本结构与编码.pptx(22页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、前言前言 计算机和网络技术的发展将人类带入信息化社会计算机和网络技术的发展将人类带入信息化社会,随之而来的是随之而来的是倍受关注的信息安全问题。现代密码学己成为信息安全技术的核心倍受关注的信息安全问题。现代密码学己成为信息安全技术的核心,基于数字签名的数字证书是现代密码学主要研究的内容之一。数字基于数字签名的数字证书是现代密码学主要研究的内容之一。数字证书技术在身份识别和认证、数据完整性、抗抵赖等方面具有其他证书技术在身份识别和认证、数据完整性、抗抵赖等方面具有其他技术所无法替代的作用技术所无法替代的作用,它在军事、电子商务和电子政务等领域有着它在军事、电子商务和电子政务等领域有着极广泛的应用
2、。极广泛的应用。数字证书在信息传输中起着验证用户身份数字证书在信息传输中起着验证用户身份,保证信息传递的安全保证信息传递的安全性、合法性和完整性等作用性、合法性和完整性等作用,它在公钥基础设施中是重要的一环。应它在公钥基础设施中是重要的一环。应用第三方软件对数字证书解析存在着安全性无法彻底保障用第三方软件对数字证书解析存在着安全性无法彻底保障,证信息分证信息分析不彻底等诸多问题析不彻底等诸多问题,因此对数字证书的验证过程的研究分析因此对数字证书的验证过程的研究分析,实现实现数字证书验证代码的完全自主开发数字证书验证代码的完全自主开发,为保证信息传输安全为保证信息传输安全,建立有效建立有效的公钥
3、基础设施起了重要的作用。的公钥基础设施起了重要的作用。本篇的目的是对数字证书进行详尽的分析,包括数字证书的基本篇的目的是对数字证书进行详尽的分析,包括数字证书的基本结构、描述方法、编码以及本结构、描述方法、编码以及X.509X.509数字证书实例等。数字证书实例等。第1页/共22页主要内容uu 数字证书的基本结构数字证书的基本结构uu 数字证书的描述方法数字证书的描述方法uu 数字证书的编码数字证书的编码uuX.509X.509数字证书结构数字证书结构uuX.509X.509数字证书详细描述数字证书详细描述uuX.509X.509数字证书实例数字证书实例第2页/共22页数字证书的基本结构一张数
4、字证书由一张数字证书由证书内容证书内容、签名算法签名算法和和签名结果签名结果组成组成证书内容签名算法签名结果证书的基本结构第3页/共22页数字证书的基本结构证书实例:在证书实例:在InternetInternet选项选项-内容内容第4页/共22页数字证书的基本结构证书内容包括:证书内容包括:版本号版本号 证书主体证书主体 主体公钥内容主体公钥内容 签发者签发者 序列号序列号 有效期有效期 扩展项扩展项第5页/共22页数字证书的基本结构 版本号版本号数字证书有自己的格式,而这个格式可能会不断改进。为了让所有应用系统正确地识别证书内容,需考虑数字证书有自己的格式,而这个格式可能会不断改进。为了让所
5、有应用系统正确地识别证书内容,需考虑向前和向后兼容。因此,在证书中标明自己的格式版本有利于应用程序根据不同的格式定义来正确阅读不同向前和向后兼容。因此,在证书中标明自己的格式版本有利于应用程序根据不同的格式定义来正确阅读不同的证书。的证书。证书主体证书主体11)证书的持有者(订户)证书的持有者(订户)22)不仅具有证书的使用权,而且具有证书的所有权)不仅具有证书的使用权,而且具有证书的所有权33)不仅可以把证书复制或传递给别人,更重要的是,证书主体拥有证书中的身份、公钥和对应的私钥)不仅可以把证书复制或传递给别人,更重要的是,证书主体拥有证书中的身份、公钥和对应的私钥 主体公钥内容主体公钥内容
6、11)PKIPKI是算法无关的,实际中可以使用多种算法是算法无关的,实际中可以使用多种算法22)公钥信息中首先需要指明所用的公钥算法,随后才是公钥信息本身)公钥信息中首先需要指明所用的公钥算法,随后才是公钥信息本身 签发者签发者证书管理机构证书管理机构-CA-CA注:注:CACA是是PKIPKI系统中通信双方都信任的实体,被称为可信第三方(系统中通信双方都信任的实体,被称为可信第三方(TrustedThirdPartyTrustedThirdParty,简称,简称TTPTTP)第6页/共22页数字证书的基本结构 序列号序列号11)证书编号)证书编号22)如果签发者命名能满足唯一性要求的话,用)
7、如果签发者命名能满足唯一性要求的话,用“签发者签发者”和和“序列号序列号”就可以唯一的标识任何一张数就可以唯一的标识任何一张数字证书字证书 有效期有效期 1 1)持有数字证书也就享有了证书签发结构通过证书提供的安全服务,其中还包含着责任和一些法律义务持有数字证书也就享有了证书签发结构通过证书提供的安全服务,其中还包含着责任和一些法律义务 2 2)订户享受的服务是有时效性的,因此,数字证书应具有一个有效期。订户享受的服务是有时效性的,因此,数字证书应具有一个有效期。3 3)长期)长期使用同一密钥是不安全的,而且证书持有者的信息经过一段时间可能会改变,所以需要为证书设使用同一密钥是不安全的,而且证
8、书持有者的信息经过一段时间可能会改变,所以需要为证书设置一个包含起、止时间的置一个包含起、止时间的“有效期有效期”。4 4)本质上)本质上是是CACA负责维护证书状态的时间范围,在此时间内负责维护证书状态的时间范围,在此时间内CACA担保证书持有者和公钥绑定关系的正确性担保证书持有者和公钥绑定关系的正确性 扩展项扩展项 提供为用户或者公开密钥和证书管理等级制度相结合的附加属性的方法提供为用户或者公开密钥和证书管理等级制度相结合的附加属性的方法第7页/共22页数字证书的描述方法 证书的描述证书的描述需要使用精确的语言将内容需要使用精确的语言将内容准确的、无二义的准确的、无二义的表达出来,以便表达
9、出来,以便PKIPKI系统中的各个组件都能正确的系统中的各个组件都能正确的处理证书,各种应用系统也能正确的从证书中获取公钥和持有者的信息。处理证书,各种应用系统也能正确的从证书中获取公钥和持有者的信息。基本要求基本要求 1 1)简明的)简明的 2 2)无歧义)无歧义 自然语言自然语言和和程序设计语言程序设计语言无法满足要求无法满足要求 1 1)自然语言自然语言 a.a.多种语言多种语言 b.b.同语种中一词多义和一义多词同语种中一词多义和一义多词 2 2)程序设计语言程序设计语言 a.a.有较严格的语法和较清晰的数据结构表达方式有较严格的语法和较清晰的数据结构表达方式 b.b.但由于平但由于平
10、台相关的编译器不同,同一数据类型在不同系统中的实现就可能有差异。程序语言在内容的台相关的编译器不同,同一数据类型在不同系统中的实现就可能有差异。程序语言在内容的顺序上也没有严格规定。顺序上也没有严格规定。ASN.1 ASN.1 ASN.1 ASN.1(Abstract Syntax Notation oneAbstract Syntax Notation oneAbstract Syntax Notation oneAbstract Syntax Notation one)抽象语法表示法抽象语法表示法可以满足要求可以满足要求 ASN.1 ASN.1 语法纪法标准是一种既简单,又没有歧义的内容描
11、述语言。语法纪法标准是一种既简单,又没有歧义的内容描述语言。第8页/共22页数字证书的描述方法 ASN.1 ASN.1语法记法标准语法记法标准 1 1)AbstractSyntaxNotationoneAbstractSyntaxNotationone抽象语法表示法抽象语法表示法 2 2)是描述数据的表示、编码、传输、解码的灵活的记法。它提供了一套正式、无歧义和精确的规则以)是描述数据的表示、编码、传输、解码的灵活的记法。它提供了一套正式、无歧义和精确的规则以描述独立于特定计算机硬件的对象结构。描述独立于特定计算机硬件的对象结构。3 3)ASN.1ASN.1是是ISOISO和和ITU-TITU
12、-T的联合标准,最初是的联合标准,最初是19841984年的年的CCITTX.409:1984CCITTX.409:1984的一部分。由于其广泛应用,的一部分。由于其广泛应用,19881988年年ASN.1ASN.1移到独立标准移到独立标准X.208X.208,19951995年进行全面修订后变成年进行全面修订后变成X.680X.680系列标准。系列标准。4 4)ASN.1ASN.1本身只定义了表示信息的抽象句法,但是没有限定其编码的方法。本身只定义了表示信息的抽象句法,但是没有限定其编码的方法。ASN.1 ASN.1 首先定义一定数量的首先定义一定数量的“简单类型简单类型”,然后通过构造出各
13、种较复杂的,然后通过构造出各种较复杂的“构造类型构造类型”1 1)简单类型)简单类型 2 2)构造类型)构造类型 3 3)其它关键字)其它关键字第9页/共22页数字证书的描述方法 简单类型简单类型BITSTRING比特串(O和1组成)BOOLEAN布尔型(取TRUE或FALSE)INTEGER整数NULL空值OBJECT IDENTIFIER对象标识符OCTET STRING字节串PrintableString可打印字符串UTCTime“协调世界时”(UTC)GeneralizedTime通用时间第10页/共22页数字证书的描述方法 构造类型构造类型SEQUENCE表示1个或多个字段组成的有序
14、序列SEQUENCEOF表示0个或多个特定类型字段的有序序列SET表示1个或多个字段组成的无序集合SETOF表示0个或多个特定类型字段的无序集合 其它关键字其它关键字CHOICEANYOPTIONALDEFAULT第11页/共22页数字证书的编码 利用利用ASN.1ASN.1可以准确地定义证书应该包含的内容。即可以准确地定义证书应该包含的内容。即ASN.1ASN.1可以定义证书应该包含的内容可以定义证书应该包含的内容的准确类型。的准确类型。无二义性的内容类型的实际取值无二义性的内容类型的实际取值 可以说可以说ASN.1ASN.1解决的是高层设计者之间的交流问题,编码方法要解决的是机器间的交流问
15、解决的是高层设计者之间的交流问题,编码方法要解决的是机器间的交流问题。题。编码的作用就是将各种用编码的作用就是将各种用ASN.1ASN.1定义的数据类型的值对应到比特流,以便在不同通信实体定义的数据类型的值对应到比特流,以便在不同通信实体之间传递,而且使得各通信实体对于所传递的信息理解没有歧义。之间传递,而且使得各通信实体对于所传递的信息理解没有歧义。1 1)“TLV”“TLV”方式方式 可以完整表示特定类型的数据可以完整表示特定类型的数据2 2)类型)类型typetype、长度、长度lengthlength和值和值valuevalue3 3)解码时,首先识别数据的类型,即可选定处理的方法;然
16、后得到数据的长度,即可)解码时,首先识别数据的类型,即可选定处理的方法;然后得到数据的长度,即可进行处理的准备工作;最后就可以正确的得到数据本身的值。进行处理的准备工作;最后就可以正确的得到数据本身的值。第12页/共22页数字证书的编码 简单类型的编码简单类型的编码BOOLEAN布尔型的数据,只有两种可能的取值“TRUE”(0 xFF)和“FALSE”(0 x00)INTEGER整数类型BITSTRINGOCTETSTRING字符码串NULL一个特殊的值,表示“无”或“空”OBJECT IDENTIFIER对象标识符 OIDPrintableString任意长度的ASCII字符串UTCTime
17、协调世界时GeneralizedTime类似UTCTime第13页/共22页数字证书的编码 构造类型及其他构造类型及其他SEQUENCE表示1个或多个字段组成的有序序列SEQUENCEOF表示0个或多个特定类型字段的有序序列SET表示1个或多个字段组成的无序集合SETOF表示0个或多个特定类型字段的无序集合CHOICEOPTIONALANYDEFAULT第14页/共22页X.509数字证书结构X.509X.509数字证书结构的基本部分数字证书结构的基本部分 版本号版本号 标识证书的版本标识证书的版本 序列号序列号 标识证书的唯一整数,由证书颁发者分配的本证书的唯一标识符。标识证书的唯一整数,由
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 证书 基本 结构 编码
限制150内