两层无线传感器网络多维数据隐私保护范围查询协议

王宇, 李金勇, 邓昀, 沈凡凡, 陈锦玉

武汉大学学报(理学版) ›› 2023, Vol. 69 ›› Issue (5) : 565 -576.

PDF (2373KB)
武汉大学学报(理学版) ›› 2023, Vol. 69 ›› Issue (5) : 565 -576. DOI: 10.14188/j.1671-8836.2022.0179
物联网安全

两层无线传感器网络多维数据隐私保护范围查询协议

    王宇1, 2, 李金勇1, 2, 邓昀1, 2, 沈凡凡3, 陈锦玉1, 2
作者信息 +

Privacy Protection Range Query Protocol for Multidimensional Data in Two-Tiered Wireless Sensor Networks

    Yu WANG1, 2, Jinyong LI1, 2, Yun DENG1, 2, Fanfan SHEN3, Jinyu CHEN1, 2
Author information +
文章历史 +
PDF (2428K)

摘要

针对现有两层无线传感器网络隐私保护范围查询协议存在数据安全低、感知节点通信能耗较高,且较少针对多维数据的问题,提出了一种基于交叉0-1编码和质数融合的两层无线传感器网络隐私保护范围查询协议。在数据提交阶段,感知节点采集多维数据并根据属性维度分组,采用交叉0-1编码、质数融合等方法优化比较因子的计算方式,用AES算法构建加密约束链,提高数据安全性,降低计算和通信能耗。在查询处理阶段,Sink节点对查询范围值采用交叉0-1编码和质数融合操作产生比较因子,将查询单元格与比较因子作为查询指令送至存储节点;存储节点根据交叉0-1编码比较规则将采集数据与查询范围值的比较因子比较,完成多维数据范围查询,结果发送给Sink节点。在结果验证阶段,Sink节点根据多维加密约束链中的采集周期时间和特性,验证查询结果的真实性完整性。在实验部分,采用Cortex-M4和Cortex-A9内核开发板实现协议内容,验证了数据提交、隐私数据查询、隐私数据查询结果真实性和完整性验证等功能。通过对本文协议与CSRQ(communication-efficient secure range queries)协议在感知节点通信能耗数据的实验结果对比,表明在同等实验环境下本文协议的通信能耗比CSRQ协议低20%左右。

Abstract

Aiming at the problems of the existing two-tiered wireless sensor network privacy protection range query protocol such as low data security, high communication energy consumption of sensor nodes, and less research for multidimensional data, a two-tiered wireless sensor network privacy protection range query protocol based on cross 0-1 encoding and prime number fusion is proposed: in the data submission stage, the sensor nodes collect multi-dimensional data and group according to attribute dimensions, and adopt cross 0-1 encoding, prime number fusion and other methods to optimize the calculation of the comparison factor, and utilize AES algorithm to construct the encryption constraint chain to improve data security and reduce computing and communication energy consumption; In the query processing stage, the Sink node uses cross 0-1 encoding and prime number fusion to generate comparison factor for the query range value, and sends the query cell and comparison factor to the storage node as query instructions; the storage node compares the collected data with the comparison factor of the query range value according to the cross 0-1 encoding comparison rule, and completes the multi-dimensional data range query, and sends the results to the Sink node; the Sink node verifies the authenticity and integrity of the query results according to the collection cycle time in the multi-dimensional encryption constraint chain and its characteristics. In the experiment, Cortex-M4 and Cortex-A9 kernel development board are used to implement the protocol content, and the functions of data submission, private data query, and authenticity and integrity verification of private data query results are verified. By comparing the experimental results of the communication energy consumption data between the protocol in this paper and the CSRQ (communication-efficient secure range queries) protocol in the sensor node, it is shown that the communication energy consumption of the new protocol is about 20% lower than that of the CSRQ protocol under the same experimental environment.

Graphical abstract

引用本文

引用格式 ▾
王宇, 李金勇, 邓昀, 沈凡凡, 陈锦玉. 两层无线传感器网络多维数据隐私保护范围查询协议[J]. 武汉大学学报(理学版), 2023, 69(5): 565-576 DOI:10.14188/j.1671-8836.2022.0179

登录浏览全文

4963

注册一个新账户 忘记密码

0  引 言

随着无线通信技术以及电子信息技术的不断进步,成本少、能耗低且具有较强感知功能的传感器得到了广泛的应用,众多传感器与基站构成了无线传感器网络(wireless sensor networks, WSN)[1]。由于无线传感器网络的应用与生活紧密相关,在实际应用时也存在许多安全方面的问题[2]。因此,如何保护数据隐私也成为了无线传感器网络普及发展中需要关注的一个重要问题。

两层无线传感器网络(two-tiered wireless sensor networks)是一种网络拓扑结构更加简洁的传感器网络[3],下层由大量存储和计算能力有限的感知节点(sensor node)组成;上层由少量存储量大且计算能力较强的存储节点(storage node)组成。链路性质更加地稳定,由于Sink节点只和存储节点通信,查询处理的效率也更高。然而,安全问题也更加突出,存储节点作为感知节点与Sink节点的中间层,不仅存放着大量感知节点采集的感知数据(如温湿度或光照度数据),还负责响应查询指令,因此,两层无线传感器网络中最易受到攻击的就是存储节点。如果存储节点被俘获,整个单元内的数据乃至查询结果都可能被非法获取。可见,研究和解决两层无线传感器网络的具有隐私保护能力的数据查询问题具有重要的现实意义。

