PKI技术及其发展现状

来源:互联网 发布:农历日历软件下载 编辑:程序博客网 时间:2024/05/16 08:08

一、安全基础设施

普业适性基础就是一个大环境例如公司组织的基目本框架,一个基础设施可视作一个普适性基础。电力供应基础设施就是我们熟悉的一个例子。电源插座可以让各种电力设备获得运行所需要的电压和电流。基础设施所遵循的原理是:只要遵循需要的原则,不同的实体就可以方便地使用基础设施所提供的服务。

用于安全的基础设施必须遵循同样的原理,同样是要提供基础服务。安全基础设施就是为整个组织(“组织”是可以被定义的)提供安全的基本框架,可以被组织中任何需要安全的应用和对象使用。安全基础设施的“接入点”必须是统一的,便于使用(就象墙上的电源插座一样)。只有这样,那些需要使用这种基础设施的对象在使用安全服务时,才不会遇到太多的麻烦。

      安全基础设施的主要目标就是实现“应用支撑”的功能。从某种意义上说,电力系统就是一个应用支撑,它可以让“应用”,如烤面包机、电灯正常地工作。进一步地讲,由于电力基础设施具有通用性和实用性的特点,使它能支撑新的“应用”(如吹风机),而这些“应用”在电力基础设施设计的时候,还没有出现。

安全基础设施能够让应用程序增强自己的数据和资源的安全.以及与其它数据和资源交换中的安全。怎样使增加安全功能变得简单、易于实现是最有用的。甚至可以说,使用安全基础设施应当象将电器设备插入墙上的插座一样简单:

       ( 1 )具有易于使用、众所周知的界面;

      ( 2 )基础设施提供的服务可预测且有效;

( 3 )应用设备无需了解基础设施如何提供服务。以烤面包机为例,对烤面包机来说,电能怎样从发电站传送到房间,或者传送到房间里墙上的各种各样的插座是没有区别的。可是,当烤面包机一旦插入任何一个墙上的电源插座。它就可以从众所周知的界面(电源插座)得到指定的电压和电流,从中获取能量r 并正常地工作。安全基础设施必须具有同样友好的接入点,为应用设备提供安全服务。应用设备无须知道基础设施如何实现安全服务,但基础设施能够一致有效地提供安全服务才是最重要的。目前最流行的、最有诱惑力的安全基础设施是公开密钥基础设施(Public Keynfrastoucture PKI )。简单地讲PKI就是一个用公钥概念和技术实施和提供安全服务的具有普适性的安全基础设施。

二、PKI的定义

PKI的基本定义十分简单。所谓PKI就是一个用公钥概念和技术实施和提供安全服务的具有普适性的安全基础设施。但PKI的定义在不断的延伸和扩展。库也是扩展的PKI系统的一个组成部分(因为一个大阴没有证书库是无法使用的)。

(1)证书撤消。CA 签发证书来捆绑用户的身份和公钥。可是在现实环境中,必须存在一种机制来撤消这种认可。通常的原因包括用户身份的改变(例如婚前姓名改为婚后姓名)或私钥遭到破坏(例如被黑客发现),所以必须存在一种方法警告其他用户不要再使用这个公钥。在PK1 中这种告警机制被称为证书撤销。

(2)密钥备份和恢复。在很多环境下他们通过对一个包含身份信息和相应公钥的;阅数据结构进行数字签名来捆绑用户的公钥和身份户嘛声这个数据结构被称为公钥证书(简称证书)。尽管CA 不是每个可想象到的PKI的必须部分(特别是范围有限并且相对封闭的环境中,用户可以作为自己的权威机构), CA 是很多大规模PKI的关键组成部分。

(3)证书库。很容易认识到CA 只能解决前面章节所提问题的一部分(所提问题就是A 需要找到日的公钥以便和B 进行保密通信)。证书机构颁发了一个证书来捆绑日的身份和公钥,但除非A 能容易地找到证书,否贝lJ 和没有创建证书一样。必须存在某种鲁棒的、规模可扩充的在线资料库系统,以便A 能找到安全通信需要的证书。所以证书私钥丢失,这些文件将无法恢复,可能会对这次业务造成严重伤害甚至停止。一个解决方案是为多个接收者加密所有数据,但对于高度敏感数据,这k 个方法是不可行的。一个更尸可行和通用的可接受的方法是备份并能恢复私钥。

