层级型无线传感网络内节点间数据进行安全传输的方法

文档序号:7860812阅读:261来源:国知局
专利名称:层级型无线传感网络内节点间数据进行安全传输的方法
技术领域
本发明属于无线传感网络内数据安全技术领域,具体涉及一种层级型无线传感网络内节点间数据进行安全传输的方法。
背景技术
1996年,美国UCLA大学的William J Kaiser教授向DARPA提交的“低能耗无线集成微型传感器”揭开了现代WSN网络的 序幕。1998年,同是UCLA大学的Gregory J Pottie教授从网络研究的角度重新阐释了 WSN的科学意义。无线传感网巨大的应用价值引起了商业界、工业界、军事界和学术界的极大关注。2003年,美国MIT《技术评论》杂志评价无线传感网为十大未来新型技术的第一项,《今日防务》更预测WSN的发展将会引起军事领域内技术和战争的一场革命。早在20世纪90年代,针对WSN的研究已经开始展开。2003年,在美国自然科学基金委员会(NSF)针对无线传感网制定的长远研究计划的支持下,麻省理工大学,加州大学伯克利分校等都开展了对无线传感网的关键技术和基础理论的研究。我国对无线传感网的研究几乎与发达国家同步,在99年中科院发布的“信息与自动化领域研究报告”中首次正式将无线传感网作为五大重点项目之一。在2006年初发布的《国家中长期科学与技术发展规划纲要》确定的3个信息技术前沿项目中有两个是WSN领域的。安全是无线传感网中很关键的一个课题,尤其当无线传感网应用于军事领域,传感器被部署于野外时。若传感器被捕获,其中很多关键信息将被敌手捕获、篡改、伪造,这将严重威胁个人乃至国家的安全。无线传感网的安全问题主要包括数据融合、入侵检测、路由安全、密钥管理、加密和认证算法等。在无线传感网的安全机制中,密钥的安全性是基础,相应的密钥管理是传感器网络安全中最基本的问题。实际上,认证问题也是无线传感网中的一个重要问题,认证密钥(Authentication key)和通信密钥(session key)同属于无线传感网中密钥管理的对象实体,前者保障了认证安全,后者直接为节点间的加解密安全通信提供服务。目前,国内外众多学者对无线传感网安全涉及的各方面研究都很多,尤其是如何采用各种算法实现高效的无线传感网的密钥管理的研究很广泛,很深入。且无线传感网密钥管理的研究主要集中在通信密钥的预分配和管理上,即密钥材料在节点部署之前的预分配以及节点部署到位之后通信密钥的协商生成。而对安全认证和认证密钥的研究比较薄弱,将两者结合在一起的研究也很薄弱。目前大多数无线传感网安全方面的研究主要是专门针对密钥管理方案的以及如何采用更好的加密算法。特别地均涉及到密钥预分配管理方案,针对现有的密钥管理方案中关于安全性、密钥连通性、存储消耗等方面表现的不足,提出的各种安全有效的密钥管理方案。对于无线传感网的认证方面的研究也日益增多,主要是对认证机制的研究,但是将认证与加密结合在一起并且应用于无线传感网安全中的研究比较薄弱。本发明因此而来
发明内容
本发明目的在于提供一种层级型无线传感网络内节点间数据进行安全传输的方法,解决了现有技术中无线传感网安全问题突出,现有的密钥管理方案中关于安全性、密钥连通性、存储消耗等方面表现的不足等问题。为了解决现有技术中的这些问题,本发明提供的技术方案是一种层级型无线传感网络内节点间数据进行安全传输的方法,所有节点按LANCH规则分簇,包括簇头节点和簇头节点管辖的普通节点,所述簇内节点间直接进行数据通信,簇间节点通过各自的簇头节点进行数据通信,其特征在于所述方法包括层级型无线传感网络内节点先进行密钥预分配,然后判断发送节点与接收节点的关系进行数据传输的步骤,其中簇内节点通过密钥预分配得到的共享密钥或路径密钥加密进行信息传输;所述簇间节点进行数据通信按照如下步骤进行(I)发送节点根据与发送节点所在簇的簇头节点的共享密钥对信息加密,将信息 安全传送给发送节点的簇头节点;(2)发送节点的簇头节点对传来的信息解密,用时间戳作为密钥加密,再将密文与时间戳打乱,记录在CRC中后,把整个数据包传送给接收节点所在簇的簇头节点;(3)接收节点的簇头节点提取时间戳并检测,若检测合格则将数据包解密,通过与接收节点的共享密钥加密后安全传送给接收节点,接收节点解密得到发送节点传送的数据。优选的,所述方法中簇内节点发送节点和接收节点在共享密钥发现阶段没有找到共享密钥时,则通过两者的簇头节点建立路径密钥,通过路径密钥加密数据后进行数据传输。优选的,所述方法中密钥预分配包括以下步骤I)根据节点部署构造密钥池,然后根据分簇信息进行BIKPS密钥预分配,构建以密钥池为根节点,簇头节点为分支,簇头节点内普通节点为叶子节点的密钥管理树;2)将密钥池分成与簇头节点数目相同的密钥组,每密钥组的密钥个数根据簇头节点的邻居节点进行确定;3)与簇头节点相应的簇内的普通节点从相应密钥组中选取若干个密钥存入节点的存储器里,且保证簇内每一个普通节点与簇头节点的共享密钥不同。优选的,所述方法还包括节点进行密钥预分配后以及数据传输之前进行节点认证的步骤。优选的,所述方法中当新节点加入时,选择一个簇头节点为新节点分配一个与簇头的共享密钥,同时新节点在对应的密钥组内抽取若干个密钥预置该节点的存储器里;然后新节点通过将其与簇头的共享密钥ID发送给簇头节点,如果簇头节点在它的共享密钥链中能够找到该密钥的ID,则将该普通节点的ID增加到簇头的ID表中,并在簇内进行广播,簇内其余节点收到广播消息后与新节点进行建立共享密钥连接;簇外其他节点通过簇头节点与新节点建立路径。优选的,所述方法中当进行普通节点删除时,簇头节点将待删除普通节点的ID在其ID表中进行删除,同时删除与待删除普通节点的共享密钥,并发送广播消息通知簇内的其余节点,然后进行普通节点的删除;当其它节点收到广播消息后,删除与该节点的共享密钥。
相对于现有技术中的方案,本发明的优点是本发明技术方案提供了一种层级型无线传感网络内节点间数据进行安全传输的方法,所有节点按LANCH规则分簇,包括簇头节点和簇头节点管辖的普通节点,所述簇内节点间直接进行数据通信,簇间节点通过各自的簇头节点进行数据通信,包括层级型无线传感网络内节点先进行密钥预分配,然后判断发送节点与接收节点的关系进行数据传输的步骤,其中簇内节点通过密钥预分配得到的共享密钥或路径密钥加密进行信息传输;簇间节点通过簇头节点加密后进行信息传输。通过密钥预分配实现了层级型无线传感网中节点的安全数据通信,更有选的,将节点身份认证与节点数据加密结合,增强安全性。


下面结合附图及实施例对本发明作进一步描述图I为层级型无线传感网络内节点分布图。
图2为层级型无线传感网络内节点间数据进行安全传输中数据的加密算法流程图。图3为层级型无线传感网络内节点的节点认证流程图;图4为层级型无线传感网络内节点间数据进行安全传输的系统架构图;图5为层级型无线传感网络内节点间数据进行安全传输的方法流程图。
具体实施例方式以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规实验中的条件。实施例如图I所示,本实施例针对无线传感网中节点间通信存在的安全问题,提出一种无线传感网认证与加密的安全系统。层级型无线传感网络内节点先进行密钥预分配,然后判断发送节点与接收节点的关系进行数据传输的步骤,其中簇内节点通过密钥预分配得到的共享密钥或路径密钥加密进行信息传输;所述簇间节点进行数据通信按照如下步骤进行(I)发送节点根据与发送节点所在簇的簇头节点的共享密钥对信息加密,将信息安全传送给发送节点的簇头节点;(2)发送节点的簇头节点对传来的信息解密,用时间戳作为密钥加密,再将密文与时间戳打乱,记录在CRC中后,把整个数据包传送给接收节点所在簇的簇头节点;(3)接收节点的簇头节点提取时间戳并检测,若检测合格则将数据包解密,通过与接收节点的共享密钥加密后安全传送给接收节点,接收节点解密得到发送节点传送的数据。本安全系统进行数据安全传输方法的具体步骤如下( I)首先节点分簇并进行BIKPS密钥预分配所有节点按LANCH规则分簇,以簇头为中心形成各个不同的簇,簇内直接通信,簇间的通信则通过簇头,通过多跳的方式到达目的节点。分簇后的节点的分布如图I所示。
BIKPS密钥预分配在节点部署之前,先构造一个密钥池,根据分簇信息进行密钥预分配,建立密钥管理树实现对网络安全通讯的密钥管理树。可由一个远程控制设备管理网络,根据不同级别的簇头,将传感器网络逐级划分成不同的分组,每一分组由一个簇头和一定数量的传感器节点组成,从而形成一棵以密钥池S为根节点,簇头为分支,传感器节点为叶子节点的密钥管理树。利用该密钥管理树,进一步形成了总体集中式和局部分布式相结合的网络安全通讯格局。将密钥池按需求进行分成与簇头数目相同的M组,每组的密钥个数可根据簇头的邻居节点进行确定。然后簇内的节点从相应密钥组中按一定规则选取η个密钥 存入节点的存储器里,且簇内每一个传感器节点与簇头的共享密钥不同,从而在簇头与该簇内的所有节点间建立了安全的通信链路。对于不在同一簇内的两个节点,它们通过所在簇的簇头进行安全的数据传送。(2)节点认证初始化、注册与数据加密I、节点认证初始化选择一个随机数Sm作为簇头节点或系统认证中心的私钥,并计算其公钥Pca=ScaG0 公开(Ε,P,G,n,PJ。2、节点注册过程①普通节点选择一个随机数X,计算V=xG,然后将h (ID)与V传送给簇头节点或CA ;②簇头节点或CA选择一个随机数k,然后计算普通节点的公钥Pu= (xu,yu) =V+ (k-h (ID)) Pca及w=kSM+xu (mod p),接着簇头节点或CA把公钥Pu与w传送给普通节点;③普通节点收到Pu与w后计算自己的私钥su=w+x (mod p),并用以下式子检验公钥的有效性SuG〈=Pu+xuG+h (ID) Pca (* )。若验证上述*式成立,则用户的私钥为Su,公钥为Pu。Pu与Su带有簇头节点或CA的签名,是无法被攻击者伪造的。其中ID为用户身份标志,h为单向散列函数。(3)节点安全通信链路的构建、节点的加入和退出以及节点数据加密I、节点安全通信链路的构建簇内两个节点之间的数据传送,通过密钥预分配得到的共享密钥或路径密钥加密进行信息传送。预分配得到共享密钥key的两个节点a和b,它们之间的传送过程表示为(M表不原文,C表不密文)(M) key —C, (C) key —Μ。若节点a和节点b在共享密钥发现阶段没有找到共享密钥时,则通过簇头A建立路径密钥,实现数据的安全传送,其加密过程表示为(M) key — C, (C) key — Μ,(C) key — M, (M) key — C。簇间簇间的两个节点a和b,节点a首先根据与所在簇的簇头A的共享密钥对信息加密,将信息安全传送给簇头A,簇头A先对传来的信息解密,用时间戳作为密钥加密,再将密文与时间戳打乱,记录在CRC中后,把整个数据包传送给节点b所在簇的簇头B,簇头B提取时间戳并检测,若检测合格则将数据包解密,通过与节点b的共享密钥加密后安全传送给节点b,节点b解密得到节点a传送的数据,整个传送过程都是安全的。其中簇头与簇头间的传送过程如下(Em表示时间戳嵌入算法,Ex表示时间戳提取算法)(M)Em—C,(C)Ex — M2、节点的加入和退出 加入为新节点分配一个与簇头的共享密钥,同时新节点在对应的密钥组内抽取η-I个密钥预置该节点的存储器里。新节点通过将其与簇头的共享密钥ID发送给簇头,如果簇头在它的共享密钥链中能够找到该密钥的ID,则将该传感器节点的ID增加到簇头的ID表中,并在簇内进行广播,其余节点收到广播消息后与新节点进行建立共享密钥连接,不能连接的节点通过簇头建立路径。删除对于要求退出的传感器节点,簇头会将该传感器节点的ID在其ID表中进行删除,同时删除与该节点的共享密钥,并发送广播消息通知簇内的其余节点,其它节点收到广播消息后,删除与该节点的共享密钥。3、节点数据加密算法的原理包括密钥初始化算法和加密生成算法两大部分在初始化过程中,密钥的主要功能是利用密钥key将sBox搅乱,并保证sBox的每个元素都得到处理,且sBox的搅乱是随机的;不同的sBox在经过伪随机子密码生成算法的处理后可以得到不同的子密钥序列,并且该序列是随机的。再将得到的子密码和明文进行异或运算,得到密文。加密算法的流程如图2所示。(4)节点认证过程及认证通过后对数据进行解密a、节点认证过程普通节点注册成功后,若要访问系统,则应向系统簇头节点或CA进行身份认证,具体步骤如下第一,普通节点将h (ID)及其公钥Pu传送给簇头节点或CA ;第二,普通节点选择一个随机数r,计算T=rG, y=r+suh(ID) (mod p),然后将T和I送给簇头节点或CA ;第三,簇头节点或CA计算Vu=Pu+xu G+h (ID) Pca,然后验证yG_h (ID) VU<=T,若验证成功,则簇头节点或CA接受普通节点所宣称的身份,反之拒绝承认普通节点身份,拒绝与该节点进行通信。b、节点数据解密解密过程和加密过程一致,将密文再加密一次,就得原文了。进行具体实施时主要由A、B两个部分,其具体步骤如下A.节点的认证过程普通节点注册成功后,若要访问系统,则应向系统簇头节点或CA进行身份认证,具体步骤如下第一,普通节点将h (ID)及其公钥Pu传送给簇头节点或CA ;第二,普通节点选择一个随机数r,计算T=rG, y=r+suh(ID) (mod p),然后将T和I送给簇头节点或CA ;第三,簇头节点或CA计算Vu=Pu+xu G+h (ID) Pca,然后验证yG_h (ID) Vu〈=T,若验证成功,则簇头节点或CA接受普通节点所宣称的身份,反之拒绝承认普通节点身份,拒绝与该节点进行通信。节点认证流程如图3所示。无线传感网中的普通节点首先需要进行认证注册,若注册成功,则该节点进行数据采集并对数据进行加密;若注册失败,则无需该过程。普通节点与簇节点或认证中心间进行数据通信时,需要先进行认证操作,若认证成功,则对发送方节点的数据进行解密,从而完成节点间数据通信过程;若认证失败,拒绝接受数据(即不对数据进行解密操作)。B.节点数据加密与解密在初始化过程中,密钥的主要功能是利用密钥key将 sBox搅乱,并保证sBox的每个元素都得到处理,且sBox的搅乱是随机的;不同的sBox在经过伪随机子密码生成算法的处理后可以得到不同的子密钥序列,并且该序列是随机的。再将得到的子密码和明文进行异或运算,得到密文。试验结果如下-----------------------Key initialization---------------------------OxOl 0x02 0x04 0x08 0x10 0x20 0x40 0x80 Oxlb 0x360x6c 0xd8 Oxab 0x4d 0x9a 0x2f 0x5e Oxbc 0x63 0xc6簇头I 的密钥0x01 0x02 0x04 0x08 0x10 0x20簇内节点I的密钥1 2 4簇内节点2的密钥8 10 20簇头2 的密钥0x01 0x02 0x04 0x08 0x10 0x20簇内节点I的密钥40 80 Ib簇内节点2的密钥36 6c d8------------The initialization of nodes' authentication--------------椭圆曲线的参数如下(以十进制形式显示)有限域P: 1320950537079729951234527879821475901766317450956692084071739曲线参数A:804610981 曲线参数 B: 1080999782783曲线G 点 X 坐标 GX: 590695663 曲线 G 点 Y 坐标 GY: 14356404085600私钥Sca:340246279292667672047337762126386045473公钥Pca 坐标 Pcax:1298651721101813931959545711790098013930613975832745432092274公钥Pca 坐标 Pcay:482704802630718915185380955648753423689626856634678788442167-------------------------The register of nodes-----------------------节点a:Register Success!节点b:Register Success!----------------------The Encryption of node,s data-----------------Plain text: ConnelCipher text:5F7D77586B0E----------------------The nodes' authentication---------------------节点a:Authentic Success!
---------------------The Decryption of node's data-------------------Plain text:Connel-------------------------a节点数据通信成功!------------------------------------------------The Encryption of node's data-----------------Plain text: ConnelCipher text:5F7D77586B0E----------------------The nodes' authentication---------------------节点b:Authentic Failed! --------------------------b节点认证失败!-----------------------------实验结果说明如上所示,节点a和节点b均注册成功,但是在节点通信的过程中,a节点认证成功,故其可以与簇头节点进行数据的解密,保证数据的安全通信;而b节点认证失败,故簇头节点不接收其数据,进而不进行数据的解密。本方法实现了无线传感网中节点的安全数据通信,对于解决无线传感网安全问题,提出了一种改进的安全方案,即将节点身份认证与节点数据加密结合,增强安全性。上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
权利要求
1.一种层级型无线传感网络内节点间数据进行安全传输的方法,所有节点按LANCH规则分簇,包括簇头节点和簇头节点管辖的普通节点,所述簇内节点间直接进行数据通信,簇间节点通过各自的簇头节点进行数据通信,其特征在于所述方法包括层级型无线传感网络内节点先进行密钥预分配,然后判断发送节点与接收节点的关系进行数据传输的步骤,其中簇内节点通过密钥预分配得到的共享密钥或路径密钥加密进行信息传输;所述簇间节点进行数据通信按照如下步骤进行 (1)发送节点根据与发送节点所在簇的簇头节点的共享密钥对信息加密,将信息安全传送给发送节点的簇头节点; (2)发送节点的簇头节点对传来的信息解密,用时间戳作为密钥加密,再将密文与时间戳打乱,记录在CRC中后,把整个数据包传送给接收节点所在簇的簇头节点; (3)接收节点的簇头节点提取时间戳并检测,若检测合格则将数据包解密,通过与接收节点的共享密钥加密后安全传送给接收节点,接收节点解密得到发送节点传送的数据。
2.根据权利要求1所述的方法,其特征在于所述方法中簇内节点发送节点和接收节点在共享密钥发现阶段没有找到共享密钥时,则通过两者的簇头节点建立路径密钥,通过路径密钥加密数据后进行数据传输。
3.根据权利要求1所述的方法,其特征在于所述方法中密钥预分配包括以下步骤 1)根据节点部署构造密钥池,然后根据分簇信息进行BIKPS密钥预分配,构建以密钥池为根节点,簇头节点为分支,簇头节点内普通节点为叶子节点的密钥管理树; 2)将密钥池分成与簇头节点数目相同的密钥组,每密钥组的密钥个数根据簇头节点的邻居节点进行确定; 3)与簇头节点相应的簇内的普通节点从相应密钥组中选取若干个密钥存入节点的存储器里,且保证簇内每一个普通节点与簇头节点的共享密钥不同。
4.根据权利要求3所述的方法,其特征在于所述方法还包括节点进行密钥预分配后以及数据传输之前进行节点认证的步骤。
5.根据权利要求3所述的方法,其特征在于所述方法中当新节点加入时,选择一个簇头节点为新节点分配一个与簇头的共享密钥,同时新节点在对应的密钥组内抽取若干个密钥预置该节点的存储器里;然后新节点通过将其与簇头的共享密钥ID发送给簇头节点,如果簇头节点在它的共享密钥链中能够找到该密钥的ID,则将该普通节点的ID增加到簇头的ID表中,并在簇内进行广播,簇内其余节点收到广播消息后与新节点进行建立共享密钥连接;簇外其他节点通过簇头节点与新节点建立路径。
6.根据权利要求3所述的方法,其特征在于所述方法中当进行普通节点删除时,簇头节点将待删除普通节点的ID在其ID表中进行删除,同时删除与待删除普通节点的共享密钥,并发送广播消息通知簇内的其余节点,然后进行普通节点的删除;当其它节点收到广播消息后,删除与该节点的共享密钥。
全文摘要
本发明公开了一种层级型无线传感网络内节点间数据进行安全传输的方法,所有节点按LANCH规则分簇,包括簇头节点和簇头节点管辖的普通节点,所述簇内节点间直接进行数据通信,簇间节点通过各自的簇头节点进行数据通信,包括层级型无线传感网络内节点先进行密钥预分配,然后判断发送节点与接收节点的关系进行数据传输的步骤,其中簇内节点通过密钥预分配得到的共享密钥或路径密钥加密进行信息传输;簇间节点通过簇头节点加密后进行信息传输。该方法实现了层级型无线传感网中节点的安全数据通信。
文档编号H04W84/18GK102892113SQ20121035060
公开日2013年1月23日 申请日期2012年9月20日 优先权日2012年9月20日
发明者陈国庆, 黄菊 申请人:苏州两江科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1