一种非密钥共享的加密数据查询方法、装置、系统及设备制造方法及图纸

技术编号:36087921 阅读:49 留言:0更新日期:2022-12-24 11:03
本发明专利技术涉及数据处理技术领域,尤其涉及一种非密钥共享的加密数据查询方法、装置、系统及设备。包括,密钥生成中心生成数据拥有者、数据使用者和存储服务方的密钥,使数据拥有者根据自身的密钥对目标文件的查询索引中的关键词进行加密,然后上传至存储服务方,数据使用者利用自身的密钥对查询条件中的关键词进行加密,然后发送给存储服务方,存储服务方利用自身的密钥对数据拥有者的查询索引中加密的关键词进行重加密、对数据使用者的查询条件中加密的关键词进行重加密,利用查询条件中重加密的关键词在查询索引中进行查找,得到目标文件。通过本发明专利技术实施例的方法,实现了数据拥有者在不向数据使用者共享密钥的情况下,完成数据的加密查询。据的加密查询。据的加密查询。

【技术实现步骤摘要】
一种非密钥共享的加密数据查询方法、装置、系统及设备


[0001]本专利技术涉及数据处理
,尤其涉及一种非密钥共享的加密数据查询方法、装置、系统及设备。

技术介绍

[0002]本部分旨在为权利要求书中陈述的本专利技术实施例提供背景或上下文。此处的描述不因为包括在本部分中就承认是现有技术。
[0003]随着云计算技术的不断发展,将个人数据外包到云服务器已经成为流行趋势。用户从服务提供商那里购买或租用一定的存储空间并由云服务提供商提供一定的数据管理服务。用户将文件上传到云端,与朋友、同事进行数据共享。支持云服务器在加密文件上进行内容相关的搜索技术是云计算场景中一个重要且现实的需求。在实际的云存储场景中,用户(数据拥有者)上传文件并不仅是进行存储外包,而是希望将文件查询权限共享给其他用户(数据使用者)。
[0004]现有技术中需要数据拥有者向数据使用者共享密钥,数据使用者利用共享的密钥进行加密查询,但在数据拥有者不再允许数据使用者查询加密数据时,只能更换新的密钥,并向其他仍能够查询数据的数据使用者重新同步更换的密钥,大幅增加了计算量。
[0005]现在亟需一种非密钥共享的加密数据查询方法,从而解决现有技术中需要数据拥有者向数据使用者共享密钥才能进行加密查询,导致数据使用者权限管理困难的问题。

技术实现思路

[0006]为解决现有技术中存在的问题,本专利技术实施例提供了一种非密钥共享的加密数据查询方法、装置、系统及设备,实现了数据拥有者在不向数据使用者共享密钥的情况下,完成数据的加密查询,解决了现有技术中需要数据拥有者向数据使用者共享密钥才能进行加密查询,导致数据使用者权限管理困难的问题。
[0007]为了解决上述技术问题,本专利技术的具体技术方案如下:
[0008]一方面,本专利技术实施例提供一种非密钥共享的加密数据查询方法,由密钥生成中心执行,该方法包括:
[0009]根据用户权限确定数据拥有者和数据使用者,并生成所述数据拥有者对应的第一密钥、数据使用者对应的第二密钥以及存储服务方对应的第一重加密密钥和第二重加密密钥;
[0010]将所述第一密钥发送给所述数据拥有者,以使所述数据拥有者在向所述存储服务方上传目标文件时,根据所述目标文件的内容提取所述目标文件的关键词,并生成查询索引,利用数据拥有者的特定密钥对所述目标文件进行加密,利用第一密钥对所述查询索引中的关键词进行加密,将加密后的所述目标文件以及所述查询索引发送给所述存储服务方;
[0011]将所述第二密钥发送给所述数据使用者,以使所述数据使用者在向所述存储服务
方查询所述目标文件时,根据查询的所述关键词生成查询条件,并利用所述第二密钥对所述查询条件中的所述关键词进行加密,将所述查询条件发送给所述存储服务方;
[0012]将所述第一重加密密钥、第二重加密密钥发送给所述存储服务方,以使所述存储服务方利用所述第一重加密密钥对所述查询索引中的加密后的所述关键词进行重加密,并在接收到所述查询条件后,利用所述第二重加密密钥对所述查询条件中的加密后的所述关键词进行重加密,所述查询条件中重加密后的所述关键词与所述查询索引中重加密后的关键词对应,利用所述查询条件中重加密后的所述关键词在所述查询索引中进行查找,得到与所述关键词对应的加密后的目标文件,将查找到的加密后的所述目标文件发送给所述数据使用者,以使所述数据使用者利用与所述特定密钥对应的密钥对加密后的所述目标文件进行解密,完成查询。
[0013]进一步地,生成所述第一密钥、第二密钥、第一重加密密钥和第二重加密密钥的步骤包括,
[0014]首先定义一个素数阶q的有限循环群G,设H
F
:x

