一种可搜索加密方法及设备的制作方法

文档序号:7987195阅读:487来源:国知局
一种可搜索加密方法及设备的制作方法
【专利摘要】本发明公布一种可搜索加密方法及设备,通过发送方获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;发送方根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器。同时通过搜索方根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据。从而实现在不需要昂贵的公钥基础设施的支持并且发送方不需要下载公钥的情况下,实现可搜索加密技术。
【专利说明】一种可搜索加密方法及设备
【技术领域】
[0001 ] 本发明应用于加密【技术领域】,尤其涉及一种可搜索加密方法及设备。
【背景技术】
[0002]加密方案为了保证语义安全,往往要求加密算法产生的密文分布与密文空间上的均匀分布两者在计算不可区分(计算不可区分是指对于两个概率分布,不存在多项式时间算法能够区分它们)。因此,对于任何有效的算法都无法从加密得到的密文中得到任何有意义的语义信息,而语义信息的丧失使得借助普通的检索算法无法实现对密文数据的检索。为了解决密文检索问题,出现了可搜索加密技术。
[0003]可搜索加密,不需要对加密的密文数据进行解密,而是利用检测算法来进行搜索,输出的是该密文是否含有搜索关键词的结果,一般是O或者I。可搜索加密的发展包含三个主要的历史阶段,首先是对称密钥可搜索加密,于2000年由Song等提出。其应用场景是搜索方与加密方为同一实体,利用对称密码体制将数据和关键词进行加密后上传到服务器,之后对该密文数据进行检索。其缺点是用户只能搜索自己加密并上传到数据库中的加密数据。
[0004]为了克服这一应用上的局限性,Dan Boneh于2004年提出了带关键词搜索的公钥加密(Public Key Encryption with Keyword Search, PEKS)。PEKS 方案的应用场景是多个发送方发送关键词密文和数据密文给接收方,接收方利用私钥生成搜索令牌,上传至服务器,服务器运行相应的检测算法进行关键词搜索。该方案中的接收者只能是单一实体,同时每次关键词检测算法的运行只能实现对一个关键词的检索,无法实现对合取关键词进行检索(假设有η个关键词分别为Wl,W2,…,Wn,对包含关键词Wl,且包含关键词W2,…,且包含关键词fc的密文进行搜 索,称为合取关键词搜索),这是其功能上的瓶颈。
[0005]2007年Hwang和Lee提出了解决该问题的方案,即多用户的带合取关键词搜索的公钥加密(Mult1-user Public Key Encryption with Conjunctive Keyword Search,mPECK),带多接收者合取关键词检索的公钥加密方案。该方案是基于公钥密码体制的,需要在线的公钥数据库或者证书库的基础设施的支持,同时发送方需要查询和下载群组所有成员的公钥,根据每个接收者的公钥对数据进行加密,接受者根据自己的私钥生成搜索令牌对数据进行搜索。然而,公钥数据库的维护和管理成本非常高,并且发送者查询下载多个用户的公钥可能浪费网络带宽和存储资源。

【发明内容】

