基于组密钥序列卫星网络组密钥协商协议

时间:2022-10-06 07:55:44

基于组密钥序列卫星网络组密钥协商协议

摘要:组密钥的协商是实现卫星网络安全组播通信的一个关键环节。为降低组密钥协商过程的计算及通信开销,针对卫星网络拓扑结构的动态变化问题,基于组密钥序列给出了组控制节点切换方法,实现了对组控制节点的动态调整;引入认证与完整性校验机制,提出了一种组密钥产生与更新机制,提高了密钥协商信息的安全性。仿真分析表明,该卫星网络组密钥协商协议具有较高的效率与安全性。

关键词:卫星网络;组密钥协商;网络模型;组密钥序列

中图分类号: TP309 文献标志码:A

Group key agreement and rekeying scheme in satellite network based on group key sequence

PAN Yan.hui1,2*, WANG Tao1, WU Yang1, ZHENG Yan.ru2

1. Department of Computer Engineering, Ordnance Engineering College, Shijiazhuang Hebei 050003, China;2. Xi’an Satellite Control Center, Xi’an Shaanxi 710033, ChinaAbstract:

Group key agreement is one of the important stages to carry out secure multicast communication. A group controller node switch method was given pointing to the problem of satellite network topology changed dynamically. It could adjust controlling nodes in a dynamic way. Then, both authentication and integrality mechanism were used to attest agreement messages and group keys, a group key generation and renewing method was proposed, which could improve security of agreement messages. The results of simulation and analysis show that this group key agreement protocol leads to high efficiency and security. Key words:

satellite network; group key agreement; network model; group key sequence

0引言

组密钥管理的目的是为组成员生成、分发和更新组密钥,实现组播通信时秘密信息在组内合法成员之间共享。而卫星网络结构及其资源受限等特点,给卫星网络组密钥管理带来巨大的挑战。

文献[1]提出了一种集中式的组密钥协商模式,优势在于具有较低的复杂度与通信量。但面临严重的单点失效问题,而且组控制节点的密钥存储量、计算开销及通信量与组成员数具有线性关系。基于分层逻辑密钥树(Logical Key Hierarchy,LKH)与单向函数树(One.way Function Tree,OFT)的方案ELK(Efficient Large.group Key)[3]、TTS(Tree and Threshold Scheme)[4]等,这类方法的关键在于怎样构建合理的逻辑密钥树,却面临组成员的频繁加入及离开时的密钥更新效率问题,而且会占用较多的通信带宽和计算资源[5]。文献[6]提出了一种适用于节点动态变化的动态群组密钥协商方案,但其在组密钥更新过程中,未对交互信息的完整性进行验证,难以保证所协商的组密钥的一致性[7]。

为此,本文提出了一种安全高效的卫星网络组密钥协商协议SGKMS.GS(Satellite network Group Key agreeMent and rekeying System based on Group Sequence)。在组密钥协商过程中,引入了信息完整性验证机制,为减少节点加入及组密钥更新过程的系统开销,给出了基于组密钥序列的组密钥产生及更新机制。

1网络模型

用TCC(Telluric Control Center)来标记卫星网络地面控制中心,用GCN(Group Control Node)来标记组控制节点,这些组播组控制节点分布在高层卫星网络空间中,相应地,用GN(Group Node)表示组成员节点,卫星网络组密钥协商方案的网络模型如图 1所示。其中,TCC节点的功能是负责系统的初始化及GCN节点的选取。在初始化阶段,假定系统中所有节点已根据对密钥管理方案获取相应的公钥和私钥信息,并且在此基础上通过对密钥协商过程建立了TCC节点与GCN节点、GN节点与GCN间的会话密钥。

TCC定义映射函数g(),映射函数g()的输入参数为组播组成员位置信息,函数返回值为组播组控制节点信息,在初始化过程结束后公开g()。

TCC为所有GCN节点选择适合于组播组规模的密钥树生成算法,并确定组密钥更新周期w。2组控制节点的切换算法星节点处于不断运动状态过程中,因此,当组控制节点中所管理的某一个组成员GN将要脱离当前组播组控制节点GCNi的有效管制范围时,需要进行组播组控制节点的切换,将GN的组播组控制权交由下一组控制节点GCNi+1,因此组控制节点GCNi与GCNi+1间需交换的信息主要包括:当前组的组密钥序列信息,当前组中所有组成员与组控制节点的会话密钥,逻辑密钥,而这些均可由逻辑密钥树信息表示。具体的组控制节点切换过程分为以下几部分,即:GCNi节点构造并发送切换消息,GCNi+1节点的处理,GCNi+1节点接收并处理切换信息,GCNi+1节点接收并处理切换信息。

图1卫星网络组密钥协商网络模型1)GCNi节点构造并发送切换消息。

步骤1GCNi对GCNi+1节点的身份进行认证,由于节点GCNi+1节点的公/私密钥对是通过SKMS.ESC方案获取的,而其建立在自认证公钥基础上,因此,可以简单地通过GCNi+1的公钥来实现。通过认证则继续;否则结束该过程。

