- 1、本文档共58页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[工学]PKI和X509
层次结构CA中证书的验证 假设个体A看到B的一个证书 B的证书中含有签发该证书的CA的信息,沿着层次树往上找,构成一条证书链,直到根证书 验证过程: 沿相反方向,从根证书开始,依次往下验证每一个证书中的签名,一直到验证B的证书的签名 根证书是自签名的,用它自己的公钥进行验证 如果所有的签名验证都通过,则A可以确定所有的证书都是正确的,如果他信任根CA,则他可以相信B的证书和公钥 问题:证书链如何获得? 证书链的验证示例 CA认证模型 如果用户 i和j都属于CA111,那么i和j之间的密钥交换,只需要持有CA111开具的证明书就可以,即:对用户 i和j的公钥PKi 和PKj分别盖章,如(Pki)ca111, (Pkj)ca111,那么用户i和j就能证明密钥是对方的密钥。 CA认证模型 如果用户j的证明书是CA122开具的,那么情况就复杂了,各自具有: i方:(Pki)ca111 , (CA111)CA11, (CA11)CA1 j方:(Pkj)ca122 , (CA122)CA12, (CA12)CA 这就形成了层层证明的证明链。这里,符号(CA11)CA1是CA1对C11的公钥盖章,只是证明本公钥是C11的。 CA 证明链 CA CA1 CA2 CA11 CA12 CA21 CA22 个人证书 个人证书 个人证书 个人证书 (PKI)CA11,(PKCA11)CA1,(PKCA1)CA (PKJ)CA21,(PKCA21)CA2,(PKCA2)CA i j 交叉认证 两个不同的CA层次结构之间可以建立信任关系 单向交叉认证 一个CA可以承认另一个CA在一定名字空间范围内的所有被授权签发的证书 双向交叉认证 以用户为中心的信任模型 对于每一个用户而言,应该建立各种信任关系,这种信任关系可以被扩展 例子:用户的浏览器配置 公钥基础设施PKI X.509证书 目录 X.509 证书 X.509方案的核心是与每个用户相关联的公钥证书。这些用户证书是由可信任的认证中心(CA)创建的,并由CA或用户放在目录中。目录服务器本身不负责公钥的产生和认证功能;它只为用户获取证书提供一个容易访问的场所。 X.509证书格式 发放者名称 版本 证书序列号 签名算法及参数 有效期 主体公钥信息 签名 版本2 版本3 主体名称 发布者标识符 主体标识符 版本1 证书 此标准采取以下表示法来定义证书: CAA 其中, YX=由验证中心Y发放的用户X的证书 CA用它的私钥对证书进行签名。如果一个用户知道相应的公钥,那个用户就可以验证由CA签名过的证书是否合法。 下面的过程可以使A得到B的公钥 A从目录中得到经过X1签名的X2的证书 由于A安全地知道X1的公钥,并通过X1对该证书的签名验证它 A可以从X2的证书中得到它的公钥 获得用户证书 A使用了一个证书链来得到B的公钥。使用X.509中的表示法,这个链可以表述如下: X1X2X2B 通过同样的方式,B可以得到A的公钥 X2X1X1A 获得用户证书 这种方案不必局限于由两个证书组成的一条链。一个任意长的CA路径都可以用类似的方法产生一个链。一个拥有N个要素的链可以表述如下: X1X2X2X3…XNB 证书撤销 有时会希望在证书过期前就将其撤销,这由于下面的原因之一: 用户的私钥被认为已泄漏。 用户不再被CA信任。 CA的证书被认为已泄漏。 CRL(证书撤销列表) 每个CA都必须存储一个包含由其发放的所有被撤销而未到期证书的列表,这既包括给用户发放的证书,也包括给其他CA发放的证书。这些列表也应该放在目录中。 每一个存放在目录中的CRL都由证书发放者签名。并且包括:发放者的名称,列表创建日期,下一个CRL计划发放日期和每一个被撤销证书的入口。 X.509 单向认证 单向认证包括一次A到B的数据传输,并确认: A的身份(ID),并且此消息由A产生。 此消息打算传给A. 消息的完整性和原始性(即消息没有被多次传递) 单向认证 tA: 时间戳,时间戳包括一个可选的生成时间和一个过期时间,这防止了传送延迟的消息。 rA: 现时,现时可以用来检测重放攻击。现实值在消息过期时间之内必须是唯一的。 sgnData:此消息需要被传送。 双向认证 双向认证除了确定单向认证的三个要素外,还需: B的身份,并且应答消息由B产生 这个消息打算传给A 应答消息的完整性和原始性 三向认证 三向认证包括一条从A到B的最终信息。它包含一个被签名的现时rB的副本。这个设计的目的不需要检查时间戳:这是因为两个现时都由对方反馈回来,每一方都可以检查返回的现时来检测重放。这种方式在没有可用的同步时钟时是必要的。 X.509版本3 版本3证书扩展可分为三个主
文档评论(0)