异构无线传感器网络预分配密钥管理方法与流程

文档序号:11657896阅读:343来源:国知局
异构无线传感器网络预分配密钥管理方法与流程

本发明涉及网络预分配密钥管理方法。



背景技术:

随着无线传感器网络的广泛应用,其安全问题也应运而生。无线传感器网络的安全机制包括安全路由、安全定位、拓扑管理、数据融合等。密钥管理是无线传感器网络安全的基础问题。自wsn安全引起人们的关注开始,同构wsn密钥管理就成为学者研究的热点;基本随机密钥预分配方案,简称e-g方案,实现简单,计算复杂度低且存储需求不高,但是由于该方案是基于概率的,所以网络安全性低,同时该方案出现密钥重复的可能性较大。chan等提出的q-composite方案是对e-g方案的改进,当网络中的受损节点数量较少时,该方案的抗毁性比e-g方案要好,但随着受损节点数量的增多,该方案变得比较差。bloom等提出的单密钥空间方案可以使网络中的任意两个节点都能够直接建立配对密钥,并且确保在受损节点数不超过阈值时,网络不会泄露任何机密信息。但尽管可以使网络拓扑实现安全连通,对节点的资源开销占用极大。然而传统的同构wsn密钥管理方案并没有考虑到节点的互异特性,有一定的局限性。



技术实现要素:

本发明的目的是为了解决现有e-g方案网络安全性低,出现密钥重复的可能性较大,q-composite方案随着受损节点数量的增多抗毁性比较差;单密钥空间方案对节点的资源开销占用极大;以及传统的同构wsn密钥管理方案没有考虑节点的互异特性,有一定的局限性的问题,而提出异构无线传感器网络预分配密钥管理方法。

异构无线传感器网络预分配密钥管理方法具体过程为:

步骤一、构建hwsn簇模型;

hwsn为异构无线传感器网络;

步骤二、在步骤一构建的hwsn簇模型下,建立saap方案;过程为:

所述saap方案为基于schnorr身份认证的非对称预分配密钥管理方案;

步骤二一、建立schnorr身份认证阶段;

步骤二二、在步骤二一的基础上,建立密钥预分配阶段;

步骤二三、在步骤二一和步骤二二的基础上,网络中合法的认证节点进入共享密钥发现阶段;

步骤二四、执行完步骤二三后,若ln节点未与邻居节点建立配对密钥,则进入基于簇头的配对密钥设置阶段;

步骤三、步骤二建立saap方案后,在传感器网络中加入新节点。

本发明的有益效果为:

本发明提出一种可靠而有效的非对称密钥预分配密钥管理方案(saap方案),在密钥管理的过程中引入了schnorr身份认证。saap方案的主要思想为:假设簇头节点ch相对安全,给簇头节点ch预分配大量的密钥,而给ln节点分配少量的密钥。本发明从密钥池大小、为k跳邻居节点概率以及存储空间三个方面对saap方案的性能进行了分析。从安全分析中可以看出ln节点中预存储的密钥数量越少,网络的安全性越高。与传统的密钥管理方案相比,saap方案能显著提高网络的安全性,出现密钥重复的可能性较小,并降低节点存储需求。

从图3中可以看出,当[m,l,m]的取值满足m×l=m2时,saap方案中的ln节点与簇头节点ch间至少共享一个密钥的概率曲线与e-g方案中的概率曲线非常接近;假设hwsn中有1000个ln节点和10个簇头节点,并在每个ln节点中预存储l=15个密钥,在簇头节点中预存储m=375个密钥;假设同构传感器网络中有1000个传感节点,每个节点中均预存储了m=75个密钥。在hwsn中,用来存储密钥所需要的总的内存为1000×15+10×375=18750(以密钥长度为单位);而在同构传感器网络中,用来存储密钥所需要的总的内存为1000×75=75000,其所需要的存储空间为hwsn的4倍多。可以看出,在实现相同的共享密钥概率下与同构传感器网络相比,hwsn密钥管理方案大大降低了传感器节点的存储空间需求。解决了随着受损节点数量的增多抗毁性比较差,对节点的资源开销占用极大,以及传统的同构wsn密钥管理方案没有考虑节点的互异特性,有一定的局限性的问题。

附图说明

图1为hwsn的簇模型图,hwsn为异构无线传感器网络;