步骤2GCNi构建其组成员信息Msg={LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn,H(LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn)}。其中,LKTI(Information for Logical Key Tree)为当前组播组逻辑密钥树信息,逻辑密钥树信息LKTI的数据结构如图 2所示。T为信息有效期,IGNi为节点i的信息;H()为安全Hash函数。

步骤3使用先前与GCNi+1建立的会话密钥K,向GCNi+1节点加密发送信息E({LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn,H(LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn)},K)。

2)GCNi+1节点接收并处理切换信息。第4期

潘艳辉等:基于组密钥序列卫星网络组密钥协商协议计算机应用 第32卷

步骤1GCNi+1节点收到E({LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn,H(LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn)},K)。

图片

图2LKTI数据结构

步骤2记录当前系统时刻t,使用K解密并验证信息的完整性。

步骤3根据当前系统时刻t与T值,进一步判断信息的有效性。当信息的完整性及生命周期验证合格后,则继续;否

则丢弃该信息数据包。

步骤4节点GCNi+1将信息E({LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn,H(LKTI,T,IGN1,IGN2,…,IGNn-1,IGNn)},K)标记为已验证过期信息,以后再次收到类似的信息后将不再做出响应。

步骤5GCNi+1发送控制节点切换确认信息E({CI,ti+1},H({CI,ti+1}),K)给GCNi节点,其中:CI为控制节点切换标记,ti+1为GCNi+1节点发送确认信息的时刻。

3)GCNi节点处理切换回复信息。

步骤1GCNi节点收到切换信息E({CI,ti+1},H({CI,ti+1}),K)。

步骤2GCNi节点解密信息。

步骤3根据当前系统时刻t及网络最大传输时延DW,判断切换信息的有效性,若信息验证通过,则控制节点切换成功;否则重新启动该切换过程。

3组密钥协商与更新算法

3.1组密钥协商

第i个组播组确定该组的控制节点GCNi后,其组密钥协商过程如下。

步骤1组播组控制节点GCNi根据组播组成员个数n及逻辑密钥树生成算法,为n个组播组成员构建m叉平衡逻辑密钥树。每个组播组成员均对应密钥树上的唯一一个叶子节点,将每一层上的节点标记为NLU;LU代表密钥树的第L层上的第U+1个节点(从左至右);非叶子节点NLU对应的密钥为逻辑密钥LKLU,逻辑密钥LKLU产生方式为:GCNi节点选择随机函数f()与随机数x,令LKLU = f(mL+U)x。叶子节点LNj对应的密钥为该叶子节点与组播控制节点GCNi的会话密钥Skij。

步骤2GCNi根据组成员申请服务时间长度与组密钥更新周期生成组密钥序列STSi={GK1,GK2,…,GKr-1,GKr}。

步骤3GCNi为组播组所有组成员生成其密钥树路径上的逻辑密钥及其申请的组密钥序列。

步骤4GCNi发送E({GK,LK,H(GK,LK)},SKij)。

其中:1≤j≤n,GK为节点GNj的组密钥更新序列,LK为节点GNj到根节点路径上的逻辑密钥序列,SKij为组控制节点与节点GNj建立的会话密钥。

步骤5节点GNj收到组控制节点GCNi的信息。

步骤6节点GNj用SKij解密信息并验证其有效性,待验证成功后,获得组密钥GK;否则重新协商。

3.2组密钥更新

组密钥的更新可归纳为三种情况,下面分别进行阐述。

1)无成员变化时的组密钥更新。

组播组无成员变化时,所有组播组成员根据上次组密钥更新时刻t1与系统组密钥更新周期w,结合当前系统时刻,判断组密钥更新时刻是否到来。若需要进行组密钥更新,则根据已知组密钥更新序列,将当前组密钥GKi更新为GKi+1。

2)组成员加入时的组密钥更新。

当有新的组成员GNj已通过身份验证并向GCN节点申请加入组播时,需更新系统的逻辑密钥及组密钥序列,以保证组密钥的前向安全性。新成员加入时其组密钥及节点逻辑密钥更新步骤如下。步骤1申请加入成员GNj向GCNi发送请求加入信息。

步骤2GCNi节点验证申请成员GNj身份的有效性,其身份验证成功后,GCNi节点与申请节点GNj以安全会话密钥协商方式协商产生其会话密钥SKij;否则,丢弃该申请节点的加入信息。

步骤3组控制节点GCNi根据密钥树生成算法及已有组播组成员节点信息,为新节点GNj选定其可用的一个叶子节点。

步骤4组控制节点GCNi根据GNj的申请通信时长,为GNj生成相应的组密钥序列GK。

步骤5组控制节点GCNi根据GNj在逻辑密钥树中的位置,为GNj生成到根节点路径上的所有节点逻辑密钥LK。

步骤6组控制节点GCNi向新节点GNj发送秘密信息E({GK,LK,H(GK,LK)},SKij)。

步骤7节点GNj收到信息E({GK,LK,H(GK,LK)},SKij)。

步骤8节点GNj使用SKij解密信息并验证其完整性。若信息完整性验证通过,则新加入节点GKj可加入到组播通信中,否则节点GNj重新启动该过程。