(4)自动密钥更新。一个证书的有效期是有限的,这既可能是理论上的原因,诸如关于当前非和密钥长度进行分析的知识现状,也可能是基于实际估计的因素(“我们频繁地变换密钥,以保证每个密钥只保护x 兆字节的数据”)。可是无论是什么原因,在很多户K )环境中,一个已颁发的证书需要“过期”,以便更换新的证书,这个过程被称为“密钥更新或证书更新”。绝大多数PKI用户发现用手工操作的方式定期更新自己的证书是一件令人头痛的事情。用户常常忘记自己证书过期的时间,他们往往是在认证失败时才发现问题,届时显得太晚了。除非用户完成了密钥更新过程,否则他们无法获得PKI的相关服务。进一步地讲,当用户处于这种状态,更新过程更为复杂,要求与CA 带外交换数据(类似于初始化过程)。解决方法是由PKI本身自动完成密钥或证书的更新,完全无须用户的干预。无论是用户的证书用于何种目的,都会检查有效期,当失效日期到来时,启动更新过程,生成一个新证书来代替旧证书,但用户请求的事物处理继续进行。

(5)密钥历史档案。密钥更新(无论是人为还是自动)的概念,意味着经过一段时间,每个用户都会拥有多个“旧”证书和至少一个“当前”的证书。这一系列证书和相应的私钥组成用户的密钥历史档案(可能应当更正确地称为密钥和证书历史)。记录整个密钥历史是十分重要的。因为A 自己五年前加密的数据(或其他人为A 加密的数据)无法用现在的私钥解密。A 需要从他的密钥历史档案中找到正确的解密密钥来解密数据。类似地,需要从密钥历史档案中找到合适的证书验证A 五年前的签名。类似于密钥更新,管理密钥历史档案也应当由PKI自动完成。在任何系统中,需要用户自己查找正确的私钥或用每个密钥去尝试解密数据,这对用户来说是无法容忍的。PKI必须保存所有密钥,以便正确的备份和恢复密钥,查找正确的密钥以便解密数据。

(6)交叉认证。在一系列独立开发的PKI中,至少其中一部分互连是不可避免的。由于业务关系的改变或其它一些原因,不同PKI的用户团体之间必须进行安全通信,即使以前没有安全通信的需求。为了在以前没有联系的PKI之间建立信任关系,导致了“交叉认证”的概念。在没有一个统一的全球的PKI环境下,交叉认证是一个可以接受的机制,能够保证一个PKI团体的用户验证另一个PKI团体的用户证书。交叉认证满足业务需求的重要性,意味着它是扩展后的PKI定义的一部分。

(7)支持非否认。一个PKI用户经常执行与他们身份相关的不可否认的操作(例如,A 对一份文档进行数字签名,申明文档来自于他)。由于业务活动不可中断,要求用户在将来任何时候不能随意破坏这种关系(特别是有利的时候)。例如,A 签了某份文件,几个月后不能否认他的签名,并说别人获取了他的签名私钥,在没有获得他同意的情况下签发了文件。这样的行为被称为否认。PKI必须能支持避免或阻止否认― 这就是不可否认的特点。一个PKI本身无法提供真正/完全的不可否认服务。需要人为因素来分析、判断证据,并作出最后的抉择。然而,PKI必须提供所需要的技术上的证据,支持决策,提供数据来源认证和可信的时间数据的签名。所以,支持不可否认是扩展后PKI的一部分。