图2为本发明新节点入网流程图;

图3为本发明不同p值下的共享密钥概率图,e-g为基本随机密钥预分配方案;saap为一种可靠而有效的非对称密钥预分配密钥管理方案;

图4为本发明不同m值下的共享密钥概率图;

图5a为m=200时1跳或2跳邻居节点概率图;

图5b为m=500时1跳或2跳邻居节点概率图;

图6为q=1时的妥协概率图;

图7为q=3时的妥协概率图。

具体实施方式

具体实施方式一:本实施方式的异构无线传感器网络预分配密钥管理方法具体过程为:

步骤一、构建hwsn簇模型;

hwsn为异构无线传感器网络;

步骤二、在步骤一构建的hwsn簇模型下,建立saap方案;过程为:

所述saap方案为基于schnorr身份认证的非对称预分配密钥管理方案;

步骤二一、建立schnorr身份认证阶段;

步骤二二、在步骤二一的基础上,建立密钥预分配阶段;

步骤二三、在步骤二一和步骤二二的基础上,网络中合法的认证节点进入共享密钥发现阶段;

步骤二四、执行完步骤二三后,若ln节点未与邻居节点建立配对密钥,则进入基于簇头的配对密钥设置阶段;

步骤三、步骤二建立saap方案后,在传感器网络中加入新节点。

步骤二建立了saap密钥管理方案,但是由于wsn的节点能量有限、易受攻击等特点,需要新节点的加入,为了进一步确保wsn的安全,建立新加入节点入网流程。

具体实施方式二:本实施方式与具体实施方式一不同的是:所述步骤一中构建hwsn簇模型;具体过程为:

设ch(簇头节点)和ln(普通节点)均随机均匀地分布在网络中,其中,ch为能量聚集型簇头。在传感器网络初始化的过程中,每个簇头节点ch以最大功率和随机延迟向其附近的ln节点广播hello报文,ln节点从一个或g个簇头节点ch接收到hello报文后,通过簇头选择方法选择信号强度最强的ch作为簇头(ln接收到hello报文中信号最强的ch作为簇头),每个ln节点记录从其他簇头节点ch收到的hello报文,当簇头选择失败,其他簇头节点ch将作为备份簇头;

g取值大于等于2;其他ch指除信号强度最强的的ch;

所述,hello报文包含簇头节点ch的id和位置信息,ch为能量聚集型簇头,ln为普通节点;id为身份标识。

每个簇头节点ch以最大功率和随机延迟向其附近的ln节点广播hello报文(包含ch的id和位置信息),其中,随机延迟是为了避免相邻两个簇头节点间的hello报文冲突。由于分布在网络中的ch传输范围广、数量充足,大多数ln可以从一个或多个ch接收到hello报文,从而选择具有最佳信号强度的ch作为簇头。与此同时,每个ln还记录了从其他ch收到的hello报文,一旦簇头选择失败,这些ch将作为备份簇头。如果该网络是一个二维平面,各节点将选择最近的ch作为簇头(有障碍物除外),如图1所示。

其它步骤及参数与具体实施方式一相同。

具体实施方式三:本实施方式与具体实施方式一或二不同的是:所述步骤二一中建立schnorr身份认证阶段;具体过程为:

为了进一步增强网络的安全性,在共享密钥阶段之前,首先要对簇内的每个ln节点进行身份认证;

步骤二一一、根据步骤一构建的hwsn簇模型,对传感器网络进行初始化;

传感器网络初始化过程分为两步:

(1)选择传感器网络公共参数;

传感器网络选取两个素数p和q,且p和q满足q|p-1,q≥2140,p≥2512,传感器网络在上选择一个阶为q的素数g,且gq≡1(modp);

q|p-1为q是p-1阶素数因子;

(2)传感器网络中的节点选择密钥;

传感器网络中的任意ln节点a,在节点a处根据随机原则在zp上选择一个随机数x,计算y=gxmodp,

式中,p、q、g和y为节点a的公钥,用于验证节点a的数字签名;x为节点a的私钥,用于对节点a数字签名,zp为从0到p-1的正整数域;为从1到p-1的正整数域;

步骤二一二、在传感器网络初始化后,对传感器网络内的ln节点进行数字签名并获取ln节点的网络证书;过程为:

传感器网络中的任意ln节点a处首先根据随机原则在zp上选择一个随机数k1,并计算将α1的值发送给节点a所在簇内的簇头节点ch,簇头节点ch根据接收到的α1的值和节点a的ida对节点a进行数字签名,对节点a的数字签名用s表示,ida、α1和签名s共同构成节点a的网络证书ca,即ca=(ida,α1,s);

步骤二一三、在完成步骤二一二后,对传感器网络中的ln节点的数字签名进行认证;过程为:

在簇头节点ch接收到ln节点a发送来的k1,α1,ca后,簇头节点ch根据随机原则在[0,2t]选一个随机数b1,并将b1发送给ln节点a;ln节点a根据收到的b1,计算v1=k1+xb1modq,并将v1发送给ch,ch根据收到的α1以及v1,验证如果满足验证通过,则节点a为合法的认证节点,否则簇头节点ch终止与节点a的通信;直至所有ln节点完成验证后,执行步骤二二;

上述b1为簇头节点ch的私钥,t为安全参数,t≥40。

其它步骤及参数与具体实施方式一或二相同。

具体实施方式四:本实施方式与具体实施方式一至三之一不同的是:

本发明将给出一个有效而可靠的异构传感器网络密钥管理方案。该方案的主要思想是给ln预存储少量的密钥,而给ch预存储大量的密钥,这是因为ch比普通节点具有更大的存储空间。此外,ch中配备有防篡改硬件可以保护大量的密钥信息,因此假设簇头ch是相对安全的。针对共享密钥泄露可能带来的问题,本文引入了schnorr身份识别对密钥管理进行安全性增强改造。由于ch和ln中预分配密钥的数量截然不同及schnorr身份识别的引入,把这一方案称为基于schnorr身份认证的非对称预分配密钥管理方案,简称saap方案,该方案

包括四个阶段:密钥预分配阶段、身份认证阶段、共享密钥发现阶段、基于簇头的配对密钥设置阶段。

所述步骤二二中在步骤二一的基础上,建立密钥预分配阶段;具体过程为:

步骤二二一、密钥处理中心生成一个密钥总数为p的大密钥池s,每个密钥对应一个唯一的身份标识(id);p的取值为正整数;

步骤二二二、从s中随机选择l个密钥预存储在每个ln节点中,形成一个密钥环;l取值为正整数;

步骤二二三、从s中随机选取m个密钥预存储在每个簇头节点ch中,m>>l;每个ch中预存储了一个特殊的密钥kh;m取值为正整数;

其中,kh对于基站(bs)是已知的,而对任意的ln节点未知。

其它步骤及参数与具体实施方式一至三之一相同。

具体实施方式五:本实施方式与具体实施方式一至四之一不同的是:所述步骤二三中在步骤二一和步骤二二的基础上,网络中合法的认证节点进入共享密钥发现阶段;具体过程为:

步骤二三一、每个ln节点(例如节点u)首先给对应的簇头节点ch发送一条未经加密的密钥列表信息,密钥列表信息包括ln节点u的身份标识idu及位置信息;簇头节点ch在接收到密钥列表信息后,簇头节点ch为每对相邻的ln节点寻找共享密钥;

步骤二三二、通过位置信息,簇头节点ch确定两个ln节点(例如节点u和v)是否为邻居节点(一跳能到达的节点):具体为:

当两个ln节点(例如节点u和v)之间的距离小于ln节点的传输范围,则ch认为两个ln节点(例如节点u和v)是邻居节点;

在寻找到每对相邻ln节点之间的共享密钥后,簇头节点ch使用共享密钥消息向ln节点传播共享密钥信息;一条共享密钥消息包括三重列表{ids,u,v},其中ids表示ln节点u和ln节点v的共享密钥的id;如果ln节点u和ln节点v具有多个共享密钥,为了减小通信开销,每条共享密钥消息中只能包含一个共享密钥。若一簇中的ln节点的数量不是很大,一条共享密钥消息包括所有对邻居节点的三重列表;把所有三元组聚合在一个数据包中既可以降低分组报头开销又可以减小因多路传输而产生的延迟;或者,若一簇中的ln节点的数量不是很大,ch给每一对邻居节点分别发送一条简短的三重列表共享密钥消息(例如,只多播给u和v);

其它步骤及参数与具体实施方式一至四之一相同。