3)组成员离开时的组密钥更新。

在第t次组播会话之前若有组成员节点离开,为确保前向安全性,需进行逻辑密钥及组密钥更新操作,具体操作如下。

①逻辑密钥树结构无变化时。

步骤1GCNi节点产生组密钥更新信息GKUI(Group Key Updating Imformation),以及逻辑密钥更新信息LKUI(Logic Key Updating Imformation);

步骤2组控制节点GCNi构造离开节点的除根节点以外的所有祖先节点集合SOP(Set of Predecessors);

步骤3组控制节点GCNi构造SOP节点的邻节点集合ASOP(Adjacent Set of Predecessors);

步骤4组控制节点GCNi使用ASOP节点处密钥加密组密钥更新信息GKUI、逻辑密钥更新信息LKUI;

步骤5组控制节点GCNi通过Hash函数提取密钥更新信息GKUI、逻辑密钥更新信息LKUI的摘要;

步骤6组控制节点GCNi广播信息E({GKUI,LKUI,H(GKUI,LKUI)},SK/LK);

步骤7组成员节点收到LKUI和GKUI更新信息;

步骤8组成员节点解密LKUI和GKUI,因为剩余的组成员节点至少具有ASOP集合中的一个密钥,故可解密并验证收到消息的正确性,若验证通过则继续,否则丢弃该消息;

步骤9组成员节点更新其逻辑密钥路径上的逻辑密钥为LK′=LKLKUI,组密钥更新为GK′=GKLKUI。

②逻辑密钥树结构发生变化时。

当大量组成员退出组播组,逻辑密钥树结构发生巨大变化时,将采用第2章中的组密钥切换方式,GCNi节点根据密钥树生成算法为剩余组播组成员构建新的逻辑密钥树,并计算新的节点逻辑密钥。4仿真分析

4.1安全性分析

1)抗重放攻击。

在信息交互过程中,为避免潜在的重放攻击威胁,引入了时间戳标志,并采用安全Hash函数进行了信息摘要提取,即使攻击者截获了先前发送的相关信息,由于信息采用了加密与完整性验证机制,故攻击者无法修改信息中包含的时间戳信息,信息接收方可通过时间戳标记验证信息的有效性。

2)能够确保信息完整性。

在信息交互过程中,使用了安全Hash函数提取信息摘要信息,并将摘要信息连同数据信息进行了加密处理,保证了攻击者在不具有加解密密钥的前提下,无法实现对信息的修改而不被察觉,确保了交互信息的完整性,也保证了协商的组密钥的一致性。

3)具有前向安全性。

当有组成员离开时,组控制节点将发起组密钥及逻辑密钥更新过程,通过广播组密钥及逻辑密钥更新信息,剩下的组成员可更新其组密钥序列及逻辑密钥,故离开成员无法获知新的组密钥信息及逻辑密钥信息,保证了前向安全性。

4)具有后向安全性。

当有新的组成员加入时,组控制节点将为其分发其有效服务时间段内的组密钥序列及逻辑密钥,由于组成员组密钥序列及逻辑密钥更新,均由组控制节点产生秘密随机值方式实现,前后更新过程无任何联系,因此,新加入的组成员无法通过其现在的组密钥序列及逻辑密钥获知先前的组密钥序列和逻辑密钥信息,故组密钥协商及更新过程具有后向安全性。

4.2性能分析

为便于分析,首先给出如表1所示符号定义。

表格(有表名)

5结语

构建合理的卫星网络组密钥管理方案,关键在于怎样平衡开销与安全性。文中通过组控制节点切换机制,适应卫星网络拓扑结构的动态变化,给出了组密钥建立与更新方法,仿真分析表明其具有安全高效性。参考文献:[1]

ZHENG LI. Secure multicast communications[D]. Regina: University of Regina, 2003.

[2]

BALENSON D, SHERMAN A. Key management for large dynamic groups: one.way function trees and amortized initialization [DB/OL].(1999-12-10) [2011-09-01].www.省略/pub/id/draft.balenso.n.groupkeymgmt.oft.00.txt.

[3]

PERRIG A, SONG D, TYGAR J. ELK,a new protocol for efficient large.group key distribution[C]// Proceedings of the 2001 IEEE Symposium on Security and Privacy. Washington, DC:IEEE Computer Society Press, 2001:247.

[4]

王志伟, 谷大武. 基于树结构和门限思想的组密钥协商协议[J]. 软件学报, 2004,15(6):924-927.

[5]

武涛, 郑雪峰, 姚宣霞,等. 一种适用于大型动态群组的密钥管理方案[J]. 小型微型计算机系统, 2008,29(4):639-642.

[6]

武涛, 郑雪峰, 白丽珍. 一种高效的组密钥分发协议[J]. 小型微型计算机系统, 2010,31(10):2030-2033.

[7]

赵志国, 杨波. 一种基于时间结构树的多播密钥管理方案[J]. 西安电子科技大学学报, 2004,31(8):55-58.

上一篇:基于P2P的用户生产内容视频资源查找策略 下一篇:EPC Gen2标准下强安全射频识别认证协议