基于Blom方案的动态对称矩阵的WSN密钥管理方法与流程

文档序号:36231048发布日期:2023-11-30 23:34阅读:75来源:国知局
基于的制作方法

本发明属于网络安全及通信领域,涉及一种基于blom方案的动态对称矩阵的wsn密钥管理方法。


背景技术:

1、无线传感器网络是由大量部署到监测区域,主要用于感知和采集信息的无线传感器节点组成。目前,无线传感器网络已经在军事监测、环境监控、医疗应用、智能交通、机器人控制、危险区域的远程控制等领域得到广泛应用。在wsn中,除了一些特殊情况需要多播通信外,无线传感器网络更多地是节点间点对点单播通信。

2、虽然目前对无线传感器网络密钥管理方案的研究已经实现了多种安全单播通信,但是它们没有充分考虑到无线传感器网络的动态变化(例如由于传感器节点的资源有限,节点的能耗耗尽导致其必须退出网络,这样一个过程势必导致网络发生动态变化),使得整个方案中缺乏对密钥更新机制;部分密钥管理方案的密钥池不能产生足量的密钥元素,导致无线传感器网络没有很强地抵御节点捕获攻击的能力,且网络不能容纳大量的节点导致网络的可扩展性较差且不利于大规模的应用;部分方案对密钥在建立的过程中,需要较多的数据信息传送,耗费了传感器大量的能量,降低了节点的使用寿命和对密钥的生成效率。

3、因此,亟需一种能有效降低基于单播通信的计算开销、通信开销和存储开销、能抵抗多种密钥攻击,同时能够保证密钥高连通率的wsn对密钥管理方法。


技术实现思路

1、有鉴于此,本发明的目的在于提供一种基于blom方案的动态对称矩阵的wsn密钥管理方法,在减小每个节点存储开销的基础上,完成对密钥的建立和对密钥的更新,实现基于blom密钥管理方案对称矩阵d的动态建立和对密钥的动态分配,克服基于blom密钥管理方案λ-secure问题(blom密钥管理方案所有的节点公用同一个对阵矩阵d,本发明每对通信节点使用唯一的对称矩阵d)。同时,保证整个网络运行过程中的前向安全性和后向安全性,而且该方案能有效降低基于单播通信的计算开销、通信开销和存储开销,同时能够保证高达100%的密钥连通率。密钥池能够产生大量的密钥元素,具有良好网络扩展性能,且有很强地抵御节点捕获攻击的能力。

2、为达到上述目的,本发明提供如下技术方案:

3、一种基于blom方案的动态对称矩阵的wsn密钥管理方法,具体包括以下步骤:

4、s1:初始化无线传感器网络系统参数;

5、s2:计算通信双方节点的专属对称矩阵和秘密矩阵;

6、s3:以blom方案密钥管理方法为基础,根据步骤s2计算的专属对称矩阵,建立通信双方节点的对密钥;

7、s4:根据网关向网络内所有节点发送的随机数nonce完成对网络内节点的共享矩阵m的更新,然后根据步骤s1~s3更新对密钥。

8、进一步,步骤s1中,初始化网络系统参数,具体包括以下步骤:

9、s11:网络内所有节点预存共享矩阵m,共享矩阵m是由(λ+1)×(λ+1)个元素组成的对称矩阵(m=mτ)或非对称矩阵(m≠mτ),表达式为:

10、

11、其中,mi,j是在有限域gf(q)上的任意整数;q是有限域gf(q)内元素数量,且大于所需的成对密钥长度;

12、s12:网络内节点nk预存公共矩阵g的第k列g(k),k=1,2,…,n,n是公共矩阵g的列数。

13、进一步,步骤s2中,以blom方案密钥管理方法为基础,为每对通信节点分配一个专属的对称矩阵d,实现对称矩阵d的动态分配。从而,克服基于blom密钥管理方案的网络内节点共用一个对称矩阵d引起的λ-secure问题缺陷。

14、blom方案密钥管理方法为:

15、k=a·g=(d·g)t·g=gt·dt·g

16、 =gt·d·g=(a·g)t

17、 =kt

18、其中,a表示秘密矩阵,k表示密钥矩阵。

19、进一步,步骤s2中,每对通信节点通过自身节点身份标识(设备id)计算他们之间的专属对称矩阵,主要分为以下三种情况:

20、情况1:当共享矩阵m为对称矩阵。

21、计算专属对称矩阵的具体步骤为:

22、s201:网络内节点nz和nl分别依据身份标识idnz和idnl进行异或运算,得到节点nz和nl的映射身份标识idzl=p(idnz,idnl)和idlz=p(idnl,idnz),即

23、

24、

25、s202:网络内节点nz和nl分别依据映射身份标识idzl和idlz,经哈希运算输出大于t(λ+1)bits数据,即

26、l=hash(idzl或idlz)=…,w0,w1,…,wλ,…

27、s203:hash()函数的输出值l取其中t(λ+1)位,映射成共享矩阵m的行坐标wi,即

28、w1=w0,w1,…,wλ

29、其中,w1表示行坐标序列;wi(0≤i≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的行坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

30、s204:hash()函数的输出值l取其中t(λ+1)位,映射成共享矩阵m的列坐标wj,即

31、w2=w0,w1,…,wλ

32、其中,w2表示列坐标序列;wj(0≤j≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的列坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

33、s205:网络内节点nz和nl依据生成的行坐标wi和列坐标wj,生成共享矩阵m的矩阵坐标{(wi,wj)|i,j=0,1,…,λ};

34、s206:网络内节点nz和nl依据m的矩阵坐标{(wi,wj)|i,j=0,1,…,λ},生成对称矩阵的元素

35、

36、其中,dzl、dlz分别表示节点nz和nl的专属对称矩阵,dzl=dlz。

37、情况2:当共享矩阵m为非对称矩阵,且由单个数据生成矩阵。

38、计算专属对称矩阵,具体包括以下步骤:

39、s211:网络内节点nz和nl分别依据身份标识idnz和idnl进行异或运算,得到节点nz和nl的映射身份标识idzl=p(idnz,idnl)和idlz=p(idnl,idnz),即

40、

41、

42、s212:网络内节点nz和nl分别依据映射身份标识idzl和idlz,经哈希运算输出大于2t(λ+1)bits数据,即

43、l=hash(idzl或idlz)=…,w0,w1,…,wλ,…,v0,v1,…,vλ,…

44、s213:节点nl的hash()函数的输出值l取其中t(λ+1)位,映射成共享矩阵m的行坐标wi,即

45、w=w0,w1,…,wλ

46、其中,w表示行坐标序列;wi(0≤i≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的行坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

47、s214:节点nz的hash()函数的输出值l取其中t(λ+1)位,映射成共享矩阵m的列坐标vj,即

48、v=v0,v1,…,vλ

49、其中,v表示列坐标序列;vj(0≤j≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的列坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

50、s215:网络内节点nl和nz依据生成的行坐标wi和列坐标vj,生成共享矩阵m的矩阵坐标{(wi,vj)|i,j=0,1,…,λ};

51、s216:网络内节点nl和nz依据m的矩阵坐标{(wi,vj)|i,j=0,1,…,λ},生成对称矩阵的元素

52、

53、其中,dzl、dlz分别表示节点nz和nl的专属对称矩阵,dzl=dlz。

54、情况3:当共享矩阵m为非对称矩阵,且由两个数据生成矩阵。

55、计算专属对称矩阵的具体步骤为:

56、s221:步骤2.1:网络内节点nz和nl分别交换身份标识idnz和idnl进行异或运算,得到节点nz和nl的映射身份标识idlz=p(idnl,idnz)和idlz=p(idnl,idnz)

57、s222:网络内节点nl和nz分别依据映射身份标识idnz和idnl,经哈希运算输出大于t(λ+1)bits数据,即

58、l1=hash(idnz)=…,w0,w1,…,wλ,…

59、l2=hash(idnl)=…,v0,v1,…,vλ,…

60、s223:节点nl的hash()函数的输出值l1取其中t(λ+1)位,映射成共享矩阵m的行坐标wi,即

61、w=w0,w1,…,wλ

62、其中,w表示行坐标序列;wi(0≤i≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的行坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

63、s224:节点nz的hash()函数的输出值l2取其中t(λ+1)位,映射成共享矩阵m的列坐标vj,即

64、v=v0,v1,…,vλ

65、其中,v表示列坐标序列;vj(0≤j≤λ)的字长固定为t(t=1,2,…)位,指示共享矩阵m的列坐标,λ=20+21+…+2(t-1);映射函数hash()不公开,网络内节点共同保有;

66、s225:网络内节点nl和nz依据生成的行坐标wi和列坐标vj,生成共享矩阵m的矩阵坐标{(wi,vj)|i,j=0,1,…,λ};

67、s226:网络内节点nl和nz依据m的矩阵坐标{(wi,vj)|i,j=0,1,…,λ},生成对称矩阵的元素

68、

69、其中,dzl、dlz分别表示节点nz和nl的专属对称矩阵,dzl=dlz。

70、进一步,步骤s3中,建立通信双方节点的对密钥,具体包括以下步骤:

71、s31:网络内节点nz和nl互相交换公共矩阵g的第z列g(z)和第l列g(l);节点nz持有向量azl(z)和g(l),节点nl持有向量azl(l)和g(z);其中,l≠z,且l,z=1,2,…,n;

72、s32:网络内节点nz计算kzl=azl(z)·g(l),即kzl=az,0g0,l+az,1g1,l+…+az,λgλ,l;

73、

74、s33:网络内节点nl计算klz=azl(l)·g(z),即klz=al,0g0,z+al,1g1,z+…+al,λgλ,z;

75、

76、s34:由对称矩阵k的对称性可知,kzl=klz。

77、进一步,步骤s4中,对共享矩阵m实现数据更新保证共享矩阵m内的元素数据动态变化。更新共享矩阵m的表达式为:

78、

79、其中,m'是更新后的共享矩阵。

80、本发明的有益效果在于:本发明实现了基于blom密钥管理方案对称矩阵d的动态建立和对密钥的动态分配,克服了基于blom密钥管理方案λ-secure问题(blom密钥管理方案所有的节点公用同一个对阵矩阵d,本发明每对通信节点使用唯一的对称矩阵d);在减小每个节点存储开销的基础上,完成了对密钥的建立和对密钥的更新。同时,本发明保证了整个网络运行过程中的前向安全性和后向安全性,而且该方案能有效降低基于单播通信的计算开销、通信开销和存储开销,同时能够保证高达100%的密钥连通率。能够生成足够大的密钥空间和密钥池,具有良好网络扩展性能,且有很强地抵御节点捕获攻击的能力。其少量的资源开销(计算开销、通信开销和存储开销)、较强的抵抗节点捕获攻击能力、较高的密钥连通率及足够大的密钥池充分保证了本发明在大规模的网络节点内的应用。具体体现在以下几方面:

81、1)安全性高:本发明利用blom密钥管理方案产生的矩阵对称性的特点来保障对密钥建立和对密钥更新的安全性。本发明中,系统内节点被分配唯一身份标识符及共享矩阵m,通过更新共享矩阵m来完成对密钥的建立和更新。只有合法的节点成员才能进行对密钥更新,保证了网络的前向安全性。对于撤除网络的节点无法依据原有的算法和存储的共享矩阵m进行对密钥的建立,也就无法进行对密钥更新,从而保证了网络的后向安全性。由于每个节点都有唯一的id,通过本算法用每对通信节点射出的对称矩阵d也不相同,即每个对称矩阵d都不相同,每对通信节点产生的对密钥也是唯一的。因此,本发明实现了基于blom密钥管理方案对阵矩阵d和对密钥的动态分配,克服了blom密钥管理方案的λ-secure问题。本发明的共享矩阵能够产生大量的秘密矩阵,有很强地抵御节点捕获攻击的能力。

82、2)存储开销小:在整个网络运行中,针对安全方面的存储开销,节点的身份标识id和共享矩阵m。通过共享矩阵m内不同元素的排列组合,能够生成大量的对称矩阵d从而形成足够大的密钥空间和密钥池。相比现有技术,本发明在极大减少节点存储开销的同时能够有效地完成对密钥的建立和对密钥的更新。

83、3)能耗小:从能耗方面来讲,在本发明中,节点通过一条消息交互,即可完成对密钥的建立;在对密钥更新方面,本发明在周期性对密钥更新和网络检测到异常状况对钥更新时需要一条消息即可完成对密钥更新相比其它密钥管理方案,在通信能耗开销有所降低。

84、本发明的其他优点、目标和特征在某种程度上将在随后的说明书中进行阐述,并且在某种程度上,基于对下文的考察研究对本领域技术人员而言将是显而易见的,或者可以从本发明的实践中得到教导。本发明的目标和其他优点可以通过下面的说明书来实现和获得。

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