范围查询是数据查询中较为常见的查询操作[4],在各个领域都有非常广泛的前景。例如,大型工业园区的安全监控可以通过传感器对相应区域内的温湿度和光照等参数进行范围监控。对于无线传感器网络范围查询进行安全保护任务主要有两个:首先,保护感知数据和查询范围的隐私安全;其次,保护范围查询结果的真实与完整。要实现上述任务需要解决两个方面的挑战:一个是如何在感知数据和查询范围数值加密的情况下找到相应数据;另一个是如何检验查询结果的正确和完整。现有的研究工作多是基于一维数据的,且安全性和通信能耗方面仍有不足。因此,两层WSN的隐私保护范围查询问题仍有进一步研究的意义。

1  相关研究

现有的安全范围查询研究,根据查询技术的不同,主要分为以下两类:

1) 基于桶分区的安全范围查询[5]。这类方法都依赖于相同的假设:感知节点和Sink节点共享桶分区策略,即划分的桶区间和随机标签之间的映射关系由感知节点和Sink节点共享,并且对于存储节点是未知的,标签的随机性保证了桶分区策略的安全性。文献[6]在桶分区的基础上引入对称加密和Hash运算,并使用桶编码进行查询结果的完整性检验。由于该方案需要为每个空桶生成一个桶编码并将其传输到存储节点,随着空桶数量的增加,大规模WSN中的感知节点通信成本会迅速增长。为了降低感知节点的通信成本,Shi等[7]提出了一种基于时空交叉检查的优化方法,该方案使用位图索引替换文献[6]方案中的桶编码,从而降低感知节点的通信成本,但是存储节点和Sink节点之间的通信成本增加。

2) 基于安全比较的安全范围查询。这类方法的基本思想是感知节点对数据进行加密并生成安全比较编码,可用于比较加密数据。Chen和Liu[8]提出了一种基于前缀成员验证编码机制的SafeQ方案,实现了采集数据与查询范围的密文比较,SafeQ无需明文就可以判断对应的加密数据是否满足查询范围;为了实现对查询结果的完整性检验,他们还在数据加密过程中引入了邻域链机制,并采用Bloom-Filter降低安全比较编码的通信成本。Yi等[9]提出了一种QuerySec方案,该方案使用保序功能实现采集数据与查询范围之间的加密比较,通过将链接水印信息嵌入到加密数据块,实现对查询结果的完整性验证。Zhang等[10]提出的ESRQ(efficient and secure range query)协议也通过采用Bloom-Filter生成用于隐私保护和完整性验证的编码,实现了高效的范围查询。Zhang等[11]还对ESRQ协议进行了扩展,并对两层WSN中范围查询的合谋攻击进行研究。

Dai等[12]提出一种采用了0-1编码方式的隐私保护范围查询的协议EPRQ(energy-efficient and privacy-preserving range query),该协议通过0-1编码以及Hash消息验证技术保证数据、结果以及范围区间的隐私安全,但是并没有涉及到结果的一致性检验方面的问题。Dai等[13]还在EPRQ协议的基础上增加了一种加密约束链方法,提出了可以进行完整性检验的隐私保护范围查询协议CSRQ(communication-efficient secure range queries),不仅可以有效保护感知数据的隐私安全,还可以通过约束链机制,对查询的结果进行完整性检验。然而由于全部的感知节点和基站之间共享生成安全比较项的编码密钥,使得CSRQ协议不能够抵御感知节点的共谋攻击问题。

综上所述,当前一些安全范围查询研究存在以下不足:1) 感知节点通信能耗偏高;2) 未能提供对查询结果真实性校验;3) 不能预防感知节点的共谋攻击。为此,本文提出一种两层无线传感器网络中可用于多维数据的能量高效的隐私保护范围查询协议。采用交叉0-1编码技术来降低感知节点的传输能耗;结合预共享密钥机制和Diffie-Hellman密钥交换协议抵御感知节点的共谋攻击;同时,建立一种多维数据加密约束链,实现对查询结果的真实性完整性验证。

2  模型与问题描述

2.1 网络模型

本文研究的两层WSN的模型[14]图1所示。该两层WSN被分为多个查询单元格(grid),每个单元格都由数个感知节点以及一个存储节点M构成;查询单元G中第i个感知节点记作Si,感知节点集合记为S ={S1,S2,,Si,,Sn},查询单元G记作G ={M, S}。每个感知节点都会配备一个具有唯一性的设备ID编码。每个感知节点都装有不同属性的传感器,用来获取多维数据。存储节点负责存放单元内的感知节点所上传的数据,并负责回应Sink节点的查询指令。Sink节点则负责回应用户的查询指令。网络连接方式:感知节点和存储节点之间利用Wi-Fi组网,存储节点和Sink节点通过以太网进行有线组网。感知节点与存储节点之间的通信链路主要用于加密采集数据的上传,存储节点与Sink节点之间的通信链路主要用于进行范围查询的整个过程。

2.2 范围查询模型

本文的查询模型定义如下:

1) 网络中的全部感知节点都保持时间的松散同步性,将两次提交数据的时间差记作t,用ai表示Sink节点所要查询的数据维度,ID(G)代表查询单元G的ID编码,当Sink节点要给查询单元G发送范围为[Lowi, Highi]的查询请求时,可以把范围查询请求记作:R=ID(G), t, (a1,[Low1,High1]), … , (an,[Lown,Highn])

2) 感知节点Si在时间段t内采集N次数据,得到多维感知数据D1,D2,,DN,记:Ω=IDSi,t,D1,D2,,DN,其中ID(Si)代表感知节点Si的ID编码。

基于上述查询模型,为了便于观察与计算,本文协议中底层感知节点的获取数据都是整数,然而实际应用中的一些数据不可能都是整数,比如:温湿度、光照度、大气压强等,但是这些数值都便于转化,在采集数据转化为整数之后依旧适用于本文协议。

2.3 攻击模型

本文假设存储节点是不可信的,Sink是可信节点;在本文的攻击模型中,感知节点和存储节点都是攻击者俘获的对象。如果存储节点被俘获,查询单元内众多感知节点的感知数据面临泄露的风险,这对整个无线传感器网络影响很大。而感知节点即使被攻击,单个感知节点上的数据相对占比非常小,对整体网络的影响有限。

隐私保护范围查询在进行查询操作的时候要做到以下两点:第一点,对任何一个感知节点收集的数据信息,只有感知节点本身以及Sink节点知道采集数据的明文数值;第二点,对于整个网络里的任何一个范围查询的结果数据的明文值,只有Sink节点能获取,同时Sink节点可以对查询结果是否存在篡改或者伪造进行检验,Sink节点也能够对返回的结果中是否包含全部符合范围的原始数据进行检验。

本文采用Honest-But-Curious威胁模型[15],这种模型中假定只有存储节点会被不法分子进行攻击,并且存在窥探其他节点中存放的隐私数据的企图,但是仍然可以执行查询处理的命令。本文将重点研究存储节点遭受到不法分子攻击时的一些隐私保护措施。遭到不法分子攻击的存储节点有可能产生以下三种状况:第一种,存储节点中所存储的所有隐私数据全部被泄露;第二种,存储节点向Sink节点返回根本不存在的数据;第三种,存储节点向Sink节点返回不完整的数据。

3  隐私保护范围查询协议建模

协议的整体流程可以分成四个阶段:入网阶段,数据提交阶段,查询处理阶段和结果验证阶段。协议运行流程图如图2所示。

1) 入网阶段:感知节点发起入网请求,Sink节点根据ID,进行入网的合法性判定,若同意入网,则交换DH参数等。根据交换信息,感知节点与Sink节点进行幂余计算,得到共享密钥,入网结束。不法分子若是想通过计算获取共享密钥,则要面临大素数运算、离散对数运算的难题,所以入网阶段的共享密钥安全能够得到保障。

2) 数据提交阶段:每个周期,感知节点采集多维数据,根据属性维度分组,采用交叉0-1编码和质数融合操作生成每个分组的比较因子,每组通过AES算法[16]生成加密数据集合,并将感知节点ID、采集周期时间和分组数据根据邻居节点特性生成多维加密约束链,最后,感知节点将比较因子、密文数据以及多维加密约束链上传到存储节点进行存放。

3) 查询处理阶段:用户将查询范围发送给Sink节点,Sink节点收到后对查询范围值采用交叉0-1编码和质数融合操作产生比较因子,将查询单元格与比较因子作为查询指令送至存储节点;存储节点根据相应规则,将采集数据与查询范围值的比较因子比较,寻找符合范围的隐私数据,完成多维数据隐私保护范围查询,结果发送给Sink节点。

4) 结果验证阶段:Sink节点对数据进行解密,根据多维加密约束链中的采集周期时间和多维加密约束链的特性,验证查询结果的真实性、完整性,最后将正确结果返回给用户。

在上述流程中,感知节点可以根据时间进行密钥的有效性检验,如果密钥失效就会利用Diffie-Hellman算法[17]产生一个新的密钥,所有密钥都保存在Sink节点,新密钥产生的同时就会覆盖旧的失效密钥。因此,对于感知节点和Sink节点的共谋攻击具有一定的抵御能力。

3.1 数据提交阶段及相关技术

3.1.1 交叉0-1编码技术

为了实现在不知道真实数值的情况下比较数据大小,本论文根据0-1编码的基本原理[18],提出了一种交叉0-1编码机制,对采集数据和查询范围数值分别进行不同规则的交叉0-1编码。与0-1编码相比,本文提出的交叉0-1编码方法可以将交叉0-1编码直接化为十进制数值进行比较操作,无需额外地进行数值化后再比较。

定义1 交叉0-1编码(cross 0-1 encoding):对于采集数据,假设正整数d=dndn-1dn-2d1{0,1}w是长度为w位的二进制数据,将d的交叉0编码记作CEd0,将d的交叉1编码记作CEd1,表示如下:

CEd0=dndn-1di11di=0,1in
CEd1=dndn-1di00di=1,1in

对于查询范围区间的数值,假设正整数s=snsn-1sn-2s1{0,1}w是长度为w位的二进制数据,将s的交叉0编码记作CEs0,将s的交叉1编码记作CEs1,公式如下:

CEs0=snsn-1si+1100si=0,1in
CEs1=snsn-1si+1011si=1,1in

