X.509数字证书有效性自验证方案研究

上传人:ss****gk 文档编号:233897418 上传时间:2022-01-03 格式:DOCX 页数:10 大小:67.06KB
返回 下载 相关 举报
X.509数字证书有效性自验证方案研究_第1页
第1页 / 共10页
X.509数字证书有效性自验证方案研究_第2页
第2页 / 共10页
X.509数字证书有效性自验证方案研究_第3页
第3页 / 共10页
X.509数字证书有效性自验证方案研究_第4页
第4页 / 共10页
X.509数字证书有效性自验证方案研究_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《X.509数字证书有效性自验证方案研究》由会员分享,可在线阅读,更多相关《X.509数字证书有效性自验证方案研究(10页珍藏版)》请在金锄头文库上搜索。

1、X.509数字证书有效性自验证方案研究刘宝龙3陈桦西安工业大学计算机科学与工程学院,西安,710032摘要:X.509数字证书在部署时一个重要的环节就是证书有效性验证机制。Certificate Authority (CA)与客户Z间大规模的数据交互成了数字证书状态验证的一个主要瓶颈。本文 基于XML数字签名技术提出了一个新颖的数字证书有效性自验证方案,该方案的主要思想 是在证书中心颁发一个数字证书后,证书的拥有者添加证书状态并进行数字签名。这样一个 改进后的数字证书包含了该证书的当前有效状态信息,不需要客户与CA通信进行状态的验 证,使得数字证书有效性检验变得简单、高效。评估结果显示,提出的

2、数字证书自验证方案 比传统采用的证书作废列表(CRL)和证书状态在线验证协议(OCSP)具有更高的实际使 用效率,解决了数字证书实际使用吋有效性验证的瓶颈问题。关键词:X.509数字证书;X-Certificate;自验证;XML数字签名中图号:TP309.2文献标志码:A0.引言X.509数字证书在互联网及电子商务中扮演着重要的角色,如:电子商务中需要可追究 性保护等。山第三方捉供的X.509数字证书能够提供一个更加公平的环境支持。在数字证书 使用过程中,一个重要的问题是对作废证书的有效验证机制讥 数字证书作废是指一个证 书在其失效期未到之前所作的无效处理。规有两种主耍的证书有效性检杳方式为

3、:证书废除 列衣(Certificate Revocation List)和证书状态在线协议(Online Certificate Status Protocol)o 证书废除列表是山证书中心签名并颁发,它包含了己经废除或者撤销了的证书编号。这 个列表具有一个生命周期,因此,用户需要及吋下载更新最新的列表。然而,如果客户不能 及时下载更新证书废除列表,这种方法不能支持较为及时的证书状态更新信息%已有儿 种方法来提高数字证书有效性验证的效率。证书废除系统(Certificate Revocation System) 能够有效支持用户的证书验证卩5。在这个方案中,证书中心在创建一个数字证书时,选择