[0006]本发明实施例的目的在于提供一种可搜索加密方法和设备,解决了现有技术中基于公钥的可搜索加密技术中需要在线的公钥数据库或者证书库的基础设施的支持,同时发送方需要查询和下载群组所有成员的公钥的问题。
[0007]第一方面,一种可搜索加密方法,所述方法包括:
[0008]获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0009]根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
[0010]结合第一方面,在第一方面的第一种可能的实现方式中,所述根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,包括:
[0011]根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。
[0012]结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述方法还包括:
[0013]根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0014]结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:
[0015]根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
[0016]结合第一方面或者第一方面的第一种可能的实现方式,在第一方面的第四种可能的实现方式中,所述方法还包括:
[0017]根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0018]第二方面,一种基于身份的可搜索加密方法,所述方法包括:
[0019]根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0020]根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
[0021]结合第二方面,在第二方面的第一种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:
[0022]通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。
[0023]结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0024]当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。
[0025]结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:
[0026]接收所述存储服务器返回的根据公钥加密的明文数据的密文。
[0027]结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述方法在步骤接收所述存储服务器返回的根据公钥加密的明文数据的密文之后,还包括:
[0028]根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
[0029]结合第二方面或者第二方面的第一种可能的实现方式或者第二方面的第二种可能的实现方式或者第二方面的第三种可能的实现方式或者第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述方法,还包括:
[0030]根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。
[0031]结合第二方面的第五种可能的实现方式,在第二方面的第六种可能的实现方式中,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:
[0032]接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。
[0033]结合第二方面的第六种可能的实现方式,在第二方面的第七种可能的实现方式中,所述方法在步骤接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文之后,还包括:
[0034]根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0035]第三方面,一种加密设备,所述设备包括:
[0036]第一获取单元,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0037]加密上传单元,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
[0038]结合第三方面,在第三方面的第一种可能的实现方式中,所述加密上传单元具体用于:
[0039]根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。
[0040]结合第三方面或者第三面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述设备还包括:
[0041]第一加密单元,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0042]结合第三面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述第一加密单元具体用于:
[0043]根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
[0044]结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的第四种可能的实现方式中,所述设备还包括:
[0045]第二加密单元,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。[0046]第四方面,一种搜索设备,所述设备包括:
[0047]第二获取单元,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0048]查询接收单元,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
[0049]结合第四方面,在第四方面的第一种可能的实现方式中,所述查询接收单元中执行步骤通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括:
[0050]通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。
[0051]结合第四方面或者第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述查询接收单元执行步骤根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0052]当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。
[0053]结合第四方面或者第四方面的第一种可能的实现方式或者第四方面的第二种可能的实现方式,在第四方面的第三种可能的实现方式中,所述查询接收单元,包括:
[0054]接收所述存储服务器返回的根据公钥加密的明文数据的密文。
[0055]结合第四方面的第三种可能的实现方式,在第四方面的第四种可能的实现方式中,所述设备还包括第一解密单元,所述第一解密单元具体用于:
[0056]根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
[0057]结合第四方面或者第四方面的第一种可能的实现方式或者第四方面的第二种可能的实现方式或者第四方面的第三种可能的实现方式或者第四方面的第四种可能的实现方式,在第四方面的第五种可能的实现方式中,所述设备还包括第三获取单元,所述第三获取单元具体用于:
[0058]根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。
[0059]结合第四方面的第五种可能的实现方式,在第四方面的第六种可能的实现方式中,所述查询接收单元,包括:
[0060]接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。
[0061]结合第四方面的第六种可能的实现方式,在第四方面的第七种可能的实现方式中,所述设备还包括第二解密单元,所述第二解密单元包括:
[0062]根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0063]与现有技术相比,本发明实施例提供一种可搜索加密方法,所述方法通过从密钥管理中心获取系统参数和私钥,使得密钥管理中心可以采用离线的方式工作同样可以实现发送方加密和搜索方搜索的目的。同时,发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。由于对应发送方公钥的查询密钥是由所述密钥管理中心产生的,因此密钥管理中心能够搜索所有的关键词密文数据,实现集中式密钥托管功能,该功能在公司及一些政府机关尤其重要。同时通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询,通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。
【专利附图】