G为一个哈希函数并定义为随机预言机,其中H
F
表示哈希函数,x表示函数输入,G表示函数输出,

表示输出过程;
[0015]将F
DDH
:Zq
×
x

G定义为F
DDH
(k,x)

H
F
(x)
k
,其中,F
DDH
(k,x)表示一个函数,Zq表示整数,k表示整数;
[0016]设定H
LSH
:R
d

N是p

stable的位置敏感函数,其中p

stable是局部敏感哈希算法,其中,H
LSH
表示p

stable的位置敏感函数,R
d
表示d维特征向量,N表示整数集;
[0017]密钥生成中心根据H
F
:x

G、F
DDH
:Zq
×
x

G、H
LSH
:R
d

N生成数据拥有者的密钥sk
O
={K
X
,K
I
,K
O_z
,K
O_T
,K
S
},其中{K
X
,K
I
,K
O_z
,K
O_T
,K
S
}整个集合表示数据拥有者的主密钥;
[0018]并根据K
O_z
为数据拥有者分发索引生成第一密钥K
U_z
,为存储服务方分发第一重加密密钥K
RE_z
,满足K
O_z
=K
U_z
+K
RE_z
,其中+表示加法;
[0019]同时根据K
O_T
为数据使用者分发索引生成第二秘钥K
U_T
,为存储服务方分发第二重加密密钥K
RE_T
,满足K
O_T
=K
U_T
+K
RE_T

[0020]数据使用者的密钥为sk
U
={K
U_z
,K
U_T
,K
S
};存储服务方的密钥为sk
Re
={K
RE_z
,K
RE_T
}。
[0021]基于同一专利技术构思,本专利技术实施例还提供了一种非密钥共享的加密数据查询装置,包括,
[0022]密钥生成单元,用于根据用户权限确定数据拥有者和数据使用者,并生成所述数据拥有者对应的第一密钥、数据使用者对应的第二密钥以及存储服务方对应的第一重加密密钥和第二重加密密钥;
[0023]密钥发送单元,用于将所述第一密钥发送给所述数据拥有者,以使所述数据拥有者在向所述存储服务方上传目标文件时,根据所述目标文件的内容提取所述目标文件的关键词,并生成查询索引,利用数据拥有者的特定密钥对所述目标文件进行加密,利本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种非密钥共享的加密数据查询方法,其特征在于,由密钥生成中心执行,所述方法包括,根据用户权限确定数据拥有者和数据使用者,并生成所述数据拥有者对应的第一密钥、数据使用者对应的第二密钥以及存储服务方对应的第一重加密密钥和第二重加密密钥;将所述第一密钥发送给所述数据拥有者,以使所述数据拥有者在向所述存储服务方上传目标文件时,根据所述目标文件的内容提取所述目标文件的关键词,并生成查询索引,利用数据拥有者的特定密钥对所述目标文件进行加密,利用第一密钥对所述查询索引中的关键词进行加密,将加密后的所述目标文件以及所述查询索引发送给所述存储服务方;将所述第二密钥发送给所述数据使用者,以使所述数据使用者在向所述存储服务方查询所述目标文件时,根据查询的所述关键词生成查询条件,并利用所述第二密钥对所述查询条件中的所述关键词进行加密,将所述查询条件发送给所述存储服务方;将所述第一重加密密钥、第二重加密密钥发送给所述存储服务方,以使所述存储服务方利用所述第一重加密密钥对所述查询索引中的加密后的所述关键词进行重加密,并在接收到所述查询条件后,利用所述第二重加密密钥对所述查询条件中的加密后的所述关键词进行重加密,所述查询条件中重加密后的所述关键词与所述查询索引中重加密后的关键词对应,利用所述查询条件中重加密后的所述关键词在所述查询索引中进行查找,得到与所述关键词对应的加密后的目标文件,将查找到的加密后的所述目标文件发送给所述数据使用者,以使所述数据使用者利用与所述特定密钥对应的密钥对加密后的所述目标文件进行解密,完成查询。2.根据权利要求1所述的方法,其特征在于,生成所述第一密钥、第二密钥、第一重加密密钥和第二重加密密钥的步骤包括,首先定义一个素数阶q的有限循环群G,设H
F
:x