交叉0-1编码的基本原理是先把一个正整数转换成为二进制编码,然后在0-1编码的基础上打乱重新编码,再将位数补齐,使二进制编码的位数保持在w位。对于采集数据来说,从右向左检测二进制编码的每位di是0还是1,若为0,就将小于i的位数清空,补上数字1,使其总长度为w,放入其0编码之中;若为1,就将小于i的位数清空,补上数字0,使其总长度为w,放入其1编码之中。对于范围区间的数值来说,从右向左检测二进制编码的每位di是0还是1,若为0,就将这一位变成1,然后小于i的位数清空,补上数字0,使其总长度为w,放入其0编码之中;若为1,就将这一位变成0,然后小于i的位数清空,补上数字1,使其总长度为w,放入其1编码之中。

性质1 假设正整数d化为二进制数之后的位数有w位,它的交叉0编码以及交叉1编码分别是CEd0CEd1,那么CEd0CEd1元素的数量一定在[0,w]的范围之内,正整数d的交叉0编码和交叉1编码集合里的元素数量之和为w

证 假设CEd0CEd1的交集不为空集,则必有一个相同的元素,由交叉0-1编码原理,可知这两个相同的元素来自相同的二进制位。但是同一个位只会产生一个0编码或1编码,发生冲突,原假设不成立。

定理1(比较规则) 对于采集数据d以及查询范围区间值s,当且仅当CEs1CEd0时,可以推断出s>d;当且仅当CEs1CEd0=时,可以推断出sd;当且仅当CEs1=CEd0时,可以推断出s=d

以采集数据d=5,范围区间s=9为例说明交叉0-1编码:ds的交叉0编码和交叉1编码如表1所示。

通过判断范围区间的数值s的交叉1编码与采集数据d的交叉0编码是否存在交集,推断出s是否大于d。表1可知,CEs1CEd0,所以s>d。将交叉0编码和交叉1编码直接用十进制数表示为CEd1=5,4CEd0=5,7CEs1=8,7CEs0=10,12,这样可以直接用比较数字的形式来判断范围区间的数值s的交叉1编码CEs1=8,7以及采集数据d的交叉0编码CEd0=5,7之间存在着交集7,那么可以判断出s>d。而传统的0-1编码需要以字符串的形式进行比较操作,两者相比,使用交叉0-1编码方案能使编码后的交叉0编码和交叉1编码占用存储空间更小。

同样由s>d,通过编码机制很容易得出CEs1CEd0,故s>dCEs1CEd0,通过逆否命题可以得出sdCEs1CEd0=。若CEd0|CEs0元素且CEd1|CEs1元素相同,可以推出ds每一位对应相同,所以s=d,反之也成立。

3.1.2 质数融合技术

通过交叉0-1编码技术可以将比较两个数据大小的问题转换成为寻找两个数据相应的交叉0编码和交叉1编码是否存在交集的问题,实现数据间的密文比较。然而,如果仅仅是采用0-1编码,不法分子在攻击并控制节点之后,很容易通过这些0-1编码推测出数据的比较信息,存在安全隐患。因此本文引入质数融合技术,将其与交叉0-1编码技术相结合,进一步把寻找是否有交集存在的问题转换成为寻找是否有最大公约数存在,为隐私数据的安全性提供保证。为了能够把交叉0-1编码后的数值转化成为相应的质数,需要构造出一个质数数据库,为了提高数据的安全性,可以将其设置成一个动态变化的质数库。质数融合技术具体实现的描述如下。

定理2 若单个采集数据的交叉0-1编码所对应的质数的乘积记作AD,查询范围区间的交叉0-1编码所对应的质数的乘积记作AS。采集数据为x以及查询范围区间为a,b,使xa,b能够成立的唯一前提是gcdADx,ASa=1gcdADx,ASb1

证 假设采集数据的集合为Dx,它的交叉0编码的集合是P0,共有m个编码集;查询范围区间a,b的下界数值的交叉1编码集合是P1l,共有n个编码集;查询范围区间a,b的上界数值的交叉1编码集合是P1h,共有r个编码集。其中,P0对应的质数乘积可以记为pP0P1l对应的质数乘积可以记为pP1lP1h对应的质数乘积可以记为pP1h。做出如下推理:

AD=1mpP0
ASa,b=1npP1l,1rpP1h

根据交叉0-1编码的比较规则可知,若xa,b,则有ADxASa=ADxASb=P0=P1h,可以得到:

pP0=pP1h

xa,bgcdADx,ASb=pP0=pP11

xa,bgcdADx,ASa=1

gcdADx,ASb1

质数融合机制的原理,是将所有采集数据的交叉0-1编码集合在数值化后获得其对应的质数,然后将这些质数相乘得到一个质数乘积。采集数据和查询范围区间数值都可以进行这项操作,然后根据gcdADx,ASa=1gcdADx,ASb1成立与否,判断该采集数据是否属于相应的查询范围区间。

举例如下:假设采集数据值为9,它的交叉0编码是1001,1011,进行数值化后是9,11,根据构建的质数库把数值化后的数据转换成为对应的质数,即23,31,那么它的比较因子就是AD9=23×31=713。查询范围区间数值5,12的交叉1编码是0100,0011,1011,0111,数值化之后就是4,3,11,7,把它转化成为相应的质数就是7,5,31,17,那么它的比较因子为AS5,12=35,527,根据gcd 713,35=1gcd 713,527=311,可以得到95,12

