当前位置: 首页 > 专利查询>青岛大学专利>正文

一种可搜索加密方法、装置、设备及可读存储介质制造方法及图纸

技术编号:22642741 阅读:122 留言:0更新日期:2019-11-26 16:24
本申请公开了一种可搜索加密方法,该方法中的第一端可以直接将目标集合中的随机数确定为其私钥,并为用户生成用于关键字搜索的聚合密钥,该聚合密钥不会因为需要搜索的文件数量增多而增多,从而降低了第一端的计算和通信开销;用户存储的密钥也不会因为需要搜索的文件数量而增大,从而降低了用户端的存储、计算和通信开销。云服务端也无需进行大量指数运算,如此则明显降低了云服务端的计算量。如上所述,本申请可以降低可搜索加密方案的计算、存储和通信开销。相应地,本申请公开的一种可搜索加密装置、设备及可读存储介质,也同样具有上述技术效果。

A searchable encryption method, device, device and readable storage medium

The application discloses a searchable encryption method. The first end of the method can directly determine the random number in the target set as its private key, and generate an aggregation key for keyword search for the user. The aggregation key will not increase due to the increase of the number of files to be searched, thus reducing the calculation and communication overhead at the first end; the key stored by the user will not increase due to the increase of the number of files to be searched Increase the number of files that need to be searched, thus reducing the storage, computing, and communication overhead of the client. The cloud server does not need a large number of exponential operations, which significantly reduces the amount of computing on the cloud server. As described above, the application can reduce the calculation, storage and communication overhead of the searchable encryption scheme. Accordingly, the searchable encryption device, device and readable storage medium disclosed in the present application also have the above technical effect.