G为一个哈希函数并定义为随机预言机,其中H
F
表示哈希函数,x表示函数输入,G表示函数输出,

表示输出过程;将F
DDH
:Zq
×
x

G定义为F
DDH
(k,x)

H
F
(x)
k
,其中,F
DDH
(k,x)表示一个函数,Zq表示整数,k表示整数;设定H
LSH
:R
d

N是p

stable的位置敏感函数,其中p

stable是局部敏感哈希算法,其中,H
LSH
表示p

stable的位置敏感函数,R
d
表示d维特征向量,N表示整数集;密钥生成中心根据H
F
:x

G、F
DDH
:Zq
×
x

G、H
LSH
:R
d

N生成数据拥有者的密钥sk
O
={K
X
,K
I
,K
O_z
,K
O_T
,K
S
},其中{K
X
,K
I
,K
O_z
,K
O_T
,K
S
}整个集合表示数据拥有者的主密钥;并根据K
O_z
为数据拥有者分发索引生成第一密钥K
U_z
,为存储服务方分发第一重加密密钥K
RE_z
,满足K
O_z
=K
U_z
+K
RE_z
,其中+表示加法;同时根据K
O_T
为数据使用者分发索引生成第二秘钥K
U_T
,为存储服务方分发第二重加密密钥K
RE_T
,满足K
O_T
=K
U_T
+K
RE_T
;数据使用者的密钥为sk
U
={K
U_z
,K
U_T
,K
S
};存储服务方的密钥为sk
Re
={K
RE_z
,K
RE_T
}。3.一种非密钥共享的加密数据查询装置,其特征在于,包括,密钥生成单元,用于根据用户权限确定数据拥有者和数据使用者,并生成所述数据拥有者对应的第一密钥、数据使用者对应的第二密钥以及存储服务方对应的第一重加密密钥和第二重加密密钥;
密钥发送单元,用于将所述第一密钥发送给所述数据拥有者,以使所述数据拥有者在向所述存储服务方上传目标文件时,根据所述目标文件的内容提取所述目标文件的关键词,并生成查询索引,利用数据拥有者的特定密钥对所述目标文件进行加密,利用第一密钥对所述查询索引中的关键词进行加密,将加密后的所述目标文件以及所述查询索引发送给所述存储服务方;将所述第二密钥发送给所述数据使用者,以使所述数据使用者在向所述存储服务方查询所述目标文件时,根据查询的所述关键词生成查询条件,并利用所述第二密钥对所述查询条件中的所述关键词进行加密,将所述查询条件发送给所述存储服务方;将所述第一重加密密钥、第二重加密密钥发送给所述存储服务方,以使所述存储服务方利用所述第一重加密密钥对所述查询索引中的加密后的所述关键词进行重加密,并在接收到所述查询条件后,利用所述第二重加密密钥对所述查询条件中的加密后的所述关键词进行重加密,所述查询条件中重加密后的所述关键词与所述查询索引中重加密后的关键词对应,利用所述查询条件中重加密后的所述关键词在所述查询索引中进行查找,得到与所述关键词对应的加密后的目标文件,将查找到的加密后的所述目标文件发送给所述数据使用者,以使所述数据使用者利用与所述特定密钥对应的密钥对加密后的所述目标文件进行解密,完成查询。4.一种非密钥共享的加密数据查询方法,其特征在于,由数据拥有者执行,所述方法包括,接收密钥生成中心发送的第一密钥;根据目标文件内容提取所述目标文件的关键词;根据所述关键词生成所述目标文件的查询索引;利用所述密钥对所述查询索引中的关键词进行加密;利用所述数据拥有者的特定密钥对所述目标文件进行加密;将加密后的所述目标文件以及加密后的所述查询索引发送给存储服务方...

【专利技术属性】
技术研发人员:凌华泽麻珂欣王祎琨
申请(专利权)人:中国银行股份有限公司
类型:发明
国别省市:

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

1