论文部分内容阅读
无线传感器网络在军事和明用领域具有广阔的应用前景。两层架构传感器网络具有良好的伸缩性、高效的查询处理以及更好地节约传感器节点的能量开销和空间开销等特点,被越来越多的大规模传感器网络所采用。然而,存储节点在网络中既负责网内数据的收集,又为sink提供查询服务,因此在敌对环境中更容易招致攻击。妥协的存储节点对网络产生重大威胁,如泄露传感器采集的敏感数据,伪造虚假的查询统计结果等。在两层传感器网络上设计一系列安全协议,保护数据的隐私以及查询统计结果的正确性是亟待解决的问题。本文围绕着保护数据隐私和查询统计结果正确性进行研究,主要工作包括以下几个方面:(1)提出了一种安全范围查询协议:VQuery。VQuery在保证存储节点能正确执行查询的同时能有效防止敏感数据与查询条件的泄露。为了保护数据的隐私性,提出了一种基于保序函数的隐私保护方案,该方案利用保序函数对节点采集的数据范围信息和查询条件进行编码,保证存储节点在不知道数据和查询条件真实内容的情况下正确地执行查询处理。为了保护查询结果的完整性,提出了一种称之为水印链的方案,该方案能有效检测查询结果的完整性。针对多维数据情况,提出了一种多维区间树的数据结构,该结构能有效表示多维数据,实现对多维数据查询结果的完整性认证。为了验证所提协议VQuery的有效性,本文与已有工作SafeQ, S&L方案进行了详细比较,结果表明VQuery比SafeQ_basic, SafeQ_bloom以及S&L方案具有更低的通信开销和存储开销。(2)提出了一种安全Top-k查询协议:SecTQ。SecTQ在保证存储节点正确执行查询的同时能有效防止敏感数据的泄露。为了保护数据的隐私性,首先将不同传感器采集的数据之间的直接比较转换成传感器采集的数据与sink提供的查询比较值进行比较,并提出了一种基于扰动多项式函数的隐私保护方案,该方案利用扰动函数对传感器节点采集的数据和sink计算的查询比较值进行编码,使存储节点在不知道数据和查询比较值真实内容的情况下正确地执行查询处理。为了保护查询结果的完整性,采用Merkle哈希树对查询结果的完整性进行认证。本文与Z&S方案进行了详细比较,结果显示SecTQ在保护数据隐私性的情况下,比Z&S方案具有更低的通信开销和存储开销。(3)提出了一种隐私保护的条件聚合协议。该协议使存储节点在不知道数据真实值的情况下对满足条件的数据进行聚合,防止存储节点对敏感信息的泄漏。本文提出了一种基于前缀成员确认和布鲁姆过滤器相结合的编码方法对数据和查询条件进行编码,实现存储节点在不知道数据真实值和查询条件真实值的情况下进行查询处理;采用同态加密技术对数据进行加密,使数据在不解密的情况下能进行聚合运算。进一步,根据传感器采集数据的特点,提出了一种基于代码表的数据压缩表示及传输方法,有效减小了传感器节点和存储节点之间的通信开销。分析和实验结果验证了所提方案的有效性。(4)提出了一种安全分类协议:SSC。SSC协议使存储节点可以在不知道分类规则真实值和待分类数据真实值的情况下进行正确分类。本文提出了一种茫然比较(Oblivious comparison)技术MHash,该技术使存储节点在既不知道sink节点数据的真实值也不知道传感器节点数据的真实值,并且传感器节点也不知道sink节点的数据真实值的情况下进行数据的比较,达到隐私保护的目的;基于MHash协议以及前缀成员确认技术,实现了在保护传感器采集的数据以及sink制定的分类规则的隐私的情况下进行分类。提出了一种十字邻居技术,该技术将传感器组织成一条链,并采用倒置布鲁姆过滤器技术将传感器节点的数据同步到其前驱节点上,然后采用排序方法将每一个节点的数据组织成一条链。sink利用该技术可以抽样检查存储节点分类统计结果的正确性。分析和实验结果验证了所提方案的有效性。(5)结合以上研究工作,本文设计并实现了一个两层结构传感器网络的安全查询系统。该系统集成范围查询、Top-k查询、聚合查询和分类统计等功能,为以后研究两层结构传感器网络中的安全协议提供了一个有效的算法验证平台。