【技术实现步骤摘要】
一种可搜索加密方法、装置、设备及可读存储介质
本申请涉及计算机
,特别涉及一种可搜索加密方法、装置、设备及可读存储介质。
技术介绍
在可搜索加密方案中,包括:数据拥有者端、用户端和云服务端。其中,数据拥有者端用于上传加密文件至云服务端;云服务端用于存储加密文件;用户端用户从云服务端搜索加密文件。在现有的可搜索加密方案中,云服务端需要通过指数运算来生成大量参数,这些参数可用于生成用户搜索加密文件的密钥。但是指数运算会增加云服务端计算开销和通信开销。在对称可搜索加密方案中,用户搜索加密文件的密钥与用户搜索的文件一一对应,也就是一个加密文件对应一个密钥;那么当用户搜索的加密文件较多时,用户端就需要提前存储较多的密钥,如此会增加用户端的存储开销。当对大量文件进行关键字搜索时,用户端需要计算大量的陷门发给云服务端,如此则增加了用户端的计算和通信开销。又由于用户搜索加密文件的密钥是数据拥有者端计算得到的,因此当加密文件较多时,也会增加数据拥有者端的计算和通信开销。因此,如何降低可搜索加密方案中的计算量、存储和通信开销,是本领域技术人员需要解决的问题。
技术实现思路
有鉴于此,本申请的目的在于提供一种可搜索加密方法、装置、设备及可读存储介质,以降低可搜索加密方案中的计算量、存储和通信开销。其具体方案如下:第一方面,本申请提供了一种可搜索加密方法,应用于数据拥有者对应的第一端,包括:从目标集合中获取第一随机数和第二随机数,并将第一随机数和第二随机数确定为第一端对应的私钥;目标集合为预设整数集合;从目标集合中获取多个第三随机数,并将每个第三随机数确定为每个文件对应的安全索引;利用私钥和安全索引子集计算目标用户对应的聚合密钥;安全索引子集为目标用户对应的加密文件子集中的每个加密文件对应的安全索引组成的集合;目标用户为数据拥有者授权搜索加密文件的任一个用户;将聚合密钥发送给目标用户,以使目标用户利用聚合密钥在云服务端搜索加密文件;云服务端存储有第一端发送的加密文件集合;加密文件子集为加密文件集合的子集。优选地,第一端发送加密文件集合至云服务端,包括:从目标集合中获取第四随机数,并将第四随机数确定为加密文件的对称密钥;利用对称密钥加密每个文件,获得加密文件集合;利用对称密钥、私钥对应的公钥和每个安全索引,分别计算每个加密文件对应的文件参数对,获得文件参数对集合;按照第一公式计算每个关键字对应的关键字密文,获得关键字密文集合;每个加密文件对应多个关键字,第一公式为:其中,CW表示任一个关键字对应的关键字密文,W表示任一个关键字;τ表示对称密钥,τ∈Zp,Zp为目标集合;H(W)表示任一个关键字的哈希值;g和h均为G中的生成元,G为p阶的乘法循环群,且G存在于双线性映射系统B中,B=(p,G,G1,e(·,·));n≤p≤k,n表示加密文件集合中的加密文件的个数,k为预设安全参数,G1为p阶的乘法循环群,e(·,·)为双线性映射:G×G→G1;G、G1和e(·,·)构成所述双线性映射系统B;将加密文件集合、文件参数对集合和关键字密文集合发送至云服务端。优选地,利用私钥和安全索引子集计算目标用户对应的聚合密钥之前,还包括:按照第三公式计算每个安全索引对应的公开索引,获得公开索引集合;第三公式为:pkindex=(βI1,βI2,...,βIn);其中,pkindex表示公开索引集合,I1,I2……In分别表示n个安全索引,β为第二随机数;n表示加密文件集合中的加密文件的个数,n≤p≤k,k为预设安全参数。优选地,利用私钥和安全索引子集计算目标用户对应的聚合密钥,包括:按照第四公式计算聚合密钥,第四公式为:其中,kagg,0和kagg,1共同构成聚合密钥Kagg,Kagg=(kagg,0,kagg,1);S表示加密文件子集,|S|表示加密文件子集中的加密文件的个数;Ii表示加密文件子集中的第i个加密文件对应的安全索引;α为第一随机数,β为第二随机数。优选地,目标用户利用聚合密钥在云服务端搜索加密文件,包括:目标用户输入聚合密钥和待搜索的关键字至目标用户对应的第二端,以使第二端计算待搜索的关键字的哈希值,并利用聚合密钥和待搜索的关键字的哈希值计算聚合陷门,将聚合陷门发送至云服务端;云服务端利用与目标用户对应的加密文件子集中的每个加密文件对应的文件参数对,以及聚合陷门分别计算加密文件子集中的每个加密文件对应的关键字,并判断计算得到的关键字与待搜索的关键字是否一致;若是,则将待搜索的关键字对应的加密文件返回给目标用户。优选地,第二端利用聚合密钥和待搜索的关键字的哈希值计算聚合陷门,包括:第二端按照第五公式计算待搜索的关键字的聚合陷门,第五公式为:Tr=kagg,0H(W)kagg,1其中,Tr表示聚合陷门,H(W)表示待搜索的关键字的哈希值,kagg,0和kagg,1共同构成聚合密钥Kagg,Kagg=(kagg,0,kagg,1)。优选地,从目标集合中获取第一随机数和第二随机数之前,还包括:云服务端根据安全参数生成双线性映射系统,并选择单向哈希函数;生成包含双线性映射系统、单向哈希函数和生成元的系统参数;将系统参数发送至第一端和第二端。第二方面,本申请提供了一种可搜索加密装置,应用于数据拥有者对应的第一端,包括:第一获取模块,用于从目标集合中获取第一随机数和第二随机数,并将第一随机数和第二随机数确定为第一端对应的私钥;目标集合为预设整数集合;第二获取模块,用于从目标集合中获取多个第三随机数,并将每个第三随机数确定为每个文件对应的安全索引;计算模块,用于利用私钥和安全索引子集计算目标用户对应的聚合密钥;安全索引子集为目标用户对应的加密文件子集中的每个加密文件对应的安全索引组成的集合;目标用户为数据拥有者授权搜索加密文件的任一个用户;发送模块,用于将聚合密钥发送给目标用户,以使目标用户利用聚合密钥在云服务端搜索加密文件;云服务端存储有第一端发送的加密文件集合;加密文件子集为加密文件集合的子集。第三方面,本申请提供了一种可搜索加密设备,包括:存储器,用于存储计算机程序;处理器,用于执行计算机程序,以实现前述公开的可搜索加密方法。第四方面,本申请提供了一种可读存储介质,用于保存计算机程序,其中,计算机程序被处理器执行时实现前述公开的可搜索加密方法。通过以上方案可知,本申请提供了一种可搜索加密方法,应用于数据拥有者对应的第一端,包括:从目标集合中获取第一随机数和第二随机数,并将第一随机数和第二随机数确定为第一端对应的私钥;目标集合为预设整数集合;从目标集合中获取多个第三随机数,并将每个第三随机数确定为每个文件对应的安全索引;利用私钥和安全索引子集计算目标用户对应的聚合密钥;安全索引子集为目标用户对应的加密文件子集中的每个加密文件对应的安全索引组成本文档来自技高网...

