一种集成ibe数据加密系统的制作方法

文档序号:7864244阅读:272来源:国知局
专利名称:一种集成ibe数据加密系统的制作方法
技术领域
本发明属于加密技术领域,是一种集成IBE (Identity Based Encryption)数据加密系统,特别地是一种集CA身份认证、标识认证、IBE密钥服务、IBE服务发布、IBE密钥管理、IBE加密应用于一体的IBE数据加密系统。
背景技术
公开密钥加密(Public Key Cryptography),也称为非对称密钥加密(AsymmetricKey Cryptography),涉及一对相互关联的密钥(称为非对称密钥对),其中一个可公开,称为公钥(Public Key),用于数据的加密和数字签名的验证,另一个不公开,称为私钥(Private Key),由特定的实体拥有并保存,用于加密数据的解密和数字签名(因此,非对称 密钥对也称为公开密钥对)。为了提高数据加密、解密的效率,在使用公开密钥加密技术的实际应用中,当一方向另一方发送加密数据时,发送方通常先用一个随机产生的对称密钥(也称为会话密钥)对数据进行加密,然后再使用接收方的公钥对该随机产生的对称密钥进行加密,之后,发送方将加密后的数据和加密后的对称钥(会话密钥)一起发送到接收方;接收方接收到加密数据及加密后的对称密钥后,先用自己的私钥解密加密的对称密钥(会话密钥),然后再用解密后的对称密钥解密数据。目前最常用的公开密钥算法是RSA和DSA算法,以及最新获得广泛重视的ECC (Elliptic Curve Cryptography)算法。从以上描述可以看到在公开密钥体系中,一方要向另一方发送加密数据,必须先获得对方的公钥,因此,公钥的拥有者(即加密数据的接收方)需通过一定的安全途径发布其公钥,以便其他人(或实体)能够使用其公钥向其发送加密数据。为了解决这一问题,在公开密钥体系中,人们提出了公开密钥基础设施(Public Key Infrastructure, PKI)安全技术体系。在PKI体系中,由一个数字证书认证中心(Certification Authority,CA)作为可信的第三方通过证书认证系统(CA系统)向公钥的拥有者(实体)签发数字证书(DigitalCertificate)来进行用公钥的发布,其中证书格式是X509。CA签发的数字证书除了包含证书持有人(公钥拥有者)的公钥外,还包含有证书持有人的其他身份信息,如姓名、所属组织、电子邮件地址等。证书由CA使用其私钥进行数据签名,以保证证书中信息的可信性、安全性、完整性。通常情况下,数字证书对应的公钥及私钥既可以用于数据加密、解密,也可以用于数字签名、签名验证。但根据实际应用需要,数字证书有时又可分为加密数字证书和身份数字证书,前者仅用于数据的加密解密,后者可用于身份鉴别、数字签名及签名验证。有了数字证书,一方要向另一方发送加密数据,发送方需事先通过一定的途径(如从CA系统的证书目录服务)获取接收方的(加密)数字证书,然后从数字证书中提取接收方的公钥。在PKI体系中,要发送加密数据,必须事先获取接收方的(加密)数字证书,这对于许多普通用户来说不是一件容易的事,这也是PKI技术体系在实际应用中存在的一个比较突出的问题。为了解决这一问题,人们提出了基于身份标识的加密(Identity BasedEncryption, IBE)。IBE也是一种公开密钥加密技术,使用IBE进行传送数据加密时,发送方无需事先获得接收方的数字证书,只需事先知道可唯一标识对方身份的一个标识(如身份证号、电子邮件地址等),然后基于这个身份识别结合一组公开参数(称为IBE公开参数)就可以进行数据加密(类似地,通常是先用一个随机产生的对称密钥加密数据,然后用IBE公钥加密随机产生的对称密钥)。这里,身份标识和一组公开参数就构成了 IBE公钥(但在实际应用中人人常常把身份标识简称为公钥)。接收方收到数据后,使用自己身份标识对应的私钥即可解密数据(严格说来,私钥也是由一组公开参数和通过身份标识计算得到私密信息构成)。接收方身份标识对应的私钥是由一个IBE密钥服务器(IBE Key Server)产生的(IBE密钥服务器也称为私钥产生器,Private Key Generator,PKG)0接收方要获得自己身份标识对应的IBE私钥,需先在IBE密钥服务器完成身份鉴别并证明其是相应身份标识的拥有者,之后再通过安全通道从IBE密钥服务器获得其IBE私钥,并将私钥安全保存(在本地计算设备或专门的密码装置中)以供日后使用。除了为用户产生IBE私钥外,IBE密钥服务器会通过安全方式发布一组公开参数,以便任何人用其(结合身份标识)进行数据加密。除了数据加密方无需事先获得数据解密方的数字证书外,IBE加密技术的另一突出优点是用户私钥的恢复非常方便如果用户身份标识对应的私钥丢失(指被损坏或存储私钥的介质被丢失,而不是私钥泄露),则用户可以在IBE密钥服务器完成身份鉴别后,随时从IBE密钥服务器重新获得其身份标识对应的私钥。由于IBE密钥服务器是根据一定 的算法和用户的身份标识随时为用户产生私钥的,因此IBE密钥服务器不需要保存用户的IBE私钥。相对于加密数字证书私钥的管理和恢复(CA系统中有一个称为Key ManagementCenter的系统来负责集中产生、保存、恢复所有加密数字证书的私钥),IBE的密钥管理和恢复要方便、简单得多。虽然IBE数据加密给用户带来了极大的方便,但IBE在实际应用中并还有如下问题亟待解决。I)数据加密方进行数据加密时如何确定、获得相关的IBE公开参数,或者如何知道数据解密方使用的是哪个IBE密钥服务器为其产生IBE私钥,以及从哪里找到相应的IBE密钥服务器?虽然使用IBE进行数据加密,加密方(加密数据发送方)只需知道数据解密方(加密数据接收方)的身份标识就可以进行数据加密,但是真正要完成数据加密,但加密方和解密方必须使用相同的IBE公开参数,且这个公开参数由产生IBE私钥的IBE密钥服务器发布。而在现实中,可能有非常多的IBE密钥服务提供商在运行IBE密钥服务器并提供IBE密钥服务,这样就存在这样一个问题数据加密方在进行加密时如何确定、获得相关的IBE公开参数,或者如何知道数据解密方使用的是哪个IBE密钥服务器为其产生IBE私钥,以及从哪里找到相应的IBE密钥服务器?2)如何实现IBE私钥便捷、安全的获取或发放?IBE加密数据的解密方要解密加密数据,需(事先或实时)从IBE密钥服务器获得身份标识对应的IBE私钥。同其他公开密钥加密算法一样,在IBE数据加密体系中,用户私钥的安全极其重要,私钥一旦泄露,对用户数据就无安全可言。用户的IBE私钥是从IBE密钥服务器获取的,要保证用户私钥获取的安全性,一方面需保证私钥传输途径、通道的安全,另一方面,更重要地是,要确保IBE私钥被发放给正确的对象,即发放给了私钥所对应的身份标识的真正拥有者,而不是假冒者。IBE私钥获取或发放的方式有两种离线和在线。离线方式,即用户到IBE密钥服务器运行机构所在地,向服务运行机构提供证明其身份的身份凭证(如个人身份证、工作证);IBE密钥服务器运行机构在验证、确认用户身份后,进一步验证、确认用户就是某个身份标识(邮箱、身份证号等)的真正拥有者,所有这些验证、确认通过后,再通过一定的安全手段将用户身份标识对应的IBE私钥发放给用户(如通过保存IBE私钥的USB Key)。在线方式,即用户通过一定的客户端工具,在线连接IBE密钥服务器,并提交证明其身份的身份凭证和验证数据(如用户名/ 口令,或身份数字证书及经私钥数字签名的验证数据);IBE密钥服务器在完成在线验证、确认用户身份,并进一步确认用户是所申请的IBE私钥所对应的身份标识(如电子邮箱)的真正拥有者后,通过一定的安全途径和技术手段(如SSL加密通道)在线向用户发送其身份标识对应的私钥。从上面过程可以看到,无论是离线还是在线的IBE私钥发放或获取方式,通常都涉及到两个关键的、与身份有关的验证、确认环节一是通过用户身份凭证(如离线使用居民身份证,在线使用用户名/ 口令、身份数字证书及数字签名后的验证数据)验证、确认用户就是其声称的人(即进行身份鉴别),二是通过一定的方式,验证、确认用户是某个身份标识 (手机号、电子邮箱)的拥有者(即进行标识拥有确认)。这里需要分别进行用户身份鉴别和身份标识拥有确认的原因是,在通常情况下,用户用于证明其身份的身份凭证与其用于数据加密的身份标识不是同一个一个人可以只有一个身份凭证(身份证、身份数字证书),但可以有多个身份标识(如多个邮箱、多个手机号)(当然,不排除用户的每个身份标识对应一个身份凭证的情形,但从使用方便性的角度,这种方式既不足取,也无必要)。从面向公众开展、提供大规模(几百万、几千万用户)服务的角度,离线发放、获取IBE私钥的方式是不可取的,或者说是完全不可行的,在线方式是唯一可行的选择。但是,要实现安全的在线私钥获取或发放,私钥发放或获取过程必须做到如下三点(I)必须有严格的流程和手段,确保用于证明、验证用户身份的在线身份凭证(如身份数字证书、用户名/ 口令)发放给了正确的用户;(2)必须使用高安全的身份鉴别技术,确保用户在线身份鉴别的安全性,不会出现身份被假冒或身份凭证被攻破(如口令被猜测)的情况;(3)在线完成用户身份鉴别后,必须有严格的流程和手段,验证、确认用户用于数据加密的某个身份标就是属于他本人的,即确保用户身份(凭证)与加密用身份标识的可靠对应或绑定。本发明的系统就是为了解决IBE在实际应用中所面临的以上问题。本发明的系统是一种集CA身份认证、标识认证、IBE密钥服务、IBE服务发布于一体的IBE数据加密系统,它通过将身份标识认证(即标识归属的验证、确认)同IBE私钥产生的分离,使得加密数据的加密方(发送方)可以使用任何一个IBE密钥服务器发布的IBE公开参数进行数据加密,而加密数据的解密方(接收方)可以从任何一个IBE密钥服务器获得其身份标识对应的IBE私钥;它通过引入身份数字证书确保IBE在线服务过程中身份鉴别的安全性,将IBE数据加密的便捷性同数字证书的安全性有机地融为一体。