3.1.3 多维加密约束链技术

在实际应用中,感知节点上通常都装有多个感知模块,可以同时获取温度、湿度、光照度等多维数据。不管是采集的数据还是Sink节点的范围查询命令基本都是多维的,假设将采集的多维数据以及多维范围查询指令表示为:

D=Si,t,a1,d11,d21,,,an,d1n,d2n,
R=Si,t,a1,Low1,High1,,an,Lown,Highn

其中,Si代表感知节点编号,t代表查询周期,ai代表i1in维采集数据,Lowi,Highi代表i1in维的范围查询区间。

多维加密约束链技术主要分两步进行操作,第一步为多维加密约束链的产生,第二步为利用多维加密约束链来进行结果真实性完整性检验。详细操作描述如下。

第一步:感知节点首先把采集的ai维数据,按从小到大进行排序:

a1,d11,d21,,,dm1,,ai,d1i,d2i,,dmi,
d11d21dm-11dm1,
d1id2idm-1idmi

然后进行多维加密约束链构造,得到:

a1,d11 d21,d21 d31,,dm-21 dm-11,dm-11 dm1,,ai,d1id2i,d2id3i,,dm-2i dm-1i,dm-1i dmi

其中的“‖”代表链接符。最后将整个链用密钥Key进行加密操作:

a1,d11 d21Key,d21 d31Key,,dm-21 dm-11Key,dm-11 dm1Key,,ai,d1i d2iKey,d2i d3iKey,,dm-2i dm-1iKey,dm-1i dmiKey

将多维加密约束链连同加密感知数据以及比较因子发至存储节点。

存储节点收到范围查询命令R之后,将符合范围的正确数据集的多维加密约束链设为QR,除了要把正确的结果数据集返回给Sink节点,还需要发送一个检验编码VO。VO是结果数据集QR里最大值的右邻居数据节点,可以辅助判断结果数据集的真实完整性。假设QRdmi<LowiHighi<dm+1i,那么有:

VO=ai,dmi dm+1iKey

第二步:Sink节点在收到QR以及VO之后,首先将其进行解密操作,看收到的查询结果的数据是否真的包含在所要的查询范围内,然后根据加密约束链是否完整就能够判断结果数据是否完整。详细的判断流程见3.3小节的结果验证阶段。

3.1.4 数据提交阶段步骤

任何一个采集时间周期t之内,将感知节点Si采集的Nn维数据表示为:d11,d21,,d1n,d21,d22,,d2n,,dN1,dN2,,dNn感知节点Si和Sink节点之间的共享密钥设为key,Si将会进行以下步骤:

1) 对一个周期内的采集数据按属性维度进行分组,可以分为n小组的数据,然后通过交叉0-1编码数值化之后得到CEt

CEt=NCd11,d21,,dN1,NCd12,d22,,dN2,
,NCd1n,d2n,,dNn

2) 对公式(13)进行质数融合操作,得到多维比较因子ADt

ADt=ADCEt

3) 将采集数据利用共享密钥key,通过AES对称加密算法,得到密文的数据集合EAt

EAt=
AESd11,d21,,dN1,AESd12,d22,,dN2,
,AESd1n,d2n,,dNn

4) 对于第i维的数据,根据邻居链技术生成加密约束链ELdi

ELdi=t,d1i,d2i,d2i,d3i,,
dN-2i,dN-1i,dN-1i,dNi

对于在时间周期t内的n维感知数据,则有多维加密约束链ELt

ELt=ELd1,ELd2,,ELdn

5) 感知节点Si将以下这些信息进行整合,然后传输至存储节点M

SiM:IDSi,t,ADt,EAt,ELt

3.2 查询处理阶段

查询处理阶段的主要任务是在密文的背景之下,完成Sink节点和存储节点间的范围查询操作。首先,Sink节点对范围查询指令R里面的区间边界数值Low和High进行交叉0-1编码以及质数融合操作,将加密处理后的比较因子发送至存储节点;存储节点根据3.1.2小节中的比较原理,找出符合的密文数据集,然后发送回Sink节点。

查询处理阶段的具体步骤如下。

1) 设范围查询的指令为R

R=ID(G),t,a1,Low1,High1,,an,Lown,Highn

Sink节点对查询范围区间Lowi,Highi(1in),进行交叉0-1编码以及质数融合操作,得到:

ASCELowi,CEHighi

然后Sink节点把加密后的查询指令MR发送至存储节点,MR的信息如下:

MR=ID(G),t,ai,ASCELowi,CEHighi

2) 存储节点在收到查询指令MR之后,取出查询单元G中的对应周期t的所有数据的比较因子,根据比较因子找到符合下列条件的所有数据:

gcdADCEt,ASCELowi=1

gcdADCEt,ASCEHighi1

3) 将所有符合条件的数据放入返回数据集FG,t

FG,t=IDG,t,EAt,QR,VO

其中,IDG为查询单元G的ID编码;t为采集时间周期;EAt为将采集数据利用共享密钥key,通过AES对称加密算法得到的密文数据集合;QR为存储节点收到范围查询命令R后,符合范围的正确数据集的多维加密约束链。

4) 将返回数据集FG,t传输给Sink节点。

3.3 结果验证阶段

