GSM系统中的用户识别模块——SIM卡
文章出处:http://www.nexussmartsolutions.com 作者:SIM卡 人气: 发表时间:2011年09月09日
GSM 数字蜂窝通信系统中的用户识别模块棗SIM卡是GSM系统中移动台的重要组成部分,是用户进网登记的凭证。在GSM系统中,通过对SIM卡的物理接口;逻辑接口的明确定义,来完成与移动终端的连接和信息交换;同时在SIM卡内部进行用户信息存储,执行鉴权算法和产生加密密钥等工作。SIM卡是应用GSM移动通信终端的一种钥匙,用户只需将SIM卡插入或嵌入任何一台GSM终端,即能实现通信,而通信费会自动记入持有该卡的用户帐户上。SIM卡还管理着许多涉及本地提供给用户业务的信息。SIM卡可用于存储短消息,特别是那些当用户不在时接收的短消息,SIM卡另一奇特应用是“SIM卡漫游”,漫游涉及的网络方面并不依赖各个网络中用到的接人方案。SIM卡目前的市场主要是与GSM数字蜂窝通信系统密切相关随着GSM用户的迅猛发展,对SIM卡的需求必将迅猛增加。
1.SIM卡的功能特点
在GSM系统中SIM卡具有如下功能特点:
(1)存储用户相关数据;在SIM卡预个人化阶段,存储国际移动识别码IMSI、鉴权密钥Ki,个人识别码PIN、PIN码显示使能、PIN码出错计数,预个人化数据、SIM卡状态、个人消闭密钥等。在SIM卡个人化阶段,存储用户相关信息、个人化数据和用户接人等级控制以及存储在移动设备的控制下读出或更新加密密钥KC等。
(2)用户PIN的操作和管理,SIM卡本身是通过PIN码来保护的,PIN是一个四位到八位的个人身份号,只有当用户输入正确的PIN码时,SIM卡才能被启用,移动终端才能对SIM卡进行存取:也只有PIN认证通过后,用户才能接入进网。
(3)用户身份鉴权,确认用户接人进网是否合法,确认过程是在网络和SIM卡之间进行的,而确认时间一般是在移动终端登记人网和呼叫时,鉴权开始时,网络产生一个128比特的随机数RAND,经无线电控制信道传送到移动台,移动台从SIM卡中取出固有的密钥Ki和算法A3,对接收到的RAND计算出应答信号SRES,并发回网络端。而网络端在鉴权中心查明该用户的密钥Ki用同样的RAND和算法A3算出SRES,并与SRES进行比较,如两者一致,则鉴权通过,否则,鉴权失败,接续中止。
(4)SIM卡中的保密算法和密钥,SIM卡中最敏感的数据是保密算法A3、A8、密钥Ki、PIN、PUK和KC。A3、A8算法是在生产SIM卡时写入的,一般人无法读出A3、A8算法,PIN码可由用户在手机上自己设定,PUK码由运营者持有,KC是在 加密过程中由Ki导出的。Ki用DES进行加密,DES算法中加密和解密都用同一密钥KDES,运营单位管理密钥KDES。
2.SIM卡的硬件特性
SIM卡是带微处理器芯片的IC卡,它由CPU,工作存储器RAM、程序存储器ROM、数据存储器EEPRoM和串行通信单元5个模块组成,5个模块集成在一块IC中。例如MOTOROLA公司的SC21 SIM卡,其中CPU为68H05,ROM为6144比特,RAM为128比特,EEP-ROM为2902比特可擦除,16比特不可擦除。目前市场上几种主要SIM卡型号是:SC21、SC27、SC28、H8/3101、ST16612、ST16等。
SIM卡符合ISO7816要求。SIM卡共有8个触点,通过这些触点与移动终端接口并提供SIM卡电路工作时所需电源。SIM卡的时钟频率通常由移动终端提供,I/O输出输入的传输波特率是时钟频率的1/372。SIM卡在工作方式时完成与移动终端之间的信息传输。在休闲方式时,SIM卡将保留所有相关数据,并支持内部全休眠对指令休眠和时钟休眠三种休眠方式。
目前有两种功能相同而形式不同的SIM卡投入实用:一种是卡片式SIM卡,尺寸与普通信用卡相同,用户只要将SIM卡插入GSM终端,即可使用GSM网。另一种形式是蔽人式SIM卡,尺寸为25MM x 15MM,触点尺寸与卡片式相同,主要用于手持机中。
3.SIM卡的数据文件
(1)SIM卡是按数据文件来组织数据的,数据文件是一个逻辑数据区,不同的数据文件分别存储在不同的目录下。数据文件有两种类型,一种是透明的文件,它是非结构化的数据文件,由固定长度的字块构成;另一种是面向记录的数据文件,它由固定长度的逻辑记录组成。
(2) GSM规范对SIM卡的数据文件进行了严格的定义,下面分别就各种数据文件的作用及结构作一简要介绍。
持卡者相关信息数据文件,该数据文件位于根目录下,占30个字节,作管理用,它包括持卡者姓名、代号等。
IC卡识别信息数据文件,位于根目录下,长度为10个字节,其数据用于识别IC卡。在SIM卡制造阶段,由厂家将数据写入。数据内容包括:经济活动代号、国家代号、发行号、序列号、填充码等。
(3)管理数据文件,位于GSM应用目录下,长度为3字节,内容包括:操作方式、类型认可、制造商专用信息等。
(4)SIM卡业务表数据文件,位于GSM应用口录下,长度2字节,其内容用于识别那些在SIM卡内分配和激活了的业务。
(5)IMSI数据文件,位于GSM应用目录下,长为9字节,用于存储国际移动用户身份号(IMSI)。
(6)位置信息数据文件,位于GSM应用目录下,11个字节,用于存储临时移动用户身份号(TMSI)、位置区域号(LAI)、位置状态更新等与位置有关的信息,以维护用户的移动性。
(7)密钥KC和N的数据文件,位于GSM应用目录下,长9个字节,用于存储密钥KC(占8个字节)和密钥序号(占1个字节),便于身份认证和数据加密。
(8)PLMN选择数据文件,位于GSM应用目录下,长24个字节,可存储8个PLMN号码,用来确定用户选用的PLMN的优先级顺序,便于漫游功能的实现。
(9)BCCH(广播信道)信息数据文件,位于GSM应用目录下,长16个字节,用于存储BCCH信息。
(10)禁用PLMN数据文件,位于GSM应用目录下,长12个字节,要求存储4个PLMN号码,作为SIM卡初始化过程的一部分。
(11)访问控制数据文件,位于GSM应用目录下,长2字节,用于存储访问控制级别的信息。
(12)缩位拨号数据文件,位于电信应用目录下,记录长度为“14+X”字节,该数据文件包括:拨号、有关的字母标记、网络/承载容量标识符、被叫用户地址标识符。
(13)容量/结构参数数据文件,位于电信应用目录下,记录长度为15个字节,其存储的参数与要求的网络和承载容量以及移动终端结构有关。
(14)被叫方子地址数据文件,位于电信应用目录下,记录长度为23个字节,存储被叫方子地址及相关信息。
(15)短信息存储数据文件,位于电信应用目录下,记录长度为176个字节,存储从网中接收来或向网络发送的信息以 及160个字符的预先确定的短信息号码。
(16)固定拨号数据文件,位于电信应用目录下,记录长度为“21+X”字节,用于存储特殊业务的号码。
(17)计费计数器数据文件,位于电信应用目录下,记录长度为2个字节,存储与呼叫计费有关的信息。
4.SIM卡与移动终端的接口过程
在GSM应用中,SIM卡与移动终端接口,在此过程中,移动终端起主机作用,而SIM卡处于从属地位。在GSM网络操作中,SIM卡与移动终端的接口过程如下:
(1)SIM卡管理过程:SIM卡的初始化、去激活、业务表请求,管理信息请求及识别请求。
(2)用户PIN码相关过程:用户PIN码检验、替换、阻塞、再起动及SIM卡解锁过程。
(3)GSM保密相关过程:GSM算法计算,TMSI、LAI、密码密钥及序列号、IMSI、BCCH信息,禁止PLMN信息、位置更新状态的请求或更新。
(4)移动用户信息相关过程:短信息、充电信息、缩位拨号、性能结构参数、PLMN选择器的请求、存储扣消除。
5.SIM卡的指令系统
在GSM应用中的指令由命令及相应的响应构成,命令的格式符号ISO/IEC7816-4标准的规定。
有两种类型的GSM指令,一种标为MS指令,它是实现移动终端和SIM卡之间接口操作的指令,另一种称为ADM指令,它是GSM管理期间实现SIM卡与终端接入设备之间操作的指令,ADM指令是由网络运营者自行确定的尚未标准化。
M5指令共有15种,可分为以下几组:控制组、PIN组、鉴权组、读入组、写入组、管理组。
6.SIM卡的使用
在GSM系统中,移动终端出厂后不能直接使用,用户必须在网络经营部问注册得到一张用户识别模块SIM卡,它是持卡用户在电信局的代表。
当用户将SIM卡插入GSM终端的卡片读取器后,通信终端会提示输入长度为4-8位数的PIN码,用户输入PIN后,按“#”键即起动了对PIN的校验。若输入的PIN正确,移动终端就可以对SIM卡进行存取,读出相关的数据,而且可以接人进网,每次呼叫结束或者移动终端正常关闭时,所有的临时数据都会从移动终端传送到SIM卡中。以后开、关移动终端又都要进行PIN校验,通信过程中,从移动终端中取出SIM卡会终止当时的通信,而且目还可能破坏用户数据。
用户PIN码可以任意修改,但输入新的PIN前,要先输入原来的PIN。如果输入的PIN不正确,用户还可以再输入两次,输入出错时会显示出错信息,出错三次后SIM卡将闭锁。消除SIM卡的闭锁,可使用正确的八位码个人消闭锁密钥PUK,用户能否知道PUK是由网络经营者的SIM卡管理规程确定的,如果输入的PUk出错超过10次,SIM卡将永久闭锁。