发明内容
本发明的目的是提供一种集成IBE数据加密系统,该系统是为了解决IBE数据加密在实际应用中在IBE密钥服务发现、安全在线身份鉴别、身份标识认证、IBE公开参数获取和更新以及IBE私钥安全获取等方面所面临的问题。为了实现上述目的,本发明所采用的技术方案是一种集成IBE数据加密系统,包括IBE密钥服务器功能包括在线发布IBE公开参数,以及在完成用户在线身份鉴别并确认用户是身份标识的拥有者后,为用户产生身份标识对应的IBE私钥,并通过安全通道将IBE私钥在线返回给用户;IBE密钥服务器发布的所述IBE公开参数有一组或多组,每组具有不同的版本号;CA证书认证系统接收用户提交的身份数字证书签发请求,并在通过相应的方式验证证书申请者提交的身份信息的真实性、确认证书申请者就是其声称的本人之后,为用户签发在线证明其身份的身份数字证书;标识认证系统接收用户成为标识认证系统的服务用户的帐户注册请求,并在完 成相关验证、确认后,批准用户的帐户注册申请并为用户创建相应的帐号;接收已注册用户提交的身份标识注册请求,并在通过相应的方式验证、确认用户就是申请注册的身份标识的拥有者后,将所述身份标识与用户在标识认证系统中的帐户(即用户身份)关联、对应(即实现用户身份与加密身份标识的绑定);当用户在IBE密钥服务器在线请求获取IBE私钥时,为用户在线签发证明其是身份标识拥有者的身份标识安全令牌;身份标识安全令牌由标识认证系统数字签名并有时效限制;IBE服务发布系统在线发布整个IBE加密系统中的一个或多个IBE密钥服务器,一个或多个标识认证系统,以及一个或多个CA证书认证系统的相关信息,包括但不限于每个IBE密钥服务器、标识认证系统以及CA证书认证系统的服务地址、端口 ;IBE加密应用程序使用IBE进行数据加密、解密的应用程序(如IBE加密邮件客户端),所述IBE加密应用程序通过调用IBE加密API (Application ProgrammingInterface)进行IBE数据加密、解密以及相关密钥操作,包括密钥产生、导出、导入;IBE加密API :由应用程序调用,进行基于IBE的数据加密、解密,及密钥相关操作,包括密钥产生、导出、导入;所述IBE加密API通过调用IBE密码模块实现相应的数据加密、解密功能;所述IBE加密API或者通过调用IBE密码模块,或者通过调用IBE密钥管理客户端,实现与IBE密钥相关的操作功能;IBE密码模块进行IBE数据加密、解密运算以及IBE密钥存储的软件和/或硬件模块,所述IBE密码模块通过调用IBE密钥管理客户端实现与IBE密钥相关的操作功能,包括获取IBE公开参数、IBE私钥;IBE密钥管理客户端 与IBE加密应用程序运行在同一主机上,通过与IBE服务发布系统、标识认证系统、IBE密钥服务器进行在线交互,获取IBE公开参数、IBE私钥的一个IBE密钥管理组件;所述IBE密钥服务器基于用户的身份数字证书对用户进行在线身份鉴别,基于标识认证系统在线签发的身份标识安全令牌确认用户就是身份标识的拥有者;在整个IBE数据加密系统中,所述IBE密钥服务器有一个或多个,用于构建、提供IBE密钥服务;所述IBE公开参数版本号用于区分一个IBE密钥服务发布的不同IBE公开参数,版本号高的对应最新发布的;允许同时使用不同版本号的IBE公开参数以便于密钥变更(rollover) ;IBE加密API或IBE密码模块应使用高版本号的IBE公开参数进行数据加密;
所述身份数字证书是指仅用于在线身份鉴别、证明用户身份的数字证书,其公钥和私钥不用于数据加密和解密;所述CA证书认证系统在签发身份数字证书前验证申请者提交的身份信息的真实性和确认申请者就是其本人的方式包括在线和/或离线方式;所述在线方式由CA证书认证系统通过相关的技术手段自动完成,所述离线方式由CA证书认证系统的运营机构的服务人员通过相关的人工手段和流程完成(如通过电话或面对面鉴别、验证等);在整个IBE数据加密系统中,所述CA证书认证系统有一个或多个,用于构建、提供身份认证服务;多个CA证书认证系统间签发的身份数字证书通过相应的证书互信互操作技术实现证书互认、互信、互操作,包括CA证书信任列表、桥交叉认证;用户在标识认证系统进行帐户注册申请时,需使用其身份数字证书进行在线身份鉴别;用户在标识认证系统的注册帐户中的相关身份信息与其身份数字证书中的相应身份信息保持一致(如通过标识系统自动从身份数字证书中提取);用户登录标识认证系统进行身份标识注册或获取身份标识安全令牌时,需使用身份数字证书进行在线身份鉴别;用户进行身份标识注册时,所述验证、确认用户就是身份标识的拥有者的方式包括在线和/或 离线方式;在整个IBE加密系统中,所述标识认证系统有一个或多个,用于构建、提供标识认证服务;所述IBE密钥管理客户端或者在数据加密、解密过程中被IBE加密API或IBE密码模块直接或间接调用,或者被用户通过人机界面直接使用,以获取IBE公开参数和IBE私钥。任何使用IBE进行数据解密的用户需首先在IBE数据加密系统中的一个CA证书认证系统获得一张在线证明其身份的身份数字证书,然后在IBE数据加密系统中的一个标识认证系统注册一个帐户成为标识认证系统的一个服务用户,之后,再在标识别认证系统注册其用于IBE数据解密的身份标识,由标识别认证系统将注册的身份标识与用户的身份或其在标识认证系统中的帐户关联、绑定。在进行数据加密传送时,加密方的IBE加密API或IBE密码模块按如下方式确定或获取用于IBE加密的IBE公开参数第I步检查本地是否有IBE公开参数,若没有,则调用IBE密钥管理客户端获取、保存IBE公开参数,然后使用所获得的IBE公开参数;否则,转入第II步;第II步检查本地的IBE公开参数是否已到了更新期限,若没有,则使用本地保存的版本号最高的IBE公开参数;否则,调用IBE密钥管理客户端更新IBE公开参数,然后使用更新后的IBE公开参数。在所述第II步中,若本地有来自多个不同IBE密钥服务器的IBE公开参数,则根据预定的规则(如根据预先设定的优先顺序或随机选择)选择使用来自其中一个IBE密钥服务器的IBE公开参数;当有来自多个不同IBE密钥服务器的IBE公开参数时,若一组IBE公开参数已到了更新期限,则无论该组IBE公开参数是否被选择使用,都要调用IBE密钥管理客户端更新IBE公开参数;调用IBE密钥管理客户端更新IBE公开参数的请求中包含有要更新的IBE公开参数所对应的IBE密钥服务器的服务地址及端口号。当IBE密钥管理客户端接收到获取IBE公开参数的调用请求后,按如下步骤进行操作步骤I :检查配置信息中是否设置有缺省的IBE密钥服务器,若有,则转入步骤2 ;否则,转入步骤3步骤2 :连接步骤I所述的缺省的IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果;步骤3 :连接IBE服务发布系统,获取一个IBE密钥服务器的服务地址及端口 ;步骤4 :连接步骤3获取 的所述IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果。当IBE密钥管理客户端接收到更新IBE公开参数的调用请求后,连接更新请求中指定的IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果。在加密数据中的IBE密钥信息中除了包含有用于加密的身份标识外,还有与IBE公开参数相关的信息,包括IBE公开参数所对应的IBE密钥服务器的相关信息、以及IBE公开参数的版本号。在进行数据解密时,若解密方通过检查加密数据中的IBE密钥信息(包括IBE公开参数的版本号)确定IBE密码模块中没有用于数据解密的身份标识所对应的IBE私钥,则IBE密钥管理客户端被调用;IBE密钥管理客户端接收到获取IBE私钥的请求后,按如下步骤进行操作步骤A :通过缺省设置自动连接,或通过人机界面由用户选择连接用户注册身份标识的标识认证系统;步骤B :通过人机提示用户选择合适的身份数字证书登录步骤A所述标识认证系统,完成身份鉴别;步骤C :请求标识认证系统为用户签发证明其是身份标识拥有者的身份标识安全令牌;若成功获得,则转入步骤D,否则报错,并提示出错的原因,结束有关操作;步骤D :从加密数据中提取加密用身份标识所对应的IBE密钥服务器信息及IBE公开参数的版本号;步骤E :连接步骤D所确定的IBE密钥服务器,并使用步骤B中用户所选择的身份数字证书,在所述IBE密钥服务器完成身份鉴别;步骤F :向IBE密钥服务器提交步骤C获得的身份标识安全令牌,申请获取与身份标识及步骤D获取的所述IBE公开参数版本号相对应的IBE私钥;若成功获得,则将获得IBE私钥保存在IBE密码模块中,否则报错,并提示出错的原因,结束有关操作。标识认证系统在接收到所述步骤C中IBE密钥管理客户端提交的签发身份标识安全令牌的请求后,进行如下操作第一步通过IBE密钥管理客户端提交的用户在所述步骤B中选择的用于进行身份鉴别的身份数字证书,查看用户是否是系统已注册的用户,若不是,则返回出错信息;否贝1J,转入第二步;第二步检查IBE密钥管理客户端提交的签发身份标识安全令牌请求中的用户身份标识是否是所述第一步中所确定的用户在标识认证系统已注册并已通过验证和确认的身份标识,若不是,则返回出错信息;否则,转入第三步;第三步签发身份标识安全令牌,令牌中有用户的身份标识信息,并通过安全方式将所签发的身份标识安全令牌返回到IBE密钥管理客户端。所述IBE密钥服务器接收到所述步骤F中IBE密钥管理客户端提交的获取IBE私钥的请求后,按如下步骤进行操作第I步确认请求中的身份标识安全令牌是否由其信任的标识认证系统签发,若不是,返回出错;否则,转入第2步;第2步验证身份标识安全令牌数字签名的有效性及安全令牌的时效性,若数字签名有效性或安全令牌的时效验证失败,则返回出错;否则,转入第3步;第3步产生身份标识安全令牌中身份标识所对应的IBE私钥,并通过安全加密的方式将产生的IBE私钥返回到IBE密钥管理客户端。本发明通过将IBE数据加密的方便性与身份数字证书的安全性的有机结合,身份 标识认证同IBE私钥产生的分离,以及引入IBE服务发布系统,很好地解决了 IBE数据加密中所面临的身份鉴别的安全性、标识归属确认的可靠性、以及IBE公开参数获取的便捷性等关键问题,同时将IBE密钥管理和IBE加密应用与IBE密钥服务、标识认证服务及IBE服务发布有机地集成为一体,使得IBE数据加密能够在实际中真正得到安全、可靠、便捷的应用。


图I本发明的集成IBE数据加密系统的整体结构图。
具体实施例方式下面对本发明的具体实施作进一步的说明。如图I所示,基于本发明的集成IBE数据加密系统由IBE密钥服务器、CA证书认证系统、标识认证系统、IBE服务发布系统、IBE加密应用程序、IBE加密API、IBE密码模块、IBE密钥管理客户端几部分组成。IBE密钥服务器是一个基于C/S (Client/Server)模式的服务系统,其客户端即是所述IBE密钥管理客户端。IBE密钥服务器可采用常见的信息系统开发技术,如C/C++或C#· Net或J2EE开发语言及环境;其IBE密钥的生成可参照有关规范实现,如RFC5091。IBE密钥生成既可在软件中实现,也可以用硬件实现。IBE密钥服务器与IBE密钥管理客户端间的信息交互安全可采用已有的安全信息通道技术,如SSL等;IBE密钥服务器与用户(IBE密钥管理客户端)之间的相互身份鉴别采用数字证书,其中客户端用户采用身份数字证书;服务器端可使用双用途的数字证书(同时用于身份鉴别和加密)。IBE密钥服务器与IBE密钥管理客户端间的信息交互协议可自定义,只要能完成有关数据交互过程;协议数据的完整性、原发性通过数字签名来保证,以防止篡改和假冒。CA证书认证系统的开发与实现目前已有很成熟的技术,而且有很多成熟的产品,因此,其具体实施既可以用相关的技术开发,或选用成熟的产品。标识认证系统的开发可以使用目前成熟的信息系统开发技术,如J2EE、ASP. Net、COM+等,结合适当的数据库技术,如MySQL、SQL Server、0ralce等。在用户注册申请帐户、注册身份标识和申请签发身份标识令牌时,身份标识认证系统基于用户的身份数字证书对用户进行身份鉴别,并通过相应的CA证书互信技术(交叉认证、桥CA)验证确认证书的可信性;在用户注册申请帐户时,标识认证系统从用户身份数字证书中解析、获取经过验证确认的用户身份信息,并将有关身份信息保存在用户帐户中。标识认证系统提供专门的页面供用户注册其IBE加密用身份标识,并将其与用户的身份(或帐户)进行对应、关联(绑定)。对于用户注册的身份标识,标识认证系统根据标识类型的不同,提供相应的自动和/或手动验证、确认方式,验证、确认用户就是注册的身份标识的拥有者。对于电子邮箱标识,标识认证系统通过向相应邮箱发送一次性用途的验证数据,验证、确认用户是否是邮箱的拥有者邮箱标识注册者只有进入邮箱并通过一定的方式(如通过浏览器或IBE密钥管理客户端)提交验证数据后,才能被确认是邮箱的真正拥有者。类似地,对于移动通信终端号码标识(手机号码),标识认证系统通过向相应的移动通信终端号码发送一次性用途的验证数据短信,验证、确认用户是否是移动通信终端号码的拥有者移动通信号码标识的注册者只有收到短信,并通过一定的方式(如通过浏览器或IBE密钥管理客户端)提交验证数据后,才能被确认是移动通信号码的真正拥有者。标识认证系统向IBE密钥管理客户端提供的在线服务接口形式有多种可选择,包括Web Services接口、基于HTTP的Web API或自定义的基于TCP/IP的服务协议;签发的身份标识令牌可以采用SAML断言、WS-Federation安全令牌或自定义的安全令牌。标识认证系统同IBE密钥管理客户端间通过SSL (Security Socket Layer)保证数据传送的安全性。 同样地,IBE服务发布系统的开发也可以使用目前成熟的信息系统开发技术,如J2EE、ASP. Net、C0M+ 等,结合适当的数据库技术,如 MySQL、SQL Server、Oralce 等。IBE 服务发布系统负责维护并发布如下信息I) IBE密钥服务器信息包括整个IBE数据加密系统中的每个IBE密钥服务器的名称或标识,服务地址(IP地址或DNS域名)和端口,及其服务运营机构的信息;在与IBE密钥管理客户端进行相互身份鉴别及建立SSL通过过程中,IBE密钥服务器使用的数字证书的某个上级CA证书和/或根CA证书(IBE密钥管理客户端据此验证IBE密钥服务器的数字证书的可信性)。2)标识认证系统信息包括整个IBE数据加密系统中的每个标识认证系统名称或标识,服务地址(IP地址或DNS域名)和端口,及其服务运营机构的信息;在与IBE密钥管理客户端进行相互身份鉴别及建立SSL通过过程中,标识认证系统使用的数字证书的某个上级CA证书和/或根CA证书。3 ) CA证书认证系统信息包括整个IBE数据加密系统中的每个CA证书认证系统的名称或标识,各类在线服务地址(IP地址或DNS域名)和端口,及其服务运营机构的信息。这些信息的发布有两种方式,Web页面浏览和服务接口。Web页面浏览方式适用于用户通过浏览器浏览、查看相关信息。服务接口方式适用于IBE密钥管理客户端在线调用并查询相关信息。服务接口方式的具体实施方式
可以是Web Services接口、基于HTTP的Web API或自定义的基于TCP/IP的服务协议。对于这些信息的查询,IBE服务发布系统至少提供如下两类信息查询方式(I)信息枚举查询列出所有的IBE密钥服务器或标识认证系统或CA证书认证系统的服务相关信息。在枚举查询IBE密钥服务器时,IBE服务发布系统可通过相应的负载均衡算法推荐IBE密钥管理客户端优先使用其中一个IBE密钥服务器。(2)定向信息查询返回指定的IBE密钥服务器或标识认证系统或CA证书认证系统的相关信息。IBE加密API的具体实施,根据加密应用程序所采用或支持的API开发语言的不同,可以有不同的具体实施形式,如基于C/C++、COM/COM+、Java、VB、C#等的API。根据具体的应用需求,IBE加密API或者仅实现IBE密码运算和IBE密钥操作调用的转接功能,即不实现具体的密码运算、密钥操作功能,而是通过调用IBE密码模块的相应功能完成有关运算和操作,并返回调用结果;或者,IBE加密API实现部分的密码运算、密钥操作相关功能,如通过直接调用IBE密钥管理客户端获取IBE公开参数、获取IBE私钥等,具体采用哪种方式取决于实际应用的需要。 IBE密码模块的实施可以是纯软件的,即所有的密码运算由软件完成,IBE私钥保存在磁盘介质中,也可以是软件和硬件相结合,即部分或全部密码运算由硬件完成,IBE私钥保存在硬件中,软件部分提供硬件驱动和相应的调用接口。IBE密码模块软件部分的具体实现可采用C/C++开发。无论是纯软件的还是软件和硬件相结合的,通常情况下,IBE密码模块需要提供如下基本功能,并提供相应的功能调用接口。在IBE密钥管理方面要实现如下基本功能( I)获取IBE公开参数;(2)导入、保存IBE公开参数;(3)查询、导出保存的IBE公开参数;(4)获取、保存身份标识所对应的IBE私钥;(5)导入、保存身份标识所对应的IBE私钥;(6)导出IBE私钥(可选功能);(7)查找IBE私钥,并返回密钥句柄(handle)供数据解密用。在IBE数据加密方面要实现如下基本功能(I)基于给定的身份标识和IBE公开参数进行数据加密;(2)基于给定的身份标识和IBE公开参数对对称加密密钥(会话密钥)加密;(3)基于指定的IBE私钥对加密的数据进行解密;(4)基于指定的IBE私钥对对称加密密钥进行解密。IBE密码模块通过调用IBE密钥管理客户端获取IBE公开参数,以及生成身份标识所对应的IBE私钥;IBE密码模块的接口通过密钥句柄指定解密所用的IBE私钥。IBE密钥管理客户端的具体实现可采用C/C++开发。所述IBE密钥管理客户端或者是一个独立运行的程序,或者是IBE密码模块的一个功能组件。若所述IBE密钥管理客户端是一个独立运行的程序,则所述IBE加密API和IBE密码模块通过进程间的数据传送、交换机制调用所述IBE密钥管理客户端。IBE密钥管理客户端同时提供人机交互界面,在IBE密钥管理客户端(在加密、解密过程中)被调用时,实现如下同用户交互的功能( I)提示用户选择所使用的标识认证系统;(2)提示用户选择所使用的IBE密钥服务器;(3)提示用户选择登录标识认证系统、IBE密钥服务器时所使用的身份数字证书。除了密钥管理方面的功能外,IBE密钥管理客户端还提供如下信息设置功能
(I) IBE服务发布系统;(2)缺省的IBE服务器,以及是否总是使用缺省的IBE密钥服务器;(3)缺省的标识认证系统,以及是否总是使用缺省的标识认证系统;(4) IBE公开参数的更新查询间隔。用户可直接运行IBE密钥管理客户端,通过人机界面完成密钥管理及客户端设置方面的相关操作。 其他未说明的具体技术实施,对于相关领域的技术人员而言是众所周知,不言自明的。
权利要求
1.一种集成IBE数据加密系统,包括 IBE密钥服务器包括在线发布IBE公开参数,以及在完成用户在线身份鉴别并确认用户是身份标识的拥有者后,为用户产生身份标识对应的IBE私钥,并通过安全通道将IBE私钥在线返回给用户;IBE密钥服务器发布的所述IBE公开参数有一组或多组,每组具有不同的版本号; CA证书认证系统接收用户提交的身份数字证书签发请求,并在通过相应的方式验证证书申请者提交的身份信息的真实性、确认证书申请者就是其声称的本人之后,为用户签发在线证明其身份的身份数字证书; 标识认证系统接收用户成为标识认证系统的服务用户的帐户注册请求,并在完成相关验证、确认后,批准用户的帐户注册申请并为用户创建相应的帐号;接收已注册用户提交的身份标识注册请求,并在通过相应的方式验证、确认用户就是申请注册的身份标识的拥有者后,将所述身份标识与用户在标识认证系统中的帐户或用户身份进行关联、对应,即实现用户身份与加密身份标识的绑定;当用户在IBE密钥服务器在线请求获取IBE私钥时,为用户在线签发证明其是身份标识拥有者的身份标识安全令牌;身份标识安全令牌由标识认证系统数字签名并有时效限制; IBE服务发布系统在线发布整个IBE加密系统中的一个或多个IBE密钥服务器,一个或多个标识认证系统,以及一个或多个CA证书认证系统的相关信息,包括每个IBE密钥服务器、标识认证系统以及CA证书认证系统的服务地址、端口 ; IBE加密应用程序使用IBE进行数据加密、解密的应用程序,所述IBE加密应用程序通过调用IBE加密API进行IBE数据加密、解密以及相关密钥操作,包括密钥产生、密钥导出以及密钥导入; IBE加密API :由应用程序调用,进行基于IBE的数据加密、解密以及密钥相关操作,包括密钥产生、密钥导出以及密钥导入;所述IBE加密API通过调用IBE密码模块实现相应的数据加密和解密功能;所述IBE加密API或者通过调用IBE密码模块,或者通过调用IBE密钥管理客户端,实现与IBE密钥相关的操作功能; IBE密码模块进行IBE数据加密、解密运算以及IBE密钥存储的软件和/或硬件模块,所述IBE密码模块通过调用IBE密钥管理客户端实现与IBE密钥相关的操作功能,包括获取IBE公开参数和IBE私钥; IBE密钥管理客户端 与IBE加密应用程序运行在同一主机上,通过与IBE服务发布系统、标识认证系统以及IBE密钥服务器进行在线交互,获取IBE公开参数以及IBE私钥的一个IBE密钥管理组件; 所述IBE密钥服务器基于用户的身份数字证书对用户进行在线身份鉴别,基于标识认证系统在线签发的身份标识安全令牌确认用户就是身份标识的拥有者;在整个IBE数据加密系统中,所述IBE密钥服务器有一个或多个,用于构建、提供IBE密钥服务; 所述IBE公开参数版本号用于区分一个IBE密钥服务发布的不同IBE公开参数,版本号高的对应最新发布的;IBE加密API或IBE密码模块应使用高版本号的IBE公开参数进行数据加密; 所述身份数字证书是指仅用于在线身份鉴别、证明用户身份的数字证书,其公钥和私钥不用于数据加密和解密;所述CA证书认证系统在签发身份数字证书前验证申请者提交的身份信息的真实性和确认申请者就是申请者本人的方式包括在线和/或离线方式;所述在线方式由CA证书认证系统通过相关的技术手段自动完成,所述离线方式由CA证书认证系统的运营机构的服务人员通过相关的人工手段和流程完成;在整个IBE数据加密系统中,所述CA证书认证系统有一个或多个,用于构建、提供身份认证服务;多个CA证书认证系统间签发的身份数字证书通过相应的证书互信互操作技术实现证书互认、互信、互操作,包括CA证书信任列表、桥交叉认证; 用户在标识认证系统进行帐户注册申请时,需使用用户的身份数字证书进行在线身份鉴别;用户在标识认证系统的注册帐户中的相关身份信息与用户的身份数字证书中的相应身份信息保持一致;用户登录标识认证系统进行身份标识注册或获取身份标识安全令牌时,需使用身份数字证书进行在线身份鉴别;用户进行身份标识注册时,所述验证、确认用户就是身份标识的拥有者的方式包括在线和/或离线方式;在整个IBE加密系统中,所述标识认证系统有一个或多个,用于构建、提供标识认证服务; 所述IBE密钥管理客户端或者在数据加密或解密过程中被IBE加密API或IBE密码模块直接或间接调用,或者被用户通过人机界面直接使用,以获取IBE公开参数和IBE私钥; 使用IBE进行数据解密的用户需首先在IBE数据加密系统中的一个CA证书认证系统获得一张在线证明其身份的身份数字证书,然后在IBE数据加密系统中的一个标识认证系统注册一个帐户成为标识认证系统的一个服务用户,之后,再在标识别认证系统注册其用于IBE数据解密的身份标识,由标识别认证系统将注册的身份标识与用户的身份或其在标识认证系统中的帐户关联、绑定。
2.根据权利要求I所述的集成IBE数据加密系统,其特征在于IBE服务发布系统负责维护并发布关于IBE密钥服务器、标识认证系统以及CA证书认证系统的如下信息 IBE密钥服务器信息包括整个IBE数据加密系统中的每个IBE密钥服务器的名称或标识,服务地址和端口,及其服务运营机构的信息;在与IBE密钥管理客户端进行相互身份鉴别及建立SSL通过过程中,IBE密钥服务器使用的数字证书的某个上级CA证书和/或根CA证书; 标识认证系统信息包括整个IBE数据加密系统中的每个标识认证系统名称或标识,服务地址和端口,及其服务运营机构的信息;在与IBE密钥管理客户端进行相互身份鉴别及建立SSL通过过程中,标识认证系统使用的数字证书的某个上级CA证书和/或根CA证书; CA证书认证系统信息包括整个IBE数据加密系统中的每个CA证书认证系统的名称或标识,各类在线服务地址和端口,及其服务运营机构的信息; 所述信息的发布有Web页面浏览和服务接口两种方式Web页面浏览方式适用于用户通过浏览器浏览、查看相关信息;服务接口方式用于IBE密钥管理客户端在线调用并查询相关信息;IBE服务发布系统至少提供如下两类信息查询方式信息枚举查询和定向信息查询;所述信息枚举查询方法列出所有的IBE密钥服务器或标识认证系统或CA证书认证系统的服务相关信息;在枚举查询IBE密钥服务器时,IBE服务发布系统可通过相应的负载均衡算法推荐IBE密钥管理客户端优先使用其中一个IBE密钥服务器;所述定向信息查询返回指定的IBE密钥服务器或标识认证系统或CA证书认证系统的相关信息。
3.根据权利要求I所述的集成IBE数据加密系统,其特征在于在进行数据加密传送时,加密方的IBE加密API或IBE密码模块按如下方式确定或获取用于IBE加密的IBE公开参数 第I步检查本地是否有IBE公开参数,若没有,则调用IBE密钥管理客户端获取并保存IBE公开参数,然后使用所获得的IBE公开参数;否则,转入第II步; 第II步检查本地的IBE公开参数是否已到了更新期限,若没有,则使用本地保存的版本号最高的IBE公开参数;否则,调用IBE密钥管理客户端更新IBE公开参数,然后使用更新后的IBE公开参数; 在所述第II步中,若本地有来自多个不同IBE密钥服务器的IBE公开参数,则根据预定的规则选择使用来自其中一个IBE密钥服务器的IBE公开参数;当有来自多个不同IBE密钥服务器的IBE公开参数时,若一组IBE公开参数已到了更新期限,则无论该组IBE公开参数是否被选择使用,都要调用IBE密钥管理客户端更新IBE公开参数;调用IBE密钥管理客户端更新IBE公开参数的请求中包含有要更新的IBE公开参数所对应的IBE密钥服务器的服务地址及端口号。
4.根据权利要求I所述的集成IBE数据加密系统,其特征在于当IBE密钥管理客户端接收到获取IBE公开参数的调用请求后,按如下步骤进行操作 步骤I :检查配置信息中是否设置有缺省的IBE密钥服务器,若有,则转入步骤2 ;否贝IJ,转入步骤3 ; 步骤2 :连接步骤I所述的缺省的IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果; 步骤3 :连接IBE服务发布系统,获取一个IBE密钥服务器的服务地址及端口 ; 步骤4 :连接步骤3获取的所述IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果。
5.根据权利要求I所述的集成IBE数据加密系统,其特征在于当IBE密钥管理客户端接收到更新IBE公开参数的调用请求后,连接更新请求中指定的IBE密钥服务器,获取最高版本的IBE公开参数,然后返回结果。
6.根据权利要求I所述的集成IBE数据加密系统,其特征在于在加密数据中的IBE密钥信息中除了包含有用于加密的身份标识外,还有与IBE公开参数相关的信息,包括IBE公开参数所对应的IBE密钥服务器的相关信息以及IBE公开参数的版本号。
7.根据权利要求I所述的集成IBE数据加密系统,其特征在于在进行数据解密时,若解密方通过检查加密数据中的IBE密钥信息,包括IBE公开参数的版本号,确定IBE密码模块中没有用于数据解密的身份标识所对应的IBE私钥,则IBE密钥管理客户端被调用;IBE密钥管理客户端接收到获取IBE私钥的请求后,按如下步骤进行操作 步骤A :通过缺省设置自动连接,或通过人机界面由用户选择连接用户注册身份标识的标识认证系统; 步骤B :通过人机提示用户选择合适的身份数字证书登录步骤A所述标识认证系统,完成身份鉴别; 步骤C :请求标识认证系统为用户签发证明其是身份标识拥有者的身份标识安全令牌;若成功获得,则转入步骤D,否则报错,并提示出错的原因,结束有关操作; 步骤D :从加密数据中提取加密用身份标识所对应的IBE密钥服务器信息及IBE公开参数的版本号; 步骤E :连接步骤D所确定的IBE密钥服务器,并使用步骤B中用户所选择的身份数字证书,在所述IBE密钥服务器完成身份鉴别; 步骤F :向IBE密钥服务器提交步骤C获得的身份标识安全令牌,申请获取与身份标识及步骤D获取的所述IBE公开参数版本号相对应的IBE私钥;若成功获得,则将获得IBE私钥保存在IBE密码模块中,否则报错,并提示出错的原因,结束有关操作。
8.根据权利要求7所述的集成IBE数据加密系统,其特征在于标识认证系统在接收到所述步骤C中IBE密钥管理客户端提交的签发身份标识安全令牌的请求后,按如下步骤进行操作 第一步通过IBE密钥管理客户端提交的用户在所述步骤B中选择的用于进行身份鉴别的身份数字证书,查看用户是否是系统已注册的用户,若不是,则返回出错信息;否则,转入第二步; 第二步检查IBE密钥管理客户端提交的签发身份标识安全令牌请求中的用户身份标识是否是所述第一步中所确定的用户在标识认证系统已注册并已经过验证和确认的身份标识,若不是,则返回出错信息;否则,转入第三步; 第三步签发身份标识安全令牌,令牌中有用户的身份标识信息,并通过安全方式将所签发的身份标识安全令牌返回到IBE密钥管理客户端。
9.根据权利要求7所述的集成IBE数据加密系统,其特征在于所述IBE密钥服务器接收到所述步骤F中IBE密钥管理客户端提交的获取IBE私钥的请求后,按如下步骤进行操作 第I步确认请求中的身份标识安全令牌是否由其信任的标识认证系统签发,若不是,返回出错;否则,转入第2步; 第2步验证身份标识安全令牌数字签名的有效性及安全令牌的时效性,若数字签名有效性或安全令牌的时效验证失败,则返回出错;否则,转入第3步; 第3步产生身份标识安全令牌中身份标识所对应的IBE私钥,并通过安全加密的方式将产生的IBE私钥返回到IBE密钥管理客户端。
10.根据权利要求I所述的集成IBE数据加密系统,其特征在于IBE密钥管理客户端还提供如下信息设置功能 O IBE服务发布系统; 2)缺省的IBE服务器,以及是否总是使用缺省的IBE密钥服务器; 3)缺省的标识认证系统,以及是否总是使用缺省的标识认证系统; 4)IBE公开参数的更新查询间隔。
全文摘要
本发明涉及一种集成IBE数据加密系统,包括IBE密钥服务器、CA证书认证系统、标识认证系统、IBE服务发布系统、IBE加密应用程序、IBE加密API、IBE密码模块、IBE密钥管理客户端。IBE服务发布系统在线发布相关服务系统的信息;加密应用程序通过IBE加密API调用IBE密码模块完成IBE数据加密、解密功能;IBE密码模块通过IBE密钥管理客户端连接IBE密钥服务器获取加密、解密所需的IBE公开参数和IBE私钥;获取私钥时,密钥管理客户端从标识认证系统获得身份标识拥有证明;在线交互过程中,密钥管理客户端利用CA系统签发的身份证书证明用户的身份。本发明解决了IBE加密中所面临的身份安全性、标识归属确认可靠性以及公开参数获取便捷性等关键问题。
文档编号H04L9/32GK102932149SQ20121042746
公开日2013年2月13日 申请日期2012年10月30日 优先权日2012年10月30日
发明者龙毅宏, 唐志红, 王斯富, 白波, 毛秋阳, 刘宇 申请人:武汉理工大学, 北京天威诚信电子商务服务有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1