具体实施方式六:本实施方式与具体实施方式一至五之一不同的是:所述步骤二四中执行完步骤二三后,若ln节点未与邻居节点建立配对密钥,则进入基于簇头的配对密钥设置阶段;具体过程为:

在网络中合法的节点完成共享密钥发现阶段之后,当ln节点未与ln节点的邻居节点建立共享密钥时,例如邻居ln节点u和v,ch首先要检查与ln节点u、v是否共享一个密钥;由于ch中预存储了大量的密钥,所以ch与节点u或v之间至少共享一个密钥的概率很高;当ln节点u、v与簇头节点ch存在共享密钥时,簇头节点ch分别获得与ln节点u、v之间的共享密钥,记为ku,kv;然后簇头节点ch为ln节点u、v生成配对密钥ku,v,并且把ku,v分别发送给ln节点u、v;

当ln节点u、v与簇头节点ch不存在共享密钥时,建立ln节点u和v的配对密钥;过程为:

步骤1)

由于每个ln节点均给其簇头ch发送密钥列表信息,所以ch知道在其簇中的每个ln节点中的预存储密钥。以节点u为例,当ln节点u与簇头节点ch之间不存在共享密钥时,簇头节点ch将检查是否有第1跳邻居节点与ln节点u共享一个密钥;如果存在1跳邻居节点z与ln节点u共享一个密钥ku,z,则簇头节点ch要求节点z把经kz加密过的ku,z发送给簇头节点ch,这样一来簇头节点与ln节点u之间就存在共享密钥ku,z了;同理,簇头节点ch可以获得与ln节点v的共享密钥;当ln节点v与簇头节点ch之间不存在共享密钥时,簇头节点ch将检查是否有第1跳邻居节点与ln节点v共享一个密钥;如果存在1跳邻居节点f与ln节点v共享一个密钥kv,f,则ch要求节点f把经kf加密过的kv,f发送给ch,这样一来簇头节点与ln节点v之间就存在共享密钥kv,f了;

簇头节点ch在分别获取了与ln节点u和v之间的共享密钥后,簇头节点ch为ln节点u和v建立配对密钥;

其中,kz为簇头节点ch和节点z之间的共享密钥,kf为簇头节点ch和节点f之间的共享密钥;

簇头节点ch的1跳邻居节点是指ln节点与簇头节点ch至少存在一个共享密钥;

如果簇头节点ch的1跳邻居节点中与ln节点u和ln节点v不存在共享密钥,则执行步骤2);

步骤2)

若簇头节点ch的1跳邻居节点与ln节点u和ln节点v不存在共享密钥,则簇头节点ch将寻找2跳邻居节点、3跳的邻居节点、……、d跳邻居节点,直到找到邻居节点中存在与ln节点u和ln节点v的共享密钥(则簇头节点ch将寻找2跳邻居节点,找到邻居节点中存在与ln节点u和ln节点v的共享密钥,如果不存在共享密钥,则簇头节点ch将寻找3跳邻居节点,找到邻居节点中存在与ln节点u和ln节点v的共享密钥,如果不存在共享密钥,则簇头节点ch将寻找4跳邻居节点,直到找到邻居节点中存在与ln节点u和ln节点v的共享密钥),并按照步骤1)为ln节点u和v建立配对密钥;d是一个系统参数;如果从1跳到d跳邻居节点与ln节点u和ln节点v均无共享密钥,则ch将向基站bs发送一条包括ln节点u和ln节点v的密钥id的请求消息;然后,基站bs给ch发送由特殊密钥kh加密的密钥;为了降低通信开销,ch可以收集从bs获取的密钥ids,并仅将一条请求消息发送到bs;簇头节点ch从bs获取密钥后,簇头节点ch为每一对邻居ln节点u和ln节点v生成一个配对密钥ku,v,并将密钥ku,v分别单播给ln节点u和ln节点v;即ch→u:{ku,v}ku、ch→v:{ku,v}kv;这样ln节点u和ln节点v就存在共享密钥ku,v并且可以安全的进行通信了;

具体实施方式七:本实施方式与具体实施方式一至六之一不同的是:所述步骤三中步骤二建立saap方案后,在传感器网络中加入新节点;具体过程为:

