CN109413708A - 基于传感器网络的k近邻查询方法及装置 - Google Patents
基于传感器网络的k近邻查询方法及装置 Download PDFInfo
- Publication number
- CN109413708A CN109413708A CN201811214703.9A CN201811214703A CN109413708A CN 109413708 A CN109413708 A CN 109413708A CN 201811214703 A CN201811214703 A CN 201811214703A CN 109413708 A CN109413708 A CN 109413708A
- Authority
- CN
- China
- Prior art keywords
- data
- perception
- perception data
- encryption
- sensor node
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W40/00—Communication routing or communication path finding
- H04W40/02—Communication route or path selection, e.g. power-based or shortest path routing
- H04W40/20—Communication route or path selection, e.g. power-based or shortest path routing based on geographic position or location
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供一种基于传感器网络的K近邻查询方法及装置,该方法包括:存储节点接收传感器节点si发送的感知消息Di,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;进一步地,存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,并将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。本申请实施例不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
Description
技术领域
本申请涉及网络技术领域,尤其涉及一种基于传感器网络的K近邻查询方法及装置。
背景技术
随着物联网的兴起,越来越多的人、机和物通过传感设备相连以形成传感器网络。传感器网络作为物联网中不可或缺的数据感知和收集部分,已经在包括海洋、战场、城市和火山等在内的许多物理环境中部署。在这些应用场景中,K近邻查询对于研究人员进行事件检测和/或目标追踪等非常有用。
相关技术中提出基于布隆过滤器编码的K近邻查询算法中,传感器节点利用布隆过滤器对感知数据与查询数据之间的距离进行编码得到第一编码数据,并将第一编码数据发送给存储节点。网络设备利用布隆过滤器对查询的可能结果集进行编码得到第二编码数据,并将第二编码数据发送给存储节点。进一步地,存储节点基于布隆过滤器原理对比第一编码数据和第二编码数据以判断传感器的感知数据是否落入查询的可能结果集,并将判断结果返回给网络设备。
相关技术中提出的基于布隆过滤器编码的K近邻查询算法,由于布隆过滤器固有的误识别率,使得无法准确地确定出查询结果。
发明内容
本申请实施例提供一种基于传感器网络的K近邻查询方法及装置,解决了相关技术中无法准确确定出查询结果的问题。
第一方面,本申请实施例提供一种基于传感器网络的K近邻查询方法,包括:
存储节点接收传感器节点si发送的感知消息Di;其中,所述感知消息Di中包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
所述存储节点在接收到网络设备发送的查询消息后,根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据;
所述存储节点将所述K个目标加密感知数据发送给所述网络设备,以使所述网络设备分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
在一种可能的实现方式中,所述根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据,包括:
根据所述查询时间t和所述感知周期ti,确定出属于所述查询时间t段的加密感知数据Ei(di,j)、感知数据特征向量和感知数据长度信息li,j;
根据所述查询数据特征向量属于所述查询时间t段的感知数据长度信息li,j和所述感知数据特征向量从属于所述查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
在一种可能的实现方式中,若所述感知数据长度li,j用于指示感知数据di,j数据长度的平方,所述根据所述查询数据特征向量属于所述查询时间t段的感知数据长度信息li,j和所述感知数据特征向量从属于所述查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据,包括:
按照公式结果由小到大的顺序,确定前K个结果对应的i和j;其中,||di,j||2代表所述感知数据di,j数据长度的平方;
确定所述K个目标加密感知数据包括所述前K个结果对应的i和j所对应的加密感知数据Ei(di,j)。
第二方面,本申请实施例提供一种基于传感器网络的K近邻查询方法,包括:
网络设备接收用户发送的查询请求;其中,所述查询请求中包括:查询数据、K值和查询时间t;
所述网络设备利用数据转换矩阵将所述查询数据转换为查询数据特征向量并向存储节点发送查询消息;其中,所述查询消息中包括:所述查询数据特征向量所述K值和查询时间t;
所述网络设备接收所述存储节点发送的K个目标加密感知数据,并分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
在一种可能的实现方式中,所述网络设备利用数据转换矩阵将所述查询数据转换为查询数据特征向量包括:
所述网络设备根据公式得到数据特征向量其中,代表所述查询数据,Az×p代表所述数据转换矩阵,z和p均为正整数且z<p。
在一种可能的实现方式中,所述方法还包括:
所述网络设备为传感器节点si分配密钥ki;其中,不同传感器节点对应的密钥不同;i为取遍不大于m的整数,m为传感器节点的个数。
在一种可能的实现方式中,所述方法还包括:
所述网络设备根据公式Az×pBp×z=Ez确定多个特征构造矩阵Bp×z;其中,Az×p代表所述数据转换矩阵,Ez代表z阶单位矩阵,z和p均为正整数且z<p;
所述网络设备为传感器节点si随机分配所述多个特征构造矩阵Bp×z中的部分矩阵;其中,i为取遍不大于m的整数,m为传感器节点的个数。
第三方面,本申请实施例提供一种基于传感器网络的K近邻查询方法,包括:
传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对所述感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
所述传感器节点si根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量其中,所述特征构造矩阵集合中包括一个或多个特征构造矩阵;
所述传感器节点si向存储节点发送感知消息Di;其中,所述感知消息Di中包括:所述加密感知数据Ei(di,j)、所述感知数据特征向量所述感知周期ti和感知数据长度信息li,j。
在一种可能的实现方式中,所述传感器节点si根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量包括:
针对每个感知数据di,j,所述传感器节点si从所述特征构造矩阵集合中随机选取一个特征构造矩阵Bp×z;其中,z和p均为正整数且z<p;
所述传感器节点si根据公式得到所述感知数据di,j对应的感知数据特征向量其中,代表所述感知数据di,j。
在一种可能的实现方式中,所述方法还包括:
所述传感器节点si接收网络设备发送的密钥ki;和/或,
所述传感器节点si接收所述网络设备发送的一个或多个所述特征构造矩阵Bp×z。
第四方面,本申请实施例提供一种存储节点,包括:
第一接收模块,用于接收传感器节点si发送的感知消息Di;其中,所述感知消息Di中包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
第二接收模块,用于接收网络设备发送的查询消息;
确定模块,用于在所述第二接收模块接收到网络设备发送的查询消息后,根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据;
发送模块,用于将所述K个目标加密感知数据发送给所述网络设备,以使所述网络设备分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
第五方面,本申请实施例提供一种网络设备,包括:
第一接收模块,用于接收用户发送的查询请求;其中,所述查询请求中包括:查询数据、K值和查询时间t;
转换模块,用于利用数据转换矩阵将所述查询数据转换为查询数据特征向量
发送模块,用于向存储节点发送查询消息;其中,所述查询消息中包括:所述查询数据特征向量所述K值和查询时间t;
第二接收模块,用于接收所述存储节点发送的K个目标加密感知数据;
解密模块,用于分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
第六方面,本申请实施例提供一种传感器节点,所述传感器节点为传感器节点si,所述传感器节点si,包括:
加密模块,用于在感知周期ti检测到感知数据di,j后,根据密钥ki对所述感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
确定模块,用于根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量其中,所述特征构造矩阵集合中包括一个或多个特征构造矩阵;
发送模块,用于向存储节点发送感知消息Di;其中,所述感知消息Di中包括:所述加密感知数据Ei(di,j)、所述感知数据特征向量所述感知周期ti和感知数据长度信息li,j。
第七方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行上述第一方面的任意实现方式所述的方法。
第八方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行上述第二方面的任意实现方式所述的方法。
第九方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行上述第三方面的任意实现方式所述的方法。
本申请实施例提供的基于传感器网络的K近邻查询方法及装置,通过存储节点接收传感器节点si发送的感知消息Di,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;进一步地,存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息lij以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,并将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。本实施例中,通过感知数据特征向量代替感知数据以及查询数据特征向量代替查询数据,并根据感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
附图说明
图1为本申请实施例提供的传感器网络示意图;
图2为本申请实施例提供的布隆过滤器初始化示意图;
图3为本申请实施例提供的布隆过滤器赋值示意图;
图4为本申请实施例提供的布隆过滤器检测示意图;
图5为本申请实施例提供的距离比较示意图;
图6为本申请实施例提供的三角形示意图;
图7为本申请一实施例提供的基于传感器网络的K近邻查询方法的流程示意图;
图8为本申请另一实施例提供的基于传感器网络的K近邻查询方法的流程示意图;
图9为本申请另一实施例提供的基于传感器网络的K近邻查询方法的流程示意图;
图10为本申请一实施例提供的存储节点的结构示意图;
图11为本申请另一实施例提供的存储节点的结构示意图;
图12为本申请一实施例提供的网络设备的结构示意图;
图13为本申请另一实施例提供的网络设备的结构示意图;
图14为本申请一实施例提供的传感器节点的结构示意图;
图15为本申请另一实施例提供的传感器节点的结构示意图。
具体实施方式
首先,对本申请实施例所涉及的应用场景和部分词汇进行介绍。
图1为本申请实施例提供的传感器网络示意图。如图1所示,本申请实施例提供的传感器网络可以包括网络设备、存储节点以及至少一个传感器节点(为了便于描述,附图1中以传感器节点1、传感器节点2和传感器节点3为例)。当然,本申请实施例提供的传感器网络中还可以包括其它设备,本申请实施例中对此并不作限制。
本申请实施例中涉及的网络设备用于在接收到用户发送的查询请求后,向存储节点发送查询消息,以使存储节点对传感器节点上传的感知数据信息进行查询。示例性地,本申请实施例中涉及的网络设备可以为基站,当然还可以为其它类型的网络设备,本申请实施例中对此并不作限制。
本申请实施例中涉及的存储节点用于存储大量传感器节点上报的感知数据信息、根据网络设备发送的查询消息进行查询处理,并将查询结果消息返回给网络设备。
本申请实施例中涉及的传感器节点用于检测感知数据信息,并将检测到的感知数据信息上报存储节点。
本申请实施例中涉及的K近邻查询主要包括两种类型的查询:一是基于地理位置的K近邻查询,即给定一个地理位置坐标,查找K(K为正整数)个离该地理位置坐标最近且满足一定条件的节点;另一种是基于数值的K近邻查询,即用户指定一个值,查询K个距离该值最近的感知数值。
本申请实施例中涉及的布隆过滤器(Bloom filter)原理如下:图2为本申请实施例提供的布隆过滤器初始化示意图,如图2所示,在初始状态时,布隆过滤器是一个包含r(r为正整数)位的位数组,每一位都置为0。为了表达S={x1,x2,…,xs}这样一个s(s为正整数)个元素的集合,布隆过滤器使用k(k为正整数)个相互独立的哈希函数(Hash Function)分别将集合中的每个元素映射到{1,…,r}的范围中。对任意一个元素,使用第q个哈希函数所映射的位置就会被置为1(1≤q≤k)。值得注意的是,如果一个位置多次被置为1,那么只有第一次会起作用,后面几次将没有任何效果。图3为本申请实施例提供的布隆过滤器赋值示意图,如图3所示,若k=3,且有两个哈希函数选中同一个位置(从左边数第四位)。
进一步地,在判断y是否属于集合S={x1,x2,…,xs}时,同样对y使用k个哈希函数进行映射;如果所有映射位置都是1,则确定y是该集合中的元素,否则确定y不是该集合中的元素。图4为本申请实施例提供的布隆过滤器检测示意图,当检测元素6、17和59是否属于集合S={3,17,25}时,根据图4所示,6所映射的位置中有两个为0,则确定6不是该集合中的元素;17和59所映射的位置全部为1,则确定17和59是该集合中的元素(由于存在如图3所示的两个哈希函数选中同一个位置的情形,导致误判59是该集合中的元素,即假阳性结果)。
本申请实施例中涉及的查询数据特征向量用于代替z维查询数据示例性地,查询数据特征向量为网络设备根据数据转换矩阵Az×p和确定的。
本申请实施例中涉及的数据转换矩阵Az×p为z×p的非奇异矩阵,其中,z和p均为正整数且z<p。
本申请实施例中涉及的加密感知数据Ei(di,j)为传感器节点si根据密钥ki对感知数据di,j加密所得到的数据;其中,i为取遍不大于m的整数,m为本申请实施例中存储节点对应的传感器节点的个数,j为取遍不大于n的整数,n为传感器节点si在感知周期ti检测到的感知数据的个数。
本申请实施例中涉及的感知数据特征向量用于代替z维感知数据di,j。示例性地,感知数据特征向量为传感器节点si根据特征构造矩阵集合中随机选取的特征构造矩阵和感知数据di,j确定的。
本申请实施例中涉及的特征构造矩阵Bp×z属于数据转换矩阵Az×p的一个广义逆矩阵(即Az×p·Bz×p=Ez)。
本申请实施例中涉及的感知数据长度信息li,j用于指示感知数据di,j的数据长度信息。示例性地,感知数据长度信息li,j可以用于指示感知数据di,j数据长度的平方(即||di,j||2)。
本申请实施例提供的基于传感器网络的K近邻查询方法中涉及到距离比较原则1和距离比较原则2。本申请下述部分分别对距离比较原则1和距离比较原则2进行介绍:
本申请实施例涉及的距离比较原则1:对于z维数据W(w1,w2,...,wz)和D(d1,d2,...,dz),定义两个数据间的距离计算公式为:
由公式1所计算的是两者间的欧式距离。当dis(W,D)<dis(W,O),表示z维数据O相比z维数据D离z维数据W的距离更大。图5为本申请实施例提供的距离比较示意图,如图5所示,在2维数据中,当dis(W,D)<dis(W,O),则可判定D比O离W更近。但在大于等于2维的数据中,存在不可逆推性,即仅知道两点间的欧式距离,无法逆推两点所代表的数值。示例性地,若知道两点间的欧式距离和其中一点(如图5中的dis(W,D)和W),则也可能无法逆推得出D点(这取决于数据的取值是整数还是实数,若是整数,则存在有限多个可能点;若是实数,则存在无穷多个可能点)。
本申请实施例涉及的距离比较原则2:对于z维数据W和D,分别用向量和表示,且长度分别用||W||和||D||表示,定义z维数据W和D的长度计算公式分别为:
在某个包含和的平面上,存在如下关系:
本申请下述部分证明上述公式4:图6为本申请实施例提供的三角形示意图,如图6所示,假设在某个包含和的平面上,与之间的夹角为α,则存在如下公式:
其中,
结合上述公式5和三角形余弦定理,得到上述公式4。
本申请实施例提供的基于传感器网络的K近邻查询方法及装置,通过感知数据特征向量代替感知数据以及查询数据特征向量代替查询数据,并根据感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
下面以具体地实施例对本申请的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
图7为本申请一实施例提供的基于传感器网络的K近邻查询方法的流程示意图。本申请实施例对存储节点侧的实现方式进行介绍。如图7所示,本申请实施例的方法可以包括:
步骤S701、存储节点接收传感器节点si发送的感知消息Di。
本步骤中,存储节点接收传感器节点si在感知周期ti检测到感知数据di,j后所发送的感知消息Di。示例性地,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m是指传感器节点的个数,j为取遍不大于n的整数,n是指传感器节点si在感知周期ti检测到的感知数据的个数;当然,感知消息Di中还可以包括其它信息(例如传感器节点si标识信息等),本申请实施例中对此并不作限制。
本实施例中,加密感知数据Ei(di,j)可以为传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对感知数据di,j进行加密所得到的。具体的根据密钥对感知数据进行加密的方式可以参考相关技术中的加密方式,本申请实施例中对此不作限制。
本实施例中,感知数据特征向量可以为传感器节点si根据特征构造矩阵集合中随机选取的特征构造矩阵Bp×z和感知数据di,j确定的。示例性地,传感器节点si根据公式得到感知数据dij对应的感知数据特征向量其中,代表所述感知数据di,j;当然,传感器节点si还可以根据公式的其它变形公式或者其它方式得到感知数据特征向量本申请实施例中对此并不作限制。
步骤S702、存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
本实施例中,网络设备所发送的查询消息中可以包括:查询数据特征向量K值和查询时间t;当然,查询消息中还可以包括其它信息,本申请实施例中对此并不作限制。示例性地,查询消息用于指示存储节点查询属于查询时间t内且与查询数据特征向量最邻近的K个目标加密感知数据。
本实施例中,查询数据特征向量可以为网络设备根据数据转换矩阵Az×p和查询数据确定的。示例性地,网络设备根据公式得到数据特征向量当然,网络设备还可以根据公式的其它变形公式或者其它方式得到数据特征向量本申请实施例中对此并不作限制。
本步骤中,存储节点在接收到网络设备发送的查询消息后,通过查询数据特征向量代替查询数据以及感知数据特征向量代替感知数据,并根据感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出与查询数据特征向量最邻近的K个目标加密感知数据,从而以便于网络设备确定出与查询数据最邻近的K个目标感知数据。
示例性地,存储节点根据查询时间t和感知周期ti,确定出属于查询时间t段的加密感知数据Ei(di,j)、感知数据特征向量和感知数据长度信息li,j,从而排除不属于查询时间t段的感知信息。进一步地,根据查询数据特征向量属于查询时间t段的感知数据长度信息li,j和感知数据特征向量从属于查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
本实施例中,存储节点在接收到网络设备发送的查询消息后,根据查询时间t和感知周期ti,排除不属于查询时间t段的感知信息;进一步地,通过查询数据特征向量代替查询数据以及属于查询时间t段的感知数据特征向量代替感知数据,并根据属于查询时间t段的感知数据特征向量查询数据特征向量和属于查询时间t段的感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出与查询数据特征向量最邻近的K个目标加密感知数据。
本实施例中,结合公式公式和公式Az×p·Bz×p=Ez,可知:
其中,di,j,r代表di,j的第r维数值。
进一步地,上述公式4可以变换为如下公式:
由于||W||2为真实查询数据W的数据长度平方,存储节点虽然并不知晓,但其值在比较dis(W,di,j)大小时,不影响距离大小之间的相对顺序。综上,存储节点可通过计算来代替感知数据di,j与真实查询W之间的距离比较。可见,不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
本申请下述实施例对“根据查询数据特征向量属于查询时间t段的感知数据长度信息li,j和感知数据特征向量从属于查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据”的可实现方式进行介绍:
一种可能的实现方式:若感知数据长度li,j用于指示感知数据di,j数据长度的平方||di,j||2,则根据查询数据特征向量属于查询时间t段的感知数据长度信息li,j和感知数据特征向量按照公式结果由小到大的顺序,确定前K个结果对应的i和j,从而确定前K个结果对应的i和j所对应的加密感知数据Ei(di,j)即为K个目标加密感知数据。
另一种可能的实现方式:若感知数据长度li,j用于指示感知数据di,j数据长度的平方||di,j||2,则根据查询数据特征向量属于查询时间t段的感知数据长度信息li,j和感知数据特征向量按照公式结果由大到小的顺序,确定后K个结果对应的i和j,从而确定后K个结果对应的i和j所对应的加密感知数据Ei(di,j)即为K个目标加密感知数据。
当然,根据查询数据特征向量属于查询时间t段的感知数据长度信息li,j和感知数据特征向量还可通过其它方式从属于查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据,本申请实施例中对此不作限制。
当然,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,还可通过其它方式从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,本申请实施例中对此不作限制。
步骤S703、存储节点将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。
本步骤中,存储节点将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据,并将与查询数据最邻近的K个目标感知数据返回给用户。
示例性地,K个目标加密感知数据可以携带与查询结果消息中发送给网络设备,当然还可携带其它消息中,本申请实施例中对此并不作限制。
示例性地,网络设备可以根据密钥ki分别对K个目标加密感知数据进行解密。具体的,根据密钥对目标加密感知数据进行解密的方式可以参考相关技术中的解密方式,本申请实施例中对此不作限制。
本申请实施例中,存储节点接收传感器节点si发送的感知消息Di,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;进一步地,存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,并将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。本实施例中,通过感知数据特征向量代替感知数据以及查询数据特征向量代替查询数据,并根据感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
进一步地,通过一次性计算感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,实现了一次运算达到多维同时计算的效果。
图8为本申请另一实施例提供的基于传感器网络的K近邻查询方法的流程示意图。在上述实例的基础上,本申请实施例对网络设备侧的实现方式进行介绍。如图8所示,本申请实施例的方法可以包括:
步骤S801、网络设备接收用户发送的查询请求。
本步骤中,网络设备接收用户发送的查询请求;其中,查询请求中可以包括:查询数据、K值和查询时间t;当然,查询请求中还可以包括其它信息,本申请实施例中对此并不作限制。示例性地,查询请求用于指示查询属于查询时间t内且与查询数据最邻近的K个感知数据。
需要说明的是,为了便于描述,本实施例中的查询数据的表示方式可以包括但不限于z维数据W、W(w1,w2,...,wz)和z维行向量中的至少一种;当然,还可以包括其它表示方式,本申请实施例中对此并不作限制。
步骤S802、网络设备利用数据转换矩阵将查询数据转换为查询数据特征向量并向存储节点发送查询消息。
本步骤中,为了保护查询数据的隐私,网络设备利用数据转换矩阵将查询数据转换为查询数据特征向量并向存储节点发送查询消息;其中,查询消息中可以包括:查询数据特征向量K值和查询时间t;当然,查询消息中还可以包括其它信息,本申请实施例中对此并不作限制。
示例性地,查询消息用于指示存储节点查询属于查询时间t内且与查询数据特征向量最邻近的K个目标加密感知数据,以便于存储节点根据查询消息对传感器节点上报的感知消息Di进行查询,以确定K个目标加密感知数据。
需要说明的是,数据转换矩阵为网络设备生成的一个秘密的z×p的非奇异矩阵,用于对真实的查询数据进行数据转换,以对真实的查询数据进行隐私保护。
示例性地,网络设备可以根据公式得到数据特征向量其中,代表查询数据,Az×p代表数据转换矩阵;当然,网络设备还可以根据公式的其它变形公式或者其它方式得到数据特征向量本申请实施例中对此并不作限制。
当然,网络设备利用数据转换矩阵,还可以通过其它方式将查询数据转换为查询数据特征向量本申请实施例中对此并不作限制。
步骤S803、网络设备接收存储节点发送的K个目标加密感知数据,并分别对K个目标加密感知数据进行解密,得到K个目标感知数据。
本步骤中,网络设备接收存储节点发送的K个目标加密感知数据,并分别对K个目标加密感知数据进行解密,便可得到与查询数据最邻近的K个目标感知数据,从而将K个目标感知数据返回给用户。
示例性地,K个目标加密感知数据可以携带与查询结果消息中发送给网络设备,当然还可携带其它消息中,本申请实施例中对此并不作限制。
示例性地,携带有所述K个目标加密感知数据的消息中,还可以携带其它信息(例如所述K个目标加密感知数据分别所属的传感器节点标识信息等),本申请实施例中对此并不作限制。
示例性地,网络设备可以根据密钥ki分别对K个目标加密感知数据进行解密。具体的,根据密钥对目标加密感知数据进行解密的方式可以参考相关技术中的解密方式,本申请实施例中对此不作限制。
本申请实施例中,网络设备在接收到用户发送的查询请求后,通过利用数据转换矩阵将查询数据转换为查询数据特征向量并向存储节点发送查询消息(查询消息中可以包括:查询数据特征向量K值和查询时间t),以便于存储节点根据查询消息对传感器节点上报的感知消息Di进行查询,以确定K个目标加密感知数据;进一步地,网络设备接收存储节点发送的K个目标加密感知数据,并分别对K个目标加密感知数据进行解密,得到K个目标感知数据。本实施例中,通过查询数据特征向量代替查询数据,不仅可以实现对查询数据的隐私保护,还可以实现精准地K近邻查询。
在上述实施例的基础上,为了保护真实感知数据的隐私,网络设备可以为传感器节点si分配密钥ki,以便传感器节点si可以对检测到的感知数据di,j进行加密,并将加密得到的加密感知数据Ei(di,j)上报给存储节点;其中,不同传感器节点对应的密钥不同;i为取遍不大于m的整数,m为传感器节点的个数。
在上述实施例的基础上,为了进一步保护真实感知数据的隐私,网络设备还可以为传感器节点si分配一个或多个特征构造矩阵Bp×z,以便传感器节点si可以对检测到的感知数据di,j转换为感知数据特征向量并用感知数据特征向量代替感知数据di,j上报给存储节点。
本申请下述实施例中对“网络设备为传感器节点si分配一个或多个特征构造矩阵Bp×z”的可实现方式进行介绍:
示例性地,网络设备根据公式Az×pBp×z=Ez确定多个特征构造矩阵Bp×z;其中,Az×p代表数据转换矩阵,Ez代表z阶单位矩阵;进一步地,网络设备为传感器节点si随机分配该多个特征构造矩阵Bp×z中的部分矩阵。
本实施例中,网络设备根据公式Az×pBp×z=Ez确定特征构造矩阵Bp×z时,由于未知变量多于方程组中的方程数(即z<p),根据线性方程组有解判别定理可得:对于任意一个非奇异矩阵Az×p存在无穷多个Bp×z解(即网络设备根据Az×p可以生成无穷多个Bp×z。
例如,若则Bp×z可以为 等
进一步地,网络设备为传感器节点si随机分配该多个特征构造矩阵Bp×z中的一个或多个矩阵,以便于传感器节点si可以根据分配到的特征构造矩阵Bp×z中的任一特征构造矩阵Bp×z对检测到的感知数据di,j转换为感知数据特征向量需要说明的是,不同传感器节点接收到的特征构造矩阵Bp×z可能并不相同。
图9为本申请另一实施例提供的基于传感器网络的K近邻查询方法的流程示意图。在上述实例的基础上,本申请实施例对传感器节点侧的实现方式进行介绍。如图9所示,本申请实施例的方法可以包括:
步骤S901、传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对感知数据di,j加密,得到加密感知数据Ei(di,j)。
本步骤中,传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m是指传感器节点的个数,j为取遍不大于n的整数,n是指传感器节点si在感知周期ti检测到的感知数据的个数。
需要说明的是,传感器节点si根据密钥ki对感知数据di,j进行加密的方式可以参考相关技术中的加密方式,本申请实施例中对此不作限制。
本实施例中,网络设备可以预先为传感器节点si分配网络设备所确定的密钥ki;对应地,传感器节点si接收网络设备所发送的密钥ki;需要说明的是,不同传感器节点对应的密钥不同。
步骤S902、传感器节点si根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量
本实施例中,网络设备可以预先为传感器节点si随机分配网络设备所确定的多个特征构造矩阵Bp×z中的一个或多个矩阵;对应地,传感器节点si接收网络设备所发送的一个或多个特征构造矩阵Bp×z以形成特征构造矩阵集合,其中,特征构造矩阵集合中包括一个或多个特征构造矩阵。需要说明的是,不同传感器节点接收到的特征构造矩阵Bp×z可能并不相同。
本步骤中,传感器节点si分别根据特征构造矩阵集合中的部分或全部特征构造矩阵Bp×z,确定每个感知数据di,j对应的感知数据特征向量例如,传感器节点si根据特征构造矩阵集合中的特征构造矩阵1,确定感知数据1对应的感知数据特征向量1;传感器节点si根据特征构造矩阵集合中的特征构造矩阵2,确定感知数据2对应的感知数据特征向量2。
示例性地,针对每个感知数据di,j,传感器节点si从特征构造矩阵集合中随机选取一个特征构造矩阵Bp×z;进一步地,传感器节点si根据公式得到感知数据di,j对应的感知数据特征向量其中,代表感知数据di,j。
需要说明的是,传感器节点si还可以根据公式的其它变形公式或者其它方式得到感知数据特征向量本申请实施例中对此并不作限制。
当然,传感器节点si根据特征构造矩阵集合,还可通过其它方式分别确定每个感知数据di,j对应的感知数据特征向量本申请实施例中对此并不作限制。
步骤S903、传感器节点si向存储节点发送感知消息Di。
本步骤中,传感器节点si向存储节点发送感知消息Di(其中,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j),以便于存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,进而将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。
需要说明的是,感知消息Di中还可以包括其它信息,本申请实施例中对此并不作限制。
本申请实施例中,传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对感知数据di,j加密,得到加密感知数据Ei(di,j);进一步地,传感器节点si根据特征构造矩阵集合分别确定每个感知数据dij对应的感知数据特征向量并向存储节点发送携带有加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j的感知消息Di,以便于存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,进而将K个目标加密感知数据发送给网络设备,以使网络设备分别对K个目标加密感知数据进行解密,得到K个目标感知数据。本实施例中,通过感知数据特征向量代替感知数据,不仅可以实现对感知数据的隐私保护,还可以实现精准地K近邻查询。
本申请另一实施例提供的基于传感器网络的K近邻查询方法中,在上述实例的基础上,本申请实施例中结合存储节点侧、网络设备侧和传感器节点侧进行介绍。本申请实施例的方法可以包括:
步骤S1001、网络设备为传感器节点si分配密钥ki以及一个或多个特征构造矩阵Bp×z。
步骤S1002、传感器节点si接收网络设备所发送的密钥ki以及一个或多个特征构造矩阵Bp×z。
示例性地,传感器节点si接收网络设备所发送的一个或多个特征构造矩阵Bp×z以形成特征构造矩阵集合。
步骤S1003、传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对感知数据di,j加密得到加密感知数据Ei(di,j),并根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量
步骤S1004、传感器节点si向存储节点发送感知消息Di。
示例性地,感知消息Di中可以包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j。
步骤S1005、存储节点接收传感器节点si发送的感知消息Di。
步骤S1006、网络设备接收用户发送的查询请求。
示例性地,查询请求中可以包括:查询数据、K值和查询时间t。
步骤S1007、网络设备利用数据转换矩阵将查询数据转换为查询数据特征向量并向存储节点发送查询消息。
示例性地,查询消息中可以包括:查询数据特征向量K值和查询时间t。
步骤S1008、存储节点在接收到网络设备发送的查询消息后,根据感知数据特征向量感知周期ti、感知数据长度信息li,j以及查询消息中携带的查询数据特征向量K值和查询时间t,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
步骤S1009、存储节点将K个目标加密感知数据发送给网络设备。
步骤S1010、网络设备在接收到存储节点发送的K个目标加密感知数据后,分别对K个目标加密感知数据进行解密得到K个目标感知数据,并将K个目标感知数据返回给用户。
本申请实施例中,通过感知数据特征向量代替感知数据以及查询数据特征向量代替查询数据,并根据感知数据特征向量查询数据特征向量和感知数据长度信息li,j之间的关系,从加密感知数据Ei(di,j)中确定出K个目标加密感知数据,不仅可以实现对感知数据和查询数据的隐私保护,还可以实现精准地K近邻查询。
需要说明的是,本领域普通技术人员可以理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图10为本申请一实施例提供的存储节点的结构示意图。如图10所示,本实施例提供的存储节点100可以包括:第一接收模块1001、第二接收模块1002、确定模块1003以及发送模块1004。
其中,第一接收模块1001,用于接收传感器节点si发送的感知消息Di;其中,所述感知消息Di中包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
第二接收模块1002,用于接收网络设备发送的查询消息;
确定模块1003,用于在所述第二接收模块接收到网络设备发送的查询消息后,根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据;
发送模块1004,用于将所述K个目标加密感知数据发送给所述网络设备,以使所述网络设备分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
在一种可能的实现方式中,所述确定模块1003,包括:
第一确定单元,用于根据所述查询时间t和所述感知周期ti,确定出属于所述查询时间t段的加密感知数据Ei(dij)、感知数据特征向量和感知数据长度信息li,j;
第二确定单元,用于根据所述查询数据特征向量属于所述查询时间t段的感知数据长度信息li,j和所述感知数据特征向量从属于所述查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
在一种可能的实现方式中,所述第二确定单元具体用于:
按照公式结果由小到大的顺序,确定前K个结果对应的i和j;其中,||di,j||2代表所述感知数据di,j数据长度的平方;
确定所述K个目标加密感知数据包括所述前K个结果对应的i和j所对应的加密感知数据Ei(di,j)。
本申请实施例提供的存储节点,可以用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于存储节点的技术方案,其实现原理和技术效果类似,此处不再赘述。
图11为本申请另一实施例提供的存储节点的结构示意图。如图11所示,本实施例提供的存储节点110可以包括:处理器1101、存储器1102和收发器1103。
其中,所述存储器1101,用于存储程序指令;所述收发器1103用于和其他设备通信;所述处理器1102,用于调用并执行所述存储器1101中存储的程序指令,以使所述存储节点110用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于存储节点的技术方案,其实现原理和技术效果类似,此处不再赘述。
可以理解的是,图11仅仅示出了存储节点的简化设计。在其他的实施方式中,存储节点还可以包含任意数量的收发器、处理器、存储器和/或通信单元等,本申请实施例中对此并不作限制。
图12为本申请一实施例提供的网络设备的结构示意图。如图12所示,本实施例提供的网络设备120可以包括:第一接收模块1201、转换模块1202、发送模块1203、第二接收模块1204和解密模块1205。
其中,第一接收模块1201,用于接收用户发送的查询请求;其中,所述查询请求中包括:查询数据、K值和查询时间t;
转换模块1202,用于利用数据转换矩阵将所述查询数据转换为查询数据特征向量
发送模块1203,用于向存储节点发送查询消息;其中,所述查询消息中包括:所述查询数据特征向量所述K值和查询时间t;
第二接收模块1204,用于接收所述存储节点发送的K个目标加密感知数据;
解密模块1205,用于分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
在一种可能的实现方式中,所述转换模块1202具体用于:根据公式得到数据特征向量其中,代表所述查询数据,Az×p代表所述数据转换矩阵,z和p均为正整数且z<p。
在一种可能的实现方式中,所述网络设备120还包括:
第一分配模块,用于为传感器节点si分配密钥ki;其中,不同传感器节点对应的密钥不同;i为取遍不大于m的整数,m为传感器节点的个数。
在一种可能的实现方式中,所述网络设备120还包括:
确定模块,用于根据公式Az×pBp×z=Ez确定多个特征构造矩阵Bp×z;其中,Az×p代表所述数据转换矩阵,Ez代表z阶单位矩阵,z和p均为正整数且z<p;
第二分配模块,用于为传感器节点si随机分配所述多个特征构造矩阵Bp×z中的部分矩阵;其中,i为取遍不大于m的整数,m为传感器节点的个数。
本申请实施例提供的网络设备,可以用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于网络设备的技术方案,其实现原理和技术效果类似,此处不再赘述。
图13为本申请另一实施例提供的网络设备的结构示意图。如图13所示,本实施例提供的网络设备130可以包括:处理器1301、存储器1302和收发器1303。
其中,所述存储器1301,用于存储程序指令;所述收发器1303用于和其他设备通信;所述处理器1302,用于调用并执行所述存储器1301中存储的程序指令,以使所述网络设备130用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于网络设备的技术方案,其实现原理和技术效果类似,此处不再赘述。
可以理解的是,图13仅仅示出了网络设备的简化设计。在其他的实施方式中,网络设备还可以包含任意数量的收发器、处理器、存储器和/或通信单元等,本申请实施例中对此并不作限制。
图14为本申请一实施例提供的传感器节点的结构示意图。可选地,本申请实施例提供传感器节点可以为传感器节点si。如图14所示,本实施例提供的传感器节点140可以包括:加密模块1401、确定模块1402和发送模块1403。
其中,加密模块1401,用于在感知周期ti检测到感知数据di,j后,根据密钥ki对所述感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
确定模块1402,用于根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量其中,所述特征构造矩阵集合中包括一个或多个特征构造矩阵;
发送模块1403,用于向存储节点发送感知消息Di;其中,所述感知消息Di中包括:所述加密感知数据Ei(di,j)、所述感知数据特征向量所述感知周期ti和感知数据长度信息li,j。
在一种可能的实现方式中,所述确定模块1402包括:
选取单元,用于针对每个感知数据di,j,从所述特征构造矩阵集合中随机选取一个特征构造矩阵Bp×z;其中,z和p均为正整数且z<p;
确定单元,用于根据公式得到所述感知数据di,j对应的感知数据特征向量其中,代表所述感知数据di,j。
在一种可能的实现方式中,所述传感器节点140还可以包括:
第一接收模块,用于接收网络设备发送的密钥ki;和/或,
第二接收模块,用于接收所述网络设备发送的一个或多个所述特征构造矩阵Bp×z。
本申请实施例提供的传感器节点,可以用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于传感器节点si的技术方案,其实现原理和技术效果类似,此处不再赘述。
图15为本申请另一实施例提供的传感器节点的结构示意图。可选地,本申请实施例提供传感器节点可以为传感器节点si。如图15所示,本实施例提供的传感器节点150可以包括:处理器1501、存储器1502和收发器1503。
其中,所述存储器1501,用于存储程序指令;所述收发器1503用于和其他设备通信;所述处理器1502,用于调用并执行所述存储器1501中存储的程序指令,以使所述传感器节点150用于执行本申请上述基于传感器网络的K近邻查询方法实施例中关于传感器节点si的技术方案,其实现原理和技术效果类似,此处不再赘述。
可以理解的是,图15仅仅示出了传感器节点的简化设计。在其他的实施方式中,传感器节点还可以包含任意数量的收发器、处理器、存储器和/或通信单元等,本申请实施例中对此并不作限制。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行本申请上述基于传感器网络的K近邻查询方法实施例中关于存储节点的技术方案,其实现原理和技术效果类似,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行本申请上述基于传感器网络的K近邻查询方法实施例中关于网络设备的技术方案,其实现原理和技术效果类似,此处不再赘述。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行本申请上述基于传感器网络的K近邻查询方法实施例中关于传感器节点si的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域普通技术人员可以理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述各实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (13)
1.一种基于传感器网络的K近邻查询方法,其特征在于,包括:
存储节点接收传感器节点si发送的感知消息Di;其中,所述感知消息Di中包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
所述存储节点在接收到网络设备发送的查询消息后,根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据;
所述存储节点将所述K个目标加密感知数据发送给所述网络设备,以使所述网络设备分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据,包括:
根据所述查询时间t和所述感知周期ti,确定出属于所述查询时间t段的加密感知数据Ei(di,j)、感知数据特征向量和感知数据长度信息li,j;
根据所述查询数据特征向量属于所述查询时间t段的感知数据长度信息li,j和所述感知数据特征向量从属于所述查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据。
3.根据权利要求2所述的方法,其特征在于,若所述感知数据长度li,j用于指示感知数据di,j数据长度的平方,所述根据所述查询数据特征向量属于所述查询时间t段的感知数据长度信息li,j和所述感知数据特征向量从属于所述查询时间t段的加密感知数据Ei(di,j)中确定出K个目标加密感知数据,包括:
按照公式结果由小到大的顺序,确定前K个结果对应的i和j;其中,||di,j||2代表所述感知数据di,j数据长度的平方;
确定所述K个目标加密感知数据包括所述前K个结果对应的i和j所对应的加密感知数据Ei(di,j)。
4.一种基于传感器网络的K近邻查询方法,其特征在于,包括:
网络设备接收用户发送的查询请求;其中,所述查询请求中包括:查询数据、K值和查询时间t;
所述网络设备利用数据转换矩阵将所述查询数据转换为查询数据特征向量并向存储节点发送查询消息;其中,所述查询消息中包括:所述查询数据特征向量所述K值和查询时间t;
所述网络设备接收所述存储节点发送的K个目标加密感知数据,并分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
5.根据权利要求4所述的方法,其特征在于,所述网络设备利用数据转换矩阵将所述查询数据转换为查询数据特征向量包括:
所述网络设备根据公式得到数据特征向量其中,代表所述查询数据,Az×p代表所述数据转换矩阵,z和p均为正整数且z<p。
6.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
所述网络设备为传感器节点si分配密钥ki;其中,不同传感器节点对应的密钥不同;i为取遍不大于m的整数,m为传感器节点的个数。
7.根据权利要求4或5所述的方法,其特征在于,所述方法还包括:
所述网络设备根据公式Az×pBp×z=Ez确定多个特征构造矩阵Bp×z;其中,Az×p代表所述数据转换矩阵,Ez代表z阶单位矩阵,z和p均为正整数且z<p;
所述网络设备为传感器节点si随机分配所述多个特征构造矩阵Bp×z中的部分矩阵;其中,i为取遍不大于m的整数,m为传感器节点的个数。
8.一种基于传感器网络的K近邻查询方法,其特征在于,包括:
传感器节点si在感知周期ti检测到感知数据di,j后,根据密钥ki对所述感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
所述传感器节点si根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量其中,所述特征构造矩阵集合中包括一个或多个特征构造矩阵;
所述传感器节点si向存储节点发送感知消息Di;其中,所述感知消息Di中包括:所述加密感知数据Ei(di,j)、所述感知数据特征向量所述感知周期ti和感知数据长度信息li,j。
9.根据权利要求8所述的方法,其特征在于,所述传感器节点si根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量包括:
针对每个感知数据di,j,所述传感器节点si从所述特征构造矩阵集合中随机选取一个特征构造矩阵Bp×z;其中,z和p均为正整数且z<p;
所述传感器节点si根据公式得到所述感知数据di,j对应的感知数据特征向量其中,代表所述感知数据di,j。
10.根据权利要求8或9所述的方法,其特征在于,所述方法还包括:
所述传感器节点si接收网络设备发送的密钥ki;和/或,
所述传感器节点si接收所述网络设备发送的一个或多个所述特征构造矩阵Bp×z。
11.一种存储节点,其特征在于,包括:
第一接收模块,用于接收传感器节点si发送的感知消息Di;其中,所述感知消息Di中包括:加密感知数据Ei(di,j)、感知数据特征向量感知周期ti和感知数据长度信息li,j;其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
第二接收模块,用于接收网络设备发送的查询消息;
确定模块,用于在所述第二接收模块接收到网络设备发送的查询消息后,根据所述感知数据特征向量感知周期ti、感知数据长度信息li,j以及所述查询消息中携带的查询数据特征向量K值和查询时间t,从所述加密感知数据Ei(di,j)中确定出K个目标加密感知数据;
发送模块,用于将所述K个目标加密感知数据发送给所述网络设备,以使所述网络设备分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
12.一种网络设备,其特征在于,包括:
第一接收模块,用于接收用户发送的查询请求;其中,所述查询请求中包括:查询数据、K值和查询时间t;
转换模块,用于利用数据转换矩阵将所述查询数据转换为查询数据特征向量
发送模块,用于向存储节点发送查询消息;其中,所述查询消息中包括:所述查询数据特征向量所述K值和查询时间t;
第二接收模块,用于接收所述存储节点发送的K个目标加密感知数据;
解密模块,用于分别对所述K个目标加密感知数据进行解密,得到K个目标感知数据。
13.一种传感器节点,其特征在于,所述传感器节点为传感器节点si,所述传感器节点si,包括:
加密模块,用于在感知周期ti检测到感知数据di,j后,根据密钥ki对所述感知数据di,j加密,得到加密感知数据Ei(di,j);其中,i为取遍不大于m的整数,m为传感器节点的个数,j为取遍不大于n的整数,n为所述传感器节点si在所述感知周期ti检测到的感知数据的个数;
确定模块,用于根据特征构造矩阵集合分别确定每个感知数据di,j对应的感知数据特征向量其中,所述特征构造矩阵集合中包括一个或多个特征构造矩阵;
发送模块,用于向存储节点发送感知消息Di;其中,所述感知消息Di中包括:所述加密感知数据Ei(di,j)、所述感知数据特征向量所述感知周期ti和感知数据长度信息li,j。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811214703.9A CN109413708B (zh) | 2018-10-18 | 2018-10-18 | 基于双层传感器网络隐私保护的k近邻查询方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811214703.9A CN109413708B (zh) | 2018-10-18 | 2018-10-18 | 基于双层传感器网络隐私保护的k近邻查询方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109413708A true CN109413708A (zh) | 2019-03-01 |
CN109413708B CN109413708B (zh) | 2020-10-30 |
Family
ID=65468394
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811214703.9A Active CN109413708B (zh) | 2018-10-18 | 2018-10-18 | 基于双层传感器网络隐私保护的k近邻查询方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109413708B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043407A (zh) * | 2007-04-05 | 2007-09-26 | 华为技术有限公司 | 传感器网络的数据查询方法和系统以及传感器节点 |
CN102595545A (zh) * | 2011-12-20 | 2012-07-18 | 沈阳大学 | 一种用于无线传感器网络的k近邻查询方法 |
-
2018
- 2018-10-18 CN CN201811214703.9A patent/CN109413708B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101043407A (zh) * | 2007-04-05 | 2007-09-26 | 华为技术有限公司 | 传感器网络的数据查询方法和系统以及传感器节点 |
CN102595545A (zh) * | 2011-12-20 | 2012-07-18 | 沈阳大学 | 一种用于无线传感器网络的k近邻查询方法 |
Non-Patent Citations (2)
Title |
---|
HUI PENG: "《Enable privacy preservation for k-NN query in two-tiered wireless sensor networks》", 《2015 IEEE INTERNATIONAL CONFERENCE ON COMMUNICATIONS (ICC)》 * |
JURU ZENG: "《Privacy-preserving and Collusion-aware k–NN Query Processing in Two-tiered Sensor Networks》", 《2017 IEEE TRUSTCOM/BIGDATASE/ICESS》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109413708B (zh) | 2020-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Paulet et al. | Privacy-preserving and content-protecting location based queries | |
Shaham et al. | Privacy preservation in location-based services: A novel metric and attack model | |
CN111083631B (zh) | 一种保护位置隐私和查询隐私的高效查询处理方法 | |
Wang et al. | A secure data aggregation strategy in edge computing and blockchain-empowered internet of things | |
KR101843340B1 (ko) | 프라이버시―보존 협력 필터링 | |
Ghinita | Privacy for location-based services | |
Calderoni et al. | Location privacy without mutual trust: The spatial Bloom filter | |
CN108632248A (zh) | 数据加密方法、数据查询方法、装置、设备及存储介质 | |
Zhu et al. | A privacy-preserving framework for outsourcing location-based services to the cloud | |
CN111125736A (zh) | 基于隐私保护交集计算协议的致病基因检测方法 | |
CN106533680B (zh) | 一种保护位置隐私的量子近邻查询方法 | |
Wang et al. | Location protection method for mobile crowd sensing based on local differential privacy preference | |
Jiang et al. | P 2 AE: Preserving Privacy, Accuracy, and Efficiency in Location-Dependent Mobile Crowdsensing | |
CN102687184A (zh) | 代理计算系统、方法、委托装置、程序及其记录介质 | |
CN106453393B (zh) | 参与式感知中可验证的隐私保护数据类型匹配方法 | |
CN109194666B (zh) | 一种基于LBS的安全kNN查询方法 | |
Ghinita et al. | An efficient privacy-preserving system for monitoring mobile users: making searchable encryption practical | |
Palmieri et al. | Spatial bloom filters: Enabling privacy in location-aware applications | |
CN112073444B (zh) | 数据集的处理方法、装置和服务器 | |
CN107885705A (zh) | 一种高效可扩展的安全的文档相似性计算方法和装置 | |
Geetha et al. | Implementation of trust and reputation management for free-roaming mobile agent security | |
CN105530609A (zh) | 基于Wi-Fi指纹的高效隐私保护的室内定位方法 | |
CN112468521B (zh) | 基于隐私保护的数据处理方法、装置和服务器 | |
CN109413708A (zh) | 基于传感器网络的k近邻查询方法及装置 | |
Miranda-López et al. | 2Lbp-RRNS: two-levels RRNS with backpropagation for increased reliability and privacy-preserving of secure multi-clouds data storage |
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 |