(8)时间戳。支持不可否认服务的一个关键因素就是在PKI中使用安全时间戳(就是说时间源是可信的,时间值必须被安全地传送)。PKI中必须存在用户可信任的权威时间源(事实上,权威时间源提供的时间并不需要正确,仅仅需要用户作为一个“参照”时间完成基于PKI的事务处理(例如:事件8 发生在事件A 的后面)。然而,毫无疑问,最好使用世界上官方时间源提供的时间)。仅仅是为了不可否认的目的,PKI中无须存在权威时间源(就是被PKI用户的相关团体能验证证书的安全时间戳服务器)。在很多情况下,在一份文件上盖上权威时间戳是非常有用的。在很多环境中,支持不可否认服务是时间戳的主要目的。无论在何种情况下,时间戳都形成了扩展的PKI 的一部分。

(9)客户端软件。只要理解客户一服务器结构的人都应该知道,除非客户端请求服务(就是发出请求),服务器通常不会为客户端做任何事情。这个原理同样适用于PKI。在用户本地平台上的客户必须请求认证服务。客户端软件必须询问证书和相关的撤消信息。客户端软件必须理解密钥历史档案,知道何时需要请求密钥更新或密钥恢复操作。客户端软件必须知道何时为文档请求时间戳。作为安全通信的接收端点(从应用程序的角度看,正在执行一个“服务器”进程)r 正是PKI客户端软件需要理解策略,需要知道是否、何时和怎样去执行取消操作,需要知道证书路径处理,等等。客户端软件是一个全功能、可操作PKI的必要组成部分。没有客户端软件,PKI无法有效地提供很多服务,因为我们无法去使用这些服务。特别注意的是,不存在应用程序包含PKI的告警码(如浏览器或电子邮件软件包)。这样的结构违反了PKI作为一个“真”的基础设施的概念,无法保证所有应用程序和平台提供风格一致的安全服务。所以,客户端软件应当独立于所有应用程序之外,完成PKI服务的客户端功能。应用程序通过标准接入点与客户端软件连接(与其它基础设施一样),但应用程序本身并不与各种PKI服务。

三、PKI的核心服务

一般认为PKI提供了以下三种主要安全服务:① 认证― 向一个实体确认另一个实体确实是他自己。PKI的认证服务采用数字签名这一密码技术。② 完整性― 向一个实体确保数据没有被有意或无意的修改。PKI的完整性服务可以采用两种技术之一。第一种技术是数字签名。第二种技术是消息认证码或MAC 。这项技术通常采用对称分组密码或密码杂凑函数。③ 机密性― 向一个实体确保除了接收者,无人能读懂数据的关键部分。PKI的机密性服务采用类似于完整牲服务的机制,就是:首先,A 生成一个对称密钥(也许是使用他的密钥交换私钥和日的密钥交换公钥):其次,用对称密钥加密数据(使用对称分组密码);最后.将加密后的数据以及A 的密钥交换公钥或用B 的加密公钥加密后的对称密钥发送给已。为了在实体(A 和田间建立对称密钥,需要建立密钥交换和密钥传输机制。

四、PKI的信任模型

PKI的信任模型解决以下一些问题:

一个实体能够信任的证书是怎样被确定的。

这种信任是怎样被建立的P

在一定的环境下,这种信任在什么情形下能够被限制或控制?目前流行的PKI信任模型 主要有四种:

认证机构(CA )的严格层次结构。认证机构(CA } 的严格层次结构可以描绘为一棵倒转的树,根在顶上,树枝向下伸展,树叶在下面。在这棵倒转的树上,根代表一个对整个PKI域内的所有实体都有特别意义的CA 通常被叫做根CA ,其作为信任的根或“信任锚”。在根CA 的下面是零层或多层中间CA (也被称作子CA ,因为它们是从属于根的),这些CA 由中间节点代表,从中间节点再伸出分支。与非CA PK }实体相对应的树叶通常被称作终端实体或简称为终端用户。

分布式信任结构。与在PKI系统中的所有实体都信任唯一一个CA 的严格层次结构相反,分布式信任结构把信任分散到两个或更多个(或许是很多个)CA 上。更准确地说,A CA :的公钥作为他的信任锚,而B可以把CAZ 的公钥做为他的信任锚。因为这些CA 的密钥都作为信任锚,因此相应的CA 必须是整个PKI群体的一个子集所构成的严格层次结构的根CA ( CA :是包括A 在内的层次结构的根,CAZ 是包括B 在内的层次结构的根)。