4、 两个随机数岭和X。,并计算Y = H(Yq),这里H是一个单向HASH算法,比如:SHAlo 收稿日期:2012年5月2日基金辅助:陕西省教育厅自然科学专项项目(12JK0728)|作者简介:刘宝龙(1976),男,西安工业大学计算机科学与工程学院,博士,主要从事XML 安全技术方而的研究。Email: liu.bao.long 电话:134745()6595水通信作者:刘宝龙 Emai 1: liu.bao.longho(然后使 X, = W(X0),X2 =H( XJ ,.,X365 = W(X364), I4,H 是一个单向 HASH 算法。 数字365代衣一年中每天的编号。这样,将Y

5、和X365包含在数字证书中,并与证书中其它 的信息一起签名,而人,X,X?64山证书中心秘密保管。假设在一年中第i天证书中心接 到了用户的验证请求,证书中心经过检查CRL后可以做出两种选择。如果证书作废了,那 么证书中心给用户返回70 ,用户在得到这个值后通过相同的HASH算法可以计算得到Y值, 这就预示看此证书已经作废。如果杳询的证书有效,那么证书中心返冋值X365T,用户在得 到该值后,经过365-/次运算,可以得到X365 ,山此可以判断该证书依然有效。尽管该方 法可以实现用户対证书有效性的自验证,但是该方法在分布式系统中部署较为困难国,在实 际使用中用户与证书中心的通信依然频繁,血且,

6、有效证书的验证过程增加了用户的使用负 担叫证书废除树(Certificate Revocation Tree)是另外一个比较著名的证书作废验证的解决方 案&证书废除树的建立基于Merkle散列函数。该树中叶子节点包含了在CRL中作废 的数字证书的序列号,证书中心对根节点签名通过山根节点到叶子节点的路径信息及证书 中心的数字签名来提供作废证书的状态佶息。这个方案的主耍缺陷是证书废除树的建立过程 较为复杂,验证时时间效率较低。Online Certificate Status Protocol (OCSP)是互联网工程任务组(IETF)颁布的一个在线证 书状态验证的解决协议。该协议需要客户向OCS

7、P服务器提交一个验证请求,同时,服务 器会查询特定的证书并返冋其状态信息。OCSP是一种在线服务,具有较好的及时性n但是, 对于每次用户提交的査询,服务器需耍创建一个数字签名,因此增加了客八与服务器的通信 负担。调杏显示,证书状态验证已经成了 PKI系统应用的-个主要瓶颈。为了解决这一问题, 本文采用XML数字签名技术提出了-个新颖的思路來解决证书的有效性验证问题U現的 次证书颁发了一个新的证书,数字证书的拥有者可以附加该证书最新的状态信息并签名。如 果证书在使用期间作废了,在拿到新的证书时同样可以执行以上的操作。证书拥有者的签名 仅仅用来保障该证书的状态信息。这样-来,用户尤需向证书中心提交

8、证书状态的查询,因 为证书中(2经包含了该证书的状态信息。本文提出的证书验证服务是一种离线的操作方式, 因此在实际使用中易于部署,通过效率比对,本文提出的方法比现有验证的方法效率更高。 1. X.509数字证书基本结构 图1 X.509数字证书结构X.509数字证书的基本结构如图1所示。基于此结构及X.509的颁发过程,一个X.509 数字证书的符号表示如公式1所示:0心=(J K “心 II S(d II KpubA )在公式I中,CeHa妆示CA颁发给实体A的原始X.509数字证书;IDa为实体A的 身份标识,比如A的名字或者电子邮件地址,与图1中的元素对应;Kpuh A是 经过CA认证的

9、从当前日期0到未来日期$为有效期的公钥,其中Kpi(bA对应图1中元素 , 対应元素, De 対应元素vNotAfter: “II”代表连接操作符; S(M,K中 1,)为图1中的签名算法,其中M是签名对象,K/曲为私钥。这样一来,数字证 书通过CA的签名提供了身份信息入和公钥Kpuh A之间的绑定。2. 基于XML的X.509数字证书(XCertifkate)基于XML数字签名的优点,本文对X.509证书做了一些改进来提高作废证书验证的 效率。改进后的X.509数字证书命名为“XCertificate”。X-Certificate山两部分纽.成,第一 部分为原始X.509数字证书,第二部分为

10、证书拥有者添加的状态信息。2.1 X-Certificate 定义X-Certificate的基本思路是当证书拥有者从CA收到原始X.509数字证书O/J后,在证书中添加状态信息,签名后生成新的证书C讪,其定义如公式(2)所示: C,”=(CMJS(SNIIT),K”“)(2)=(Cm JI S(伽,仙,巩 II 厂),K”心)二(T II II 心 II S(/7( II K咖丿) II (SSG II 叫 II II 旳 IIT ),K”“)英中,C纣匚是MCA颁发的原始数字证书,用于提供实体A与公钥KpiibA之间的绑 定;SN代表已经作废的数字证书序列号,作废证书的信息山CA处获取,并

11、山证书拥有者 检杳。厂是CA签名的时间戳,厂是证书拥有者数字签名的时间戳。力代表单向HASH算 法,用于产生摘要值。S(M,Km”)为签名算法,其中M是签名对象,K”i,为私仞。公式(2) 中包含了两个数字签名,分别山CA和证书拥有者生产,每个签名仅仅负责自C对应 的证书信息。如果一个用户拿到了一-个实体的证书,该证书的序列号属于SN,那么就预示着这个证 书己经作废。否则,通过两次数字签名的验证,就可以确定该证书的状态信息而不用与CA 进行通信。如果两个数字签名中的任意一个无效,则代农该证书12经作废了,其中,CA签 名无效表示实体身份标识与证书中的公钥不一致,如果证书拥有者签名验证无效则农明

12、该证 书已经作废。与使用一个证书状态在线服务器柑比,X-Certificate是一种离线的验证方式, 这种方式降低了 PKI或者XKMS的复杂性,证书的自我验证也降低了客户与服务器Z间的 通信负担。2.2基于X-Certificate的双方认证过程一个数字证书包含了信息加密或者验证数字签名的必耍信息。基于X-Certificate的以数 字签幺验证、身份认证及信息加密为目的过程描述如下: 获取证书用于签名验证第-步:EntityA(K/)riv A) EntityB其中,K丽欣为实体A的私钥;C/是MCA及证书拥有者分别签名的X-Certiticate;S(M,Kpriv)为即将发送给实体B的

13、签名信息。步骤1可以描述为:实体A将签名信息及证书(7讪发送给实体Bn实体B可以通过证书0讪获収实休A的公钥,通过验证CA的数字签名,可以保证实体A与相应公钥的绑定,通过验证实体A的数字签名可以确保当前获取的证书Cxml 的有效状态。如果两者均验证成功,则该证书可以用來验证发送过來的签名对象。 获取证书用于信息加密第一步:EntityB re(f,iestC Entity A这个步骤衣示实体B向实体A提岀了证书请求。第二步:EntityA(KpriA) 一EntityB实体A向实体B返冋数字证书CXfHl o第三步:EntityB valid,invalid实体B采用上述类似的方法验证获収的证

14、书,如果有效则使用该证书进行信息加密操 作,否则丢弃。3. 安全性能分析本文提出的X-Certificate数字证书在应用中面临着“中间人攻击”风险。这种攻击方式 在X-Certificate中主要有两种方式:公钥替换及伪造证书作废信息。 问题1: “中间人攻击”替换公钥假设CA颁发的数字证书中公钥为K,CA的数字签名为S(K,Kr)。如果攻击者 将证书中公钥替换为K”仍然使用CA的数字签名S(K,K/J,用户在采用CA 的公仞验证吋将会产生一个验证无效的数字签名结果。如果攻击者同吋替换K”替换为 心、S(K“,K甞)为S(K,K甞),那么他需要知道CA的私钥,这在实际应用中是 不可能的,因此,X-Certiticate可以抵制中间人攻击”替换公钥。 问题2: “中间人攻击”伪造证书作废信息假设证书拥有者添加的证书作废信息为厂,其数字签名为StKU 如果攻击者伪 造的作废信息为广,并且依然使用证书拥有者的数字签名sm 用户在验证作 废信息时将会产生一个验证无效的数字签名结果。同样,如果攻击者用厂替换厂,并使 用一-个新的数字签名S(厂,K/),那么他需要知道证书拥有者的私钥,这在应用中依然不可能。因此,X-Certificate可以抵制“中间人攻击”伪造证书作废信息。结合以上两点的分析,本文提出的数字证书自验证方案在实际使用中是安全可行的。4. 方

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号