结果验证阶段的验证算法步骤如下:

1) 将Sink节点接收到结果数据集FG,t作为算法输入数据,进行结果验证。

2) 将结果数据根据ID以及时间标签t进行整理排序。

3) Sink节点根据相应阶段的密钥,将数据集中的密文数据集合EAt以及多维加密约束链中的QR,VO进行解密操作。

4) 对任一维度的数据来说,假设正确结果的加密约束链为:

QR=dn-1i dnik,,dx-1i dxik,,dm-1i dmik
VO=dmi dm+1ik

进行结果的真实性、完整性检验有四种情况:

① 感知节点上传数据的周期tp是固定的,在一定范围内的查询结果数据集里的周期时间t应满足以下公式:

tN×tp

其中,N代表周期内的采集次数。

t<N×tp,则可以推断出有数据被伪造,结果不具备真实性,退出该算法;

tN×tp,则可以推断出有数据被删除,结果不具备完整性,退出该算法;

② 在加密约束链中,若存在n<x<m使得(dx-1idxi)k,此时QR中的节点项不能够构成链,由此可以推断结果不具备真实完整性;

③ 根据邻居链的特点,本文的加密约束链中,有这样一个性质:前一个链节点的后项与后一个链节点的前项是相同的。根据这一性质,若发现有相邻的两个链节点的项不相交,就可以推断出有数据被删除或篡改,返回的结果不具备真实完整性,退出该算法;

④ 若QR,而VO中的项dmi dm+1ik存在以下情况:

m<Lowi<Highi<m+1

可以判断有数据被删除或篡改,返回的结果不具备真实完整性,退出该算法。

5) Sink节点将通过验证的明文结果作为输出数据,发送回用户。

3.4 安全性分析

1) 采集数据方面

保护两层无线传感器网络中的感知数据隐私性的关键,在于确保存储节点在不知道密钥的情况下不能窃取获得加密数据项的实际值。即使存储节点被破坏,本文提出的方案也可以有效保障感知数据的隐私安全。

感知节点在上传数据之前,加密用的私钥只与Sink节点共享,攻击者很难获得感知数据的实际值。本文使用的质数融合技术使攻击者仅能根据加密数据集中的质数乘积估算数据的实际值,而攻击者获取交叉编码并将其转换为对应质数的可能性仅有1/(2 n +1)(其中n为感知数据的二进制的位数),同时每个周期内,进行质数融合机制的质数库也是动态变化的,这使得通过计算得到感知数据实际值的可能性极低。因此本论文的方案能够较好地保证感知数据的隐私安全性。

2) 查询结果方面

与保护感知数据的隐私方面类似,保证查询结果的隐私安全性的关键,在于确保存储节点不能获取结果数据的实际值。本文方案中,感知节点将加密数据集发送至存储节点,在查询处理过程中,存储节点不进行解密操作,而是根据比较因子是否存在交集来进行范围查询,返回给Sink节点的结果也是加密数据集,再由Sink节点来解密。即使查询结果的密文数据集在通信过程中被捕获,没有密钥就无法破坏存储节点中数据的隐私安全。

3) 查询范围方面

在本文方案中,Sink节点对于每一个维度的查询范围的上下值,都会进行交叉0-1编码以及质数融合的操作,将查询范围的明文数值转换成密文数据集之后,再发送至存储节点进行密文状态下的查询操作。与采集数据方面相似,不法分子根据交叉编码将其转换为对应质数的可能性极低,同时每个周期内,进行质数融合机制的质数库也是动态变化的,通过计算得到范围区间的实际值的可能性非常小,这使得存储节点无法泄露查询范围的实际值。

综上,本文所提的基于交叉0-1编码以及质数融合技术的传感器网络隐私保护范围查询方案,在感知数据、查询结果以及查询范围这三个方面上,都可以保证它们的隐私安全性。

4  协议实现

在实验部分,通过具有Cortex M4内核的Developer Kit开发板搭载AliOS Things系统设计感知节点,通过具有Cortex A9内核的iTOP-4412核心板搭载Linux系统设计存储节点,在PC上设计Sink节点,对本文协议进行了实现。

4.1 感知节点设计和实现

感知节点的程序是在AliOS Things系统上进行开发的,用到了Developer Kit开发板中的光照、大气以及温湿度传感器。在电源模块上接入PM9816功率计,测量运行时的能量消耗。感知节点与存储节点的实物连接示意图如图3所示。

感知节点的程序可以分为主线程、网络通信线程、数据处理线程以及数据更新线程这四个线程。其中数据处理线程:通过Diffie-Hellman算法生成共享密钥;对采集数据进行加密,交叉0-1编码和质数融合,生成加密数据集、比较因子和多维加密约束链,将其上传至存储节点,感知节点的数据处理线程流程图如图4所示。

4.2 存储节点设计和实现

存储节点是基于Linux系统开发,存储节点接收加密采集数据,将其存放在sqlite3数据库里,然后在收到来自Sink节点的查询指令之后,存储节点进行查询处理操作,最后将结果数据集返回给Sink节点。存储节点的Sink节点通信线程负责与Sink节点建立socket连接;判断收到的Sink节点信息是否为范围查询指令,若不是则将信息转发给感知节点,若是查询指令则解析,判断存储数据是否符合范围区间,如果符合就返回ID、时间、加密数据集、多维加密约束链以及符合标志,如果不符合就返回ID、时间以及不符合标志。存储节点的Sink节点通信线程流程图如图5所示。

4.3 Sink节点设计和实现

本文协议中的Sink节点部分采用配备有Intel i5处理器的PC进行搭建,基于VB.Net编程语言进行范围查询终端的开发。数据处理线程作为Sink节点(即基站)的核心线程,等待接收存储节点发送的数据后进行判断。

如果是感知节点的入网请求,判断是否允许入网,若允许则生成DH参数返回给存储节点;如果是DH密钥交换参数,生成共享密钥并判断密钥合法性;如果是查询结果反馈,进行数据解析,并检验结果的真实性完整性,在查询终端界面上显示对应的明文结果。Sink节点的数据处理线程流程图如图6所示。

Sink节点软件的查询终端结果如下图7所示,Sink节点对查询结果进行解密操作,然后将明文数据发送回用户。用户通过范围查询终端,就能够获得想要的范围查询结果,如:设备ID、采集时间、光照度、温度、大气压、湿度等。

5  查询效率能耗分析

将本文协议与CSRQ协议中的感知节点能耗进行对比分析。CSRQ协议是目前使用0-1编码的方案中最优的一种两层WSN安全范围查询协议方案,根据文献[13],它的感知节点通信能耗低于SafeQBloom、QuerySec、ESRQ和SecRQ方案。

5.1 能耗测量方式

本文的通信能耗实验中采用的是NAPUI PM9816功率计。

由于外部环境影响以及电子线路的工作特性,会导致感知节点的通信功率以及时间存在一定范围内的波动情况,为了保证实验数据的精确,本文使用采集数据20次后通过中值滤波算法求平均值的方法收集实验数据。设实验所得的功率数据为P,通过功率计也可以获取通信收发时间设为t,感知节点的通信能耗计算如下:

W=P×t

5.2 感知节点通信能耗数据统计与分析

实验默认参数如表2所示。

为了评估本文协议的性能,本文考察4个参数的变化对感知节点通信能耗的影响。

1) 采集数据维度。在实验中采集数据的维度(d)最多有4个,分别是光照、温度、大气压、湿度。设采集数据的维度逐次从1维增加到4维,其他实验参数不变。

2) 单个周期采集数据个数。设单个周期内的采集数据的个数为N ∈[10,40],其他实验参数不变;

3) 查询单元内的感知节点个数。设一个查询单元内的感知节点个数为s, s∈[2,6],其他实验参数不变;

4) 采集数据的长度。设采集数据的长度LL∈[8,32](单位:bit),其他实验参数不变。

实验结果如表3所示。由表3可知,由于随着采集数据维度、单个周期内采集数据数量、查询单元内感知节点个数和采集数据的长度的增加,感知节点需要上传的数据量会随之增加,使得感知节点的通信能耗相应增高。从对实验参数数据的分析可知,本文协议中的感知节点能耗始终低于CSRQ协议,表现更为优异;根据实验数据通过计算可知:本文协议中的感知节点能耗比CSRQ协议低20%左右。

与传统的0-1编码相比,本文提出的交叉0-1编码可以进行直接的数值比较,转换后的数据帧长度较短,而数据帧的长度可以直接影响感知节点的通信能耗。由于CSRQ协议中的编码方式采用的是传统的0-1编码,因此,本文协议中的感知节点通信能耗比CSRQ协议的感知节点通信能耗低,这也证明交叉0-1编码是有效的。

6  结 语

本文提出了一种基于交叉0-1编码以及质数融合的传感器网络隐私保护范围查询协议。针对感知节点资源有限的问题,采用交叉0-1编码方案节省存储空间和降低传输能耗。实验结果表明,交叉0-1编码方案编码比传统0-1编码性能更优异。针对存储节点被俘获后,攻击者容易通过0-1编码推测出数据比较信息的问题,引入质数融合技术与交叉0-1编码结合来实现数据在密文状态下比较大小,从而增强攻击者推测数据比较信息的难度。最后,通过构建多维数据加密约束链对查询数据进行真实性和完整性校验。实验结果表明,相比CSRQ协议,本文所提协议在感知节点通信能耗方面低20%左右,具有良好的安全性和可行性。

本文协议主要针对存储节点被俘获的情形,在预防Sink节点被俘获或大量感知节点被俘获时仍有不足,未来将在这方面做进一步的研究。

参考文献

[1]

任丰原, 黄海宁, 林闯. 无线传感器网络[J]. 软件学报200314(7): 1282-1291.

[2]

REN F YHUANG H NLIN C. Wireless sensor networks[J]. Journal of Software200314(7): 1282-1291 (Ch).

[3]

杨毅宇, 周威, 赵尚儒, . 物联网安全研究综述: 威胁、检测与防御[J]. 通信学报202142(8): 188-205. DOI: 10.11959/j.issn.1000-436x.2021124 .

[4]

YANG Y YZHOU WZHAO S Ret al. Survey of IoT security research: Threats, detection and defense[J]. Journal on Communications202142(8): 188-205. DOI: 10.11959/j.issn.1000-436x.2021124(Ch ).

[5]

CHONG C YKUMAR S P. Sensor networks: Evolution, opportunities, and challenges[J]. Proceedings of the IEEE200391(8): 1247-1256. DOI: 10.1109/JPROC.2003.814918 .