【附图说明】
[0064]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0065]图1是本发明实施例一提供的一种可搜索加密方法流程图;
[0066]图2是本发明实施例二提供的一种可搜索加密方法流程图;
[0067]图3是本发明实施例一、二提供的一种可搜索加密方法示意图;
[0068]图4是本发明实施例一、二提供的一种可搜索加密方法示意图;
[0069]图5是本发明实施例三提供的一种可搜索加密方法流程图;
[0070]图6是本发明实施例四提供的一种可搜索加密方法流程图;
[0071]图7是本发明实施例三、四提供的一种可搜索加密方法示意图;
[0072]图8是本发明实施例五提供的一种可搜索加密方法流程图;
[0073]图9是本发明实施例六提供的一种可搜索加密方法流程图;
[0074]图10是本发明实施例五、六提供的一种可搜索加密方法示意图;
[0075]图11是本发明实施例七提供的一种可搜索加密方法流程图;
[0076]图12是本发明实施例七提供的一种可搜索加密方法流程图;
[0077]图13是本发明实施例七、八提供的一种可搜索加密方法示意图;
[0078]图14是本发明实施例九提供的一种加密设备的装置结构图;
[0079]图15是本发明实施例十提供的一种搜索设备的装置结构图;
[0080]图16是本发明实施例十一提供的一种加密设备的装置结构图;
[0081]图17是本发明实施例十二提供的一种搜索设备的装置结构图;
[0082]图18是本发明实施例十三提供的一种加密设备的装置结构图;
[0083]图19是本发明实施例十四提供的一种搜索设备的装置结构图;
[0084]图20是本发明实施例十五提供的一种加密设备的装置结构图;
[0085]图21是本发明实施例十六提供的一种搜索设备的装置结构图。
【具体实施方式】
[0086]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0087]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
[0088]实施例一
[0089]参考图1,图1是本发明实施例一提供的一种可搜索加密方法流程图。如图1所示,该方法包括以下步骤:
[0090]步骤101,获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0091]其中,所述搜索方的身份信息包括但不限于搜索方的手机号码、工号、QQ号、Email等信息。所述获取搜索方的身份信息的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述搜索方所在群的身份信息包括但不限于搜索方所在群的QQ群号、部门名称等信息。所述获取搜索方所在群的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述密钥管理中心负责向发送方下发用于计算加密公钥的系统参数,还可以进一步向搜索方或者搜索方所在群下发所述加密公钥对应的私钥,即查询密钥,所述系统参数包括但不限于椭圆曲线密码参数组,映射函数和映射方法。
[0092]具体的,由身份得到的映射参数是一致的,而公钥的计算方式是由映射参数和公钥因子矩阵相乘得到的,私钥的计算方式是由映射参数和私钥因子矩阵相乘得到的,因此,保证了公钥和私钥的一一对应。
[0093]本步骤中,所述密钥管理中心可以采用离线的方式工作,即发送所述身份信息和系统参数,以及发送查询密钥的时间并不限定,可以在离线之前将系统参数下发给发送方,并将计算出的加密公钥所对应的查询密钥下发给搜索方或者搜索方所在群,也可以在线提供。
[0094]步骤102,根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
[0095]具体的,所述根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,包括:
[0096]根据所述搜索方的身份信息以及所述系统参数,计算出用来加密所述关键词的加密公钥,并根据所述计算出的加密公钥加密所述关键词。
[0097]本步骤中,发送方只需要知道搜索方的身份信息或者搜索方所在群组的身份信息即可实现关键词的加密,使得发送方不需要从在线的公钥数据库或者证书库下载加密公钥,降低了网络带宽和存储开销。
[0098]本发明实施例提供一种基于身份的可搜索加密方法,所述方法中发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。
[0099]实施例二
[0100]参考图2,图2是本发明实施例二提供的一种基于身份的可搜索加密方法流程图。如图2所示,该方法包括以下步骤:[0101]步骤201,根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0102]其中,查询密钥是所述密钥管理中心根据所述搜索方的身份信息以及系统参数生成的加密密钥所对应的私钥。所述密钥管理中心同样可以计算公钥,因为所述密钥管理中心存储有公钥因子矩阵,而私钥只存在于所述密钥管理中心,不对外布。
[0103]步骤202,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的查询结果。
[0104]其中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0105]根据搜索方的一个或者多个关键词和所述获取的查询密钥生成查询令牌。
[0106]通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。
[0107]可优选的,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0108]当根据搜索方所在群的身份信息从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。
[0109]图3和图4是本发明实施例一和二提供的一种基于身份的可搜索加密方法示意图,现以信令交互的方式具体说明实施例一和二中所述的一种基于身份的可搜索加密方法。同时,本发明实施例的实现方式包括图3和图4的步骤,但不限于各步骤的顺序,图3和图4只是一种可优选的实施例。如图3所示,所述方法包括如下步骤:
[0110]步骤301,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0111]步骤302,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;
[0112]步骤303,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;
[0113]步骤304,搜索方根据所述查询密钥和关键词生成查询令牌;
[0114]步骤305,搜索方上传所述查询令牌到所述存储服务器;
[0115]步骤306,搜索方从所述存储服务器接收返回的查询结果。
[0116]如图4所示,所述方法包括如下步骤:
[0117]步骤401,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0118]步骤402,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;
[0119]步骤403,搜索方所在群根据所述群的身份信息从所述密钥管理中心获取查询密钥;[0120]步骤404,所述搜索方向搜索方所在群递交关键词,向搜索方所在群申请查询令牌;
[0121 ] 步骤405,搜索方所在群检查所述搜索方是否是群内成员,若是,则生成查询令牌,若不是,则不生成查询令牌;
[0122]步骤406,所述搜索方接收所述群下发的查询令牌;
[0123]步骤407,搜索方上传所述查询令牌到所述存储服务器;
[0124]步骤408,搜索方从所述存储服务器接收返回的查询结果。
[0125]本发明实施例提供一种基于身份的可搜索加密方法,所述方法通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。同时通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。
[0126]实施例三
[0127]参考图5,图5是本发明实施例三提供的一种基于身份的可搜索加密方法流程图。如图5所示,所述方法包括以下步骤:
[0128]步骤501,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;
[0129]步骤502,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;
[0130]步骤503,根据现有技术中任意一种加密的方法加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0131]本步骤中,通过现有技术中任意一种加密的方法加密所述关键词对应的明文数据。
[0132]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图7所示的步骤703。
[0133]本发明实施例通过本发明实施例一和二提供的一种基于身份的可搜索加密方法加密关键词,通过现有技术加密所述关键词对应的明文数据,从而实现在现有技术的基础上,实现基于身份的可搜索加密关键词的方案。
[0134]实施例四
[0135]参考图6,图6是本发明实施例四提供的一种基于身份的可搜索加密方法流程图。如图6所示,所述方法包括如下步骤:
[0136]步骤601,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;
[0137]步骤602,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;
[0138]步骤603,获取现有技术中任意一种加密明文数据的方法对应的解密密钥;
[0139]步骤604,根据所述现有技术中任意一种加密明文数据的方法对应的解密密钥,对所述加密后的明文数据的密文进行解密,获得解密后的明文数据。
[0140]本步骤中,通过现有技术中任意一种加密的方法对应的解密方法解密所述关键词对应的明文数据。
[0141]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图7所示的步骤708和步骤709。
[0142]图7是本发明实施例三和实施例四提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例三和四中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图7的步骤,但不限于各步骤的顺序,图7只是一种可优选的实施例。如图7所示,所述方法包括如下步骤:
[0143]步骤701,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0144]步骤702,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;
[0145]步骤703,所述发送方根据现有技术中任意一种加密的方法加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;
[0146]步骤704,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;
[0147]步骤705,搜索方根据所述查询密钥和关键词生成查询令牌;
[0148]步骤706,搜索方上传所述查询令牌到所述存储服务器;
[0149]步骤707,搜索方从所述存储服务器接收返回的查询结果;
[0150]步骤708,所述搜索方获取现有技术中任意一种加密明文数据的方法对应的解密密钥;
[0151]步骤709,根据所述现有技术中任意一种加密明文数据的方法对应的解密密钥,对所述加密后的明文数据的密文进行解密,获得解密后的明文数据。
[0152]本发明实施例通过本发明实施例一和二提供的一种基于身份的可搜索加密方法加密关键词,通过现有技术加密所述关键词对应的明文数据,从而实现在现有技术的基础上,实现基于身份的可搜索加密关键词的方案。
[0153]实施例五
[0154]参考图8,图8是本发明实施例五提供的一种基于身份的可搜索加密方法流程图。所述方法包括如下步骤:
[0155]步骤801,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;
[0156]步骤802,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;
[0157]步骤803,根据所述搜索方的身份和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0158]具体的,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:
[0159]根据所述搜索方的身份和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
[0160]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图10所示的步骤1003。
[0161]本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。
[0162]实施例六
[0163]参考图9,图9是本发明实施例六提供的一种基于身份的可搜索加密方法流程图。如图9所示,所述方法包括如下步骤:
[0164]步骤901,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;
[0165]步骤902,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;
[0166]步骤903,根据所述查询密钥,对所述根据搜索方的身份加密的明文数据的密文进行解密,获得解密后的明文数据。
[0167]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图10所示的步骤1008。
[0168]图10是本发明实施例五和实施例六提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例五和六中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图10的步骤,但不限于各步骤的顺序,图10只是一种可优选的实施例。如图10所示,所述方法包括如下步骤:
[0169]步骤1001,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0170]步骤1002,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;
[0171]步骤1003,根据所述搜索方的身份和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;
[0172]步骤1004,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;
[0173]步骤1005,搜索方根据所述查询密钥和关键词生成查询令牌;
[0174]步骤1006,搜索方上传所述查询令牌到所述存储服务器;
[0175]步骤1007,搜索方从所述存储服务器接收返回的查询结果;
[0176]步骤1008,根据所述查询密钥,对所述根据搜索方的身份加密的明文数据的密文进行解密,获得解密后的明文数据。
[0177]本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。
[0178]实施例七
[0179]参考图11,图11是本发明实施例七提供的一种基于身份的可搜索加密方法流程图。如图11所示,所述方法包括以下步骤:[0180]步骤1101,获取搜索方的身份或者搜索方所在群的身份,和密钥管理中心的系统参数;
[0181]步骤1102,根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,并将加密后的关键词密文上传到存储服务器;
[0182]步骤1103,根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0183]具体的,所述属性包括但不限于以下几种情况:例如,公司职员A所在的部门是某某公司研发部A组,则公司职员A的属性可以设置为某某公司研发部A组,或者设置为其他形式。发送方根据公司职员A的属性加密关键词对应的明文数据,并将加密后的密文上传到所述存储服务器。
[0184]具体的,根据所述搜索方的属性加密明文数据时,产生的加密密钥和根据所述搜索方的身份加密明文数据产生的加密密钥不同。当根据所述搜索方的身份加密明文数据时,是根据所述搜索方的身份和系统参数生成公钥,发送方根据公钥对明文数据加密,搜索方根据公钥对应的私钥对加密后的明文数据进行解密。当根据搜索方的属性对明文数据进行加密时,是根据属性生成加密明文数据的加密密钥,生成密钥的方式和生成公钥的方式不同。
[0185]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图13所示的步骤1303。
[0186]本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。
[0187]实施例八
[0188]参考图12,图12是本发明实施例八提供的一种基于身份的可搜索加密方法流程图。如图12所示,所述方法包括以下步骤:
[0189]步骤1201,根据搜索方的身份或者搜索方所在群的身份从密钥管理中心获取查询密钥;
[0190]步骤1202,根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文,并接收所述存储服务器返回的数据;
[0191]步骤1203,根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;
[0192]步骤1204,根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0193]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。具体参考图13所示的步骤1308和步骤1309。
[0194]图13是本发明实施例七和实施例八提供的一种基于身份的可搜索加密方法,现以信令交互的方式具体说明实施例七和八中所述的一种基于身份的可搜索加密方法,同时,本发明实施例的实现方式包括图13的步骤,但不限于各步骤的顺序,图13只是一种可优选的实施例。如图13所示,所述方法包括如下步骤:
[0195]步骤1301,发送方从密钥管理中心获取系统参数,并同时获取搜索方的身份信息,所述搜索方包括单个搜索者或者多个搜索者所在的群组,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0196]步骤1302,发送方根据搜索方的身份信息和系统参数获得对关键词进行加密的加密密钥,根据所述加密密钥加密关键词并将加密后的关键词密文上传到存储服务器;
[0197]步骤1303,所述发送方根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器;
[0198]步骤1304,搜索方根据自己相关的身份信息从所述密钥管理中心获取查询密钥;
[0199]步骤1305,搜索方根据所述查询密钥和关键词生成查询令牌;
[0200]步骤1306,搜索方上传所述查询令牌到所述存储服务器;
[0201]步骤1307,搜索方从所述存储服务器接收返回的查询结果;
[0202]步骤1308,根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;
[0203]步骤1309,根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0204]本发明实施例通过属性加密搜索方关键词对应的明文数据,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。
[0205]实施例九
[0206]参考图14,图14是本发明实施例九提供的一种加密设备的装置结构图,所述设备包括以下单元:
[0207]第一获取单元1401和加密上传单元1402,所述第一获取单元1401用于执行实施例一中图1的步骤101,所述加密上传单元1402用于执行实施例一中图1的步骤102。
[0208]本领域普通技术人员可以理解为所述本发明实施例九中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0209]第一获取单元1401,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0210]其中,所述搜索方的身份包括但不限于搜索方的手机号码、工号、QQ号、Email等信息。所述获取搜索方的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述搜索方所在群的身份包括但不限于搜索方所在群的QQ群号、部门名称等信息。所述获取搜索方所在群的身份的方式包括但不限于通过电话查询或者邮件查询等方式获得。所述密钥管理中心负责向发送方下发加密关键词时使用的系统参数,同时向搜索方或者搜索方所在群下发发送方根据搜索方的身份或者搜索方所在群的身份和系统参数计算出的公钥对应的私钥,即查询密钥,采用公钥和私钥一一对应的方式管理发送方的公钥和搜索方或者搜索方所在群的私钥。具体参考图3中步骤301所示和图4中的步骤401。
[0211]本单元中,所述密钥管理中心可以采用离线的方式工作,在离线之前将系统参数下发给发送方,并将搜索方计算出的公钥所对应的查询密钥下发给搜索方或者搜索方所在群即可。
[0212]加密上传单元1402,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
[0213]具体的,所述根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数加密关键词,包括:
[0214]根据所述搜索方的身份或者搜索方所在群的身份,和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。
[0215]本单元中,发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。同时由于对应发送方公钥的查询密钥是由所述密钥管理中心产生的,因此密钥管理中心能够查询和解密全部数据,实现集中式密钥托管功能,该功能在公司及一些政府机关尤其重要。具体参考图3的步骤302。
[0216]本发明实施例提供一种加密设备,所述加密设备中发送方只需要知道搜索方的身份或者搜索方所在群即可实现关键词的加密方法,使得发送方不需要下载多个搜索方的身份或者搜索方所在群的公钥,不需要在线公钥数据库支撑,降低了网络带宽和存储开销。
[0217]实施例十
[0218]参考图15,图15是本发明实施例十提供的一种搜索设备的装置结构图,所述设备包括以下单元:
[0219]第二获取单元1501和查询接收单元1502,所述第二获取单元1501用于执行实施例二中图2的步骤201,所述加密上传单元1502用于执行实施例二中图2的步骤202。
[0220]本领域普通技术人员可以理解为所述本发明实施例十中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0221]第二获取单元1501,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0222]其中,查询密钥是所述密钥管理中心根据所述搜索方的身份或者搜索方所在群的身份生成的私钥。
[0223]查询接收单元1502,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
[0224]其中,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0225]根据搜索方的一个或者多个关键词和所述获取的查询密钥生成查询令牌。
[0226]通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。
[0227]可优选的,所述根据关键词和所述获取的查询密钥生成查询令牌,包括:
[0228]当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。
[0229]本发明实施例提供一种搜索设备,所述搜索设备通过上述一个或者多个关键词的方式,可以实现搜索方对所述一个或多个关键词在所述存储服务器进行搜索查询。同时通过搜索方所在群对搜索方查询进行管理和控制,从而实现多用户搜索的目的。
[0230]实施例^^一
[0231]参考图16,图16是本发明实施例十一提供的一种加密设备的装置结构图,所述设备包括以下单元:
[0232]第一获取单元1601和加密上传单元1602,第一加密单元1603,所述第一加密单元1603用于执行实施例五图8的步骤803。
[0233]本领域普通技术人员可以理解为所述本发明实施例十一中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0234]第一获取单元1601,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0235]加密上传单元1602,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;
[0236]第一加密单元1603,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0237]具体的,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括:
[0238]根据所述搜索方的身份和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
[0239]本发明实施例对于搜索方或者搜索方所在群都适用,下面主要以搜索方为例做进一步说明。本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述明文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。
[0240]实施例十二
[0241]参考图17,图17是本发明实施例十二提供的一种搜索设备的装置结构图,所述设备包括以下单元:
[0242]第二获取单元1701和查询接收单元1702,第一解密单元1703,所述第一解密单元1703用于执行实施例六图9的步骤903。
[0243]本领域普通技术人员可以理解为所述本发明实施例十二中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0244]第二获取单元1701,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0245]查询接收单元1702,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;
[0246]第一解密单元1703,用于根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
[0247]本发明实施例通过使用搜索方的身份和系统参数计算出的公钥加密关键词对应的明文数据,使得搜索方只需要通过所述公钥对应的私钥解密所述密文数据即可,可以通过一对公钥和私钥同时实现对关键词和明文数据同时加密,使得操作简单。所述密钥管理中心同时具备查询和解密全部数据的能力,可以实现集中式数据管理,在对公司及一些政府机关尤其重要。
[0248]实施例十三
[0249]参考图18,图18是本发明实施例十三提供的一种加密设备的装置结构图,所述设备包括以下单元:
[0250]第一获取单元1801和加密上传单元1802,第二加密单元1803,所述第二加密单元1803用于执行实施例七图11的步骤1103。
[0251]本领域普通技术人员可以理解为所述本发明实施例十三中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0252]第一获取单元1801,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0253]加密上传单元1802,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;
[0254]第二加密单元1803,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0255]具体的,所述属性包括但不限于以下几种情况:例如,公司职员A所在的部门是某某公司研发部A组,则公司职员A的属性可以设置为某某公司研发部A组,或者设置为其他形式。发送方根据公司职员A的属性加密关键词对应的明文数据,并将加密后的密文上传到所述存储服务器。
[0256]本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。
[0257]实施例十四
[0258]参考图19,图19是本发明实施例十四提供的一种搜索设备的装置结构图,所述设备包括以下单元:
[0259]第二获取单元1901和查询接收单元1902,第三获取单元1903,第二解密单元1904,所述第三获取单元1903用于执行实施例八中图12的步骤1203,所述第二解密单元1904用于执行实施例八中图12的步骤1204。
[0260]本领域普通技术人员可以理解为所述本发明实施例十四中的设备所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。
[0261]第二获取单元1901,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0262]查询接收单元1902,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;
[0263]第三获取单元1903,用于根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;
[0264]第二解密单元1904,用于根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0265]本发明实施例通过属性加密搜索方关键词对应的明文属性,使得搜索方可以根据预先设置的属性设置访问权限,对群组成员可以进行多种关键词检索的同时,对群组数据的公共可搜索性和数据的解密权限进行有效的结合。
[0266]实施例十五
[0267]参考图20,图20是本发明实施例十五提供的一种加密设备的装置结构图。参考图20,图20是本发明实施例提供的一种加密设备2000,本发明具体实施例并不对所述网络设备的具体实现做限定。所述设备2000包括:
[0268]处理器(processor)2001,通信接口(Communications Interface) 2002,存储器(memory) 2003,总线 2004。
[0269]处理器2001,通信接口 2002,存储器2003通过总线2004完成相互间的通信。
[0270]通信接口 2002,用于与其他设备进行通信;
[0271]处理器2001,用于执行程序A。
[0272]具体地,程序A可以包括程序代码,所述程序代码包括计算机操作指令。
[0273]处理器2001可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0274]存储器2003,用于存放程序A。存储器2003可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序A具体可以包括:
[0275]第一获取单元1401,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0276]加密上传单元1402,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
[0277]或者程序A具体可以包括:[0278]第一获取单元1601,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0279]加密上传单元1602,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;
[0280]第一加密单元1603,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0281 ] 或者程序A具体可以包括:
[0282]第一获取单元1801,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0283]加密上传单元1802,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器;
[0284]第二加密单元1803,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
[0285]程序A中各单元的具体实现参见图14或图16或图18所示实施例中的相应单元,在此不赘述。
[0286]实施例十六
[0287]参考图21,图21是本发明实施例十六提供的一种搜索设备的装置结构图。参考图21,图21是本发明实施例提供的一种搜索设备2100,本发明具体实施例并不对所述网络设备的具体实现做限定。所述搜索设备2100包括:
[0288]处理器(processor)2101,通信接口(Communications Interface) 2102,存储器(memory) 2103,总线 2104。
[0289]处理器2101,通信接口 2102,存储器2103通过总线2104完成相互间的通信。
[0290]通信接口 2102,用于与其他设备进行通信;
[0291]处理器2101,用于执行程序A。
[0292]具体地,程序A可以包括程序代码,所述程序代码包括计算机操作指令。
[0293]处理器2101可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。
[0294]存储器2103,用于存放程序A。存储器2103可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。程序A具体可以包括:
[0295]第二获取单元1501,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0296]查询接收单元1502,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
[0297]或者程序A具体可以包括:[0298]第二获取单元1701,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0299]查询接收单元1702,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;
[0300]第一解密单元1703,用于根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
[0301 ] 或者程序A具体可以包括:
[0302]第二获取单元1901,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息;
[0303]查询接收单元1902,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文;
[0304]第三获取单元1903,用于根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥;
[0305]第二解密单元1904,用于根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
[0306]程序A中各单元的具体实现参见图15或图17或图19所示实施例中的相应单元,在此不赘述。
[0307]以上所述仅为本发明的优选实施方式,并不构成对本发明保护范围的限定。任何在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明要求包含范围之内。
【权利要求】
1.一种可搜索加密方法,其特征在于,所述方法包括: 获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息; 根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
2.根据权利要求1所述的方法,其特征在于,所述根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,包括: 根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
4.根据权利要求3所述的方法,其特征在于,所述根据所述搜索方的身份和所述系统参数加密明文数据,包括: 根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括: 根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。`
6.一种基于身份的可搜索加密方法,其特征在于,所述方法包括: 根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息; 根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
7.根据权利要求6所述的方法,其特征在于,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括: 通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。
8.根据权利要求6或7所述的方法,其特征在于,所述根据关键词和所述获取的查询密钥生成查询令牌,包括: 当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。
9.根据权利要求6至8任意一项所述的方法,其特征在于,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括: 接收所述存储服务器返回的根据公钥加密的明文数据的密文。
10.根据权利要求9所述的方法,其特征在于,所述方法在步骤接收所述存储服务器返回的根据公钥加密的明文数据的密文之后,还包括: 根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
11.根据权利要求6至10任意一项所述的方法所述的方法,其特征在于,所述方法,还包括: 根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。
12.根据权利要求11所述的方法,其特征在于,所述通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括: 接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。
13.根据权利要求12所述的方法,其特征在于,所述方法在步骤接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文之后,还包括: 根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
14.一种加密设备,其特征在于,所述设备包括: 第一获取单元,用于获取搜索方的身份信息以及密钥管理中心的系统参数,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息; 加密上传单元,用于根据所述搜索方的身份信息以及所述系统参数对关键词进行加密,并将加密后的关键词密文上传到存储服务器。
15.根据权 利要求14所述的设备,其特征在于,所述加密上传单元具体用于: 根据所述搜索方的身份信息和所述系统参数计算出加密所述关键词的公钥,并根据所述计算出的公钥加密所述关键词。
16.根据权利要求14或15所述的设备,其特征在于,所述设备还包括: 第一加密单元,用于根据所述搜索方的身份信息和所述系统参数加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
17.根据权利要求16所述的设备,其特征在于,所述第一加密单元具体用于: 根据所述搜索方的身份信息和所述系统参数计算出加密所述明文数据的公钥,并根据所述计算出的公钥加密所述明文数据。
18.根据权利要求14或15所述的设备,其特征在于,所述设备还包括: 第二加密单元,用于根据所述搜索方的属性加密明文数据,并将加密后的明文数据的密文上传到所述存储服务器。
19.一种搜索设备,其特征在于,所述设备包括: 第二获取单元,用于根据搜索方的身份信息从密钥管理中心获取查询密钥,所述搜索方的身份信息包括所述单个搜索者的身份信息或者所述多个搜索者所在的群组的身份信息; 查询接收单元,用于根据关键词和所述获取的查询密钥生成查询令牌,通过所述查询令牌从存储服务器中查询加密后的关键词密文。
20.根据权利要求19所述的设备,其特征在于,所述查询接收单元中执行步骤通过所述查询令牌从存储服务器中查询加密后的关键词密文,包括: 通过所述查询令牌从存储服务器中查询包含加密后的关键词的文件。
21.根据权利要求19或20所述的设备,其特征在于,所述查询接收单元执行步骤根据关键词和所述获取的查询密钥生成查询令牌,包括: 当根据搜索方所在群的身份从密钥管理中心获取查询密钥时,所述搜索方向所述搜索方所在群递交关键词,所述搜索方所在群检查所述搜索方是否是群内的成员,若是,则所述搜索方所在群根据所述关键词和所述查询密钥生成查询令牌,并将所述查询令牌返回到所述搜索方。
22.根据权利要求19至21任意一项所述的设备,其特征在于,所述查询接收单元,包括: 接收所述存储服务器返回的根据公钥加密的明文数据的密文。
23.根据权利要求22所述的设备,其特征在于,所述设备还包括第一解密单元,所述第一解密单元具体用于: 根据所述查询密钥,对所述根据公钥加密的明文数据的密文进行解密,获得解密后的明文数据。
24.根据权利要求19至23任意一项所述的设备,其特征在于,所述设备还包括第三获取单元,所述第三获取单元具体用于: 根据预先设置的搜索方属性从所述密钥管理中心获取所述属性对应的数据解密密钥。
25.根据权利要求24所述的设备,其特征在于,所述查询接收单元,包括: 接收所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文。
26.根据权利要求25所`述的设备,其特征在于,所述设备还包括第二解密单元,所述第二解密单元具体用于: 根据所述数据解密密钥,对所述存储服务器返回的根据所述预先设置的搜索方属性加密的明文数据的密文进行解密,获得解密后的明文数据。
【文档编号】H04L9/30GK103873236SQ201210534843
【公开日】2014年6月18日 申请日期:2012年12月12日 优先权日:2012年12月12日
【发明者】高云超, 邹继富, 董秋香, 关志 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1