Advertisement

卫星安全组网认证论文详解

阅读量:

文章:《卫星安全组网认证关键技术研究》

文章链接:卫星安全组网认证关键技术研究 - 中国知网

1.摘要

对象: 双层卫星网络,通常由地球同步轨道卫星(GEO)和低地球轨道卫星(LEO)组成,其中GEO在通信中起到中继器的作用,能够提供广域覆盖区域,但其传输时延较高,LEO具有较低的传输时延和较高的带宽,能够支持实时通信和高速数据传输。

应用: 为偏远地区和移动设备提供可靠的通信服务。

现存问题: 现有的安全认证方案在设计时大多未考虑具体网络结构,并不完全适用于双层卫星网络高、低轨卫星之间的层间组网认证、邻近轨道相邻低轨卫星之间的星间组网认证等较为复杂的组网场景。

目标: 实现海量通信卫星在复杂环境下的自主、安全、高效组网。

贡献: 基于对称密码算法提出了两种认证方案,分别适用于双层卫星网络高、低轨卫星组网的星间组网认证以及低轨卫星网络邻近轨道相邻卫星组网的星间组网认证,解决了GEO 与LEO卫星建立层间星际链路(ILISL)时面临的层间组网认证问题和邻近轨道相邻 LEO 卫星进行轨道间星间链路(IOL)切换时涉及的组网认证问题。

2.绪论

双层卫星网络的原理: 由多颗GEO组成天基骨干网,负责转发地面控制中心(TCC)的控制指令并协助TCC对 LEO进行管理;由海量 LEO组成天基接入网,负责为用户提供通信接入与数据传输服务;通过双网互联,共同为地面提供高带宽移动通信服务。

双层卫星组网的身份认证类别: 主要包括星地身份认证、同层卫星之间的组网认证、层间卫星之间的组网认证三类。

组网时的身份认证过程:

(1) 新入轨卫星(不论是 GEO 还是 LEO)与 TCC 进行星地身份认证以加入卫星网络;

(2) 成功入网后,该卫星继续与同轨道的相邻卫星进行星间身份认证并通过轨道内星间链路(ISL)与同轨道的伙伴卫星组建结构稳定的环形网络;

(3、4为LEO额外需要进行的认证)

(3) 接下来,为了实时接收来自 TCC 的控制指令,新入轨的 LEO 还需要与 GEO 进行身份认证并通过层间星际链路(ILISL)接入GEO网络;

(4) 最后,为保证低轨卫星网络的互联互通,邻近轨道相邻LEO之间还需要继续进行星间身份认证并建立轨道间星间链路(IOL)。

研究现状:

(1) 根据所用密码技术的不同,卫星网络的认证方案大致可以分为公钥、证书等技术和基于对称密码设计的认证方案两类;但是现有方案普遍存在认证流程复杂、需要依赖可信第三方等问题。

(2) 考虑到资源受限的星上环境和断续连通的链路特点,针对轻量化的认证方案改进方法有:更换轻量化密码算法、简化认证流程、设计预认证步骤等。

(3) 为了保护认证节点的身份信息,匿名认证也是研究人员进行方案设计时的一个重要关注点。

3.基础知识

3.1 卫星网络

轨道内星间链路(ISL): 指在同一轨道平面上进行的星间通信。由于ISL的卫星之间距离较近,因此通信延迟较小,容易实现高速率的数据传输。
ISL

轨道间星间链路(IOL): 指在不同轨道平面上的卫星之间建立的通信链路(如邻近轨道上的相邻LEO之间)。由于IOL的卫星之间距离较远,因此通信延迟较大,通信效率较低,但可以实现更广泛的星间网络覆盖。
IOL

层间星际链路(ILISL): 指在不同轨道平面上的卫星之间(如GEO和LEO)建立的卫星间通信链路。由于ILISL的卫星之间的距离更远,因此通信效率更低,技术难度也更大。但是,ILISL可以实现不同轨道平面之间的互联互通,覆盖范围更广。
ILISL

双层卫星网络运作方式:

(1) 该网络中的 GEO 主要承担网络控制与数据中继任务:多颗GEO 通过 ISL 建立结构稳定的骨干网络,并通过 ILISL向 LEO转发TCC的控制指令,还可以根据 LEO网络的实际运行情况,自主发布部分控制指令,协助TCC 对LEO进行管理。

(2) LEO负责通信接入与数据传输服务:大量 LEO通过星间链路可以组成高效互联的近地卫星通信网,共同向地面移动互联网服务。但由于LEO网络包含大量组网卫星,拓扑结构复杂且涉及多种组网方式,实际运行时,LEO 除了需要与同轨道上的相邻 LEO 建立 ISL,还需要与邻近轨道上的相邻LEO建立 IOL 链路。

3.2 密码学

随机数:

(1) 应用:设计安全协议时,诸如系统初始化阶段的密钥生成、认证过程中的挑战响应、建立安全信道时的会话密钥协商等都需要用到随机数。

(2) 特点:随机性和不可预测性。随机性指随机序列中每个数出现的频率都近似相等,攻击者无法根据现有序列得出任何正确的统计规律;不可预测性指序列中每个数的出现都相互独立、互不影响,攻击者无法根据现有序列对之后的数字序列进行准确预测。

消息验证码(MAC):

(1) 定义与应用:指原始消息被一个受密钥控制的公开函数压缩后生成的具有认证功能的定长字符序列,常用于数据完整性保护和实体身份认证。

(2) 核心思想:通信双方A和B会预置一共享密钥K。当 A发送消息m时,先计算MAC=C_{k}C_{k}是由密钥K控制且算法公开的压缩函数。计算完成后,A 将级联消息MAC、m发送给B。收到消息后,B使用同样的方法计算MAC,并比较计算得到的MAC与原始消息中的MAC是否相等。

(3) 文中作用:MAC值主要用于对认证令牌的有效性进行检验。

哈希函数方法HMAC:

(1) 应用:能够通过镶嵌哈希函数的方式来构造MAC 函数进而计算消息的MAC 值。

(2) 文中作用:主要用于一次性临时身份的生成。

分组密码:

(1) 定义与应用:分组密码是对称密码系统的重要组成部分,广泛应用于数据加密、随机数生成、身份认证等密码场景。

(2) 核心思想:将明文消息m 划分成n个定长的分组,对于各个分组,通过混淆和扩散的方式将明文与密钥充分混合,打乱密文的统计特性,使攻击者无章可循。

(3) 运行模式:

①电码本(ECB)模式:一次只对一个明文分组进行加密,并且每次加密都使用相同的加密密钥,在文中该模式用于生成可解密的临时身份。
②分组链接(CBC)模式:与ECB基本相同,唯一的区别是每个分组的输入是当前明文分组与前一分组所得密文的异或,在文中该模式用于认证令牌中MAC 值的计算和校验。
③OFB输出反馈模式:使用时需要增加一个移位寄存器,进行加密时,当前分组的密文输出的后半部分比特序列会反馈到下一分组的移位寄存器上,在文中该模式用于随机数的生成。

DH密钥交换:

是一种常用的密钥协商算法,在文中,主要使用ECDH密钥交换协议进行低轨卫星网络会话密钥的协商。

3.3 安全协议

BAN逻辑:

(1) 定义与应用:是一种协议安全性证明的方法,用于在抽象层面对认证协议的安全性进行分析。

(2) 推理规则

(3) 推理过程:

①协议理想化:建立理想化模型,将协议的具体实现转化为BAN逻辑能够识别的推理公式。
②指定协议目标:根据设计要求制定具体的协议目标,并将其转化为对应的逻辑命题。
③设置初始假设:根据实际情况设置初始假设,初始假设应当按照仅给出满足协议执行的最低要求的原则进行设置。
④协议安全性分析:按照BAN逻辑定义的推理规则对认证协议的每一步交互进行分析,重点关注协议是否能够正常工作、是否达到了预期目的、是否存在冗余操作、初始假设是否可以精简等。

