1. 用户身份加密
用 TMSI 代替 IMSI 识别不同用户,并在空中传输信息。
TMSI: Temporary Mobile Subscriber Identity
IMSI: International Mobile Subscriber Identity
2. 用户身份鉴权(authentication)
A3, A5, A8 指的各种算法。Algorithm -> A.
- A3 用于鉴权,产生
Sres
- A5 用于加密,产生
114 bit的加密序列
. It's probably binary numbers - A8 用于产生密钥,即
Kc
step 1
AuC
生成RAND
。
AuC
通过A3(RAND, Ki)
得到SRES
SRES = Series
RAND = Random Numbers
Ki = individual subscriber authentication key
step 2
MSC
发送RAND
给MS
。
MS
通过A3(RAND, Ki)
得到SRES
。
MS
将生成的SRES
回传给MSC
。
MSC
对比之前它自己生成的SRES
,如果相同,那么匹配成功(鉴定完毕是那个用户)
SIM
,Auc
有共同的Ki
。Ki
与IMSI
在注册SIM卡
时就产生了。
3. 用户(语音)数据加密
AuC
通过A8(RAND, Ki)
得到Kc
Kc = ciphering key
MSC
通过A5(Kc, TDMA序列号)
得到114 bit的序列
MSC
将用户数据
与114 bit的序列
做异或运算
,再将运算结果
发送给手机
MS
自己也像MSC
那样产生114 bit的序列
,将接收到的数据
与114 bit的序列
做异或运算
,最终得到原始数据
异或: Binary XOR
a = 60 # 60 = 0011 1100
b = 13 # 13 = 0000 1101
c = a ^ b; # 49 = 0011 0001
Question and Answers
三参数组如何产生的?
AuC
生成RAND
。
AuC
通过A3(RAND, Ki)
得到SRES
AuC
通过A8(RAND, Ki)
得到Kc
于是有了三参数组(RAND, SRES, Kc)
GSM-R 如何鉴权?
MSC
发送RAND
给MS
。
MS
通过A3(RAND, Ki)
得到SRES
。
MS
将生成的SRES
回传给MSC
。
MSC
对比之前它自己生成的SRES
,如果相同,那么匹配成功(鉴定完毕是那个用户)
GSM-R 如何对用户信息进行加密?
AuC
通过A8(RAND, Ki)
得到Kc
MSC
通过A5(Kc, TDMA序列号)
得到114 bit的序列
MSC
将用户数据
与114 bit的序列
做异或运算
,再将运算结果
发送给手机
MS
自己也像MSC
那样产生114 bit的序列
,将接收到的数据
与114 bit的序列
做异或运算
,最终得到原始数据
References: