文档介绍:GSM-WCDMA 鉴权原理
1
前言
在现有的2G和3G移动网络中,只有具有有效的IMSI号码的MS才有权得到服务。鉴权,即识别有效用户IMSI的过程。它是移动网络安全性管理的一部分,用来实现移动网络的保密性、数据完整性
由于WCDMA网络提供了较GSM更为丰富的业务,网络必须提供更为安全的鉴权机制。
基本原理
在现有GSM网络和将来的WCDMA网络中,鉴权是由MS、VLR/SGSN、HLR/AUC协同工作完成,都是由MS和AUC分别计算出鉴权参数,由VLR/SGSN比较双方的计算结果,完成网络对MS合法性的验证;
WCDMA增加了MS对网络合法性的验证功能,从而实现MS与网络双向认证;
*** GSM鉴权原理之鉴权参数***
SIM卡上的鉴权参数
IMSI号码(唯一识别SIM卡的号码)
鉴权密钥Ki(长度为16B,IMSI为Ki的索引,即一个IMSI号码唯一地对应于一个Ki值,但一个Ki值可能被多个IMSI使用)。
安全算法(A3);
SIM卡上的与鉴权无关的参数
序号(唯一识别SIM卡,且包括生产厂商信息、操作系统版本等)
SIM卡状态(闭锁/解锁)
PIN以及用户接入控制等级
临时的网络数据(如TMSI、LAI、KC、被禁止的PLMN)
业务相关数据
AUC上的鉴权参数
用户数据(IMSI,用来对移动签约者身份进行识别);
鉴权密钥Ki (注意:该值与用户SIM卡上的Ki值是一致的);
密码密钥(即密钥K4):K4是Ki的密钥,用来对Ki进行加密和解密,长度为8B。
密钥序号:是K4的索引(数据库中的外密钥),用来获取K4,若其值为0,表明Ki没有用K4加密(即当前的Ki值为解密后的值)。
安全算法(A3和A8);
用于生成随机数的随机数发生器
***GSM鉴权原理之鉴权参数***
鉴权三元组(Triplet Vector)
GSM用于用户鉴权的三个主要参数组成的向量,包括
RAND(Random Challenge 随机数):
由随机数发生器产生,长16B,主要作为计算三元组中其他两个参数的基础。
SRES(Signed Response符号响应):
对RAND和鉴权密钥Ki利用A3算法计算得出,长4B,用来判断鉴权是否通过,
Kc(Cipher Key 密码密钥):
对RAND和Ki 做A8算法计算得出,长8B,用于空间无线信道加密的密钥
CKSN (Ciphering Key Sequence Number )
CKSN(加密密钥序列号)被用来保证MS与VLE或MS与SGSN之间的GSM鉴权信息(Kc)的一致性,作为临时签约数据存储在VLR(或SGSN)上。
鉴权三元组的相关说明
鉴权三元组的存储位置
鉴权三元组有条件地存储在HLR和VLR(和SGSN)中。当AUC计算出一些三元组后,将这些三元组传送给HLR,并存储在HLR中;若某一MS已登记,其所在的VLR/SGSN也将从HLR装载至少一个三元组。
鉴权三元组的复用度
这里所说的GSM中的复用度概念指的是HLR中的鉴权三元组的复用度,对于VLR有相应的复用度概念。
鉴权三元组的复用度是指n个鉴权三元组所组成集合的可重用的次数。设协议规定复用度为m,则当AUC计算出N组鉴权数据组成一个集合后,存储在HLR的数据库中,当HLR接到VLR发送的鉴权数据请求时,直接从数据库中检索出对应鉴权数据集合发送给VLR,该鉴权数据集合可最多发送m次。发送m次后,该集合数据失效,AUC需要重新计算。
在HLR中建立鉴权数据的复用度,目的在于减少AUC的计算负荷,同时,可以对于实时性要求比较高的鉴权数据请求,可以比较迅速地给予响应
***GSM鉴权流程***
WCDMA鉴权原理之鉴权参数
USIM卡上的鉴权参数
IMSI号码(唯一识别SIM卡的号码)
鉴权密钥Ki(长度为16B,IMSI为Ki的索引,即一个IMSI号码唯一地对应于一个Ki值,但一个Ki值可能被多个IMSI使用)
鉴权和加密算法(f1、f2、f3、f4、f5、f1*、f5*、UIE、UIA)
OP或OPc
SQNMS
AUC上的鉴权参数
用户数据(IMSI,用来对移动签约者身份进行识别);
鉴权密钥Ki (注意:该值与用户SIM卡上的Ki值是一致的);
密码密钥(即密钥K4):K4是Ki的密钥,用来对Ki进行加密和解密,长度为8B。
密钥序号:是K4的索引(数据库中的外密钥),用来获取K4,若其值为0,表明Ki没有用K4加密(即当前的Ki值为解密后的值)。
鉴权和加密算法(f1、f2、f3、f4、f5、f1*、f5*)
用于生成随机数的随机数发生器
AMF
OP或OPc
SQNHE
WCDMA鉴权原理 之 鉴权五元组
五元组(Quinte