一种支持节点动态变化的前向安全的群密钥的建立方法与流程

摘要: 本发明涉及网络安全,尤其涉及一种支持节点动态变化的前向安全的群密钥的建立方法。背景技术:1、无中心自组网技术实现了在任何时刻、任何地点、不需要现有信息基础网络设...
一种支持节点动态变化的前向安全的群密钥的建立方法与流程

本发明涉及网络安全,尤其涉及一种支持节点动态变化的前向安全的群密钥的建立方法。

背景技术:

1、无中心自组网技术实现了在任何时刻、任何地点、不需要现有信息基础网络设施的支持就能快速构建起一个移动通信网络,为终端实现无中心自由快速的通信提供了可能。

2、当前无中心自组网场景有以下四个突出特点:

3、1.无中心:自组网中节点对等,无传统意义上的控制中心。在自组网中,每个合法节点都可以发起群组密钥的建立过程,难以应用集中式方案建立高效的自组网安全认证和密钥建立机制。

4、2.网络拓扑变化快:在工作过程中,新节点入网、在网节点退出等事件使自组网网络拓扑变化频繁。这种特性要求自组网严格管理进出节点的身份,尤其是节点退出时能够快速变换群组密钥。

5、3.多节点通信需求大:大多情况下,节点间需要实时信息交互以确保工作有效完成,如联合计算时需要实时将中间数据共享给其他节点,多节点协同工作时需要实时同其他节点分享当前状态和位置等信息。

6、这要求自组网具备快速建立群密钥进行通信的能力,且能够满足节点动态的加入和退出需求。然而,当前的群密钥建立方案存在计算和通信开销大、通信轮数多的问题,且基于对称密码的群密钥建立方案不能支持群节点动态变化。因此,如何建立一个支持节点动态变化的群密钥建立方案是当前亟待解决的问题。

技术实现思路

1、鉴于上述的分析,本发明实施例旨在提供一种支持节点动态变化的前向安全的群密钥的建立方法,用以解决现有的群密钥建立方案不能支持群节点动态变化的问题。

2、本发明实施例提供了一种支持节点动态变化的前向安全的群密钥的建立方法,包括如下步骤:

3、步骤s100:可信中心选择系统参数,所述系统参数为由包括多个节点的群组成的通信系统的系统参数,其中,群内两两节点之间存在预共享的密钥;

4、步骤s200:当前群的各节点根据所述系统参数和所述预共享的密钥生成当前群的群密钥和当前群的状态值;

5、步骤s300:响应于有新节点加入当前群,新节点将其临时密钥和身份信息发送至当前群的任一目标节点;

6、步骤s400:所述目标节点根据新节点的所述临时密钥和所述身份信息、所述系统参数以及所述目标节点与所述新节点之间的预共享密钥,对新节点的身份进行认证,并在认证通过后,将当前群的所述群密钥和当前群的所述状态值发送给所述新节点。

7、基于上述方法的进一步改进,还包括如下步骤:

8、步骤s500:响应于有节点退出当前群,当前群的剩余各个节点更新当前群的节点集合;

9、步骤s600:更新后的各节点根据所述系统参数、所述预共享的密钥以及当前群的所述状态值,生成当前群的新群密钥和当前群的新状态值。

10、基于上述方法的进一步改进,所述步骤s400包括:

11、步骤s401:所述目标节点根据其临时密钥、其与新节点之间的预共享密钥、新节点的所述临时密钥和所述身份信息、所述系统参数,生成第一校验信息;

12、步骤s402:新节点根据其与所述目标节点之间的预共享密钥、所述系统参数对所述第一校验信息进行校验,并在校验通过后,根据其与所述目标节点之间的预共享密钥、其所述临时密钥和所述身份信息、所述系统参数生成第二校验信息;

13、步骤s403:所述目标节点根据其所述临时密钥、其与新节点之间的预共享密钥、新节点的所述临时密钥和所述身份信息、所述系统参数对所述第二校验信息进行校验,并在验证通过后,将当前群的所述群密钥和当前群的所述状态值发送给所述新节点。

14、基于上述方法的进一步改进,所述步骤s401包括:

15、所述目标节点根据所述系统参数和其与新节点之间的预共享密钥对其临时密钥进行加密,得到第一密文;

16、所述目标节点根据其临时密钥、其与新节点之间的预共享密钥、新节点的所述临时密钥和所述身份信息、所述系统参数,生成第二密文;

17、其中,所述第一校验信息包括所述第一密文和所述第二密文。

18、基于上述方法的进一步改进,所述步骤s200包括:

19、步骤a200:当前群的各节点根据所述系统参数和所述预共享的密钥将各自的临时密钥加密发送至当前群的相邻节点;

20、步骤a300:当前群的各节点根据所述系统参数和所述预共享的密钥将相邻节点的所述临时密钥转换成各自的广播密文;以及

21、步骤a400:当前群的各节点根据所述系统参数对其他所有节点的所述广播密文进行验证,并在验证通过后,根据所述系统参数和其他所有节点的所述广播密文生成当前群的密钥和当前群的状态值。

22、基于上述方法的进一步改进,所述步骤s600包括:

23、步骤a410:更新后的各节点根据所述系统参数和所述预共享的密钥将各自的临时密钥加密发送至其相邻节点;

24、步骤a420:更新后的各节点根据所述系统参数和所述预共享的密钥将其相邻节点的所述临时密钥转换成各自的广播密文;以及

25、步骤a430:更新后的各节点根据所述系统参数对其他所有节点的所述广播密文进行验证,并在验证通过后,根据所述系统参数和其他所有节点的所述广播密文生成当前群的新群密钥和当前群的新状态值。

26、基于上述方法的进一步改进,所述系统参数包括对称加解密算法、第一哈希函数、第二哈希函数,所述可信中心执行如下操作选择系统参数:

27、选择一个对称加密算法:以及对应的对称解密算法:其中{0,1}*为任意长度的0和1组成的比特串,为对称加密密钥的取值空间;

28、选择第一哈希函数

29、选择第二哈希函数其中l为第二哈希函数的输出比特长度,第二哈希函数密钥的取值空间。

30、基于上述方法的进一步改进,所述目标节点根据其临时密钥、其与新节点之间的预共享密钥、新节点的所述临时密钥和所述身份信息、所述系统参数,生成第二密文包括:

31、所述目标节点根据如下公式计算第二密文h1:

32、h1=h2(gki,new,idi||idnew||ri||rnew),

33、其中,gki,new代表所述目标节点与新节点之间的预共享密钥,idi代表所述目标节点的身份信息,idnew代表新节点的身份信息,ri代表所述目标节点的临时密钥,rnew代表新节点的临时密钥,||表示连接符,h2()为系统参数中的第二哈希函数。

34、基于上述方法的进一步改进,新节点根据其与所述目标节点之间的预共享密钥、其所述临时密钥和所述身份信息、所述系统参数生成第二校验信息包括:

35、新节点根据如下公式计算第二校验信息h2:

36、h2=h2(gknew,i,idi||idnew||ri+rnew)

37、其中,gki,new代表所述目标节点与新节点之间的预共享密钥,idi代表所述目标节点的身份信息,idnew代表新节点的身份信息,ri代表所述目标节点的临时密钥,rnew代表新节点的临时密钥,||表示连接符。

38、基于上述方法的进一步改进,所述系统参数包括协商节点选举算法,在执行步骤a200之前,所述建立方法还包括如下步骤:

39、当前群内各节点执行所述协商节点选举算法,得到n个节点分组以及每个节点分组内参与密钥协商的1个节点,其中n小于等于当前群内节点的个数;

40、参与密钥协商的各节点对所有n个节点进行排序,得到首尾相连的节点列表;并且,所述步骤a200至步骤a400中的节点指的是所述n个节点中的节点。

41、与现有技术相比,本发明至少可实现如下有益效果之一:

42、1.本方案支持群节点的动态加入和退出。

43、2.在本方案中,即使节点持有的长期私钥(预共享密钥)泄露,敌手仍然不能得到在长期私钥泄露前的群密钥,也不能得到长期私钥泄露后的群密钥,因此满足前向安全性和后向安全性。

44、3.本方案基于预共享秘密构建两两共享密钥,每个用户仅需要对称加解密运算和随机数的加减法运算,计算效率高。

45、4.本方案中每个参与协商的节点在密钥建立过程仅需要发送随机数的对称加密密文,或者仅需要发送一个随机数、一个哈希值,通信开销小。

46、5.本方案可以保证所有用户产生一个相同的会话密钥。

47、本发明中,上述各技术方案之间还可以相互组合,以实现更多的优选组合方案。本发明的其他特征和优点将在随后的说明书中阐述,并且,部分优点可从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过说明书以及附图中所特别指出的内容中来实现和获得。