基于IPv6编址的无线传感器网络安全路由方法_3

文档序号:8490401阅读:来源:国知局
节点G收到确认消息后,将节点E加入自己的子节点,并标志相应比特位,返 回确认信息,负载消息为节点E的正式IP地址;
[0084]S26、节点E收到消息后,向其子孙节点发送自己新父节点的IP地址,由自己的子 孙节点自行更改IP地址;
[0085] S27、重复S22~S26,节点A为自己的每一个直接子节点选择新的父节点;
[0086] S28、对于节点A未被认领的直接子节点F,则通知子节点F断开网络,自行重新加 入网络。
[0087] 消息传播(单播和组播)的安全路由的设计原则是:
[008引 (1)消息只能在父子关系的节点之间传播,不能在兄弟或者其他关系的节点中传 播;
[0089] (2)消息从源节点到目的节点的传播过程中,保证跳数最小;
[0090] (3)相同的消息从源节点到目的节点的传播过程中,不能折回。
[0091] 通过节点的IP地址可W很快地判断节点之间的逻辑关系。由于IP地址的ID为 32bit,因此将之分为8组,每组4bit,于是有:
[009引 (1)如果节点A和节点B的IP地址的ID号,有前m组(m<8)相同,且LN(A)= LN炬)-1 =m,则BGCD(A),A=抑炬);
[009引似如果节点A和节点B的IP地址的ID号,有前m组(m<8)相同,第m+1组不相 同,且后8-m组中,A全为0,B不全为0,则BGCS(A);
[0094] 做如果节点A和节点B的IP地址的ID号,有前m组(m<8)相同,第m+1组不相 同,且后8-m组中,A、B均不全为0,则FH(A,B) =AD(Ip),其中Ip的前m组与A(或B)相 同,后8-m组全为0。
[0095] 为了更好的描述密钥管理模型,做如下假设:
[0096] (1)节点在初始化阶段不会被捕获或受到攻击;
[0097](2)明文用Plain表示,密文用Ci地er表示,加密过程表示为E (Plain, Key),解密 过程表示为D (Ci地er, Key),其中Key为密钥;
[009引 (3)基站处于安全区域;
[0099] (4)每个节点预配置了哈希函数hash(X)。
[0100] 本发明采用如下的密钥管理方案:
[0101] 当网络初始化时,基站广播一个多项式函数f(x),网络中的每个节点在接收到 f(X)后,分别计算f(hash(ID)),作为自己和基站之间的共享密钥。
[0102] 当节点之间进行会话时,它们需要产生会话密钥,会话密钥由共享密钥产生。产 生过程如下;若节点A和基站的共享密钥是KeyA,节点B和基站的共享密钥是KeyB,A与 B需要进行通话,它们分别向基站提出请求获取共同的会话密钥,基站随机产生一个数r, 利用hash函数,计算SessionKey=hash(KeyAIIKeyBIIr),SessionKey就是A和B进 行通话所需要的会话密钥。基站计算E(SessionKey,KeyA),将会话密钥发送给A,计算 E(SessionKey,KeyB)将会话密钥发送给B。A、B用自己的共享密钥解密之后则拥有了会话 密钥。SessionKey的产生过程保证了只有A、B和基站知道会话密钥,攻击者即使在同一个 网络中也无法得知,保证了会话信息的安全性。会话密钥产生之后,A、B将SessionKey保 存在自己的内存中,在一定的时间内都使用同一会话密钥进行会话,不必每次都向基站申 请新的密钥,W便节省能耗。但同时为提高安全性,每一会话密钥都会设置生存时间,当会 话密钥到达生存时间,A、B进行通话时需要再次向基站申请新的会话密钥。
[0103]当有节点离开网络或者被检测出叛变后,需要删除与其相关的所有密钥。基站删 除节点对应的密钥后,还需要广播通知其他节点,其他节点若存在与之共有的会话密钥,贝U 删除之。
[0104] 不仅会话密钥在一定时间之后需要更新,共享密钥也不能一成不变,尤其是在网 络节点受到俘获攻击之后。共享密钥的更新则是基站广播随机数P,各个节点接收到随机数 P后,计算Keynew=hash(Keyold+p)更新共享密钥,其中Keyold是旧的共享密钥,Keynew 是新的共享密钥。选择hash算法一方面是因为hash算法的扩展性较好,将很小的变化映 射成很大的变化,另一方面hash算法的单向性保证了网络的后向私密性。
[0105] 实施例1
[0106] 假设该次会话为单播,拓扑如图2,节点7发送消息给节点8,属于S41 (4)的情况:
[0107]步骤1;首先找到节点7和8的最低层祖先节点1,执行Send(1,3)和Send(3, 8), 该样节点3和节点8是直接父子关系了;然后节点1显然属于FS(7),再根据步骤S41 (3)先 执行Send化2)再执行Send(2, 1),那么2和1也是父子关系了,从而建立了节点7到节点 8 的路由"7-2-1-3-8"。
[0108] 步骤2;建立会话时执行密钥管理方案,节点7和节点8拥有一对会话密钥Key用 于秘密通信并认证双方的身份。
[0109] 步骤3 ;节点7产生随机数r,并记录当前的时间戳T。节点7计算Ci地er= E(MessageIIr, Key)和MAC=hash(MessageIIrIIT)。
[0110] 步骤4 ;节点7将Ci地erIiMACiIt通过多跳单播发送给节点8。
[0111] 步骤5 ;节点8收到消息后,作如下运算;进行解密运算D(Ci地er,Key),得到 (Message, r);节点8比较MAC是否与hash(Message I |r I I T)相等,如果相等且时间戳T有 效,则接收之,否则丢弃。
[011引 实施例2
[0113] 假设该次会话为组播,拓扑如图3,需执行Send(2, {1,5, 7, 9, 12, 13, 16}),步骤如 下:
[0114] 步骤1 ;节点2首先要建立和节点集合(1,5, 7, 9, 12, 13, 16}的路由。
[0115] 步骤2 ;对于节点2的直接子节点7,执行SencK2, 7)即可,对于节点2的直接父节 点1,执行Send(2, 1)即可。
[0116]步骤3 ;对于节点2的子孙节点{12, 13},执行Send(2, 6)节点2将信息传给节点 6,分别执行SencK6,和SencK6,蝴发现了所有父子关系6和12W及6和13,节点6将 信息传给节点12,节点1。
[0117] 步骤4;对于节点5,节点2和其有最低层的共同祖先1,因此很容易就执行到 Send(l,5)父子关系成立,显然又有SencK2,l)父子关系成立,所W有路由"2-1-5";对于 节点9,节点2和其有最低层的共同祖先1,因此很容易就执行到SencKl,3),Send(3, 9)父 子关系成立,其中9GCS(3)显然又有SencK2,l)父子关系成立,所W有路由"2-1-3-9"; 对于节点16,节点2和其有最低层的共同祖先1,因此很容易就执行到SencKl,5)和 Send(5, 16),其中16GCS巧),继续递归可得到SencK5, 11)和SendQl, 16)父子关系成立, 其中16GCS(ll),显然又有SencK2, 1)父子关系成立,所W有路由"2-1-5-11-16"。
[0118] 步骤5 ;建立会话时执行密钥管理方案,节点2和集合{1,5, 7, 9, 12, 13, 16}中的 每一个节点拥有一对会话密钥Key用于秘密通信并认证双方的身份;
[0119] 步骤6 ;节点2产生随机数r,并记录当前的时间戳T。节点2计算Ci地er= E(MessageIIr,Key)和MAC=hash(MessageIIrIIT);
[0120] 步骤7 ;节点2将Ci地erMMACMT通过单跳或者多跳组播发送给集合 (1,5, 7, 9, 12, 13, 16}。
[012U步骤8 ;集合{1,5, 7, 9, 12, 13, 16}中的每一节点收到消息后,作如下运算进行解 密运算D(Ci地er,Ifey),得到(Message,!");集合{1,5,7,9,12,13,16}中的每一节点比较 MAC是否与hash(Message| |r| |T)相等,如果相等且时间戳T有效,则接收之,否则丢弃。 [0122] 本发明方案所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括 由W上技术特征任意组合所组成的技术方案。
【主权项】
1. 一种基于IPv6编址的无线传感器网络安全路由方法,其特征在于, Sink节点的全局路由前缀96bit位由人工分配,其剩余32bit位是ID位,全设置为0 ; 其余节点的全局路由前缀与Sink节点相同,对剩余32bit位ID进行IP地址编址:Sink节 点有0~15个子节点,子节点IP地址网络号的前l-4bit位分别为十六进制的1~F,其 余bit位为0 ;每个子节点又有0~15个二层子节点,二层子节点的IP地址网络号的前 l-4bit位与其父节点相同,5-8bit位分别为十六进制的1~F,其
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1