在传感器网络的初始部署后,由于传感器节点位置的随机性,有些区域可能未被覆盖。此外,传感器节点的电源容量有限,随着时间的推移电量可能会耗尽。传感器网络中存在的这些因素可以引起严重的覆盖和连通性问题,并显著降低网络性能,缩短网络生命周期。要解决这些问题,可以在网络运行一段时间后,在该区域部署新的传感器节点。然而,新加入的节点将是传感器网络安全问题的一大挑战。新加入的节点需要与现有的传感器节点间建立安全密钥,但是,现有的传感器节点可能已经被破坏,其次,新加入的节点可能为恶意节点,因此,新节点加入的安全问题不容忽视。

许多现有的传感器网络密钥管理协议并没有考虑这一问题。为了进一步确保网络的安全,将提出一个有效的方案对新加入的节点进行验证,并为新加入的ln节点与传感器网络中现有的ln节点建立配对密钥。

每个新加入的ln节点e中都预存储有l个密钥和一个特殊密钥kl,e,

l个密钥是密钥处理中心(kdc)生成的;

其中,h(·)为单向散列函数;kh为簇头ch中预存储的特殊密钥;表示kh与e的异或;当ln节点e部署到网络中后,节点e会向所在簇内的簇头节点ch发送加入消息:e||location||mac(kl,e′||location)

其中,location为节点e的位置信息,mac(·)为消息认证码;

当簇头节点ch接收到“加入消息”后,将根据节点e及簇头节点ch中预存储的特殊密钥kh计算生成对应的kl,e,kl,e与节点e发送的加入消息中的kl,e′进行对比(kl,e′为实测得到的,kl,e为通过本发明方法得到的),如果相同,e为合法节点,则簇头节点ch将确定节点e的邻居节点,并为e及其邻居节点生成共享密钥;如果不相同,则e为非法节点,ch终止与节点e的通信。

具体过程如图2所示。

hwsn中的其他安全问题

广播密钥的建立

ln节点通过广播密钥向其邻居节点安全地广播消息;每对邻居节点在找到共享密钥或建立配对密钥后,很容易建立广播密钥。经过相应的共享密钥加密后,ln节点u生成广播密钥kub,并将其单播给每个邻居节点。例如,u给其邻居节点v发送以下的数据包:{kub}ku,v,其中ku,v为节点u、v间的共享密钥。

密钥撤销

一旦网络中任意的ln节点受到敌方节点妥协攻击时,应撤销该ln节点内的所有密钥信息。假设检测出了被妥协的节点,并报告给相应的簇头节点ch。收到报告后,簇头ch将散播含有被撤销节点的密钥ids列表的“撤销消息”。簇头ch与许多ln节点包括1~d跳邻居节点间均存在共享密钥。簇头ch根据每个共享密钥均能计算出与之相对应的唯一的消息认证码(mac)。

撤销消息的形式如下所示:

(list)||(u+mac(kh,u,list))||(v+mac(kh,v,list))||…||(y+mac(kh,y,list))

其中u,v和y表示ln节点的ids;kh,u,kh,v和kh,y为簇头ch与节点u,v和y之间的共享密钥;||为级联操作;“list”表示密钥ids列表。当在撤销消息中的ln节点(例如u)收到撤销消息时,簇头可以通过相应的mac检查消息的完整性。

其它步骤及参数与具体实施方式一至六之一相同。

采用以下实施例验证本发明的有益效果:

实施例一:

本实施例异构无线传感器网络预分配密钥管理方法具体是按照以下步骤制备的:

1密钥池大小

对于saap方案来说,密钥池大小p是一个关键参数。假设预存储密钥的数量是固定值;一方面,当传感器网络中一定数量的ln节点妥协时,p值越大,对其他节点的通信能力的影响就越小;然而,随着p值的增加,两个节点共享一个密钥的概率也随之减小。chan等人提出了q-composite方案,该方案要求两个相邻节点至少需要共享q个密钥才能进行安全通信,通过提高q值可以有效的提高网络的抵抗力,q-composite方案为传感器网络提高的更好的安全性。本发明所提出的saap密钥管理方案可以很容易地达到两节点间至少共享q个密钥的条件。