【技术保护点】
1.一种可搜索加密方法,其特征在于,应用于数据拥有者对应的第一端,包括:/n从目标集合中获取第一随机数和第二随机数,并将所述第一随机数和所述第二随机数确定为所述第一端对应的私钥;所述目标集合为预设整数集合;/n从所述目标集合中获取多个第三随机数,并将每个所述第三随机数确定为每个文件对应的安全索引;/n利用所述私钥和安全索引子集计算目标用户对应的聚合密钥;所述安全索引子集为所述目标用户对应的加密文件子集中的每个加密文件对应的安全索引组成的集合;所述目标用户为所述数据拥有者授权搜索加密文件的任一个用户;/n将所述聚合密钥发送给所述目标用户,以使所述目标用户利用所述聚合密钥在云服务端搜索加密文件;所述云服务端存储有所述第一端发送的加密文件集合;所述加密文件子集为所述加密文件集合的子集。/n

【技术特征摘要】
1.一种可搜索加密方法,其特征在于,应用于数据拥有者对应的第一端,包括:
从目标集合中获取第一随机数和第二随机数,并将所述第一随机数和所述第二随机数确定为所述第一端对应的私钥;所述目标集合为预设整数集合;
从所述目标集合中获取多个第三随机数,并将每个所述第三随机数确定为每个文件对应的安全索引;
利用所述私钥和安全索引子集计算目标用户对应的聚合密钥;所述安全索引子集为所述目标用户对应的加密文件子集中的每个加密文件对应的安全索引组成的集合;所述目标用户为所述数据拥有者授权搜索加密文件的任一个用户;
将所述聚合密钥发送给所述目标用户,以使所述目标用户利用所述聚合密钥在云服务端搜索加密文件;所述云服务端存储有所述第一端发送的加密文件集合;所述加密文件子集为所述加密文件集合的子集。


2.根据权利要求1所述的可搜索加密方法,其特征在于,所述第一端发送所述加密文件集合至所述云服务端,包括:
从所述目标集合中获取第四随机数,并将所述第四随机数确定为加密文件的对称密钥;
利用所述对称密钥加密每个文件,获得所述加密文件集合;
利用所述对称密钥、所述私钥对应的公钥和每个安全索引,分别计算每个加密文件对应的文件参数对,获得文件参数对集合;
按照第一公式计算每个关键字对应的关键字密文,获得关键字密文集合;每个加密文件对应多个关键字,所述第一公式为:



其中,CW表示任一个关键字对应的关键字密文,W表示任一个关键字;τ表示所述对称密钥,τ∈Zp,Zp为所述目标集合;H(W)表示任一个关键字的哈希值;g和h均为G中的生成元,G为p阶的乘法循环群,且G存在于双线性映射系统B中,B=(p,G,G1,e(·,·));n≤p≤k,n表示所述加密文件集合中的加密文件的个数,k为预设安全参数,G1为p阶的乘法循环群,e(·,·)为双线性映射:G×G→G1;G、G1和e(·,·)构成所述双线性映射系统B;
将所述加密文件集合、所述文件参数对集合和所述关键字密文集合发送至所述云服务端。


3.根据权利要求2所述的可搜索加密方法,其特征在于,所述利用所述私钥和安全索引子集计算目标用户对应的聚合密钥之前,还包括:
利用所述第二随机数计算每个安全索引对应的公开索引,获得公开索引集合,包括:
按照第三公式计算每个安全索引对应的公开索引,获得所述公开索引集合;所述第三公式为:pkindex=(βI1,βI2,...,βIn);
其中,pkindex表示公开索引集合,I1,I2……In分别表示n个安全索引,β为所述第二随机数;n表示所述加密文件集合中的加密文件的个数,n≤p≤k,k为预设安全参数。


4.根据权利要求3所述的可搜索加密方法,其特征在于,所述利用所述私钥和安全索引子集计算目标用户对应的聚合密钥,包括:
按照第四公式计算所述聚合密钥,所述第四公式为:



其中,kagg,0和kagg,1共同构成所述聚合密钥Kagg,Kagg=(kagg,0,kagg,1);S表示所述加密文件子集,|S|...

【专利技术属性】
技术研发人员:程相国王戌琦
申请(专利权)人:青岛大学
类型:发明
国别省市:山东;37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1