(4) Dolev-Yao攻击者模型:该模型首次提出将协议的安全性与协议所用密码系统的安全性分开,且认为协议应用场景中的攻击者具备窃听、截获或阻断经过网络的所有消息,存储截获的消息并根据存储的消息伪造并发送新消息等特征。

4.双层卫星网络的星间组网认证方案(GEO与LEO之间)

解决问题: 双层卫星网络高、低轨卫星之间的层间组网认证。

优点: 能够在无可信第三方参与的情况下,实现GEO和LEO卫星之间的信任建立与安全通信。

4.1 模型

系统模型:

(1) 模型构成:GEO使用地球同步轨道,LEO使用极地轨道,LEO 需要在 GEO 网络的不同接入点间进行快速切换(切换主要发生在极点处),以实现稳定的层间网络通信、保证 TCC 控制指令的实时转发。
双层卫星网络基本结构

(2) 需解决的问题:在极点处LEO与GEO进行ILISL链路切换时涉及的身份认证问题(GEO在极点处存在盲区,LEO会短暂脱离GEO网络并处于失联状态,此期间可能受到攻击者入侵)。

(3) 解决方法:每次链路切换后都重新进行身份认证并协商新的会话密钥。

攻击者模型:

(1) 文中假定攻击者具备如下功能(与Dolev-Yao 模型类似):

①攻击者能够监听、拦截、存储卫星间的全部会话,包括所有认证信令。
②攻击者能够通过构造的代理节点与目标卫星建立连接并参与星间组网认证。
③攻击者能够对存储的会话内容进行破解,得到会话密钥等关键参数。
④攻击者能够重放拦截的认证信令或利用破解得到的密钥等伪造认证信令。

(2) 攻击者针对卫星网络发起的攻击类别:

①实体假冒攻击:攻击者通过对海量星间会话进行分析推断出认证流程,进而利用构造的卫星代理节点,通过重放认证会话或伪造认证信令等方式绕过卫星的认证系统,实施网络入侵 。 ②拒绝服务攻击:攻击者利用得到的合法身份信息,伪造或篡改认证信令并向目标卫星发送大量认证请求,通过不断消耗卫星计算资源和通信带宽的方式达到瘫痪目标卫星的目的。

认证方案满足的安全需求:

双向认证——防止攻击者通过构造的卫星代理节点对组网卫星进行干扰;
抵御重放攻击——防止攻击者利用过期的认证信令欺骗在轨卫星;
抵御拒绝服务攻击——抵御攻击者通过伪造认证请求等方式发起的拒绝服务攻
密钥独立性——保证星间通信的机密性;
身份信息保护——防止攻击者利用截获的海量认证数据通过流量分析等方式推测出组网卫星的真实身份信息。

4.2 G2L-AKA星间组网认证方案

用途: 要解决 GEO 与 LEO 之间的组网认证问题。

步骤:

(1) 系统初始化:由地面控制中心(TCC) 在卫星发射准备阶段进行,主要进行星间组网认证所需相关信息的生成与分发(包括ID、GID等)。

(2) 初始接入认证:初始接入认证用于 GEO 与 LEO 之间的首次身份认证,具体步骤如下:

① LEO 首先通过身份信息的匿名保护密钥(IDKey)、当前时间以及卫星真实身份(RID)生成临时身份(TID),之后将 TID 和认证请求发送给GEO;
② GEO 收到认证请求后,首先对该请求中 TID 的合法性进行验证:GEO使用预置的星间认证的主密钥(MainKey)对 TID 解密,如果得到的生成临时身份的时间点(T_{TID})满足新鲜性要求,且解密得到的 RID 与TCC 提供的新入轨卫星的身份信息相符,则完成验证;验证通过后GEO 向LEO 返回一个认证令牌(Token):GEO先通过预置的MainKey、获取到的认证时间点(T_{Auth})生成本次认证使用的星间认证的认证密钥(AuthKey);随后通过生成的随机数(RAND)和 AuthKey 生成时间戳保护序列(TK);再通过获取到的当前时间(T_{Token})、生成的 RAND 、预置的卫星的群组身份标识(GID)生成消息验证码(MAC);最后GEO将上述过程所得认证参数按照对应顺序合并成 Token (包含 RANDT_{Token}GID等)发送给LEO ,并计算存储会话密钥(CK,由 AuthKeyRAND 生成)和预期认证响应(XRES,由 CKRAND 生成)。
③ LEO 收到来自GEO 的 Token 后对其合法性进行验证:LEO 首先基于预置的MainKeyT_{Auth}以相同方式生成 AuthKey ;随后基于 AuthKey 和从接收到的 Token 中提取出的 RAND 计算 TK 并恢复出 T_{Token},若 T_{Token} 满足要求则继续认证;之后LEO基于生成的 AuthKeyToken 中提取的 RANDT_{Token}GID 使用相同方式生成 XMAC ,并同Token 中的 MAC 进行比对,如果在本地计算得到的 XMACToken 中的 MAC 相等,完成对目标GEO的身份认证;认证完成后,LEO继续计算该 Token 对应的 CKRES ,并将计算得到的 RES 返回给LEO;
④GEO在规定时间内收到返回的 RES 后,比较该 RES 与存储的 XRES 是否相和等,若相等,则完成对该LEO的认证。

(初始接入认证完成后,认证双方即可使用会话密钥CK进行安全通信。为保证后续步骤的有效进行,认证双方需要在完成初始接入认证后需注册并相互交换必要的认证信息)

(3) 认证预计算:预计算机制可以帮助组网卫星提前计算认证参数,从而减少卫星在认证阶段的计算开销、提升星间组网的认证效率,该过程只需要GEO和 LEO在各自的低负载期独立完成。

① GEO预计算:GEO通过预测计算下次与目标 LEO 进行认证时的各时间点,得到 T_{TID}T_{Auth}T_{Token} 三个时间参数;之后通过 T_{TID}T_{Auth} 计算出下次认证时 LEO 使用的 TID(通过预测的 T_{TID} 和预置的 IDKey 计算得到)并更新 AuthKey (通过预置的 MainKey 和预测出的 T_{Auth}得到);随后GEO 利用上次认证中使用的 RAND 和新生成的 AuthKey 计算 LEO 的预期响应 XRES(先由 AuthKey 和上次使用的 RAND 生成 CK,再由 CKRAND 生成 XRES );最后GEO新生成一个 RAND,并基于该 RAND、预测的T_{Token} 和新生成的 AuthKey 计算下次认证所需 TokenCK。计算完毕后,GEO在自身的认证信息表中存储 XTIDXRESTokenCK
② LEO预计算:首先LEO通过预测得到 T_{TID}T_{Auth};之后根据 T_{TID}T_{Auth} 依次更新 TIDAuthKeyRES;最后LEO在自身的认证信息表中存储 TIDREST_{Token}

(4) 星间切换认证:当LEO与已注册过认证信息的GEO再次进行身份认证时,只需要借助预计算得到的认证参数执行轻量化的星间切换认证即可,切换认证具体步骤如下:

①若轨道参数正常,LEO将预计算得到的 TIDRES 连同认证请求一并发送给GEO; 若LEO出现轨道摄动(是描述天体在行星引力、其他天体引力以及其他扰动力作用下,其轨道发生的变化的现象。),则放弃当前认证,重新执行初始接入认证。
② GEO收到认证请求后,将 TIDRES 与自身存储的 XTIDXRES 进行比较,若相同则认证完成,返回预计算得到的 Token;反之LEO重新执行初始接入认证。
③ LEO收到返回的 Token 后首先验证其新鲜性,若 T_{Token} 满足新鲜性要求,继续对该Token 中的 MAC 值进行检验,若两次检验均通过则完成认证,并基于该 TokenAuthKey 计算会话密钥CK。

认证完成后,认证双方即可使用会话密钥CK进行安全通信。

分析:

全部评论 (0)

还没有任何评论哟~