为了获得最大p值,需满足如下条件:任意ln节点与簇头节点ch至少共享q个密钥的概率大于阈值p的大小。设任何ln节点与其簇头节点ch之间共享密钥个数为i的概率为p(i)。由于ln节点和簇头节点ch中分别预存储了l和m个密钥,则任意ln节点从p个密钥中选取l个密钥的组合方法有种,簇头节点ch从p个密钥中选取m个密钥的组合方法有种。因此ln节点和ch节点从p个密钥中分别选取l和m个密钥的组合方法有种。假设两节点之间有i个共同的密钥,则有种方法选出相同密钥,另外m+l-2i个不同的密钥从剩下的p-i个密钥中获取,方法数为而m+l-2i个不同的密钥分配给ln和ch节点有种方法。于是有

用pc表示任意两节点间至少存在q个共享密钥的概率,则有

pc=1-(p(0)+p(1)+p(2)+…+p(q-1))(2)

因此,对给定的密钥环l和m,至少具有的共享密钥数q和共享这些密钥数的概率p,根据式(2),令pc≥p,则可以计算出最大的密钥池为pmax。

2存储空间分析

相比于同构传感器网络的密钥预分配管理方案,saap方案可以降低传感器网络在密钥预分配中的存储需求。在saap方案中ln节点与簇头节点ch之间至少共享一个密钥的概率(以下简称为共享密钥概率)ps为

为了方便对比,式(4)中给出了e-g方案中共享密钥概率pe

其中p为密钥池的大小,m为每个节点存放密钥环的大小。

在密钥池的大小p从1000变化到10000到条件下,分别绘制了不同p,m,l和m值下的ps和pe,如图3所示;图中从上至下[m,l,m]的取值分别为[125,5,25];[250,10,50];[375,15,75];[500,20,100]。从图3中可以看出,节点中预存储的密钥数量越多,两节点间至少共享一个密钥的概率也就越大;在相同的[m,l,m]的取值下,随着密钥池大小p的增加,两节点间至少共享一个共享密钥概率下降。此外,从图中还可以观察到相同[m,l,m]的取值下的两条曲线的概率非常接近;[m,l,m]这三个参数的关系为m×l=m2;即,如果分别给簇头ch及ln节点预存储m和l个密钥,且m和l的值满足m×l=m2,那么,在预存储m个密钥的条件下,ps和pe曲线大致相同。为了方便对比,假设hwsn中有1000个ln节点和10个簇头节点,并在每个ln节点中预存储l=15个密钥,在簇头节点中预存储m=375个密钥;假设同构传感器网络中有1000个传感节点,每个节点中均预存储了m=75个密钥。在hwsn中,用来存储密钥所需要的总的内存为1000×15+10×375=18750(以密钥长度为单位);而在同构传感器网络中,用来存储密钥所需要的总的内存为1000×75=75000,其所需要的存储空间为hwsn的4倍多。从上面这个例子可以看出,在实现相同的共享密钥概率下与同构传感器网络相比,hwsn密钥管理方案大大降低了传感器节点的存储空间需求。

还绘制了不同预存储密钥下的共享密钥概率,如图4所示。x轴表示预存储密钥数量m,其中m的值从25变化到100,增量为25;为了满足m×l=m2,令l=m/5,m=5m;y轴表示节点与其簇头间的共享密钥概率;对于saap及e-g方案的4条曲线,从上到下,对应的密钥池大小p分别为1000,2000,5000和10000。由图4可以看出,共享密钥概率随着传感器节点中预存储密钥数量的增加而增大,而当节点中预存储的密钥数量一定时,共享密钥概率随着p的增加而降低。

3为k跳邻居节点的概率

传感器网络中的每一簇由一个簇头ch和若干簇内成员ln组成;根据ln节点与其ch建立共享密钥的方式,可以把ln节点分为1跳邻居节点,2跳邻居节点,…等等。下面,将分别推导出ln节点为1跳邻居节点和2跳邻居节点的概率。已知ln节点u与簇头节点ch中分别预存储了l和m个密钥,那么节点u至少要与簇头ch共享一个密钥,才能称节点u为1跳邻居节点;式(3)中给出了节点u为簇头ch的1跳节点的概率,即

若要为2跳邻居节点,则ln节点v与1跳邻居节点间至少存在一个共享密钥;如果簇内ln节点数为n,则簇中1跳邻居节点数为n1,即

如果令事件b表示节点v与1跳邻居节点间至少共享一个密钥,事件c表示节点v与1跳邻居节点间不存在任何共享密钥,事件d表示节点v不是1跳邻居节点,那么,由上述条件,可以推导出节点v与1跳邻居节点间至少共享一个密钥的概率为

