赵新建 赵小江 方赵林 蒋纯
摘要:本文就cdma2000的接入安全问题进行了研究,对共享秘密数据(SSD)的产生和更新过程、终端和网络间的鉴权、语音保密的建立过程以及分组数据安全方面作了较为详细的探讨。
关键词:cdma2000 SSD更新过程 鉴权过程 语音保密 分组数据安全
一、引言
目前CDMA技术以其在系统容量、业务质量、安全性和可靠性等方面的优势倍受关注,cdma2000是国际电联中三个全球公认的3G标准之一。美洲、亚洲和欧洲有15家运营商提供cdma2000服务,cdma2000的市场正以惊人的速度发展,另外一些运营商已在考虑向cdma20001xEV-DO过渡。作为国内CDMA运营商,中国联通也选择cdma2000作为其3G发展之路。随着cdma20001X的网络建成以及业务的逐步开展,网络安全方面将成为网络维护者的一个迫切需要考虑的重要问题,本文针对cdma2000鉴权和密钥协商过程以及消息加密等部分进行深入的分析和研究。
二、更新共享秘密数据SSD
SSD(shared Secret Data)是一组存储于MS半永久存储器中的128位的数据,网络端随时可得。SSD被分成两上不同的子集,每个部分用来支持不同的过程。SSD的前64位SSD-A用于支持鉴权过程,后64位SSD-B用于语音保密和信令信息加密。
1.SSD的计算过程(SSD-Generation)
SSD的计算过程实质上是更新初始化的SSD。A钥(A-key)是存储在MS中进行鉴权和加密的密钥,是分配给MS的64bit长的数据,并且仅对MS和相关的归属位置寄存器/鉴权中心(HLR/AC)是可知的。A-Key的产生通过计算和比较A-Key的校验和。ESN(Electronic Serial Number)是32位的MS电子序号字段,也是MS的唯一身份识别符。
计算过程首先由接入网端通过前向公共信令逻辑信道f-csch(Forward common signaling logical channel)或前向专用信令逻辑信道r-dsch(Forward dedicated signaling logical channel)的SSD更新消息向移动(MS)发送SSD更新指令,其中RANDSSD(Random SSD)字段中包含的56bit随机数与HLR/AC中计算的相同。在收到SSD更新消息后,MS设置SSD生成程序的输入参数,执行SSD生成程序,计算出SSD-A-NEW为高位64bit,SSD-B-NEW为低位64bit。SSD计算过程流程图见图1。
2.SSD的更新过程(SSD-Updata)
SSD计算结果SSD-A-NEW、SSD-B-NEW只有通过更新程序之后才能用来进行安全应用。SSD-A-NEW、SSD-B-NEW通过更新,在存储区域中正式标识为SSD-A、SSD-B。图2的呼叫流程图提供了详细的SSD更新过程说明。
a.移动交换中心(MSC)向基站(BS)发送SSD更新请求消息(SSD Updata Request)以指示MS的SSD需要更新。SSD Updata Request包含在随机数RANDSSD。MSC启动定时器T3270。
b.基于MSC的SSD更新请求消息,BS发送SSD更新消息(SSD Updata Message)给MS,通知其需要更新SSD。
c.SSD更新消息后,通过算法并根据RANDSSD输入计算出新的SSD,并确定出新的32bit的随机数RANDBS(Base Station Random Variable),再将其通过BS询问指令消息(Base Station Challenge Order message)发送给BS.
d.BS通过发送BS询问消息(Base Station Challenge message)给MSC,以确认MS端产生新SSD是否与网络端的相同,MSC关闭定时器T3270。
e.BS询问消息后,MSC与MS采用完全相同的算法和输入参数计算出MSC一侧的SSD,将MSC中新的SSD和接收到的RANDBS作为输入参数通过鉴权签名算法AUTH-SIGNATURE这后,得出AUTHB(Sauthentication response signature)。MSC通过BS询问响应消息(Base Station Challenge Response message)发送AUTHBS给BS。MSC启动定时器T3271。
f.BS询问响应消息后,通过BS询问确认指令消息向MS发送信息。
g.在MS一侧,对计算的AUTHBS和MSC发送来的AUTHBS进行比较。如果两者相同,则发送SSD更新确认指令的消息给BS,将计算出的新的SSD进行存储,如果两者不同,就发送SSD更新拒绝指令的消息给BS,仍然保持原先的SSD。
h.BS通过SSD更新响应消息发送消息给MSC。MSC停止定时器T3271。
三、cdma2000中的鉴权过程
鉴权的目的主要是为了确定移动台(MS)和网络的真实性,在MS的基站之间进行鉴权验证。鉴权实质上是为难证MS和BS之间是否共享了相同的秘密数据(SSD),如果验证共享了相同的SSD,则对MS进行了成功的验证。否则,鉴权失败。鉴权方式包括MS主动通过BS向接入网注册;BS主动对MS鉴权。两种方式的鉴权思想完全相 ,不同的是发起鉴权的流程。图3是接入网发起对MS的鉴权概要流程图,其过程为:a.MSC首先向BS发起鉴权请求(Authentication Request),然后启动定时器T3260。b.BS将携带一个要发给MS的随机数-RANDU的鉴权请求消息通过空中接口发给MS。c.MS基于秘密共享数据-SSD、特定的RANDU通过鉴权算法(Auth-Signature)计算出鉴权摘要码(AUTHU),并返回携带鉴权摘要码的鉴权询问响应消息(Authentication Challenge Response Message)给BS。d.通过发送鉴权响应消息(Authentication Response message)发送AUTHU消息给MSC。MSC在接收到鉴权响应消息后,停止定时器T3260。
Cdma2000中涉及的鉴权算法为:Cellular Authentication voice Encryption-CAVE。功能包括构成新的算法进行用户鉴权、鉴权密钥管理、数据加密密钥产生等。CAVE算法有三个基本部分为:一个32位的线性移位寄存器、16个8位混合寄存器以及一个置换表。上述A-key、SSD产生过程中都调用了CAVE算法,针对的应用有相应的输入和输出参数。
四、语言保密-Voice Privacy
语音保密只在业务信道中进行,保密采用伪随机扩频中的专用长码掩码(private long code mask)。其初始建立过程是由MS用户或者BS在呼叫建立时在前向专用信令逻辑信道f-dsch或者反向专用信令逻辑信道r-dsch上发送特定的消息进行联络确定。为了提供这种保护,用于庆音保密的相关设备要写入相关的秘密数据。广播鉴权处于激活状态-保密模式过程应该在切换初始化之前或切换工和结束之后。图4是语音保密建立的流程图,其过程如下:a.在呼叫过程中的任何时刻,接收到分配完成消息(Assignment Complete message)之后,MSC向BS发送保密模式指令消息(Privacy Mode Command message),该消息规定了提供给业务信息的保密性。然后MSC启动计时器T3280。b.在获得业务信道之后当BS给MS发送话音保密请求指令(voice privacy request order)时建立话音保密。c.MS完成需要的保密模式过程,并且使用话音保密响应指令(voice privacy response order)对BS进行确认。d.给MSC回复保密模式完成消息(privacy mode complete message),指明成功接收了保密模式指令消息。在接收到保密模式完成消息之后使计时器T3280停止工作。
MSC在接收到分配模式指令消息后可以将保密模式指令任选项BSMAP消息发送给BS。该消息的典型应用是规定用于呼叫的保密/保密参数的使用。在以下情况发送:呼叫建立过程中给BS预置加密/保密参数;会话过程中启用或禁用加密/保密。
五、分组数据安全考虑
随着今后无线分组数据业务逐步开展,为防止敏感信息的泄漏,必须采取有效的认证(Authentication)和加密(Encryption)安全策略,对必要的传输数据进行加密处理。cdma2000系统包含两种核心网接入业务;简单IP和移动IP业务。对于简单IP由于没有认证机制,cdma2000分组数据利用Radius AAA来实现MN的接入认证。Cdma2000分组数据定义了可供选择使用的Radius AAA认证机制包括查询应答认证机制CHAP(Challenge Handshake Authentication Protocol)和基于口令的认证机制PAP(Password Authentication protocol)。移动IP认证机制是为保护MN、FA和HA之间的注册消息不被非授权操作而开发的,移动IP要求MN和HA之间的所有注册消息都用一个消息认证码进行密码学的认证。认证扩展码包括Mobile-Home、Mobile-Foreign、Foreign-Home、MN-AAA以及Mobile-Foreign等。对于数据加密cdma2000中采用的是分组加密算法(Cellular Message Encryption Algorithm,CMEA)或者增强的分组加密算法(Enhanced Cellular Message Encryption Algorithm,ECMEA)。
六、结束语
为检测和防止移动通信中的盗打、盗用等各种非法使用移动通信资源和业务的现象,保证网络安全和保障电信运营者及用户的正当权益,移动用户鉴权和消息加密是一种行之有效的方法。Cdma2000系统的鉴权实质上是通过验证MS和BS之间是否共享了相同的关键数据(包括秘密数据SSD以及A-Key等),从而来确定移动台和网络的真实性。有效终端和网络间的鉴权过程、语音保密的建立过程以及完善的分组数据认证和加密机制才能保障网络的安全、可靠和稳定的运行,充分维护运营商和移动用户的利益。
摘自《数据通信》
|