朱诗兵,周 赤,李长青
(1.装备学院 信息装备系,北京 101416;2.陆军航空兵学院 指挥系,北京 101100)
LTE网络切换密钥更新方案分析与改进
朱诗兵1,周 赤2,李长青1
(1.装备学院 信息装备系,北京 101416;2.陆军航空兵学院 指挥系,北京 101100)
LTE用户切换时的密钥管理在很大程度上关系着用户安全,切换密钥管理包括密钥的生成、分发、更新和撤销。对现有长期演进(Long Term Evolution,LTE)网络切换密钥管理更新机制进行简要介绍,包括X2和S1切换密钥更新方案。针对X1切换仅有两跳前向密钥隔离的安全缺陷,借鉴S1切换方案设计思想,提出一跳前向密钥隔离的X2切换密钥更新方案(OFKS-X2),并对OFKS-X2密钥更新方案进行了安全性和实用性分析。结果表明,OFKS-X2密钥更新方案能够提供一跳前向密钥隔离,对协议有效性影响不大,且用户的消息工作量没有变化,网络侧的消息处理复杂度略有增加,用户侧计算量基本不变,网络侧计算量略有增加。
LTE;切换密钥管理;X1切换;S1切换;一跳前向密钥隔离
LTE技术是我国主推的第4代移动通信技术,尤其是其中的TDD部分(即TD-LTE[1-2])。一方面是由于我国拥有自主研发知识产权,另一方面是由于TD-LTE可以与TD-SCDMA很好地兼容,具有广阔的市场前景,得到我国政府和主要通信厂商的大力支持[3-4]。尽管LTE的安全机制相对前3代移动通信技术有所改善,但仍然无法完全满足某些对安全性有较高要求的使用场合,需要进行适应性改进。其中用户切换机制常常成为攻击者的目标,而LTE切换密钥管理与切换的安全性密切相关。
本文首先介绍LTE的切换密钥管理[5-6],包括X2切换密钥更新方案和S1切换密钥更新方案,对LTE切换密钥更新方案进行安全性分析;针对X2切换密钥更新方案只能提供两跳前向密钥隔离这一安全缺陷,借鉴S1切换密钥更新方案的思想,提前MME参与协议的时间,使得MME在UE接到源基站发送来的切换到目标基站的命令之前,就为目标基站提供新鲜的密钥材料。在此基础上提出一跳前向密钥分离OFKS-X2(One-hop Forward Key Separation,OFKS)密钥更新方案;最后针对2类攻击模型对OFKS-X2密钥更新方案的安全性、有效性进行分析。
1.1 LTE切换中的密钥推演
LTE中有2种切换类型:X2切换[7]和S1切换[8],这是以切换时主要切换信令传输时经由的接口命名的,LTE密钥管理[9]如图1所示。当用户移动时,可能会从一个eNB(源eNB)移动到同一个MME管理下的另一个eNB(目标eNB),这种移动会导致用户在2个eNB之间进行切换,该切换是通过X2接口实现的,因此这种切换被称为X2切换。当源eNB和目标eNB之间不存在X2接口连接,或者源eNB发起的X2切换没有成功时,或者源eNB通过一些动态信息会做出基于S1接口发起的切换决定,这种切换称为S1切换。
图1 LTE密钥管理
密钥更新材料是由移动性管理实体[10](Mobility Management Entity,MME)和用户设备[11](User Equipment,UE)基于下一跳密钥(Next-Hop key,NH)和本地主密钥KASME生成的。密钥更新步骤如下:
NH0=KeNB-0=KDF(KASME,NASuplinkCOUNT),
(1)
NH1=KDF(KASME,KeNB-0),
(2)
NHNCC+1=KDF(KASME,NHNCC)。
(3)
首先AS安全建立,MME和UE利用KASME推算出KeNB和临时参数NH。并且每个NH参数都有一个NH链计数器(NCC)与其相对应。初始的KeNB-0由KASME和NASuplinkCOUNT(上行NAS COUNT)推演出来,对应的NCC设为0。同时MME和UE也利用KASME和KeNB-0将NH1推算出来,对应的NCC值为1。
NCC是一个3位的NH的密钥索引(其值为0~7),通过切换命令信令发送到UE。从UE的角度,NCC的值不会减小,因为UE在推演NH值时不能倒退,而且没有存储旧的NH值。所以,如果UE在切换命令中收到的NCC值比当前使用的KeNB的NCC值要大,UE会在同步{NH,NCC}参数值之后,进行垂直推演(式(5))。否则,UE会进行水平推演(式(4))。
KeNB*=KDF(NHNCC,PCI,EARFCN-DL),
(4)
KeNB*=KDF(KeNB,PCI,EARFCN-DL)。
(5)
式中,PCI(Physical Cell ID)为目标小区的物理小区标识;EARFCN-DL(EUTRAN Absolute Radio Frequency Channel Number-Down Link)为E-UTRAN绝对频率信道值—下行链路。
式(4)表示水平推演过程,在源基站不存在可用的{NH,NCC}对时运行。式(5)表示垂直推演过程,此时源基站(X2切换)或目标基站(S1切换)中存在可用的{NH,NCC}对,并可以利用它推演出新鲜的KeNB*。
1.2 LTE中的切换密钥更新方案
LTE的X2切换密钥更新方案流程[12]如图2所示。
图2 LTE中X2切换密钥更新方案流程
具体的流程描述如下:
(0a)~(0e) UE和HSS初始化下一跳密钥NH,在UE建立初始化AS上下文时运行。MME通过S1AP(S1:S1接口;AP:Application Protocol,应用协议)将NH和NCC通初始化上下文请求传送给eNB。
(1~5) UE向源eNB发送测量报告消息;源eNB做出进行切换判决并做出切换决定;源eNB向目标eNB发送包含NCC的切换请求消息;目标eNB向源eNB返回包含目标PCI的切换请求应答消息。在收到切换请求应答消息之后,源eNB由NH,目标PCI和EARFCN-DL计算出KeNB*。计算KeNB*子过程如图3所示。
图3 KeNB*计算子过程
(6~10) 源eNB将计算出的KeNB*发送给目标eNB,此消息还包含当前的RRC/UP算法标识。目标eNB更新KeNB,并推算出用户平面(User Plane,UP)和无线资源控制(Radio Resource Control,RRC)密钥。KeNB更新过程如图4所示。
目标eNB向源eNB发送切换命令消息,包含目标eNB为用户生成的新的小区无线网络的临时标识符(Cell Radio Network Temporary Identifier,C-RNTI)及选定的RRC/UP算法。收到切换命令消息后,源eNB向用户发送切换命令,包含NCC值,目标PCI,EARFCN-DL和目标eNB选定的算法标识。UE进行NH同步,计算KeNB*,更新KeNB并推导UE、RRC密钥。NH同步子过程如图5所示。
图4 KeNB更新过程
图5 NH同步子过程
(11~15) UE存储新的NH值,即NH=NH*;NCC=Temp-NCC,并释放临时变量NH*和Temp-NCC。UE向目标eNB发送切换确认消息。目标eNB向MME发送路径切换消息,以更新数据路由,此消息包含NCC值。MME向服务网关(S-GW)发送用户面更新请求。MME计算NCC[+1]=NCC+1,并进行NH同步。
(16~19) 服务网关向MME返回用户面更新应答消息。MME向目标eNB发送路径切换应答消息,以提供NH*[+1]和NCC[+1]值用于下一次切换。MME存储新的NH值,即令NH=NH*[+1];NCC=NCC[+1]。目标eNB向源eNB发送资源释放消息,以使源eNB释放相应资源。
LTE的S1切换密钥更新方案流程如图6所示。NH=KDF(KASME,最新NCC)。
图6 LTE中S1切换密钥更新方案流程
具体流程描述如下:
1.UE向源eNB发送测量报告消息;
2. 源eNB进行切换判决并作出切换决定;
3. 源eNB向MME发送切换需求消息;
4a.、4b. 收到切换需求消息后,MME利用本地存储数据计算新的{NH,NCC}并存储;
5. MME向目标eNB发送S1切换请求消息,包含{NH,NCC}对;
6. 在收到切换请求消息之后,目标eNB通过切换请求消息中的NH,目标PCI和EARFCN-DL计算出KeNB*,并推导出UP、RRC密钥,其中KeNB*计算过程与X1切换中的相同;
7. 目标eNB向MME发送切换请求应答消息,包含目标PCI;
8. MME向源eNB发送切换命令消息,包含NCC和目标PCI;
9. 收到切换命令消息后,源eNB向用户发送切换命令消息,包含NCC值,目标PCI,EARFCN-DL和目标eNB选定的算法标识;
10a.~10c. UE进行NH同步,计算KeNB*,更新KeNB并推导UE、RRC密钥。
NH同步子过程和KeNB*计算子过程与X1切换中相同。步骤11~19与X2切换中的步骤11~19相同。
LTE中,源基站在计算目标基站密钥KeNB*时使用单向函数作为KDF,这样目标基站就无法推演出UE在源基站中使用的密钥KeNB。因此LTE可以提供一跳后向密钥隔离。
值得注意的是,在S1切换中MME推演出新鲜的{NH,NCC}对,并将其直接提供给目标基站,这样源基站就无法得知KeNB*,即S1切换可以提供一跳前向密钥隔离。而X2切换只能提供两跳前向密钥隔离,这是由于X2切换中,源基站知道{NH,NCC}对和KeNB*,但是在两跳之后,由于源基站无法获知X2切换之后路径转换信令中提供的{NH,NCC}对,源基站将无法获知下一个KeNB*,即KeNB**。
LTE推荐的S1切换密钥更新方案可以提供一跳前向隔离,而X2切换只能提供两跳前向隔离,这将为LTE网络安全[13-14]埋下隐患,需对X1切换密钥更新方案进行相应改进。
OFKS-X2密钥更新方案设计构想:源eNB无法获知目标eNB推导新密钥时所需的全部密钥材料;MME在UE接到源基站发送的切换到目标基站的命令之前,为目标基站提供新鲜的密钥材料;直接在目标eNB中完成KeNB*的计算并更新,而不再通过源eNB传送。
借鉴S1切换密钥更新方案,在LTE建议的X2切换密钥更新方案的基础上,从设计思路出发,本文设计的OFKS-X2密钥更新方案的实现过程如图7所示。
由图7可以看出,OFKS-X2密钥更新方案实现了最初的设计思路想,相比原方案,OFKS-X2密钥更新方案的实现过程做出了以下改变:
① 增加了以下步骤:
步骤4*在收到源eNB发来的切换请求消息后,目标eNB向MME发送密钥更新请求消息,包含NCC。这样就如S1密钥更新方案一样,MME在切换之前就收到了路径切换的通知。
步骤5*在收到目标eNB发来的密钥更新请求消息后,MME将收到的NCC加1,进行一次NH同步,并储存新鲜的{NH,NCC}对。
此步骤使得本方案中计算KeNB*的输入与LTE方案中的不同,LTE方案计算KeNB*的输入是源eNB存储的NH值,而本方案的输入是原NCC+1,这是实现一跳前向密钥隔离的关键。
步骤6*MME将新鲜的{NH,NCC}对通过密钥更新请求应答消息返回给目标eNB。
通过步骤5和步骤6,MME就在UE接到源基站发送来的切换到目标基站的命令之前,为目标基站提供新鲜的密钥材料。
步骤7*在收到MME发来的密钥更新请求应答消息后,目标eNB由收到的NH,目标PCI和EARFCN-DL计算出KeNB*,更新KeNB并推算出UP和RRC密钥。更新KeNB的过程跟EPS-AKA相同。
这样就直接在目标eNB中完成了KeNB**的计算,而不再通过源eNB传送。
图7 OFKS-X2密钥更新方案
② 减去了LTE原有X2密钥更新方案中的步骤4、步骤5、步骤6和步骤7。其中步骤5~7由步骤7*取代。这样源eNB只能通过目标eNB发来的切换请求应答消息得知最新的NCC值,但由上述公式知道,推导NH值需要KASME,而只有UE和MME知道KASME,其他实体无法获知,包括源eNB,这样源eNB无法获知目标eNB推导新密钥时所需的全部密钥材料(即无法获知最新的NH值)。
除上述改变外,OFKS-X2密钥更新方案保持LTE原有X2密钥更新方案的其他步骤不变,最大限度地继承了原有方案的密钥和命令消息。
4.1 安全性分析
针对2类攻击模型对本方案的安全性进行分析。
① 攻击者只能获取空口信号。在这种情况下,攻击者可以得到所有的空口信号,并获取其中的密钥材料,包括C-RNTI、PCI、最新的NCC以及目标eNB选定的接入层密码算法标识。新密钥的推导绑定了最新NH、C-RNTI、PCI等参数,即KeNB**=KDF(KeNB*,C-RNTI)=KDF(KDF(最新NH,PCI),C-RNTI),最新NH=KDF(KASME,最新NCC),其中的KASME只为UE和MME所知,并且不会在空口传输,因此只能获取空口信号的攻击者是无法获知最新NH的,也就无法推导出新的KeNB**。因此本方案可以有效对抗此类攻击。
② 攻击者除能获取空口信号,还能完全控制源eNB。此种情况下,攻击者不仅能够获得空口信号中的所有密钥材料,还能够获取存储在源eNB中的密钥材料,包括当前的KeNB、NH、PCI和C-RNTI。跟模型一中情况一样攻击者仍不能得到KASME,攻击者是无法获知最新NH的,也就无法推导出新的KeNB**。因此本方案可以有效对抗此类攻击。
4.2 有效性分析
下面以协议的执行效率作为标准,对OFKS-X2密钥更新方案性能进行分析。相比于现有LTE方案:
① 用户的消息工作量没有变化,网络侧的消息处理复杂度略有增加。
和现有的LTE方案相比,本方案在目标eNB和MME之间增加了2条消息:一条是目标eNB向MME发送的密钥更新请求消息(图7中消息4*),为MME提供NCC,以供其进行NH同步,产生新鲜的密钥材料;另一条是MME向目标eNB发送的密钥更新请求应答消息(图7中消息6*),为目标eNB提供新鲜密钥材料,以供其生成的新的KeNB。增加了网络域消息处理复杂度。但是,本方案没有变动用户和eNB之间交互的消息流,从用户角度来看,本方案消息工作量没有变化,并且获得了更强的安全保护。
② 用户侧的计算量基本不变,网络侧的计算量略有增加。
和现有的LTE方案相比,本方案用户侧的密钥推导过程依然经历了4个子过程:NH同步、存储新的NH值、计算KeNB*、更新KeNB并推导UP、RRC密钥,因此本方案中用户侧的计算量与LTE方案相比基本没变。目标eNB的计算量略有增加,这是因为本方案中目标eNB中增加了计算KeNB*的过程(图7中消息7*)。MME的计算量比LTE方案略有增加,这是由于为了实现一跳前向密钥隔离,相对原方案,本方案中MME在协议开始时增加了一次NH同步的过程(图7中步骤5)。
综上所述,虽然为实现一跳前向密钥隔离,OFKS-X2密钥更新方案增加了网络域的消息处理复杂度,但是从用户角度看,本方案在消息工作量没有变化的情况下,提供了更强的安全保护。而且,增加2条消息传输对于网络域来说是可以承受的。
本文介绍了LTE的切换密钥管理机制,对LTE切换密钥更新方案进行了安全性分析。经分析可知X2切换密钥更新方案只能提供两跳前向密钥隔离。借鉴S1切换密钥更新方案的设计思想,提前了MME参与协议的时间,提出了能够提供一条前向密钥隔离的X2密钥更新方案——OFKS-X2密钥更新方案。通过2类攻击模型对所提方案的安全性进行了分析,证明OFKS-X2密钥更新方案能够提供一跳前向密钥隔离。以协议的执行效率作为标准,对所提方案的有效性进行分析,分析结果表明:① 用户的消息工作量没有变化,网络侧的消息处理复杂度略有增加;② 用户侧计算量基本不变,网络侧计算量略有增加。
[1] 沈 嘉,索士强,全海洋,等.3GPP长期演进(LTE)技术原理与系统设计[M].北京:人民邮电出版社,2008.
[2] SESIA S,TOUFIK I,BAKER M.LTE:The UMTS Long Term Evolution[M].New York:John Wiley & Sons,2009.
[3] 杜金宇,程 锋,蒋 群,等.LTE全球主流运营商及产业链发展动态[J].电信工程技术与标准化,2012,25(7):17-22.
[4] 李进良.加速TD-LTE全国4G网建设共同促进全民信息消费[J].移动通信,2014,38(1):17-20.
[5] 曾 勇.LTE/SAE密钥管理技术研究[J].通信技术,2009(7):97-100.
[6] 胡国华,袁树杰,谭 敏.4G移动通信技术与安全缺陷分析[J].通信技术,2008,41(7):155-157.
[7] 李泰成,何 莉,吴 槟.具有一跳前向安全性的X2切换密钥更新协议[J].计算机系统应用,2011,20(8):67-71.
[8] 赵 伦.LTE系统中的S1切换技术研究与设计[D].武汉:武汉邮电科学研究院,2012.
[9] 3GPP TS33.401 V9.0.0 (2009-06).Security Architecture(Release 9) [S],2009.
[10] 许盛宏,李力卡,陈庆年.LTE网络MME的安全容灾方案研究[J].移动通信,2015,39(22):9-13.
[11] 楚佩佳.基于LTE系统的UE随机接入过程研究[D].杭州:杭州电子科技大学,2011.
[12] FORSBERG D,HORN G,MOELLER W D,et al.LTE Security[M].New York:John Wiley & Sons,2012.
[13] 汪良辰.LTE安全接入机制研究[D].西安:西安电子科技大学,2012.
[14] 高 枫,李一喆,马 铮,等.LTE网络安全部署研究[J].移动通信,2014,38(23):25-28.
朱诗兵 男,(1969—),博士,教授。主要研究方向:信息与通信系统。
周 赤 女,(1989—),硕士研究生。主要研究方向:信息与通信系统。
The Improvement of LTE Handover Key Refresh Scheme
ZHU Shi-bing1,ZHOU Chi2,LI Chang-qing1
(1.DepartmentofInformationEquipment,AcademyofEquipment,Beijing101416,China;2.DepartmentofCommand,ChinesePeople’sLiberationArmyAviationSchool,Beijing101100,China)
Key management has a big impact on LTE user security in handover process.Handover key management includes handover key generation,distribution,refresh and revocation.In this paper, we will introduce the handover key refresh mechanism in detail,including X2 handover key refresh scheme and S1 handover key refresh scheme.Finally,with reference to the S1 handover scheme,an enhanced X2 handover key refresh scheme OFKS(One-hop Forward Key Separation)X2 handover key refresh scheme is put forward to over come the disadvantage of the original one in LTE which can only provide two-jump forward security by advancing the time when MME is involved in the agreement.Analysis results show that the OFKS-X2 key update scheme can provide a jump forward to the key and has little effect on the protocol.No changes happen in the user’s message workload and side calculation.However the complexity of message processing and calculation in the network side is slightly increased.
LTE;handover key management;X1 handover;S1 handover;OFKS
10.3969/j.issn.1003-3106.2017.01.03
朱诗兵,周 赤,李长青.LTE网络切换密钥更新方案分析与改进[J].无线电工程,2017,47(1):10-15.
2016-10-26
文献标志码 A 文章编号 1003-3106(2017)01-0010-06