故,由定义2可知,节点v为2跳邻居节点的概率为

同理,可以计算出ln节点为3跳邻居节点,4跳邻居节点的概率,…。图5a、5b中,分别绘制了不同p和m值下的p1,p2曲线。图中密钥池大小p以1000为增量从1000变化到10000,图5a、5b中的参数分别为m=200,l=20,n=100和m=500,l=20,n=100。从图5a、5b中可以看出,随着簇头ch中预存储密钥数量m的增加,为1跳或2跳邻居节点的概率增加。例如,当m=500时,密钥池大小6000和1000分别对应的p1值为0.82和0.68。这就意味着,在高概率的条件下,ln节点可与其簇头ch直接共享密钥,从而有效的降低了由寻找共享密钥而产生的通信开销,对于大多数ln节点来说,簇头ch无需与其他节点或bs通信来获取共享密钥。

4安全分析

本发明将对saap密钥管理方案抵抗节点妥协攻击的能力进行分析。由于簇头节点ch中安装有预防篡改的硬件,因此,簇头ch很难被攻陷,安全分析只需考虑网络中的ln节点。已知每个ln节点中都预存储了l个密钥,那么对于给定的密钥k在ln节点的密钥环中的概率为l/p,其中p为密钥池的大小。因此,k不在ln节点的密钥环中的概率为假设网络中有r个妥协节点,那么k不在这r个妥协节点的密钥环中的概率为则当网络中有r个节点被攻陷时,网络暴露安全通信链路的概率为

从式(9)中,当密钥池大小p以及网络中被攻陷节点的数量h均为固定不变时,l越小,网络暴露安全通信链路的概率pr就越小,也就是说,l越小,saap方案抵抗节点妥协攻击的能力越强。这就是为什么要在每个ln节点中预存储少量密钥的重要原因。需要注意的是,在密钥设置阶段后,两个相邻节点u和v可以通过已建立的安全链路来协商一个只有它们自己知道并供以后通信使用的新的随机密钥。由于新的密钥与初始密钥池的大小p无关,因此,除非攻击者能够记录网络中的所有通信过程,否则其他ln节点的妥协不会影响新密钥的安全性。

如果在两个ln节点间建立一条安全链路至少需要q个密钥,则在有r个节点妥协的情况下,一条新建的链路被损坏的概率会更加小。若两ln节点间的i个共享密钥为散列函数,那么链路被损坏的概率为已知在hwsn建立一条安全链路的概率为plink=p(q)+p(q+1)+…+p(l),则在网络中有r个妥协节点的情况下,两个ln节点间的安全链路被损坏的概率为

其中,l表示ln中预存储的密钥数量,p(i)如式(1)所示。

chan等人提出的q-composite方案中,两ln节点间有i个共享密钥的概率为其中,m为每个节点中预存储的密钥的数量。chan等人分析了规模为n的网络,在网络中有r个节点被俘获的情况下,两个节点间的安全链路被损坏的概率为

从式(10)和(11)中可以看出,r(l)<r(m)和r(m)的大小随着l和m的增加而递增,而节点中预存储的密钥数量l要比m小得多,因此,r(l)<r(m);这意味着,hwsn密钥管理方案比同构无线传感器网络密钥管理方案在节点受到妥协攻击上更具有弹性。

如图6所示,绘制出了当网络中有r个妥协节点时,攻击者能够解密两传感器节点u和v之间的通信的概率(简称为妥协概率)。图6中,设置安全链路所需密钥的数量为q=1;密钥池大小p为10000;妥协节点的数量r以10为增量,从1变化到200;对于e-g密钥方案,选取了3个不同的m值,分别为20,30和50;而对于saap密钥管理方案,将参数值设置为m=100,l=10;当m=30时,此时m×l≈m2,使得saap密钥管理方案与e-g方案具有相同的共享密钥概率。从图6中可以看出,对于任意r的值,saap方案下的妥协概率均比在不同取值下的e-g方案的低,即,与e-g方案相比,saap密钥管理方案在节点受到妥协攻击上更具有弹性。

图7中,绘制了在q=3时的妥协概率,其他参数均与图4相同。对比图4和图7,可以发现在q=3时的妥协概率比q=1时的低。这一结果表明q-composite密钥管理方案能够显著提高节点抗妥协攻击的能力。

本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,本领域技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1