预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共16页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

(19)中华人民共和国国家知识产权局(12)发明专利申请(10)申请公布号CN112115516A(43)申请公布日2020.12.22(21)申请号202011269236.7(22)申请日2020.11.13(71)申请人支付宝(杭州)信息技术有限公司地址310000浙江省杭州市西湖区西溪路556号8层B段801-11(72)发明人周启贤张君涛(74)专利代理机构北京亿腾知识产权代理事务所(普通合伙)11309代理人陈霁周良玉(51)Int.Cl.G06F21/62(2013.01)G06F21/60(2013.01)G06F16/24(2019.01)H04L9/00(2006.01)权利要求书3页说明书9页附图3页(54)发明名称保护隐私的数据查询方法及装置(57)摘要本说明书实施例提供一种保护隐私的数据查询方法及装置,在数据查询方法中,获取分层可导航小世界HNSW图。获取待查询数据,并采用第一公钥,对待查询数据进行同态加密,得到目标密文数据。从HNSW图的多层NSW的最上层NSW开始,按照从上到下的顺序对各层NSW进行层搜索,直至在最下层NSW中,从N个节点中搜索到目标密文数据的k个近邻节点。将k个近邻节点对应的k条密文数据作为查询结果。CN112115516ACN112115516A权利要求书1/3页1.一种保护隐私的数据查询方法,包括:获取分层可导航小世界HNSW图,所述HNSW图包括从上到下排列且节点数依次增多的多层NSW;其中的最下层NSW包含N个节点;其中的每个节点对应于一条密文数据;所述密文数据通过采用第一公钥,对对应原始数据进行同态加密而得到;获取待查询数据,并采用所述第一公钥,对所述待查询数据进行同态加密,得到目标密文数据;从所述多层NSW的最上层NSW开始,按照从上到下的顺序对各层NSW进行层搜索,直至在所述最下层NSW中,从所述N个节点中搜索到所述目标密文数据的k个近邻节点;将所述k个近邻节点对应的k条密文数据作为查询结果。2.根据权利要求1所述的方法,所述层搜索包括:以当前层NSW的开始节点为初始的当前节点,从当前节点和与当前节点具有连接关系的邻居节点中,搜索出距离所述目标密文数据最近的节点作为更新的当前节点,将达到搜索结束条件时的当前节点确定为第一节点,经由该第一节点进入下一层NSW;且所述第一节点用于作为下一层NSW的开始节点。3.根据权利要求2所述的方法,所述当前层NSW为最上层NSW,所述开始节点为任意选择的节点。4.根据权利要求2所述的方法,所述搜索结束条件包括:所述开始节点的p阶邻居节点全部搜索完成,其中,p>=1;或者,当前节点与所述目标密文数据的距离小于所述当前节点的邻居节点与所述目标密文数据的距离。5.根据权利要求1所述的方法,所述HNSW图通过以下步骤构建得到:获取原始数据集;采用所述第一公钥,分别对所述原始数据集中各条原始数据进行同态加密,得到各条密文数据;基于所述各条密文数据形成密文数据集,并基于所述密文数据集,采用HNSW算法,构建所述HNSW图。6.根据权利要求5所述的方法,所述基于所述密文数据集,采用HNSW算法,构建所述HNSW图,包括:从所述密文数据集中读取当前密文数据,并根据预定公式,计算当前密文数据所落入的目标层级;对于从所述最上层NSW开始至目标层级的上一层NSW的各层NSW,根据当前层NSW所包含的节点的连接关系,从当前层NSW所包含的节点中,搜索距离当前密文数据最近的第二节点,经由该第二节点进入下一层NSW;对于从目标层级的NSW开始至最下层NSW的各层NSW,将当前密文数据作为插入节点插入到当前层NSW;并根据当前层NSW所包含的节点的连接关系,从当前层NSW所包含的节点中,先搜索出所述插入节点的f个初始的邻居节点;再采用启发式搜索算法从中选取出m个邻居节点,并将该m个邻居节点与所述插入节点相连接;经由所述f个邻居节点中距离所述插入节点最近的节点进入下一层NSW。7.根据权利要求6所述的方法,所述搜索出所述插入节点的f个初始的邻居节点,包括:将进入当前层NSW的节点作为当前层NSW的开始节点;2CN112115516A权利要求书2/3页从当前层NSW的开始节点开始,从当前层NSW的开始节点以及所述开始节点的各阶邻居节点中,搜索出所述插入节点的f个初始的邻居节点。8.根据权利要求1所述的方法,所述原始数据包括用户数据或商品数据。9.一种保护隐私的数据查询装置,包括:获取单元,用于获取分层可导航小世界HNSW图,所述HNSW图包括从上到下排列且节点数依次增多的多层NSW;其中的最下层NSW包含N个节点;其中的每个节点对应于一条密文数据;所述密文数据通过采用第一公钥,对对应原始数据进行同态加密而得到;加密单元,用于获取待查询数据,并采用所述第一公钥,对所述