[发明专利]一种无线传感器网络的分布式安全重编程方法有效
申请号: | 201110255917.2 | 申请日: | 2011-08-31 |
公开(公告)号: | CN102421094A | 公开(公告)日: | 2012-04-18 |
发明(设计)人: | 陈纯;卜佳俊;何道敬;赵志为;张学锋;尹明剑;高艺 | 申请(专利权)人: | 浙江大学 |
主分类号: | H04W12/04 | 分类号: | H04W12/04;H04W12/06;H04W84/18 |
代理公司: | 杭州求是专利事务所有限公司 33200 | 代理人: | 陈昱彤 |
地址: | 310027 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 无线 传感器 网络 分布式 安全 编程 方法 | ||
技术领域
本发明属于无线通信技术领域,特别是涉及到无线传感器网络中的重编程技术。
背景技术
大规模无线传感器网络已经日趋成熟,然而重编程技术的安全问题还没有得到有效的解决。现存的重编程协议是基于集中式的方法,即由基站通过多跳路由的方式将程序镜像发送到相应结点。这种方法在基站不能工作或者基站无法连接到结点的情况下可靠性会大大降低。同时由于传输路径太长,导致集中式方法效率不高,扩展性弱,易于被攻击。更重要的是,很多无线传感器网络没有配置基站或者难以配置基站。对于这样的网络,被授权的网络用户能够进行分布式重编程显得十分必要。
发明内容
本发明的目的在于提供一种无线传感器网络的分布式安全重编程方法。
网络拥有者事先将用户的重编程权限和私钥通过安全的信道分配给该用户,且网络拥有者将系统公共参数装载到所有传感器节点上,所述私钥基于用户的重编程权限和身份信息生成;当用户进入无线传感器网络对目标传感器节点进行重编程时,用户为其新的传感器程序镜像建立重编程数据包并将该重编程数据包发送给所有目标传感器节点;各目标传感器节点在收到所述重编程数据包之后根据装载到自身的所述系统公共参数对所述新的传感器程序镜像进行验证:如果所述新的传感器程序镜像通过验证,则相应的目标传感器节点接收并装载所述新的传感器程序镜像,如果验证失败,则将所述重编程数据包丢弃。
进一步地,所述“用户为其新的传感器程序镜像建立重编程数据包并将该重编程数据包发送给所有目标传感器节点”的方法如下:
所述用户将所述重编程数据包设为按先后顺序生成的一个以上的页数据包,其中,后一个生成的页数据包包含有前一个生成的页数据包的哈希值;接着在最后生成的页数据包的哈希值的基础上建立Merkle哈希树,再根据该Merkle哈希树生成初始页的页数据包;该用户将所述Merkle哈希树的根节点和新的传感器程序镜像的元数据组合在一起产生参数集,所述元数据包含新的传感器程序镜像的版本号和大小、以及所有目标传感器节点的身份集合;接着,该用户使用自己的私钥对所述参数集进行签名并将签名所产生的签名信息和所述参数集一并发送给各目标传感器节点;然后,该用户向各目标传感器节点按页数据包的生成的先后顺序的逆序发送所有的所述页数据包。
进一步地,所述“各目标传感器节点在收到所述重编程数据包之后根据装载到自身的所述系统公共参数对所述新的传感器程序镜像进行验证”的方法如下:
目标传感器节点首先检验所述参数集的合法性及用户是否具有重编程权限:若所述参数集合法且所述用户具有重编程权限,则目标传感器节点使用所述系统公共参数对所述签名信息进行验证:
若所述签名信息合法,则按页数据包的生成的先后顺序的逆序对所述页数据包进行验证:其中,初始页的页数据包是由目标传感器节点使用所述Merkle哈希树的根节点进行验证,其他页数据包是由目标传感器节点使用该页数据包的后一个生成的页数据包所包含的哈希值进行验证;如果一旦其中有一个页数据包未通过验证,则表明对所述新的传感器程序镜像的验证失败,直接放弃该新的传感器程序镜像;如果所述新的传感器程序镜像的所有页数据包通过了验证,则装载该新的传感器程序镜像。
与现有技术相比,本发明的优点是:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江大学,未经浙江大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110255917.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:不干胶标签及其在物流业务中的使用方法
- 下一篇:四通道票款包存入机