Chinaunix首页 | 论坛 | 博客
  • 博客访问: 53304
  • 博文数量: 16
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 176
  • 用 户 组: 普通用户
  • 注册时间: 2013-03-05 15:17
个人简介

活在当下 眺望未来

文章分类

全部博文(16)

文章存档

2013年(16)

我的朋友

分类: 网络与安全

2013-04-10 17:37:55

   详细出处请参考:http://blog.sina.com.cn/s/blog_58c6ddfb01012xi4.html

   2G鉴权3元组包括的元素:RAND(Random Number), SRES( SignedResponse), Kc( Ciphering Key);3G鉴权5元组包括的元素:RAND(RandomNumber), XRES( Expected Response ), IK(Integrity Key ), CK(Cipher Key),AUTN(Authentication Token)。其中AUTN:增加了终端对网络侧合法性的鉴权。IK:3G鉴权过程不仅可生成加密密钥CK,而且可生成完整性密钥IK。    3G鉴权5元组中CK、IK不在空中接口上传送。这是由于:密钥只要被传送,就有被窃ting的危险,因此不能在风险性大的网络上传送,空中接口的风险性大,不能传送密钥:CK和IK用于实现手机和RNC之间的信息保护,被保护之前的空口消息和用户数据都是明文传送的,因此,如果CK和IK也在空口中传送,则必定是明文方式,有极大的安全风险。
   鉴权是通过比较MS提供的鉴权响应和AUC提供的鉴权三参数组之间是否一致进行判断的,通过鉴权,可以防止非法用户(比如盗用IMSI和KI复制而成的卡)使用网络提供的服务。
2G中,MS中SIM卡和AUC中存贮的信息:

?SIM卡中:
固化数据:IMSI,Ki,A3、A8安全算法。这些内容不会更改。
临时的网络数据TMSI,LAI,Kc,被禁止的PLMN
业务相关数据
?AUC中:
用于生成随机数(RAND)的随机数发生器
鉴权键Ki
各种安全算法,这些安全算法和 SIM卡中的算法相一致。
AUC的基本功能是产生三参数组(RAND、SRES、Kc),其中:
?RAND由随机数发生器产生;
?SRES由RAND和Ki由A3算法得出;
?Kc由RAND和Ki用A8算出。
   三参数组产生后存于HLR中。当需要鉴权时,由MS所在服务区的MSC/VLR从HLR中装载至少一套三参数组为此MS服务。具体到某次鉴权时,如果此时VLR中还有该MS的三参组(或者允许重复使用三参组),则HLR不参与鉴权过程,VLR直接向MS下发鉴权命令;如果VLR中已经没有该MS 的三参组,则需首先向HLR取三参组。

2G鉴权过程
   在MS发起业务请求时,网络侧准备发起鉴权,如果VLR内还没有鉴权参数五元组,此时将首先发起到HLR取鉴权集的过程,并等待鉴权参数三元组的返回。鉴权参数三元组的信息包含RAND、SRES、Kc。
   在检测到鉴权参数三元组的存在后,网络侧下发鉴权请求消息。此消息中将包含RAND。用户终端在接收到此消息后,由其SIM中的Ki和RAND经过A3算法得出SRES回送网络,网络侧在收到鉴权响应消息之后,比较此鉴权响应消息中的SRES与存储在VLR数据库中的鉴权参数SRES,确定鉴权是否成功:成功,则继续后面的正常流程;不成功,则会发起异常处理流程,释放网络侧与此终端间的连接,并释放被占用的网络资源、无线资源。当VLR不认识TMSI时,网络侧将请求手机终端上报IMSI,然后再次发起鉴权流程。

WCDMA鉴权过程
鉴权成功
   鉴权流程由网络侧发起,其目的是:由网络来检查是否允许终端接入网络;提供鉴权参数五元组中的随机数数组,供终端计算出加密密钥(CK);同时,供终端计算出与网络侧进行一致性检查的密钥(IK);最后一个目的是可以提供终端对网络的鉴权。与GSM的鉴权流程相比,3G的鉴权流程增加了一致性检查的功能及终端对网络的鉴权功能。这些功能使3G的安全特性有了进一步的增强。网络侧在发起鉴权前,如果VLR内还没有鉴权参数五元组,此时将首先发起到HLR取鉴权集的过程,并等待鉴权参数五元组的返回。鉴权参数五元组的信息包含RAND、XRES、AUTN、CK和IK。在检测到鉴权参数五元组的存在后,网络侧下发鉴权请求消息。此消息中将包含某个五元组的RAND和AUTN。用户终端在接收到此消息后,由其USIM验证AUTN,即终端对网络进行鉴权,如果接受,USIM卡将利用RAND来计算出CK与IK和响应RES。如果USIM认为鉴权成功,在鉴权响应消息中将返回RES。网络侧在收到鉴权响应消息之后,比较此鉴权响应消息中的RES与存储在VLR数据库中的鉴权参数五元组的XRES,确定鉴权是否成功:成功,则继续后面的正常流程;不成功,则会发起异常处理流程,释放网络侧与此终端间的连接,并释放被占用的网络资源、无线资源。在成功的鉴权之后,终端将会把CK(加密密钥)与IK(一致性检查密钥)存放到USIM卡中。
   有些情况下,终端会在收到鉴权请求消息后,上报鉴权失败!典型的鉴权失败的原因有下面两种:
   手机终端在对网络鉴权时,检查由网络侧下发的鉴权请求消息中的AUTN参数,如果其中的“MAC”信息错误,终端会上报鉴权失败消息,原因值为MAC Failure。

鉴权失败(失败原因为MAC Failure)
   此时,网络侧将根据手机终端上报的用户标识来决定是否发起识别过程。如果当前的标识为TMSI(或P-TMSI),则发起识别流程,要求手机终端上报IMSI信息。然后再次发起鉴权流程。
另外一种鉴权失败的情况是手机终端检测到AUTN消息中的SQN的序列号错误,引起鉴权失败,原因值为:Synch failure!(同步失败)
鉴权失败(原因值为Synch failure)
   此时,网络侧的VLR将删除所有鉴权参数5元组,并发起到HLR的同步过程,要求HLR 重新插入鉴权参数五元组,然后再开始鉴权过程。 
   3G HLR必须支持3G鉴权5元组向2G鉴权3元组的转换功能;3G MSC必须支持3G鉴权5元组和2G鉴权3元组之间的双向转换功能。支持2G加密算法的网元是BTS;支持3G加密和完整性算法的网元是RNC。

 

1.用户使用USIM卡接入到2G和3G共存的网络中:
  (1)通过UTRAN(WCDMA系统是IMT-2000家族的一员,它由CN(核心网)、UTRAN(UMTS陆地无线接入网)和UE(用户装置)组成。UTRAN 和UE采用WCDMA无线接入技术。)接入时,使用UMTS(Universal Mobile Telecommunications System的缩写,中文译为通用移动电信系统)鉴权;
 (2)当使用3G移动台和3G MSC/VLR 或SGSN通过GSM BSS接入时使用UMTS鉴权机制。其中GSM密钥从UMTS CK和IK计算获得;
 (3)如果使用2G移动台或2G MSC/VLR 或SGSN 通过GSM BSS 接入,使用GSM鉴权机制。其中用户响应SRES和GSM密钥从UMTS SRES、CK和IK得到。

2.在2G和3G共存网络中,用户也可以使用SIM卡接入到网络中。由于GSM SIM用户只支持GSM系统安全特性,所以鉴权过程必然是GSM系统的。
  注意:在SIM卡用户接入到UTRAN,与VLR/SGSN进行鉴权认证的过程以后,3G VLR/SGSN 将利用CK和IK为用户提供安全保护,但由于此时用户安全特性的核心仍是GSM密钥Kc ,所以用户并不具备3G的安全特性。

-----------------------------------------

我做过这方面的试验,发现sim卡无论使用2G网络还是3G网络都是以三元组来鉴权(使用3G网络指的是2G用户升级成3G套餐),而usim卡无论使用2G网络还是3G网络都是以五元组来鉴权。爱老板能否解释一下这个现象??谢谢
-----------------------------------------

   个人感觉应该还是和HLR的参数设置有关。跟信令流程应该关系不大。Usim卡使用2G网络,也可以根据五元组转换来的三元组进行鉴权,倒也没关系。而Sim卡只能用三元组来鉴权。因此,HLR的设置如果是如你现象描述的这样,倒是很简便,不需要关注用户选择的网络。配置更简单。维护也方便。
-----------------------------------------

   这在2/3G互操作中有明确规定,具体协议来源没有查。互操作的场景根据不同用户、不同核心网、不同无线侧、不同终端都有定义,有两张图分别是不同用户(USIM、SIM)的鉴权转换场景,目的是实现兼容。
   对于SIM用户比较简单,网络升级后只需要考虑一种情况UE支持3G,并且通过UTRAN上网,对这种情况由UE根据Kc->CK,IK,核心网VLR/SGSN根据Kc->CK,IK从而实现3G接入流程,这么设计是最小化的影响,不需要SIM和HLR感知3G,因此“我做过这方面的试验,发现sim卡无论使用2G网络还是3G网络都是以三元组来鉴权”的说法是正确的。  
     但对于USIM用户,兼容情况比较复杂要确保各种情况都能使用,假设ME是不支持3G的,VLR/SGSN也是不支持3G的情况,要保证业务正常,则要由USIM和HLR实现CK、IK->Kc(因为对于USIM来说,USIM和HLR必须是感知3G的),在这种情况下实际是以三元组来鉴权,因此“而usim卡无论使用2G网络还是3G网络都是以五元组来鉴权”的结论是不正确的,可能你的测试环境没有这么极端(一般核心网VLR和SGSN都是支持3G,这种情况下转换任务交给VLR和SGSN,HLR都是给五元组信息)。

    理解转换原则:
    1、网络环境是变化的,用户可以漫游,因此接入环境和网络环境都是动态的,要确保在每一种情况下都能实现业务。
    2、鉴权信息转换放在那种网络情况下,不需要感知和需要感知的交接处设备上。
    3、UTRAN和BSS的信令过程是固定的,不会因为用户改变,也不感知这种信息转换。
    4、信息转换放在USIM、UE、VLR、HLR上,按第二条的原则确定具体是那个设备
    这几条是个人理解,可能不正确。

阅读(2207) | 评论(0) | 转发(0) |
0

上一篇:共享内存设置

下一篇:TCP/IP状态变迁

给主人留下些什么吧!~~