第十二讲
GSM的安全性管理
2
主要内容
? 三参数组和鉴权、加密算法
? 加密
? 设备识别
? TMSI码
? PIN码
3
用户三参数组的产生过程如下, 每个用户在购买 MS(或只是
SIM卡 )并进行初始注册时,都会获得一个用户电话号码和国际移
动用户识别码 (IMSI)。 这两个号码往往具有可选性,但一旦选定,
便不能修改,因为 IMSI会被 SIM卡写卡机一次写入到用户的 SIM
卡中 。 在 IMSI写入的同时,写卡机中还会产生一个对应此 IMSI的
惟一的用户鉴权键 (128比特 Ki)。 IMSI和相应的 Ki在用户 SIM卡
和鉴权中心 (AUC)中都会分别存储,而且它们还分别存储着鉴权
算法 (A3)和加密算法 (A5和 A8)。 AUC中还有一个伪随机码发生器,
用于产生一个不可预测的伪随机数 (RAND)。 RAND和 Ki经 AUC
中的 A8算法产生一个密钥 (Kc),经 A3算法产生一个响应数 (SRES)。
密钥 (Kc),响应数 (SRES)和相应的伪随机数 (RAND)一起构成了
用户的一个三参数组 。
4
三参数组的提供
R A N D
产 生 随 机 数
KiI M S I 2
KiI M S I 1
… …
数 据 库
I M S I 和 鉴 权
鉴 权 算 法
A
3
结果
S R E S
加 密 算 法
A
8
结果
Kc
R A N D
R A N DS R E SKc
将 三 参 数 组
传 送 给
H L R
三 参 数 组
5
一般情况下,AUC一次能产生这样的 5个三参数组 。 AUC会
把这些三参数组传送给用户的 HLR,HLR自动存储,以备后用 。
对一个用户,HLR最多可存储 10组三参数 。 当 MSC/ VLR向
HLR请求传送三参数组时,HLR会一次性地向 MSC/ VLR传送
5组三参数组 。 MSC/ VLR一组一组地用,当用到只剩 2组时,就
向 HLR请求再次传送 。 这样做的一大好处是鉴权算法程序的执
行时间不占用移动用户实时业务的处理时间,有利于提高呼叫接
续速度 。
6
鉴权
1)
为检测和防止移动通信中的盗用等非法使用移动通信资源和业
务的现象,保证网络安全和保障电信运营者及用户的正当权益,
移动用户鉴权是一种行之有效的方法,它的引入和使用也是
GSM系统优越于模拟移动通信的一个重要方面 。
7
2)
鉴权是一个需要全网配合, 共同支持的处理过程,几乎涉及移
动通信网络中所有实体,包括移动交换中心 (MSC),访问者位
置寄存器 (VLR),归属位置寄存器 (HLR),鉴权中心 (AUC)以
至基站子系统 (BSS)和移动台 。 在哪些场合需要进行鉴权,不仅
关系到技术实现的复杂性和技术应用的覆盖范围,并进而影响
到鉴权的作用效果,同时也关系到整个移动通信网络的信令负
荷和业务处理能力等诸多方面 。
8
GSM系统常用的鉴权场合包括,
(1) 移动用户发起呼叫 (不含紧急呼叫 );
(2) 移动用户接受呼叫 ;
(3) 移动台位置登记 ;
(4) 移动用户进行补充业务操作 ;
(5) 切换 (包括在 MSCA内从一个 BS切换到另一个 BS,从 MSCA切换到
MSCB以及在 MSCB中又发生了内部 BS之间的切换等情形 )。
9
3)
如前所述,GSM的鉴权算法是 A3算法 。 A3算法有两个输入
参数,用户 IMSI对应的固定密钥 Ki和 AUC本地产生的随机数
(RAND),其运算结果是一个 32 bit长的用户鉴权响应值 (SRES)。
10
鉴权的过程简述如下:首先是网络方的 MSC/VLR向移
动台发出鉴权命令信息,其中包含鉴权算法所需的随机
数 (RAND)。 移动台的 SIM卡在收到命令之后,先将
RAND与自身存储的 Ki,经 A3算法得出一个响应数
(SRES),再通过鉴权响应信息,将 SRES值传回网络方。
网络方在给移动台发出鉴权命令的同时,也采用同样的
算法得到自己的一个响应数 (SRES)。若这两个 SRES
完全相同,则认为该用户是合法用户,鉴权成功 ; 否则,
认为是非法用户,拒绝用户的业务要求。网络方 A3算
法的运行实体可以是移动台访问地的 MSC/VLR,也可
以是移动台归属地的 HLR/AUC。
11







存 储 所 有 访 问 用
户 的 三 参 数 组 ( 每 用 户 1 ~
7 个 三 参
数组 )
A U C
存储 H L R 中
所 有 用 户 的
鉴 权 键 Ki
对 所 有 用 户 产
生 三 参 数 组
R A N D / K c / S R E S
H L R
临 时 存 储 所
有 用 户 的 三
参 数 组 ( 每用
户 1 ~ 10 个三
参 数 组 ) 依请
求 发 给 V L R
M S C / V L R
R A N D / K c / S R E S
MS
存 储 有 关 的
用 户 信 息
接 入 请 求
R A N D
算法 A
3
R A N D Ki
S R E SS R E S
MS
S R E S
AUC
=?
是否
不 能 接 入 接入
12
加密
GSM系统中的加密是指为了在 BTS和 MS之间交
换用户信息和用户参数时不被非法用户截获或监听而
采取的措施 。 因此,所有的语音和数据均需加密,并且
所有有关用户参数也需要加密 。 显然,这里的加密只
是针对无线信道进行加密 。
13
GSM系统加密过程简述如下,
在鉴权过程中,移动台在计算 SRES的同时,用另一算
法 (A8算法 )计算出密钥 Kc,并在 BTS和 MSC中暂存 Kc。
当 MSC/ VLR发送出加密命令 (M)时,BTS先收到该命令,
再传送给 MS。 MS将 Kc,TDAM帧号和加密命令 M一起经
A5加密算法,对用户信息数据流进行加密 (也叫扰码 ),然
后发送到无线信道上。 BTS收到用户加密后的信息数据流
后,把该数据流,TDMA帧号和 Kc再经过 A5算法进行解密,
恢复信息 M,如果无误,则告知 MSC/VLR。 至此,加密模
式完成。
14 加密过程示意图
存储 所有
访问 用户
的三 参数
组 ( 每用 户
1 ~ 7 个三
参数 组 )
A U C
存储 H L R 中
所有 用户 的
鉴权 键 Ki
对所 有用 户产
生三 参数 组
R A N D / K c / S R E S
H L R
临时 存储
所有 用户
的三 参数
组 ( 每用 户
1 ~ 10 个
三参 数组 )
依请 求发
给 V L R
M S C / V L R MS
存储 所有 与
网络 有关 的
算法 A
5
R A N D
A
8
( K c )
Kc
B T S
鉴权 程序
启动 加密
加密 模式 命令
临时 存储 Kc
用于 与 MS 通
话中 的加 密
M
A
5
( 加密 )
T D M A
帧号
加密 信息
,加密 模式 完成,
Kc
T D M A
帧号
解密 信息
,加密 模式 完
成, 否?
加密 模式 完成

15
设备识别
设备识别过程为, 首先是 MS向 MSC/ VLR请求呼叫服务,
MSC/ VLR反过来向 MS请求 IMEI。 MSC/ VLR在收到 MS的
IMEI后,将其发送给 EIR。 EIR将收到的 IMEI与其内部的三种
清单进行比较,并把比较结果发送给 MSC/ VLR。 MSC/ VLR
根据此结果,决定是否接受该移动设备的服务请求 。 设备识别
过程示意图如图所示 。
何时需要设备识别取决于网络运营者 。 目前我国大部分省
市的 GSM网络均未配置此设备 (EIR),所以此保护措施也未起作
用 。
16
设备识别过程示意图
E I R
存 储 所 有 用 户 的
移 动 设 备 识 别 码
存 储 所 有 被 列 入 灰 /
黑 名 单 的 设 备
M S C / V L R MS
存 储 本 设 备
识 别 码 I M E I
呼 叫 建 立
I M E I 请求
发送 I M E I
检查 I M E I
接入 / 禁 止 信 息
继续 / 停止
呼 叫 建 立 过 程
17
临时移动台识别码 (TMSI)
临时移动台识别码 (TMSI)是为了防止非法用户通过监听无
线路径上传输的信令而窃得合法用户的用户识别码 (IMSI)或跟
踪移动用户的位置而采取的措施 。
如前所述,为了提高安全性,IMSI应尽量不在无线路径上传
输 。 为此,MSC/ VLR根据 IMSI变换出相应的 TMSI,分配给用
户使用,并且不断地进行更换,更换周期由网络运营者设置 。 更
换的频率越高,起到的保护作用越大,但由于对用户的 SIM卡寿
命有影响,因而更换不能过于频繁 。
18
利用 TMSI进行鉴权措施的过程如下,
每当 MS用 IMSI向系统请求位置更新, 呼叫尝试或业务激
活时,MSC/ VLR对它进行鉴权 。 允许接入网络后,MSC
/ VLR由 IMSI产生出一个新的 TMSI,并将 TMSI传送给移
动台 。 移动台将该 TMSI写入用户 SIM卡 。 此后,MSC/
VLR和 MS之间的命令交换就使用 TMIS,用户实际的识别
码 IMSI不再在无线路径上传输 。 图所示为移动台位置更
新时产生新的 TMSI的过程 。
19 移动台位置更新时产生 TMSI的过程
H L R
存储 路径 所有 归属
P L M N 的用 户数 据
M S C / V L R
存储 路径 所有 访
问用 户的 数据
更新
B S C / B T S
存储 与无 线路
径有 关的 数据
MS
存储 所有 与网 络
有关 的用 户信 息
更新 位置 区请 求 位置 更新 请求
鉴权
产生 新的
T M S I
V L R 存储 新的 T M S I
新的 T M S I
启动 加密
位置 区更 新
位置 区更 新
新的 T M S I
存储 新 T M S I
位置 区更 新完 成
位置 区更 新证 实
V L R 删除 旧 T M S I
I M S I 新 T M S I 新 T M S I I M S I
在无 线路 径上 使用 保密 码
20
PIN码
PIN码存储在用户 SIM卡中,其目的是为了防止用户账单
上产生讹误计费,保证入局呼叫被正确传送 。 PIN码由 4~ 8位
数字构成,其具体位数由用户自己决定 。 只有用户输入了正确
的 PIN码,才能正常使用相应的移动台 。 如果用户输入了错误
的 PIN码,移动台会给用户发出错误提示,要求重新输入 。 如
果用户连续 3次输入错误,SIM卡就会被闭锁,即使将 SIM卡拔
出后再装上或关掉手机电源后再开机也不能使其解锁 。 要想
解锁,用户必须输入正确的, 个人解锁码,,它是由 8位数字组
成的 。 若, 个人解锁码, 又被连续 10次输入错误,SIM卡将
进入进一步闭锁 。 这种闭锁就只能靠 SIM卡管理中心的 SIM
卡业务激活器来解锁了 。