无线传感器网络中基于校验码的数据可靠性保护方法

文档序号:9353343阅读:741来源:国知局
无线传感器网络中基于校验码的数据可靠性保护方法
【技术领域】
[0001] 本发明属于无线传感器网络数据安全领域,具体涉及一种无线传感器网络中基于 校验码的数据可靠性保护方法。
【背景技术】
[0002] 无线传感器网络(WirelessSensorNetwork,WSN)是由大量传感器节点组成,协 作地感知、采集、处理和传输数据,完成各项预定任务。网络中由于能量有限、环境变化、冲 突干扰等众多因素都可能导致无法获得可靠数据。但无线传感器网络主要以数据为中心, 通过对数据的分析,得到事件处理结果,因此数据的准确和可靠与否将直接影响是否做出 正确决策。如何针对无线传感器网络构建一个可靠性模型是保证无线传感器网络安全需要 解决的首要问题。
[0003] 针对无线传感器网络所具有的可靠性问题,现有的技术主要有以下几种方案:
[0004]PurohitN,VaradwajP,TokekarS.Reliabilityanalysisofwirelesssensor network[C]//Proceedingof16thIEEEInternationalConferenceonNetworks,2008. 假定了一个具有n个相同传感器节点和一个Sink节点的无线传感器网络,每个传感器节点 都配有X只传感器。文中定义一个时间A,表示至少一个传感器节点的至少一只传感器可以 感知环境并可以将感知到的数据通过Sink节点传输到服务器,事件A发生的概率就是该无 线传感器网络的可靠性。不过此文只考虑了无线传感器网络节点间的连通性,而没有考虑 到无线传感器网络的覆盖下问题。
[0005] ShresthaA,LiudongX,HongL.Modelingandevaluatingthereliability ofwirelesssensornetworks[C]//ProceedingsofReliabilityandMaintainability Symposium,RAMS' 07,2007:186-191.考虑了一种簇结构的无线传感器网络,定义无线传感 器网络的可靠性是监控区域内的每一个点至少被K个节点覆盖,并且,这K个节点中的每一 个都至少存在一条通往Sink节点的路径概率。在可靠模型建立过程中考虑了共因失效因 素,使用了简化二元决策图方法。虽然本人考虑了无线传感器网络的节点间连接线和节点 覆盖性,但最终只是给出了基于覆盖簇结构的无线传感器网络可靠性模型。
[0006] YousefiH,MizanianK,JahangirAH.Modelingandevaluatingthe reliabilityofcluster-basedwirelesssensornetworks[C]//Proceedingof 24thIEEEInternationalConferenceonAdvancedInformationNetworkingand Application(AINA),2010 :827-834.建立基于K节点覆盖、节点间连接失效和路径失效的 可靠性模型。文中定义无线传感器网络的可靠性是Sink节点成功探测事件的概率,也就是 各个簇头节点探测事件的概率与簇头节点聚合的数据成功传输到Sink节点的概率乘积, 而簇头节点探测事件本身是与覆盖有关的函数,被定义为源簇是K节点覆盖,并且簇头成 功收到至少K个包的概率。文中分别求出了以上3个部分的函数表达式,并最终得到基于 簇的无线传感器网络可靠性模型。
[0007] 上述方法可以有效地无线传感器网络的可靠性,提高网络的安全性,不过针对具 体数据很难保证安全,但在实际运用中很难做到低消耗和低延时。

【发明内容】