Web 模型。这种模型猛一看与分布式信任结构模型相似,但从根本上讲,它与CA 的严格层次结构模型更相象。四eb 模型通过与相关域进行互连而不是扩大现有的主体群体,来使A 成为在浏览器中所给出的所有域的依托方。实际上,每个浏览器厂商都有自己的根,并且由厂商认证嵌入到浏览器中的CA 。唯一真正的不同是根CA 并不被浏览器厂商的根所认证,而是物理地嵌入软件来发布,作为对CA 名字和它的密钥的安全绑定。实质上,这是一种有隐含根的严格层次结构(更准确地说浏览器厂商是实质上的根CA ,而层次结构中下面的第一层则是所有的已嵌入的CA 的密钥)。

以用户为中心的信任。在一般被称作以用户为中心的信任模型中,每个用户都对决定信赖哪个证书和拒绝哪个证书直接完全地负责。尽管最初的可信密钥集通常包括一个特定用户个人认识的朋友、家人或同事的密钥。但这个决定可以被许多因素所影响。

五、国内外PKI技术发展现状

国外的PKI应用已经开始,开发PKI的厂商也有多家。许多厂家推出了可以应用的PKI产品,有些公司已经开始提供PKI服务。网络许多应用已经在使用PKI技术以保证网络的认证、非否认、加解密和密钥管理等。尽管如此,总的说来PKI技术仍在发展和完善之中。美国许多大企业已经在建立自己的PKI系统。作为PKI的一种应用,基于PKIPKI市场也随着电子商务的发展迅速膨胀。据 Infoneti cs Research 的调查和估计. VPN市场由1997 年的2.05 亿美元开始以100 %的增长率增长。预计到 2001 年将达到119 亿美元。对 PKI 市场.市场调查公司在199912月发表的报告PKI中认为,目前PKI技术还在幼年; 2003 年的PKI市场将由 1998 年的 1.227 亿飞涨到13亿美元。另外一家以英国为主的市场调查公司 Datamonitor 2000 3 月的报告: PKI, 1999 年一 2003 年”中认为,PKI市场在 2003 年将达到 35 亿美元。 C 公司的 Inter 安全知深分析家认为:PKI技术将成为所有应用的计算基础结构的核心部件,包括那些越出传统网络界限的应用。 电子商务活动需要认证、非否认等只有PKI产品才有能力提供的这些功能。中国,作为一个网络大国,发展自己的PKI技术是很有必要的。PKI技术,作为一项关键的密码技术,由于我们没有成熟的解决方案,这成为了我们的电子商务发展的一大瓶颈。网络,特别是 Internet 网络的安全应用已经离不开PKI技术的支持。网络应用中的认证、加解密的密钥管理、非否认等服务只有PKI技术才能提供。研究和开发我们自己的实用PKI技术已经变得刻不容缓。

六、SKLOIS PKIV1.0的技术特点

SKLOIS PKIV1.0是信息安全国家重点实验室自主开发的国产PKI系统,她具有如下特点:① 符合一系列国际标准协如数字证书采用 X . SOgv3 证书撤销列表符合CPLV2。② 在充分研究美国国家标准技术研究所和加拿大联邦政府( GOC )的 PKI 工程的基础上,提出适合于中国国情的PKI互操作规范,并希望能够成为国内的一个标准。为PKI在国内的推广打下一个良好的基础。提出适合国情的证书策略,希望能够实现一个很好的证书策略实施方案。 在充分吸取国外同行的产品的特点的基础上,提出了我们的PKI体系,并形成自己的一系列部件,如 CA RA RAO PAC DS (分发服务器)、 05 (查询服务器)、TSA (时间戳权威)、客户端软件、 SmsrtC , d (存储私钥)。提供可以开发安全产品的 C 十+开发包 ( CSafe )。在实现上述系统的基础上,我们正在实现一个基于 PKI的应用系统,即基于PKI V N , 包括 VpN 网关、加密服务器和远程移动 V 户闪通信软件模块。不仅是简单的提供这些模块,还有相应的部署PKI的要求(包括物理设备和管理上的)。

原创粉丝点击