第一章绪论
课题背景及意义公钥基础设施PKI(PublicKeyInfrastructure)是普适性的安全基础设施,它能为各种不同安全需求的用户提供网上安全服务,主要有身份识别与鉴别(认证)、数据保密性、数据完整性、不可否认性及时间戳服务等川。其核心是数字证书,基本原理是使用数字证书将实体身份与其公钥绑定在一起,从而提供安全、灵活的身份认证。采用基于公钥密码技术构建的PKI是目前公认的解决大规模、分布式开放网络环境下信息安全问题最可行、最有效的办法。PKI作为一种基础设施,其应用范围非常广阔,并且还在发展之中。PKI已经在安全电子邮件、安全Web服务、安全VPN等领域得到了成熟的应用。SSL,TLS等广泛应用的安全协议就是基于证书设计的。当前,世界各国都在积极推进本国的PKI/CA体系的建设。美国建立了联邦桥CA-EMA2000,欧盟也建立了欧洲桥CA,在日本,有一半的企业采用了PKI,主要进行身份认证。在中国,截至2006年已建立的CA有100余家,还不算企业自建的CAo虽然PKI似乎能够解决绝大多数网络安全问题,并且己经形成了一套完整的解决方案,但是目前PKI在技术上还存在着一些问题,困扰着PKI的发展。其中证书撤销是最主要的问题之一。
在证书的有效期内,由于某种原因(如私钥泄漏等)必须提前终止证书的有效性,即撤消证书。随着应用规模的增加,证书的数量也要成比例的增加,解决大规模PKI中的证书撤销变得尤为困难。据1994年MITRE公司向国家标准局NIST提交的报告[[3],证书撤销要占PKI系统中总开销(包括计算开销、通信开销等)的90%。因此,证书撤销是PKI中最受关注的重点之一,寻找一种有效的方案解决证书撤销问题是一个值得研究的课题。1.2国内外研究现状证书撤销的实现机制有很多种,具有代表性的是证书撤销列表(CertificateRevocationList,CRL)[4]和在线证书状态协议(OnlineCertificateStatusProtocol,OCSP)[5]oCRL是由CA周期性发布的一个签名的数据结构,它包含了所有已撤销并仍在有效期内证书的序列号列表。当用户需要检查某个证书是否撤销时,可从指定位置(如证书目录)下载最新的CRL到本地主机,并检查该证书的序列号是否在CRL中,从而来确定证书是否撤销。由于CRL要保存所有已撤销并仍在有效期内证书的序列号,因此,在大规模PKI应用中随着证书的数量增加,CRL也会变得很大。为了缓解这个问题,产生了一些对CRL的改进机制,主要包括:增量CRL,CRL分布点、重定向CRL和间接CRL等。但这些机制并没有从根本上解决CRL的问题,用户在使用这些机制检查证书是否撤销时仍需要较大的下载量。在线证书状态协议(OnlineCertificateStatusProtocol,OCSP)克服了CRL存在的不足。
OCSP响应器向查询证书是否撤销的用户返回一个签了名的响应信息,这个响应信息能够证明证书是否撤销,它与CRL相比要小的多。OCSP的一个明显不足就是要求用户在整个验证过程中必须一直保持在线。针对CRL存在的问题,专家学者们提出了一些基于认证字典的撤销机制,如NOVOMODO系统、证书撤销树等。认证字典是一种数据结构,它用于证明一个元素是否属于某个集合。基于认证字典的机制通过向查询的用户返回一个证据来证明证书是否撤全肖。NOVOMODO系统也是一种在线查询机制,可以有效缩减用于验证证书状态信息量,其主要思想是:CA周期性地利用Hash函数对系统中所有证书的状态(即是否撤销)给出证明。但该方案验证证书是否撤销的策略灵活性较差。证书撤销树(CertificateRevocationTree,CRT)是由Kocher提出的基于Hash树的证书撤销机制。CRT也可以有效缩减验证信息的大小,但是树的更新(向树中插入或删除一个已撤销的证书)成本较高,任何更新将会导致整个树的重新构造。Naor-Nissm提出了一个2-3Hash树方案(简称2-3CRT),该机制弥补了CRT存在的问题,即插入或删除一个已撤销的证书不需要重新构造整个树,而只改变一条路径上相关结点,但该方案中树节点的数据结构相对复杂一些。
基于CRT的方案也是一种在线查询机制,它同样能够缩减验证信息的大小,但该方案操作较为复杂,并且存在欺骗的可能。尽管有许多证书撤销机制己经被提出,但在实际应用中被采用的并不多。目前,绝大多数PKI系统使用的撤销机制是CRL与OCSP。其中,CRL是几乎所有PKI系统都必有的撤销机制,而OCSP通常作为一个可选项独立部署。也有个别公司针对CRL的不足使用了不同的撤销机制,如ValiCert公司的证书撤销树CRT,CoreStreetLtd公司的miniCRL等。综上所述,实现证书撤销的机制有多种,但主要可分为三类,一类是基于CRL的机制,一类是在线状态查询机制,还有一类是基于认证字典的机制,但从提供服务的方式来看,基于认证字典的机制也是一种在线查询机制。基于CRL的机制支持离线操作,但下载和处理的信息量较大。在线查状态询机制(如OCSP)可以缩减通信量和提高撤销信息的及时性,但不支持离线操作。PKI作为一种普适性的安全基础设施,要求能够满足不同用户的不同需求,为此,在大规模应用中PKI系统常常要同时支持两种甚至是两种以上的撤销机制,如大多数PKI系统都既支持CRL也支持OCSP,这就增加了开发PKI系统的费用和难度。设计一种兼顾两者优点的证书撤销机制,对于缩减PKI系统的费用、推动PKI的发展具有一定的意义。
参考文献
[1」关振胜,公钥基础设施PKI及其应用【M],北京,电子工业出版社,2007. 7
[2] ITU-T Recommendation X.509(1997-E) (equivalent to ISO/IEC 9594-8, 1997).InformationTechnology一Open System Interconnection一The Directory:Authentication Framework[S].ITU-T, 1997
[3]王永静,谢冬青,陈华勇,证书撤销机制的分析与设计【J],计算机应用研究,2004. 9
[4] Internet X. 509 Public Key Infrastructure Certificate and CRL Profile. IETF. RFC2459. 1999. 1
[5] X. 509 Internet Public Key Infrastructure Online Certificate Status Protocol一OCSP .IETF.RFC2560. 1999. 7
[6] DouglasR.Stinson著,冯登国译,密码学原理与实践(第二版)[M],北京,电子工业出版社,2003. 2
[7] Internet X.509 Public Key Infrastructure Certificate Management Protocols .IETF RFC2510.1999. 3
[8] Kohnfelder, L. M, Towards A Practical Public-key Cryptosystem[J],B. S. Thesis, supervisedby L. Adleman. MIT laboratory for computer Science, 1978.5
[9] Barbara Fox and Brian LaMacchia, "Certificate Revocation:Mechanics and Meaning,”[J]in FC' 98 [7],pp. 158一164, 1998.
[10] Andre Arnes,Mike,Just,Svein J. Knapskog} Steve Lloyd Henk Meijer, Selecting Revocation Solutions for PKI[J],Proceedings of NORDSEC 2000 Fifth Nordic Workshop onSecure IT Systems.
[11] Rondald L.Rivest "Can We Eliminate Certificate Revocation Lists?" [J] In Proceedingsof Financial Crypttography 1998 Springer. February 1998
[12] Patrick McDaniel, Aviel Rubin, "A Response to `Can We Eliminate Certificate RevocationLists?'”AT&T Labs Technical Report 31st Augest 1999
[13] Naor, Nissim, Certificate Update and Certificate Revocation In Proceeding of the 7th USENIX Security Symposium 1998
[14] Gauryv Jain,Certificate Revocation:a Survey[J],Compute Science Department ofUniversity of Pennsylvania,2001
[15] Internet X.509 Public Key Infrastructure Certificate and CRL Profile. IETF. RFC3280.2003. 8
[16」周永彬,PKI理论与应用技术研究【D],中国科学院研究生院博士学位论文,2003. 11
[17] CoreStreetLtd,CRLs Ultra Low Bandwidth Certificate Validation [EB/OL],http:// www. CoreStreetLtd. com, 2003
[18] Update to DirectoryString Processing in the Internet X.509 Public Key InfrastructureCertificate and Certificate Revocation List (CRL) Profil. IETF. RFC4630. 2006.8
[19] X.509 Internet Public Key Infrastructure Lightweight Online Certificate Status Protocol 一OCSP .IETF .RFC5019. 2007. 10
[20]明卿斯汉,周永彬,张振峰,刘娟,认证字典及其在PKI中的应用研究【J],北京,电子学报,2004. 8
[21] S. Micali,Efficient certificate revocation[J],Technical Memo MIT/LCS/TM-542b,
摘要 7-8
ABSTRACT 8
第一章 绪论 9-12
1.1 课题背景及意义 9
1.2 国内外研究现状 9-10
1.3 本文的主要工作 10-11
1.4 论文结构 11-12
第二章 证书撤销概述 12-18
2.1 证书及证书管理 12-14
2.1.1 基于 X.509标准的数字证书 12-13
2.1.2 证书管理 13-14
2.2 撤销信息及时性需求分析 14-16
2.3 证书撤销信息的发布 16-17
2.3.1 发布模型 16
2.3.2 发布机制的分类 16-17
2.3.3 发布要求 17
2.4 本章小结 17-18
第三章 证书撤销机制分析 18-29
3.1 证书撤销列表 CRL 18-22
3.1.1 增量 CRL 19
3.1.2 CRL分布点 19-20
3.1.3 重定向CRL 20
3.1.4 间接 CRL 20-21
3.1.5 最小 CRL(MiniCRL) 21-22
3.2 在线证书状态协议(OCSP) 22
3.3 基于认证字典的机制 22-26
3.3.1 认证字典的定义 23
3.3.2 NOVOMODO系统 23-24
3.3.3 基于树的撤销机制 24-25
3.3.4 基于单向累加器的撤销方案 25-26
3.4 对现有机制的分析 26-28
3.4.1 安全性分析 26-27
3.4.2 性能分析 27-28
3.4.3 结论 28
3.5 本章小结 28-29
第四章 基于主动状态证书的证书撤销机制 29-36
4.1 主动状态证书 29-31
4.1.1 ASC的格式 29
4.1.2 主动状态证书的ASN.1编码 29-31
4.2 方案描述 31-33
4.3 方案分析 33-35
4.3.1 安全性分析 33
4.3.2 性能开销 33-34
4.3.3 可操作性 34-35
4.3.4 结论 35
4.4 本章小结 35-36
第五章 在线 ASC中心的设计 36-47
5.1 基于 ASC机制的原型系统 36-37
5.1.1 在线 ASC中心的体系结构 36
5.1.2 系统功能 36-37
5.2 ASC服务的部署 37-40
5.2.1 ASC服务的定位 37-39
5.2.2 ASC签名证书的颁发 39
5.2.3 签名证书的验证 39-40
5.3 ASC的管理 40-45
5.3.1 ASC的签发 40-41
5.3.2 ASC的发布 41-42
5.3.3 ASC的存储 42-45
5.4 实现新机制中应注意的问题 45-46
5.4.1 安全考虑 45
5.4.2 更新周期的选择 45-46
5.4.3 效率问题 46
5.5 本章小结 46-47
第六章 在线 ASC中心在 EJBCA中的实现 47-59
6.1 采用 EJBCA作为证书系统的原因 47-48
6.2 EJBCA简介 48-50
6.2.1 EJBCA的特征 48
6.2.2 EJBCA的体系结构 48-50