CDMA2000系统中的鉴权分析
安全问题一直是困扰着无线通信系统的一个大问题。网络安全主要分为接
入鉴权和加密两部分:接入鉴权是为了保证用户身份的合法性,加密是为了解决通信内容
的安全性问题。接入鉴权分为用户鉴权和会话鉴权。用户鉴权是在最初建立会话时,检验
终端用户的合法性;会话鉴权是在会话期间,终端从静态到激活态或发生切换引起的重新
鉴权。机卡分离的cdma2000 1x网络在空中沿用了2G的安全
,采用了基于CAVE(Cellular Authentication and Voice Encryption )算法的接入鉴权。cdma2000 1x向3G演进时存在着两条不同的技术路线,一条是1x EV-DO,另一条是1x EV-DV。1x EV-DO在空中采用了完全不同于cdma2000 1x的鉴权方式,其接入鉴权主要采用的是基于MD5(Message Digest 5)
算法的CHAP(Challenge Handshake Authentication Protocol)鉴权。原有的cdma2000 1x用户如果希望能享受到1x EV-DO的高速业务,除了更换终端,还必须更换UIM卡。在1xEV-DO
网络建设初期,这种运营模式必会影响到用户的正常使用。
cdma2000 1x的鉴权
沿用了2G的鉴权思想,即网络只对接入的终端进行鉴权,而终端并不对网络进行鉴权。cdma2000 1x鉴权涉及到的内容有共享密钥A-Key、共享秘密数据SSD、SSD的更新以及网络对终端的鉴权过程。在终
端用户入网时,一些重要数据是需要预先存在终端(UIM卡)和网络鉴权中心(AC)的,这
些数据包括密钥A-Key、终端的IMSI、ESN(UIM ID)、鉴权算法等。
密钥A-Key是仅为终端(UIM卡)和网络侧AC共享的密钥,其他实体无权知道A-Key的值。A-Key的长度为64bits,A-Key的值是由运营商来决定的,A-Key的值被写入后通常就不再做改变。因为A-Key是产生其他秘密数据的基础,所以A-Key的
安全是非常重要的。
共享秘密数据SSD是128bits的值,它由终端(UIM卡)和AC共享。SSD是网络对终端进行鉴权以及信息加密过程中的重要数据。 SSD不能在空中接口传送,SSD生成或更新过程是由AC发起的,在终端和AC使用相同的算法计算完成,更
新过程可以在控制信道进行也可以在业务信道进行。SSD分为SSD-A 和SSD-B 两部分,各为64bits。SSD-A用于鉴权,SSD-B用于加密。图1描述的是生成新的SSD以及对新的SSD进行验证的过程。 SSD更新由HLR/AC发起,AC首先要将SSD更新请求的消息发送到
终端;终端收到SSD更新消息后,将其中的RANDSSD作为终端侧的输入参数,与其他参数
一起计算出新的SSD值后,终端侧选择一个随机数RANDBS传给AC;终端和AC使用同样的算法和输入参数进行计算,计算出AUTHBS;AC发送消息将自己计算出的AUTHBS值传给终端;终端比较自己计算的AUTHBS值和AC计算的AUTHBS值,如果两个值相同,则新的SSD通过验证,终端将SSD值状态变为可用状态;终端发送消息向网络侧确认SSD更新成功,
AC收到此消息后,也将新SSD值变为可用状态,则SSD更新过程完成。
图1 SSD产生和验证过程
CAVE算法为2G安全中基本的算法,在共享秘密数据的更新、
验证过程中,鉴权过程中都会使用到CAVE算法。根据输入参数的不同CAVE算法参数初始化和输出结果不同,从而能够被应用到cdma2000安全的各个环节中去。其主要的应用环节
包括SSD更新过程和对终端的鉴权过程。前面已经说明了CAVE算法用于SSD更新的过程,
下面介绍对终端鉴权过程的鉴权算法。
图2 对终端的认证过程
图2描述的是使用CAVE算法对用户鉴权的过程。终端和AC分别用SSD与其他参数进行CAVE算法,终端将CAVE算法产生的值传送给AC,AC将此值与自身执行CAVE算法计算
出的值比较,若相等则鉴权成功。
1x EV-DO网络中采用了基于MD5算法的CHAP鉴权。1x EV-DO网络中增加了新的鉴权设备AN-AAA,支持新的鉴权算法。接入鉴权包括两个部分:AN-AAA与AN之间(A12接口)的鉴权以及IP层到PDSN之间的鉴权,鉴权采用的
都是CHAP协议。1x EV-DO网络采用了与1x网络完全不同的接入鉴权方案,新增的设备、协议与算法
会给网络带来巨大的变化。由于CDMA2000系统未来的演进还存在许多不确定因素,保证用
户的稳定性始终是第一位的因素。所以,考虑到用户的使用习惯,1x EV-DO网络在初期需要支持CDMA2000 1x用户的正常使用,尤其要支持用户在更换终端而不换卡的情况下能使
用新的网络。
根据网络设备的现状,如果在原有的cdma 2000 1x网络中实现1x EV-DO的鉴权,将彻底更新网络的结构,会给现网带来很大的影响。而且,这种方案同时需
要终端和UIM卡的升级,达不到原有的目的。所以,一种可行的方案是在新的网络中对网
络设备作较小的改动,使之具备1x鉴权的功能,实现新旧用户的共同接入。 对于EV-DO UIM卡(新卡)和1X UIM卡(旧卡)同时在网络中使用的情况,网络需要采取不同的鉴权策略。
新旧UIM卡与不同终端组合在1 x EV-DO网络中的鉴权情况如
1所示。
从表1可以看出,在未来的1x EV-DO混合网络中,终端和卡的任意组合都能顺利接入
到相应的网络中。1x only终端支持两种卡,但只能接入到1x网络中,采用CAVE鉴权;EV-DO only终端面向未来的移动数据业务,同时支持两种卡在EV-DO网络中使用,但采取了不同
的鉴权方案;1x EV-DO双模终端兼有电路域话音功能,使用情况比较复杂,分为以下几种
情况:如果插入1x UIM卡,终端可以在两种网络间自由切换,只采用CAVE鉴权;如果插入EV-DO UIM卡,终端也能在两网间切换,但接入1x网络采用CAVE鉴权,接入EV-DO网
络采用MD5鉴权。
上述的鉴权方案确定后,还需要考虑这种方案对原有的EV-DO网络的影响。从上述的鉴权方案可以看出,如果对1x网络进行改造使其同时支持两种鉴权方案,
需要增加新的设备和信令,对网络的改动太大;但是从原有的EV-DO网络出发,在EV-DO网络中同时支持两种方案带来的变化将最小化。1x EV-DO混合网络中,EV-DO系统中进行MD5算法鉴权的网络设备AN-AA与1x系统中进行CAVE算法的网络设备HLR/AC之间必须有一定的联系,AN-AAA应同时具备支持两种鉴权算法的功能。AN-AAA在实现CAVE算法时,需要的重要参数A-Key、SSD等都需要从网络中保存这些参数的设备HLR/AC中获取,这样,AN-AAA在CAVE鉴权时具有部分VLR的功能,1x UIM卡用户能够顺利地通过CAVE鉴权方式接入到EV-DO网络中,而新的EV-DO UIM卡用户仍采用EV-DO的MD5鉴权方式接入。
从前文的分析可以看出,这种在EV-DO网络中支持两种鉴权方式的方案,
对主要设备的要求是在实现鉴权的网络设备AN-AAA、HLR/AC和终端设备上,引入这种方案
对原有的网络影响很小,只需要做软件上的升级和改动。AN-AAA首先需要能够区分用户类
型,判别是1x用户还是EV-DO用户,根据用户类型采用不同的鉴权策略。AN-AAA在采用CAVE算法实现鉴权时还需要与HLR/AC交互信息,能向HLR/AC发起SSD更新消息,获取重要的鉴权密钥SSD。同时,1x EV-DO终端要能支持1x UIM卡和EV-DO UIM卡,确保无论哪
种卡插入1x EV-DO终端,终端和卡都能分别执行相应的操作。
CDMA2000 1x网络在向1x EV-DO演进过程中,原有的1x用户在无需更换UIM卡的情况下就能顺利接入到新的网络中,的确给用户带来了极大的方便。但是由于2G
安全机制存在的隐患,在EV-DO网络中长期采用2G的安全算法无疑会影响网络的安全性,
运营商在部署3G网络的同时,最终也必须实现安全机制的完全升级。
所谓鉴权,也叫做鉴别权利。刚才说过国内的CDMA手机和目前国外的手机唯一不同的地
方是机卡分离,这是个优点,因为他可以适应发展中国家这种换机不换号的特点(咱们资源
有限,人太多)。但是也有缺点,就是相对目前五大洲所有使用CDMA机卡一体手机而言。因为在国外,手机号不像国内这种,需要好号,需要顺子号等等的迷信需求,他们的号码直接
就使用交换机用于识别手机个体的识别码,比如我们知道的十位imsi,而国内是将133********作为一个号码平台,把他和十位imsi一一对应起来,就有了咱们的所谓133特服号打头的手机号码了,你要五个8,六个7,其实手机本身的号码并不一定很好,兴许imsi还是个带444呢!至于鉴权呢,就是介于133平台和imsi之间的一个必要识别步骤,他需要
在极短的时间内对个人手机的用户信息(当然不是你叫什么之类的数据了),包括所属地区
代码,是否漫游状态等等进行识别,顾名思义,鉴权就是鉴别权利。鉴权处理是筛选合法用
户,并允许接入网络取得服务的过程,鉴权处理必须在位置登记、移动台呼叫的终止与发起
前完成。
鉴权过程:实际是一个“询问与响应”的过程,首先由交换生成一个鉴权参数AUTHR,称为鉴权响应,根据CDMA用户鉴权算法(简称SAC),由一个随机号码RAND、共享密码数据SSD、电子系列号ESN、移动台识别号MIN组成。该参数与RAND随机数一起被移动台(手机)送往识别中心,由识别中心利用自身用户鉴权参数、存储的SSD与从手机(应该说是移动台)接收的RAND重新生成一个AUTHR,如果新的AUTHR与从移动台处收到的AUTHR一致,就说明鉴权成功,允许服务。如果两个AUTHR不一致,将由识别中心启动一个唯一询问过程重新来
一次鉴权。对于机卡一体机,由于无法获得SSD,也就无法完成以上鉴权过程,因此,必须
在识别中心关闭该号码的鉴权过程,方可正常使用。也就是说,每个号码都鉴权,用韩机只
能把鉴权关了,烧号以后才能正常使用。
关掉鉴权就是要把133平台绕过去,因为机卡一体手机与交换机握手的时候发射的识别
信息是十位imsi,而不是133********,所以网络会认为你的号码有误!所以,关鉴权是机
卡一体手机在国内使用的必需步骤。
下面讲一下如何才能关闭鉴权:关闭鉴权一般有两个途径,其一,在市面上购买已经关
闭鉴权的CDMA卡;其二,仍然用自己的UIM卡,找联通公司机房的朋友关闭鉴权。说一句题
外话,如果你的UIM卡上的ESN和IMSI被别人知道,恰巧这个人又能关闭鉴权,那么就相当
于别人也能用你的卡,即你自己交话费两个人用。所以说联通公司对关闭鉴权的问题十分的
慎重,据我所知在北京上海这样的城市是肯定无法关闭鉴权的,但在其他绝大多数城市都可
以关闭鉴权。
通俗的讲,鉴权是联通对手机卡做的一种类似加密的保护,最初是为了防止韩机进入中
国市场,但现在随着联通对cdma发展策略的改变,一些地方已经不再有这样的限制,或者默许用户取消这种限制,也就是关掉鉴权 。
一般来说,鉴权开放的卡,机卡一体的机器无法正常使用;鉴权关闭的卡,可以保
证机卡一体机器正常连网。但在给韩机做号的时候,有时也发现并不是每个地方的卡都和鉴
权有关。有的城市,鉴权开着也可以做号正常接打,有的城市鉴权关闭韩机也未必主被叫好
用,这里涉及到很多不同的数据和参数,不好用通俗的语言解释清楚,总之韩机虽然能在大
陆使用,但毕竟中韩两地的cdma网络还是有细节上的差异的。