[0008] 本发明的主要目的在于克服现有技术的缺点与不足,提供一种无线传感器网络中 基于校验码的数据可靠性保护方法,既能通过水印技术准确提供数据完整性,又能利用校 验码根据数据实际信任度验证数据可靠性,从而更加精确地了解数据的正确性,且数据信 任度可接受范围内,能减少网络开销,起到节约耗能的作用。
[0009] 本发明的目的通过以下的技术方案实现:一种无线传感器网络数据中基于校验码 的数据可靠性保护方法,其特征在于,所述的无线传感器网络中设有若干个传感器节点,所 述传感器节点分为基站节点和源节点,均在其可通信范围内,基站节点中预设信任度阈值Y 及源节点中预存数据特征码;
[0010] 一、数据生成步骤如下:
[0011] 1)每个源节点向其周围采集数据;
[0012] 2)根据采集数据,以每两个字符为一个字符分组的方式进行分组,并将采集数据 与预存数据特征码对比,得其相应1位重要程度布尔值(1代表重要、〇代表不重要);
[0013] 3)根据采集数据,以去除每字符所对应8位二进制数首位冗余0的方式进行优化, 即每个字符表示为7位二进制数;
[0014] 4)根据每个字符分组,将其相应1位重要程度布尔值存于分组后面,生成15位字 符分组二进制数串group_binstr;
[0015] 5)根据分组二进制数串group_binstr,将所有字符分组二进制数串合并,生成字 符二进制数串char_binstr=Egroup_binstr;
[0016] 二、校验码生成步骤如下:
[0017] 1)根据步骤一中生成的字符分组二进制数串group_binstr,利用校验数计算公 式,可得每个字符分组所相应的校验数groupchecknum。所述校验数计算公式如下:
[0018]
[0019] 其中groupchecknum表示字符分组二进制数串所相应的校验数,Weight表示字符 权值,CharNum表示校验数集;
[0020] 2)根据每个字符分组所相应的校验数groupchecknum,以每个校验数用相应4位 二进制数替换的方式,生成相应校验码二进制数串groupcheck_binstr;
[0021] 三、水印生成步骤如下:
[0022] 1)根据步骤一中的字符分组二进制数串group_binstr和步骤二中相应的校验码 二进制数串groupcheck_binstr,合并成链接二进制数串mergegroup_binstr={group_ binstr,groupcheck_binstr};
[0023] 2)根据链接二进制数串mergegroup_binstr,将所有字符分组链接二进制数串 mergegroup_binstr合并,生成合并二进制数串merge_binstr=Emergegroup_binstr;
[0024] 3)根据合并二进制数串merge_binstr,利用哈希函数F(merge_binstr)生成16 位水印信息二进制数串wminfo_binstr;
[0025] 四、字符转换步骤如下:
[0026] 1)根据步骤三中合并二进制数串merge_binstr和步骤三中水印信息二进制数串 wminfo_binstr,合并成数据二进制数串data_binstr={merge_binstr,wminfo_binstr};
[0027] 2)根据数据二进制数串data_binstr,以在其尾部补足{8-strlen(data_binstr) M0D8}个1的方式,生成安全二进制数串security_binstr;
[0028] 3)根据安全二进制数串security_binstr,以每8位二进制数转换为1个无符号 字符方式,生成安全字符串security_uchar;
[0029] 五、数据分离步骤如下:
[0030] 1)基站节点接收每个源节点发送的安全字符串,将其转换为接收二进制数串 receive_binstr;
[0031] 2)根据接收二进制数串receivejDinstr,利用数据分离算法,可得分离字符二进 制数串sepchar_binstr,分离重要程度二进制数串sepimport_binstr,分离校验码二进制 数串sepcheck_binstr及分离水印信息二进制数串sepwminfo_binstr。其中数据分离算法 如下:
[0032]
[0033]
[0034] 3)根据分离字符二进制数串sepchar_binstr,分离重要程度二进制数串 sepimport_binstr和分离校验码二进制数串sepcheck_binstr,合并成分离数据二进制数 串sepdata_binstr;
[0035] 4)根据分离数据二进制数串sepdata_binstr,利用哈希函数F(sepdata_binstr) 生成16位数据水印二进制数串datawminfo_binstr;
[0036] 六、数据校验步骤如下:
[0037] 1)根据步骤五中数据水印二进制数串datawminfo_binstr和据步骤五中分离水 印信息二进制数串sepwminfo_binstr进行对比验证,若完全相同,则接收数据可靠无误, 否则接收数据不可靠有误;
[0038] 2)若接收数据无误,则根据步骤五中分离字符二进制数串sepchar_binstr,以在 每7位之前添加1位0的方式还原字符ASCII码,并由此还原
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1