我们知道,在漫游的情况下或当用户第一次请求访问移动网络时,AuC(Authentication Center)是用来识别GSM用户的。但是,我想知道如果手机关闭然后打开怎么办,是否需要身份验证?如果手机不在覆盖范围内并恢复了怎么办?我真的不知道订户应该通过 AuC 的条件是什么?
GSM中的认证中心
当手机开机时,如果 BCCH 广播中的 LAI 与 IMSI 分离时存储在 SIM 卡上的 LAI 相同(即位置区域已更改),则它发送 IMSI 附加而不是位置更新。如果不相同,则发送位置更新类型的 IMSI 附加,这将执行一个组合过程。
在接收到位置更新请求或 CM 服务请求(与 MSC 建立会话,以便移动台随后可以发起呼叫建立)或 CM 服务请求时,该请求还包含移动台对传入呼叫的寻呼响应,等,MSC使用VLR根据数据配置判断是否进行鉴权. 我不确定这个配置实际上可能是什么。我假设每次发生呼叫或位置更新时都会发生身份验证,或者可能只是位置更新。如果需要,位置更新将执行身份验证过程。它要么只需要位置更新,要么需要位置更新和呼叫。实际上,我还没有读过任何关于这方面的内容——选项的范围是什么,典型的配置是什么,我现在想不出合乎逻辑的理由。这表示仅当移动设备在位置更新请求或 CM 服务请求中发送的 TMSI 不在 VLR 中时才执行身份验证,在这种情况下进行身份验证并分配新的 TMSI。我不知道 TMSI 什么时候到期,但肯定会在您第一次访问此 MSC 时发生,并且总是在位置更新时重新分配一个新的。移动设备使用它最近分配的 TMSI,它标识了 SIM IMSI 和它当前正在访问的 MSC 之间的活动关联。
如果需要验证,VLR 会检查验证三元组是否可用。如果有鉴权三元组,MSC发送鉴权请求消息,携带第一个鉴权三元组。
如果没有可用的鉴权三元组,VLR 通过 MAP/D 从 HLR 获取鉴权三元组并存储: VLR 根据接收到的位置更新请求中携带的移动台的 IMSI 识别为用户服务的 HLR,然后发送一个MAP_SEND_AUTHENTICATION_INFO_REQ 消息到 HLR。消息中携带用户的IMSI和需要的认证三元组数量(默认5个,可根据需要配置)。HLR 向 AUC(通常与 HLR 集成)请求身份验证三元组。AUC 生成一个 RAND(随机挑战数)、一个 SRES = A3(Ki, RAND) 和一个 Kc = A8(Ki, RAND) 并将它们返回给 HLR。然后HLR向VLR发送携带认证三元组的MAP_SEND_AUTHENTICATION_INFO_RSP消息。如果在位置更新请求中发送了 TMSI+LAI,则 VLR 使用 LAI 来识别 PVLR(旧 VLR)并在 MAP_SEND_IDENTIFICATION_REQUEST 中将 TMSI 发送给它,并在响应中应用存储的身份验证三元组。VLR将RAND返回给MSC,此时MSC可以向MS发送携带来自第一个认证集(SRES,RAND,Kc)的RAND的认证请求消息,剩余的认证三元组由VLR保存并存储在VLR中。
收到认证请求后,MS 将 RAND 发送给 SIM。SIM 使用 A3 认证算法,利用 SIM 中存储的 RAND 和 Ki(与 AUC 处相同)生成 SRES,并使用 A8 认证算法生成 Kc,即 SRES = A3(Ki,兰德)和 a Kc = A8(Ki,兰德)。然后,SIM 将 SRES 和 Kc 发送给 MS。MS 向 MSC 发送携带 SRES 的 MM Authentication Response 消息,然后转发给 VLR。VLR 比较 MS 报告的 SRES 和 AUC 之前提供的 SRES。如果 SRES 相同,则验证完成,如果这是位置更新,则 VLR 继续位置更新(将位置更新到 HLR,HLR 取消 HLR 中指示的旧 VLR 中的位置,将订户信息插入新的请求 VLR),生成一个新的 TMSI 并将 Kc 在设置的加密模式命令中返回给 MSC(这将与移动设备现在具有的 Kc 相同),并且 MSC 发送 BSSMAP CIPHER MODE COMMAND 消息以启动加密流程。如果 SRES 不相同,VLR 拒绝认证,MSC 向 MS 发送认证拒绝消息。收到消息后,MS 停止访问网络并将网络添加到未授权网络列表中。
BSS 以明文形式向移动设备发送 RR CIPHERING MODE COMMAND。MS 以 RR CIPHERING MODE COMPLETE 响应。该消息使用 Kc 和 A5 加密传输——加密在 GSM 5.03 编码阶段之后进行,并且有效负载被插入到 GSM 5.02 提供的逻辑信道中。从现在开始,所有消息都被加密。BSS 接收它并向 MSC 发送 BSSMAP CIPHER MODE COMPLETE。
MSC 用新的 TMSI 向 MS 发送位置更新接受,MS 用 TMSI 重新分配完成来响应。MSC 向 VLR 发送 TMSI 重新分配 ACK。