[6]

陈正宇, 戴华, 叶庆群, . 两层WSN安全范围查询技术综述[J]. 计算机工程与应用201753(19): 26-32. DOI: 10.3778/j.issn.1002-8331.1707-0121 .

[7]

CHEN Z YDAI HYE Q Qet al. Survey of secure range query processing in two-tiered Wireless Sensor Networks[J]. Computer Engineering and Applications201753(19): 26-32. DOI: 10.3778/j.issn.1002-8331.1707-0121(Ch ).

[8]

HORE BMEHROTRA STSUDIK G. A privacy-preserving index for range queries[C]//Proceedings of the 13th International Conference on Very large Data Bases ― Volume 30. New York: ACM, 2004: 720-731. DOI: 10.5555/1316689.1316752 .

[9]

SHENG BLI Q. Verifiable privacy-preserving range query in two-tiered sensor networks[C]//IEEE INFOCOM 2008 ― The 27th Conference on Computer Communications. New York: IEEE Press, 2008: 46-50. DOI: 10.1109/INFOCOM.2008.18 .

[10]

SHI JZHANG RZHANG Y C. A spatiotemporal approach for secure range queries in tiered sensor networks[J]. IEEE Transactions on Wireless Communications201110(1): 264-273. DOI: 10.1109/TWC.2010.102210.100548 .

[11]

CHEN FLIU A X. SafeQ: Secure and efficient query processing in sensor networks[C]//2010 Proceedings IEEE INFOCOM. New York: IEEE Press, 2010: 1-9. DOI: 10.1109/INFCOM.2010.5462094 .

[12]

YI Y QLI RCHEN Fet al. A digital watermarking approach to secure and precise range query processing in sensor networks[C]//2013 Proceedings IEEE INFOCOM. New York: IEEE Press, 2013: 1950-1958. DOI: 10.1109/INFCOM.2013.6566995 .

[13]

ZHANG X YDONG LPENG Het al. Achieving efficient and secure range query in two-tiered wireless sensor networks[C]//2014 IEEE 22nd International Symposium of Quality of Service (IWQoS). New York: IEEE Press, 2014: 380-388. DOI: 10.1109/IWQoS.2014.6914343 .

[14]

ZHANG X YDONG LPENG Het al. Collusion-aware privacy-preserving range query in tiered wireless sensor networks[J]. Sensors201414(12): 23905-23932. DOI: 10.3390/s141223905 .

[15]

戴华, 杨庚, 肖甫, . 两层传感网中能量高效的隐私保护范围查询方法[J]. 计算机研究与发展201552(4): 983-993. DOI: 10.7544/issn1000-1239.2015.20140066 .

[16]

DAI HYANG GXIAO Fet al. An energy-efficient and privacy-preserving range query processing in twotiered wireless sensor networks[J]. Journal of Computer Research and Development201552(4): 983-993. DOI: 10.7544/issn1000-1239.2015.20140066(Ch ).

[17]

DAI HYE Q QYANG Get al. CSRQ: Communication-efficient secure range queries in two-tiered sensor networks[J]. Sensors201616(2): 259. DOI: 10.3390/s16020259 .

[18]

陈军. 无线传感器网络启发式分簇拓扑控制方法[J]. 科学技术与工程201818(19): 94-99. DOI: 10.3969/j.issn.1671-1815.2018.19.015 .

[19]

CHEN J. Heuristic clustering topology control of wireless sensor networks[J]. Science Technology and Engineering201818(19): 94-99 (Ch). DOI: 10.3969/j.issn.1671-1815.2018.19.015 .

[20]

李睿, 林亚平, 易叶青, . 两层传感器网络中隐私与完整性保护的范围查询协议[J]. 计算机学报201336(6): 1194-1206. DOI: 10.3724/SP.J.1016.2013.01194 .

[21]

LI RLIN Y PYI Y Qet al. A privacy and integrity preserving range query protocol in two-tiered sensor networks[J]. Chinese Journal of Computers201336(6): 1194-1206. DOI: 10.3724/SP.J.1016.2013.01194(Ch ).

[22]

SU NZHANG YLI M Y. Research on data encryption standard based on AES algorithm in Internet of Things environment[C]//2019 IEEE 3rd Information Technology, Networking, Electronic and Automation Control Conference (ITNEC). New York: IEEE Press, 2019: 2071-2075. DOI: 10.1109/ITNEC.2019.8729488 .

[23]

彭巧, 田有亮. 基于多线性Diffie-Hellman问题的秘密共享方案[J]. 电子学报201745(1): 200-205. DOI: 10.3969/j.issn.0372-2112.2017.01.027 .

[24]

PENG QTIAN Y L. A secret sharing scheme based on multilinear Diffie-Hellman problem[J]. Acta Electronica Sinica201745(1): 200-205. DOI: 10.3969/j.issn.0372-2112.2017.01.027(Ch ).

[25]

LIN H YTZENG W G. An efficient solution to the millionaires’ problem based on homomorphic encryption[C]//Applied Cryptography and Network Security. Berlin: Springer, 2005: 456-466. DOI: 10.1007/11496137_31 .

AI Summary AI Mindmap
PDF (2373KB)

0

访问

0

被引

详细

导航
相关文章

AI思维导图

/