CN113239260B - 基于布谷鸟过滤器的多属性外包数据查询验证方法 - Google Patents

基于布谷鸟过滤器的多属性外包数据查询验证方法 Download PDF

Info

Publication number
CN113239260B
CN113239260B CN202110541468.1A CN202110541468A CN113239260B CN 113239260 B CN113239260 B CN 113239260B CN 202110541468 A CN202110541468 A CN 202110541468A CN 113239260 B CN113239260 B CN 113239260B
Authority
CN
China
Prior art keywords
query
node
data
attribute
nodes
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110541468.1A
Other languages
English (en)
Other versions
CN113239260A (zh
Inventor
姚鑫
唐杰
黄定权
赵明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Central South University
Original Assignee
Central South University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Central South University filed Critical Central South University
Priority to CN202110541468.1A priority Critical patent/CN113239260B/zh
Publication of CN113239260A publication Critical patent/CN113239260A/zh
Application granted granted Critical
Publication of CN113239260B publication Critical patent/CN113239260B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9532Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9035Filtering based on additional data, e.g. user or group profiles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/906Clustering; Classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种基于布谷鸟过滤器的多属性外包数据查询验证方法,包括:步骤1,数据拥有者对外包数据集进行预处理并生成辅助信息,其中,辅助信息包括节点验证信息和多属性验证信息;步骤2,数据拥有者将生成的辅助信息发布给数据消费者,将外包数据集提供给外包数据服务提供商;步骤3,数据消费者向外包数据服务提供商发送查询条件;步骤4,外包数据服务提供商接收到数据消费者的查询条件,对查询条件进行处理后向数据消费者返回查询结果和辅助信息。本发明将多属性外包数据查询操作转化成基于布谷鸟过滤器的单属性查询结果的交集操作或单属性查询结果的并集操作,降低了计算开销,实现了对多属性外包数据查询结果的验证。

Description

基于布谷鸟过滤器的多属性外包数据查询验证方法
技术领域
本发明涉及数据处理技术领域,特别涉及一种基于布谷鸟过滤器的多属性外包数据查询验证方法。
背景技术
随着互联网的飞速发展和移动终端的快速普及,在线网络已经成为人们生活、工作和交流的重要平台。目前,全球的网络数据量正以前所未有的速度和规模进行增长。数据蕴含的潜在价值被发现并且得到重视,人们迎来了网络大数据时代。传统的获取数据方式通过数据拥有者提供的数据接口来获取数据。例如微博提供REST接口,可以获取获取微博、评论、官方分析数据等。但是以这种方式获得的数据通常不完整,较为片面甚至不正确。数据外包服务是高效访问和获取数据的一种新兴模式。这种服务模式由三个实体组成:数据拥有者、外包数据服务提供商以及数据消费者。在该外包服务中,第三方外包数据服务提供商向数据拥有者购买完整的数据集,并将其按需转售给数据消费者。然而并不是所有的第三方外包数据服务提供商都受到信任,第三方外包数据提供商在将数据转售给数据消费者的过程中,可能因为经济利益而对提供的数据进行增加、删除或者修改,返回错误的查询结果。当数据消费者使用这些虚假数据必将损害其合法权益。目前该问题解决方案的基本思路如下,首先由数据拥有者基于原始数据构造签名信息,然后将原始数据和辅助信息提供给外包数据服务提供商;当数据消费者向外包数据服务提供商查询数据时,后者返回查询数据以及对应的验证信息;最后数据消费者利用公钥检验签名信息,从而验证返回的查询结果的真实性。现有的方案主要分为基于签名链的查询验证方案以及基于MHT的查询方案。但是上述方案只适用于对单属性的外包数据的查询验证,目前仍未有对多属性外包数据提出查询验证方案。
发明内容
本发明提供了一种基于布谷鸟过滤器的多属性外包数据查询验证方法,其目的是为了传统的查询验证方法只适用于对单属性的外包数据的查询验证,计算开销大的问题。
为了达到上述目的,本发明的实施例提供了一种基于布谷鸟过滤器的多属性外包数据查询验证方法,包括:
步骤1,数据拥有者对外包数据集进行预处理并生成辅助信息,其中,辅助信息包括节点验证信息和多属性验证信息;
步骤2,数据拥有者将生成的辅助信息发布给数据消费者,将外包数据集提供给外包数据服务提供商;
步骤3,数据消费者向外包数据服务提供商发送查询条件;
步骤4,外包数据服务提供商接收到数据消费者的查询条件,对查询条件进行处理后向数据消费者返回查询结果和辅助信息;
步骤5,数据消费者通过Merkle树对外包数据服务提供商返回的查询结果进行真实性检验,当真实性验证通过时,返回的查询结果真实,执行步骤6;当真实性验证不通过时,返回的查询结果不真实,结束验证;
步骤6,对返回的查询结果进行节点集合的交集或并集操作的节点完整性验证,当返回的查询结果为节点集合交集采用基于布谷鸟过滤器的交集验证算法进行验证;当返回的查询结果为节点集合并集采用基于布谷鸟过滤器的并集验证算法进行验证;当对返回的查询结果中的所有交集或并集的验证均通过后,返回的查询结果中的节点为完整,执行步骤7;当对返回的查询结果中的所有交集或并集的验证中有一验证不通过时,返回的查询结果中的节点为不完整,结束验证;
步骤7,对返回的查询结果中的边进行边完整性验证,当边完整性验证通过时,返回的查询结果真实且完整,完成对返回的查询结果的验证;当边完整性验证不通过时,返回的查询结果不完整,结束验证。
其中,所述步骤1具体包括:
生成辅助信息的步骤如下:
步骤11,将外包数据建模为无向图,其中,无向图中的每个节点对应一个唯一的数据实体,其中,数据实体为具有多维特征的数据用户,每个节点具有多个特征属性,属性为实体标识,当数据实体间存在关系时,则两个节点之间存在一条边,其中,关系为数据实体之间的相关关系;数据拥有者分别将每个节点的标识信息与自身的属性值链接,得到pi,pi=(IDi||bi,1||...||bi,w),pi表示节点i的标识信息链接节点i的属性值,IDi表示节点i的标识信息,bi表示节点i的属性,bi,w表示节点i的属性值,计算每个节点链接后的哈希值hi,hi=H(pi);查找每个节点的所有邻居节点Ni,计算每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值H(IDi||IDj)|j∈Ni,将H(IDi||IDj)存入布谷鸟过滤器Fi,其中,H(x)表示哈希函数,Ni表示节点i的所有邻居节点的集合,IDj表示邻居节点的标识信息,Fi表示存储每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值的布谷鸟过滤器;
步骤12,数据拥有者将每个节点链接后的哈希值hi与布谷鸟过滤器Fi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;
步骤13,数据拥有者对每个节点的属性的属性值的辅助信息
Figure GDA0003535942410000031
进行计算,其中,1<j<km,j表示节点,m表示属性k中属性值的数量,vk,j表示属性值,属性值升序排列,辅助信息
Figure GDA0003535942410000032
包括两个字段信息为
Figure GDA0003535942410000033
Figure GDA0003535942410000034
Fk,j表示存放属性值的所有节点的哈希值的布谷鸟过滤器,分别将一个属性值对应的所有节点的哈希值存入一个布谷鸟过滤器,得到多个布谷鸟过滤器Fk,j,所有布谷鸟过滤器Fk,j为同源布谷鸟过滤器,其中,同源布谷鸟过滤器表示布谷鸟过滤器具有相同的哈希函数、指纹生成函数和相同数目的桶;
步骤14,数据拥有者将每个属性的属性值vk,j的辅助信息
Figure GDA0003535942410000035
作为Merkle树的叶子节点,构建Merkle树
Figure GDA0003535942410000036
并对Merkle树
Figure GDA0003535942410000037
根节点签名。
其中,所述步骤4具体包括:
步骤41,假设属性包括属性1和属性2,则查询条件为RR2,其中,Θ表示交集∩或并集∪,外包数据服务提供商接收到查询条件后,在外包数据集中查找满足范围查询条件R1和满足范围查询条件R2的节点,得到满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,根据满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,得到满足所有查询条件的节点集合V',V'=V1ΘV2,当查询条件为R1∩R2时,V'=V1∩V2,当查询条件为R1∪R2时,V'=V1∪V2;得到满足所有查询条件的节点集合V'对应的边集合为E',E'={ei,j|ei,j∈E,i∈V',j∈V'},E'表示满足所有查询条件的边集合,ei,j表示满足查询条件的边,i表示满足查询条件的节点,j表示满足查询条件的节点,E表示原外交数据集无向图的边集合;将满足所有查询条件的节点和边的查询结果用子图G'=(V',E')表示;
步骤42,外包数据服务提供商获得查询结果集合θi=<pi,Fi|i∈V'>,并将查询结果集合θi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;
步骤43,外包数据服务提供商在外包数据集中查询分别满足查询条件R1的属性值集合和满足查询条件R2的属性值集合,得到满足查询条件R1的属性值集合
Figure GDA0003535942410000041
和满足查询条件R2的属性值集合
Figure GDA0003535942410000042
外包数据服务提供商分别计算两个属性值集合中的属性值的辅助信息
Figure GDA0003535942410000043
Figure GDA0003535942410000044
其中,k表示属性,k=1,2;j∈[x1,y1]或j∈[x2,y2],v1表示属性1,v1,j表示属性1的属性值,x1表示满足查询条件R1的最小值端点,y1表示满足查询条件R1的最大值端点,v2表示属性2,v2,j表示属性2的属性值,x2表示满足查询条件R2的最小值端点,y2表示满足查询条件R2的最大值端点;
步骤44,外包数据服务提供商将满足查询条件R1的属性值集合的属性值的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure GDA0003535942410000045
将满足查询条件R2的属性值集合的属性的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure GDA0003535942410000046
并分别对Merkle树
Figure GDA0003535942410000047
和Merkle树
Figure GDA0003535942410000048
根节点签名;
步骤45,外包数据服务提供商向数据消费者返回查询结果,查询结果包括查询结果集合θi=<pi,Fi|i∈V'>,{(IDi,IDj)|ei,j∈E'},Merkle树Tθ、Merkle树
Figure GDA0003535942410000049
和Merkle树
Figure GDA00035359424100000410
的内部节点信息和Merkle树Tθ、Merkle树
Figure GDA00035359424100000411
和Merkle树
Figure GDA00035359424100000412
的根节点签名信息,其中,{(IDi,IDj)|ei,j∈E'}表示查询结果边集合的两个端点标识。
其中,所述步骤5具体包括:
步骤51,数据消费者对返回的查询结果中的满足所有查询条件的节点集合V'进行验证,分别对返回的查询结果中的满足所有查询条件的节点集合V'中的每个节点的标识信息与其自身的属性值链接后的哈希值hi进行计算;并根据返回的查询结果中的Merkle树Tθ的内部节点信息,重新构建Merkle树Tθ的根节点;
步骤52,数据消费者对返回的查询结果中属性值的辅助信息
Figure GDA0003535942410000051
进行验证,数据消费者根据返回的查询结果中的Merkle树
Figure GDA0003535942410000052
和Merkle树
Figure GDA0003535942410000053
的内部节点信息,重新构建Merkle树
Figure GDA0003535942410000054
和Merkle树
Figure GDA0003535942410000055
的根节点;
步骤53,对重新构建的Merkle树Tθ、Merkle树
Figure GDA0003535942410000056
和Merkle树
Figure GDA0003535942410000057
的根节点进行判断,当根据返回的查询结果构造出所有的Merkle树根节点均正确时,数据消费者使用数据拥有者提供的签名对所有的Merkle树的根节点进行验证,当所有的Merkle树的根节点的验证均通过时,返回的查询结果为真实,当所有的Merkle树的根节点的验证中有一Merkle树的根节点的验证不通过时,返回的查询结果为不真实。
其中,所述步骤6具体包括:
步骤61,当查询条件为R1∩R2时,满足所有查询条件的节点集合V'=V1∩V2,采用基于布谷鸟过滤器的交集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整;当查询条件为R1∪R2时,满足所有查询条件的节点集合V'=V1∪V2,采用基于布谷鸟过滤器的并集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整。
其中,所述步骤7具体包括:
对返回的查询结果中的满足所有查询条件的边集合{(IDi,IDj)|ei,j∈E'}进行验证,当ei,j∈E'时,数据消费者判断H(IDi||IDj)是否在布谷鸟过滤器Fi中和H(IDj||IDi)是否在布谷鸟过滤器Fj中;当
Figure GDA0003535942410000058
时,数据消费者判断H(IDi||IDj)是否不在布谷鸟过滤器Fi中和H(IDj||IDi)是否不在布谷鸟过滤器Fj中;当ei,j∈E'和
Figure GDA0003535942410000059
的验证均成功时,返回的查询结果中的所有边的完整,其中,H(IDi||IDj)表示节点i的标识信息链接节点j的标识信息的哈希值,H(IDj||IDi)表示节点j的标识信息链接节点i的标识信息的哈希值,Fj表示存放节点j的标识信息分别链接所有邻居节点的标识信息的哈希值的布谷鸟过滤器。
其中,所述基于布谷鸟过滤器的交集验证包括:
当查询条件为R1∩R2时,验证满足所有查询条件的节点集合为V'=V1∩V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure GDA0003535942410000061
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure GDA0003535942410000062
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∩m是否等于F1,j∩F2,m,其中,V'=Vj∩m,Vj∩m表示查询结果中属性值v1,j和v2,m的交集;将Vj∪m、F1,j和F2,m输入至基于布谷鸟过滤器之间的交集验证算法中,判断集合Vj∩m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∪m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∪m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∪m中的元素的指纹信息,判断F1,j和F2,m中是否有共同元素,当F1,j和F2,m中有共同元素时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m中没有共同元素时,返回输出结果正确,结束算法,返回结果中的节点完整。
其中,所述基于布谷鸟过滤器的并集验证包括:
当查询条件为R1∪R2时,验证满足所有查询条件的节点集合为V'=V1∪V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure GDA0003535942410000063
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure GDA0003535942410000064
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∪m是否等于F1,j∪F2,m,将Vj∪m、F1,j和F2,m输入至基于布谷鸟过滤器之间的并集验证算法中,判断集合Vj∪m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∪m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∪m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∪m中的元素的指纹信息;判断F1,j和F2,m是否为空,当F1,j和F2,m不为空时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m为空时,返回输出结果正确,结束算法,返回结果中的节点完整。
本发明的上述方案有如下的有益效果:
本发明的上述实施例所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,将多属性外包数据查询操作转化成单属性查询结果的交集操作或单属性查询结果并集操作,并基于布谷鸟过滤器实现了交集、并集的可验证方法,降低了计算开销,实现了对多属性外包数据查询结果的验证。
附图说明
图1为本发明的流程图;
图2为本发明的结构示意图;
图3为本发明的无向图;
图4为本发明的基于布谷鸟过滤器的交集验证算法的流程图;
图5为本发明的基于布谷鸟过滤器的并集验证算法的流程图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
本发明针对现有的查询验证方法只适用于对单属性的外包数据的查询验证,计算开销大的问题,提供了一种基于布谷鸟过滤器的多属性外包数据查询验证方法。
如图1至图5所示,本发明的实施例提供了一种基于布谷鸟过滤器的多属性外包数据查询验证方法,包括:步骤1,数据拥有者对外包数据集进行预处理并生成辅助信息,其中,辅助信息包括节点验证信息和多属性验证信息;步骤2,数据拥有者将生成的辅助信息发布给数据消费者,将外包数据集提供给外包数据服务提供商;步骤3,数据消费者向外包数据服务提供商发送查询条件;步骤4,外包数据服务提供商接收到数据消费者的查询条件,对查询条件进行处理后向数据消费者返回查询结果和辅助信息;步骤5,数据消费者通过Merkle树对外包数据服务提供商返回的查询结果进行真实性检验,当真实性验证通过时,返回的查询结果真实,执行步骤6;当真实性验证不通过时,返回的查询结果不真实,结束验证;步骤6,对返回的查询结果进行节点集合的交集或并集操作的节点完整性验证,当返回的查询结果为节点集合交集采用基于布谷鸟过滤器的交集验证算法进行验证;当返回的查询结果为节点集合并集采用基于布谷鸟过滤器的并集验证算法进行验证;当对返回的查询结果中的所有交集或并集的验证均通过后,返回的查询结果中的节点为完整,执行步骤7;当对返回的查询结果中的所有交集或并集的验证中有一验证不通过时,返回的查询结果中的节点为不完整,结束验证;步骤7,对返回的查询结果中的边进行边完整性验证,当边完整性验证通过时,返回的查询结果真实且完整,完成对返回的查询结果的验证;当边完整性验证不通过时,返回的查询结果不完整,结束验证。
本发明的上述实施例所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,多属性查询是多个单属性查询的和或者多个单属性查询的组合,因此,多属性查询的结果可以视为多个满足单属性查询结果的交集或并集操作,所述基于布谷鸟过滤器的多属性外包数据查询验证方法,提出了基于布谷鸟过滤器实现交集、并集的可验证方法,降低了计算开销,允许数据消费者对多属性的外包数据查询结果进行真实性检验,查询结果满足以下两个要求即表示数据真实性被证明:1、数据正确性:查询数据满足数据消费者提供的查询条件;2、数据完整性:查询数据必须是完整的,而不是满足查询条件下完整的查询数据集中截取的一段子集。
其中,所述步骤1具体包括:生成辅助信息的步骤如下:步骤11,将外包数据建模为无向图,其中,无向图中的每个节点对应一个唯一的数据实体,其中,数据实体为具有多维特征的数据用户,每个节点具有多个特征属性,属性为实体标识,当数据实体间存在关系时,则两个节点之间存在一条边,其中,关系为数据实体之间的相关关系;数据拥有者分别将每个节点的标识信息与自身的属性值链接,得到pi,pi=(IDi||bi,1||...||bi,w),pi表示节点i的标识信息链接节点i的属性值,IDi表示节点i的标识信息,bi表示节点i的属性,bi,w表示节点i的属性值,计算每个节点链接后的哈希值hi,hi=H(pi);查找每个节点的所有邻居节点Ni,计算每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值H(IDi||IDj)|j∈Ni,将H(IDi||IDj)存入布谷鸟过滤器Fi,其中,H(x)表示哈希函数,Ni表示节点i的所有邻居节点的集合,IDj表示邻居节点的标识信息,Fi表示存储每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值的布谷鸟过滤器;步骤12,数据拥有者将每个节点链接后的哈希值hi与布谷鸟过滤器Fi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;步骤13,数据拥有者对每个节点的属性的属性值的辅助信息
Figure GDA0003535942410000091
进行计算,其中,1<j<km,j表示节点,m表示属性k中属性值的数量,vk,j表示属性值,属性值升序排列,辅助信息
Figure GDA0003535942410000092
包括两个字段信息为
Figure GDA0003535942410000093
Fk,j表示存放属性值的所有节点的哈希值的布谷鸟过滤器,分别将一个属性值对应的所有节点的哈希值存入一个布谷鸟过滤器,得到多个布谷鸟过滤器Fk,j,所有布谷鸟过滤器Fk,j为同源布谷鸟过滤器,其中,同源布谷鸟过滤器表示布谷鸟过滤器具有相同的哈希函数、指纹生成函数和相同数目的桶;步骤14,数据拥有者将每个属性的属性值vk,j的辅助信息
Figure GDA0003535942410000094
作为Merkle树的叶子节点,构建Merkle树
Figure GDA0003535942410000095
并对Merkle树
Figure GDA0003535942410000096
根节点签名。
本发明的上述实施例所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,将外包数据建模为无向图,其中,无向图中的每个节点对应一个唯一的数据实体,其中,数据实体为具有多维特征的数据用户,例如社交网络中的用户,物联网中的边缘设备等。每个节点具有多个特征属性,例如实体标识等,当数据实体间存在关系时,则两个节点之间存在一条边,其中,关系就是数据实体之间的相关关系,例如社交网络里的好友关系,物联网里的设备互联等,当且仅当两个布谷鸟过滤器具有相同的哈希函数、指纹生成函数及相同数目的桶时,这两个布谷鸟过滤器则是同源的。
其中,所述步骤4具体包括:步骤41,假设属性包括属性1和属性2,则查询条件为R1ΘR2,其中,Θ表示交集∩或并集∪,外包数据服务提供商接收到查询条件后,在外包数据集中查找满足范围查询条件R1和满足范围查询条件R2的节点,得到满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,根据满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,得到满足所有查询条件的节点集合V',V'=V1ΘV2,当查询条件为R1∩R2时,V'=V1∩V2,当查询条件为R1∪R2时,V'=V1∪V2;得到满足所有查询条件的节点集合V'对应的边集合为E',E'={ei,j|ei,j∈E,i∈V',j∈V'},E'表示满足所有查询条件的边集合,ei,j表示满足查询条件的边,i表示满足查询条件的节点,j表示满足查询条件的节点,E表示原外交数据集无向图的边集合;将满足所有查询条件的节点和边的查询结果用子图G'=(V',E')表示;步骤42,外包数据服务提供商获得查询结果集合θi=<pi,Fi|i∈V'>,并将查询结果集合θi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;步骤43,外包数据服务提供商在外包数据集中查询分别满足查询条件R1的属性值集合和满足查询条件R2的属性值集合,得到满足查询条件R1的属性值集合
Figure GDA0003535942410000101
和满足查询条件R2的属性值集合
Figure GDA0003535942410000102
外包数据服务提供商分别计算两个属性值集合中的属性值的辅助信息
Figure GDA0003535942410000103
其中,k表示属性,k=1,2;j∈[x1,y1]或j∈[x2,y2],v1表示属性1,v1,j表示属性1的属性值,x1表示满足查询条件R1的最小值端点,y1表示满足查询条件R1的最大值端点,v2表示属性2,v2,j表示属性2的属性值,x2表示满足查询条件R2的最小值端点,y2表示满足查询条件R2的最大值端点;步骤44,外包数据服务提供商将满足查询条件R1的属性值集合的属性值的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure GDA0003535942410000104
将满足查询条件R2的属性值集合的属性的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure GDA0003535942410000105
并分别对Merkle树
Figure GDA0003535942410000106
和Merkle树
Figure GDA0003535942410000107
根节点签名;步骤45,外包数据服务提供商向数据消费者返回查询结果,查询结果包括查询结果集合θi=<pi,Fi|i∈V'>,{(IDi,IDj)|ei,j∈E'},Merkle树Tθ、Merkle树
Figure GDA0003535942410000108
和Merkle树
Figure GDA0003535942410000109
的内部节点信息和Merkle树Tθ、Merkle树
Figure GDA00035359424100001010
和Merkle树
Figure GDA00035359424100001011
的根节点签名信息,其中,{(IDi,IDj)|ei,j∈E'}表示查询结果边集合的两个端点标识。
本发明的上述实施例所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,任何子集和相等性查询可以转换为范围查询,因此将对返回的查询结果的多属性外包数据的查询可以转为成单属性范围查询结果的交集或并集操作R1ΘR2Θ...Rw,其中,w为属性数目,R为查询条件,Θ可以为∩或者∪,当属性包括1,2,....W时,查询条件为R1ΘR2Θ...Rw,两个查询条件以上的范围查询可以以类似的方式实现,为了不失一般性,以查询条件R1和查询条件R2举例。
其中,所述步骤5具体包括:步骤51,数据消费者对返回的查询结果中的满足所有查询条件的节点集合V'进行验证,分别对返回的查询结果中的满足所有查询条件的节点集合V'中的每个节点的标识信息与其自身的属性值链接后的哈希值hi进行计算;并根据返回的查询结果中的Merkle树Tθ的内部节点信息,重新构建Merkle树Tθ的根节点;步骤52,数据消费者对返回的查询结果中属性值的辅助信息
Figure GDA0003535942410000111
进行验证,数据消费者根据返回的查询结果中的Merkle树
Figure GDA0003535942410000112
和Merkle树
Figure GDA0003535942410000113
的内部节点信息,重新构建Merkle树
Figure GDA0003535942410000114
和Merkle树
Figure GDA0003535942410000115
的根节点;步骤53,对重新构建的Merkle树Tθ、Merkle树
Figure GDA0003535942410000116
和Merkle树
Figure GDA0003535942410000117
的根节点进行判断,当根据返回的查询结果构造出所有的Merkle树根节点均正确时,数据消费者使用数据拥有者提供的签名对所有的Merkle树的根节点进行验证,当所有的Merkle树的根节点的验证均通过时,返回的查询结果为真实,当所有的Merkle树的根节点的验证中有一Merkle树的根节点的验证不通过时,返回的查询结果为不真实。
其中,所述步骤6具体包括:步骤61,当查询条件为R1∩R2时,满足所有查询条件的节点集合V'=V1∩V2,采用基于布谷鸟过滤器的交集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整;当查询条件为R1∪R2时,满足所有查询条件的节点集合V'=V1∪V2,采用基于布谷鸟过滤器的并集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整。
其中,所述步骤7具体包括:对返回的查询结果中的满足所有查询条件的边集合{(IDi,IDj)|ei,j∈E'}进行验证,当ei,j∈E'时,数据消费者判断H(IDi||IDj)是否在布谷鸟过滤器Fi中和H(IDj||IDi)是否在布谷鸟过滤器Fj中;当
Figure GDA0003535942410000118
时,数据消费者判断H(IDi||IDj)是否不在布谷鸟过滤器Fi中和H(IDj||IDi)是否不在布谷鸟过滤器Fj中;当ei,j∈E'和
Figure GDA0003535942410000119
的验证均成功时,返回的查询结果中的所有边的完整,其中,H(IDi||IDj)表示节点i的标识信息链接节点j的标识信息的哈希值,H(IDj||IDi)表示节点j的标识信息链接节点i的标识信息的哈希值,Fj表示存放节点j的标识信息分别链接所有邻居节点的标识信息的哈希值的布谷鸟过滤器。
其中,所述基于布谷鸟过滤器的交集验证包括:当查询条件为R1∩R2时,验证满足所有查询条件的节点集合为V'=V1∩V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure GDA0003535942410000121
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure GDA0003535942410000122
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∩m是否等于F1,j∩F2,m,其中,V'=Vj∩m,Vj∩m表示查询结果中属性值v1,j和v2,m的交集;将Vj∩m、F1,j和F2,m输入至基于布谷鸟过滤器之间的交集验证算法中,判断集合Vj∩m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∩m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∩m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∩m中的元素的指纹信息,判断F1,j和F2,m中是否有共同元素,当F1,j和F2,m中有共同元素时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m中没有共同元素时,返回输出结果正确,结束算法,返回结果中的节点完整。
其中,所述基于布谷鸟过滤器的并集验证包括:当查询条件为R1∪R2时,验证满足所有查询条件的节点集合为V'=V1∪V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure GDA0003535942410000123
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure GDA0003535942410000124
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∪m是否等于F1,j∪F2,m,将Vj∪m、F1,j和F2,m输入至基于布谷鸟过滤器之间的并集验证算法中,判断集合Vj∪m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∪m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∪m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∪m中的元素的指纹信息;判断F1,j和F2,m是否为空,当F1,j和F2,m不为空时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m为空时,返回输出结果正确,结束算法,返回结果中的节点完整。
本发明的上述实施例所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,数据拥有者对原始数据集进行预处理,并构建辅助信息(节点验证信息及多属性验证信息),将生成的辅助信息发布给数据消费者,并将原始数据集提供给第三方外包数据服务提供商,第三方外包数据服务提供商接收到数据消费者的查询条件,并对查询条件进行处理,向数据消费者返回查询结果及辅助验证信息,数据消费者通过Merkle树对查询结果进行真实性检验,基于布谷鸟过滤器实现的交集、并集的验证方法验证返回的多属性外包数据查询结果的正确性与完整性,实现将多属性外包数据查询操作转化成单属性查询结果的交集操作或单属性查询结果并集操作,并基于布谷鸟过滤器实现了交集、并集的可验证方法,降低了计算开销,实现了对多属性外包数据查询结果的验证。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (8)

1.一种基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,包括:
步骤1,数据拥有者对外包数据集进行预处理并生成辅助信息,其中,辅助信息包括节点验证信息和多属性验证信息;
步骤2,数据拥有者将生成的辅助信息发布给数据消费者,将外包数据集提供给外包数据服务提供商;
步骤3,数据消费者向外包数据服务提供商发送查询条件;
步骤4,外包数据服务提供商接收到数据消费者的查询条件,对查询条件进行处理后向数据消费者返回查询结果和辅助信息;
步骤5,数据消费者通过Merkle树对外包数据服务提供商返回的查询结果进行真实性检验,当真实性验证通过时,返回的查询结果真实,执行步骤6;当真实性验证不通过时,返回的查询结果不真实,结束验证;
步骤6,对返回的查询结果进行节点集合的交集或并集操作的节点完整性验证,当返回的查询结果为节点集合交集采用基于布谷鸟过滤器的交集验证算法进行验证;当返回的查询结果为节点集合并集采用基于布谷鸟过滤器的并集验证算法进行验证;当对返回的查询结果中的所有交集或并集的验证均通过后,返回的查询结果中的节点为完整,执行步骤7;当对返回的查询结果中的所有交集或并集的验证中有一验证不通过时,返回的查询结果中的节点为不完整,结束验证;
步骤7,对返回的查询结果中的边进行边完整性验证,当边完整性验证通过时,返回的查询结果真实且完整,完成对返回的查询结果的验证;当边完整性验证不通过时,返回的查询结果不完整,结束验证。
2.根据权利要求1所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述步骤1具体包括:
生成辅助信息的步骤如下:
步骤11,将外包数据建模为无向图,其中,无向图中的每个节点对应一个唯一的数据实体,其中,数据实体为具有多维特征的数据用户,每个节点具有多个特征属性,属性为实体标识,当数据实体间存在关系时,则两个节点之间存在一条边,其中,关系为数据实体之间的相关关系;数据拥有者分别将每个节点的标识信息与自身的属性值链接,得到pi,pi=(IDi||bi,1||...||bi,w),pi表示节点i的标识信息链接节点i的属性值,IDi表示节点i的标识信息,bi表示节点i的属性,bi,w表示节点i的属性值,计算每个节点链接后的哈希值hi,hi=H(pi);查找每个节点的所有邻居节点Ni,计算每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值H(IDi||IDj)|j∈Ni,将H(IDi||IDj)存入布谷鸟过滤器Fi,其中,H(x)表示哈希函数,Ni表示节点i的所有邻居节点的集合,IDj表示邻居节点的标识信息,Fi表示存储每个节点的标识信息链接每个节点相对应的所有邻居节点的标识信息的哈希值的布谷鸟过滤器;
步骤12,数据拥有者将每个节点链接后的哈希值hi与布谷鸟过滤器Fi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;
步骤13,数据拥有者对每个节点的属性的属性值的辅助信息
Figure FDA0003535942400000021
进行计算,其中,1<j<km,j表示节点,m表示属性k中属性值的数量,vk,j表示属性值,属性值升序排列,辅助信息
Figure FDA0003535942400000022
包括两个字段信息为
Figure FDA0003535942400000023
Figure FDA0003535942400000024
Fk,j表示存放属性值的所有节点的哈希值的布谷鸟过滤器,分别将一个属性值对应的所有节点的哈希值存入一个布谷鸟过滤器,得到多个布谷鸟过滤器Fk,j,所有布谷鸟过滤器Fk,j为同源布谷鸟过滤器,其中,同源布谷鸟过滤器表示布谷鸟过滤器具有相同的哈希函数、指纹生成函数和相同数目的桶;
步骤14,数据拥有者将每个属性的属性值vk,j的辅助信息
Figure FDA0003535942400000025
作为Merkle树的叶子节点,构建Merkle树
Figure FDA0003535942400000026
并对Merkle树
Figure FDA0003535942400000027
根节点签名。
3.根据权利要求2所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述步骤4具体包括:
步骤41,假设属性包括属性1和属性2,则查询条件为RR2,其中,Θ表示交集∩或并集∪,外包数据服务提供商接收到查询条件后,在外包数据集中查找满足范围查询条件R1和满足范围查询条件R2的节点,得到满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,根据满足查询条件R1的节点集合V1与满足查询条件R2的节点集合V2,得到满足所有查询条件的节点集合V',V'=V1ΘV2,当查询条件为R1∩R2时,V'=V1∩V2,当查询条件为R1∪R2时,V'=V1∪V2;得到满足所有查询条件的节点集合V'对应的边集合为E',E'={ei,j|ei,j∈E,i∈V',j∈V'},E'表示满足所有查询条件的边集合,ei,j表示满足查询条件的边,i表示满足查询条件的节点,j表示满足查询条件的节点,E表示原外交数据集无向图的边集合;将满足所有查询条件的节点和边的查询结果用子图G'=(V',E')表示;
步骤42,外包数据服务提供商获得查询结果集合θi=<pi,Fi|i∈V'>,并将查询结果集合θi作为Merkle树的叶子节点,构建Merkle树Tθ并对Merkle树Tθ根节点签名;
步骤43,外包数据服务提供商在外包数据集中查询分别满足查询条件R1的属性值集合和满足查询条件R2的属性值集合,得到满足查询条件R1的属性值集合
Figure FDA0003535942400000031
和满足查询条件R2的属性值集合
Figure FDA0003535942400000032
外包数据服务提供商分别计算两个属性值集合中的属性值的辅助信息
Figure FDA0003535942400000033
Figure FDA0003535942400000034
其中,k表示属性,k=1,2;j∈[x1,y1]或j∈[x2,y2],v1表示属性1,v1,j表示属性1的属性值,x1表示满足查询条件R1的最小值端点,y1表示满足查询条件R1的最大值端点,v2表示属性2,v2,j表示属性2的属性值,x2表示满足查询条件R2的最小值端点,y2表示满足查询条件R2的最大值端点;
步骤44,外包数据服务提供商将满足查询条件R1的属性值集合的属性值的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure FDA0003535942400000035
将满足查询条件R2的属性值集合的属性的辅助信息作为Merkle树的叶子节点构建Merkle树
Figure FDA0003535942400000036
并分别对Merkle树
Figure FDA0003535942400000037
和Merkle树
Figure FDA0003535942400000038
根节点签名;
步骤45,外包数据服务提供商向数据消费者返回查询结果,查询结果包括查询结果集合θi=<pi,Fi|i∈V'>,{(IDi,IDj)|ei,j∈E'},Merkle树Tθ、Merkle树
Figure FDA0003535942400000039
和Merkle树
Figure FDA00035359424000000310
的内部节点信息和Merkle树Tθ、Merkle树
Figure FDA00035359424000000311
和Merkle树
Figure FDA00035359424000000312
的根节点签名信息,其中,{(IDi,IDj)|ei,j∈E'}表示查询结果边集合的两个端点标识。
4.根据权利要求3所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述步骤5具体包括:
步骤51,数据消费者对返回的查询结果中的满足所有查询条件的节点集合V'进行验证,分别对返回的查询结果中的满足所有查询条件的节点集合V'中的每个节点的标识信息与其自身的属性值链接后的哈希值hi进行计算;并根据返回的查询结果中的Merkle树Tθ的内部节点信息,重新构建Merkle树Tθ的根节点;
步骤52,数据消费者对返回的查询结果中属性值的辅助信息
Figure FDA0003535942400000041
进行验证,数据消费者根据返回的查询结果中的Merkle树
Figure FDA0003535942400000042
和Merkle树
Figure FDA0003535942400000043
的内部节点信息,重新构建Merkle树
Figure FDA0003535942400000044
和Merkle树
Figure FDA0003535942400000045
的根节点;
步骤53,对重新构建的Merkle树Tθ、Merkle树
Figure FDA0003535942400000046
和Merkle树
Figure FDA0003535942400000047
的根节点进行判断,当根据返回的查询结果构造出所有的Merkle树根节点均正确时,数据消费者使用数据拥有者提供的签名对所有的Merkle树的根节点进行验证,当所有的Merkle树的根节点的验证均通过时,返回的查询结果为真实,当所有的Merkle树的根节点的验证中有一Merkle树的根节点的验证不通过时,返回的查询结果为不真实。
5.根据权利要求4所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述步骤6具体包括:
步骤61,当查询条件为R1∩R2时,满足所有查询条件的节点集合V'=V1∩V2,采用基于布谷鸟过滤器的交集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整;当查询条件为R1∪R2时,满足所有查询条件的节点集合V'=V1∪V2,采用基于布谷鸟过滤器的并集验证算法对满足所有查询条件的节点集合V'进行节点完整性验证,当验证通过时,返回结果中的节点完整,当验证不通过时,返回结果中的节点不完整。
6.根据权利要求5所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述步骤7具体包括:
对返回的查询结果中的满足所有查询条件的边集合{(IDi,IDj)|ei,j∈E'}进行验证,当ei,j∈E'时,数据消费者判断H(IDi||IDj)是否在布谷鸟过滤器Fi中和H(IDj||IDi)是否在布谷鸟过滤器Fj中;当
Figure FDA0003535942400000048
时,数据消费者判断H(IDi||IDj)是否不在布谷鸟过滤器Fi中和H(IDj||IDi)是否不在布谷鸟过滤器Fj中;当ei,j∈E'和
Figure FDA0003535942400000049
的验证均成功时,返回的查询结果中的所有边的完整,其中,H(IDi||IDj)表示节点i的标识信息链接节点j的标识信息的哈希值,H(IDj||IDi)表示节点j的标识信息链接节点i的标识信息的哈希值,Fj表示存放节点j的标识信息分别链接所有邻居节点的标识信息的哈希值的布谷鸟过滤器。
7.根据权利要求6所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述基于布谷鸟过滤器的交集验证包括:
当查询条件为R1∩R2时,验证满足所有查询条件的节点集合为V'=V1∩V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure FDA0003535942400000051
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure FDA0003535942400000052
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∩m是否等于F1,j∩F2,m,其中,V'=Vj∩m,Vj∩m表示查询结果中属性值v1,j和v2,m的交集;将Vj∩m、F1,j和F2,m输入至基于布谷鸟过滤器之间的交集验证算法中,判断集合Vj∩m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∩m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∩m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∩m中的元素的指纹信息,判断F1,j和F2,m中是否有共同元素,当F1,j和F2,m中有共同元素时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m中没有共同元素时,返回输出结果正确,结束算法,返回结果中的节点完整。
8.根据权利要求7所述的基于布谷鸟过滤器的多属性外包数据查询验证方法,其特征在于,所述基于布谷鸟过滤器的并集验证包括:
当查询条件为R1∪R2时,验证满足所有查询条件的节点集合为V'=V1∪V2,设I1,j为包含属性1的属性值v1,j的所有节点集合,则将节点集合V1通过
Figure FDA0003535942400000053
表示,x1≤j≤y1;设I2,m为包含属性2的属性值v2,m的所有节点集合,则将节点集合V2通过
Figure FDA0003535942400000054
表示,x2≤m≤y2,将I1,j等效为F1,j表示,将I2,m等效为F2,m表示,将满足所有查询条件的节点集合V'是否等于V1∩V2的判断转换为判断每个Vj∪m是否等于F1,j∪F2,m,将Vj∪m、F1,j和F2,m输入至基于布谷鸟过滤器之间的并集验证算法中,判断集合Vj∪m中的每个元素e的指纹信息是否都出现在F1,j和F2,m中,当集合Vj∪m中的每个元素e的指纹信息均没有出现在F1,j和F2,m中时,返回输出结果错误,结束算法,返回结果中的节点不完整;当集合Vj∪m中的每个元素e的指纹信息均出现在F1,j和F2,m中时,从F1,j和F2,m中删除存在集合Vj∪m中的元素的指纹信息;判断F1,j和F2,m是否为空,当F1,j和F2,m不为空时,返回输出结果错误,结束算法,返回结果中的节点不完整;当F1,j和F2,m为空时,返回输出结果正确,结束算法,返回结果中的节点完整。
CN202110541468.1A 2021-05-18 2021-05-18 基于布谷鸟过滤器的多属性外包数据查询验证方法 Active CN113239260B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110541468.1A CN113239260B (zh) 2021-05-18 2021-05-18 基于布谷鸟过滤器的多属性外包数据查询验证方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110541468.1A CN113239260B (zh) 2021-05-18 2021-05-18 基于布谷鸟过滤器的多属性外包数据查询验证方法

Publications (2)

Publication Number Publication Date
CN113239260A CN113239260A (zh) 2021-08-10
CN113239260B true CN113239260B (zh) 2022-04-29

Family

ID=77135172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110541468.1A Active CN113239260B (zh) 2021-05-18 2021-05-18 基于布谷鸟过滤器的多属性外包数据查询验证方法

Country Status (1)

Country Link
CN (1) CN113239260B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105959117A (zh) * 2016-07-19 2016-09-21 安徽大学 基于Cuckoo过滤器的车载自组织网络安全认证方法
CN108733710A (zh) * 2017-04-21 2018-11-02 北京京东尚科信息技术有限公司 外包数据查询验证的方法、装置、电子设备和可读介质
CN110971393A (zh) * 2019-11-29 2020-04-07 中南大学 基于区块链动态社交外包数据关键词查询验证方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110321117A1 (en) * 2010-06-23 2011-12-29 Itt Manufacturing Enterprises, Inc. Policy Creation Using Dynamic Access Controls

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105959117A (zh) * 2016-07-19 2016-09-21 安徽大学 基于Cuckoo过滤器的车载自组织网络安全认证方法
CN108733710A (zh) * 2017-04-21 2018-11-02 北京京东尚科信息技术有限公司 外包数据查询验证的方法、装置、电子设备和可读介质
CN110971393A (zh) * 2019-11-29 2020-04-07 中南大学 基于区块链动态社交外包数据关键词查询验证方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于改进Merkle-Tree认证方法的可验证多关键词搜索方案;田有亮等;《通信学报》;20200930;第41卷(第9期);第118-129页 *

Also Published As

Publication number Publication date
CN113239260A (zh) 2021-08-10

Similar Documents

Publication Publication Date Title
CN109104413B (zh) 用于安全多方计算的私有数据求交集的方法及验证方法
Peng et al. A two-stage deanonymization attack against anonymized social networks
CN112395640A (zh) 一种基于区块链的行业物联数据轻量可信共享技术
CN109766389B (zh) 一种基于位图索引的区块链轻客户端验证查询方法
Zhang et al. Secure top-k query processing via untrusted location-based service providers
CN107451281B (zh) 基于ads的外包数据库sql查询完整性验证系统及方法
KR20180089479A (ko) 사용자 데이터 공유 방법 및 디바이스
CN111861750A (zh) 一种基于决策树方法的特征衍生系统及可读存储介质
CN113239260B (zh) 基于布谷鸟过滤器的多属性外包数据查询验证方法
CN111832079B (zh) Epc全球网络中一种基于区块链的查询结果完整性验证方法
CN110647553B (zh) 一种基于区块链的电力交易合同管理方法及系统
CN104166719B (zh) 基于泛化双向相似连接技术的匹配方法
Jakobsson et al. Efficient attribute authentication with applications to ad hoc networks
CN109063089B (zh) 一种基于社区结构的子图匹配方法及装置
CN114205816B (zh) 一种电力移动物联网信息安全架构及其使用方法
CN115146022A (zh) 用于知识图中的关键词搜索的计算机实现方法
Yuan et al. Resource-Aware Federated Neural Architecture Search over Heterogeneous Mobile Devices
CN113239255A (zh) 异构数据资源的共享方法、装置、计算机设备及介质
CN112308694A (zh) 一种欺诈团伙的发现方法及装置
CN112347441A (zh) 一种基于可信行为序列的电力终端身份认证方法及其系统
Dong et al. Arm: Authenticated approximate record matching for outsourced databases
CN105912574B (zh) 一种多用户决定的空间数据查询验证方法
CN115426117B (zh) 一种多源聚合查询验证方法
CN109800235A (zh) 一种基于认证树的外包数据库全操作查询验证系统及方法
Jung et al. PageRank revisited: On the relationship between node degrees and node significances in different applications

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant