GSM系统鉴权是GSM网络对接入SIM卡用户身份的认证过程,其流程可以详细归纳如下:
一、鉴权准备阶段
用户请求接入:
当用户终端(MS,如手机)发起业务请求(如呼叫、位置更新等)时,移动网络需要对其进行鉴权以确认其身份。
鉴权请求触发:
移动交换中心(MSC)根据配置判断是否需要进行鉴权。如果需要,MSC会向拜访位置寄存器(VLR)请求鉴权集。
鉴权集获取:
如果VLR中没有现成的鉴权集,VLR会向归属位置寄存器(HLR)/鉴权中心(AUC)请求发送鉴权集。
HLR/AUC根据用户的IMSI(国际移动用户身份)号码,在数据表中查找到该用户的密钥(Ki),并生成若干组随机数(RAND),同时计算出相应的签名响应(SRES)和加密密钥(Kc)。这些参数组成鉴权三元组(SRES、RAND、Kc),并发送给VLR。
二、鉴权执行阶段
鉴权请求发送:
VLR向用户终端发送鉴权请求,并携带随机数(RAND)作为鉴权参数。
用户终端响应:
用户终端(MS)收到RAND后,使用SIM卡中的密钥(Ki)和RAND作为输入参数,通过A3算法计算出签名响应(SRES)。
MS将计算出的SRES发送回MSC/VLR。
鉴权结果验证:
MSC/VLR将MS发送的SRES与HLR/AUC发送的SRES进行比较。
如果两者相同,则鉴权成功,用户被认定为合法用户,可以继续进行后续的业务操作。
如果不同,则鉴权失败,用户将被拒绝接入网络。
三、鉴权后续处理
鉴权成功:
如果鉴权成功,MSC/VLR会更新用户的位置信息,并可能向HLR发送位置更新确认消息。
用户可以继续进行通信或其他业务操作。
鉴权失败:
如果鉴权失败,MSC/VLR会拒绝用户的业务请求,并可能记录相关的鉴权失败信息。
用户需要重新尝试接入或联系运营商解决鉴权问题。