1. SIM卡的结构和类型
SIM卡是带有微处理器的智能芯片卡,它的构成是以下几个模块:
--- CPU
--- 程序存储器(ROM)
--- 工作存储器(RAM)
--- 数据存储器(EPROM或E2PROM)
--- 串行通信单元
这五个模块必须集成在一块集成电路中,否则其安全性会受到威胁。因为,芯片间的连线可能成为非法存取和盗用SIM卡的重要线索。
在实际使用中有两种功能相同而形式不同的SIM卡:
(a) 卡片式(俗称大卡)SIM卡,这种形式的SIM卡符合有关IC卡的ISO…7816标准,类似IC卡。
(b) 嵌入式(俗称小卡)SIM卡,其大小只有25mm×15mm,是半永久性地装入到移动台设备中的卡。
两种卡外装都有防水、耐磨、抗静电、接触可靠和精度高的特点。
2.SIM卡的软件特性
SIM卡采用新的单片机及存储器管理结构,因此处理功能大大增强。SIM卡中存有三类数据信息:
(1) 与持卡者相关的信息以及SIM卡将来准备提供的所有业务信息,这种类型的数据存储在根目录下。
(2) GSM应用中特有的信息,这种类型的数据存储在GSM目录下。
(3) GSM应用所使用的信息,此信息可与其它电信应用或业务共享,位于电信目录下。
3.SIM卡中的保密算法及密钥
SIM卡中最敏感的数据是保密算法A3、A8算法、密约Ki、PIN、PUK和Kc。A3、A8算法是在生产SIM卡的同时写入的,一般人都无法读A3、A8算法;HN码可由客户在手机上自己设定;PUK码由运营者持有;Kc是在加密过程中由Ki导出;Ki需要根据客户的IMSI和写卡时用的母钥(Kki),由运营部门提供的一种高级算法DES,即Ki=DES(IMSI,Kki),经写卡机产生并写入SIM卡中,同时要将IMSI、Ki这一对数据送入GSM网路单元AUC鉴权中心。
如何保证Ki在传送过程中安全保密是一件非常重要的事情。Ki在写卡时生成,同时加密,然后进入HLR/AUC后再解密,那么连写卡和HLR/AUC的操作人员也不知道Ki的真实数据。
一般流行的做法是用一高级方程DES对Ki进行加密,DES方程需要一把密钥Kdes,加密和解密都用同一把密钥。由运营部门提供DES方程给HLR/AUC设备供应商,运营部门制定严格的保密制度,管理好密钥Kdes就能保证Ki传递的安全性,此过程见图7-1所示。
图7-1 SIM卡写卡流程
4. 数据和参数
SIM卡中存有数据:ISDN、Ki、PIN、PUK、TMSI、LAI和ICCID(SIM卡号码)。其中ISDN、Ki、PIN、PUK上面已提到;TMSI和LAI是随着客户移动,网路随时写入的;ICCID号码是SIM卡号,它的数据格式定义如下:
898600 9F SS YY G xxxxxX Chk
898600 固定不变
9 代表移动业务接入号的末位
F 代表功能位,暂定为0
SS 代表各省编号
YY 代表编制ICCID时的年号(取后两位)
G 代表SIM卡供应商编号
XXXXXX 由各局自行定义
Chk 校验位
ICCID号码一共20位,采用条形码和数字号码印刷,颜色为黑色,印在SIM卡的反面,即不带芯片的那面。大卡、小卡均印20位,大卡将条形码、数字号码印在左上方,条形码在上,数字号码在下。小卡只在芯片反面印制数字号码,数字号码分四行,每行五位。ICCID的条形码采用交叉二五码。
另外,SIM卡中还存有许多参数,分为GSM系统参数和电信业务参数两类。GSM系统参数一般包括有管理类别、业务表、接入控制BCCH信息、TMSI、IMSI、Kc等;电信业务参数包括有缩位拨号、短消息、话费数据等。
下面按GSM的Phasel(阶段1)和Phase2(阶段2)两种情况对SIM卡的数据格式说明如下:
(1) Phasel
① GSM系统参数
在阶段l时所选GSM系统参数数据项目见表7-1所示。其中,6F38业务表中选有五项开放业务:
表7-1 GSM阶段1系统参数数据所选项
标识符 |
名称 |
长度 |
6FAD |
管理(Administrative) |
3 |
6F38 |
业务表(Service Table) |
4 |
6F07 |
IMSI |
9 |
6F7B |
禁止PLMN(Forbidden PLMN) |
12 |
6F7E |
TMSI LAI |
11 |
6F20 |
Kc,n |
9 |
6F30 |
PLMN选择(PLMN Selector) |
24 |
6F74 |
BCCH信息(BCCH Information) |
16 |
6F78 |
接入控制(Access Control) |
2 |
业务1(Servicel):PIN码取消(PIN Disabling)
业务2(Service2):缩位拨号(AbbreviatedDialling Numbers)
业务4(Service4):短消息存储(Short Message Storage)
业务6(Service6):容量配置参数(Capability Configuration Pa- rameters)
业务7(Service7):PLMN选择(PLMN Selector)
业务3、业务5和业务8在Phase.1中不开放。6F78接入控制采用低级等级。
② 电信业务参数
电信业务所选项目见表7-2所示。
表7-2 GSM阶段1电信业务所选项
标识符 |
名称 |
长度 |
6F3A |
缩位拨号 (Abbreviated Dialling Numbers) |
50 X 22 |
6F3D |
容量配置参数 (Capability Config Parameters) |
1 X 14 |
6F3C |
短消息存储 (Short Message Storage) |
5 X176 |
6F39 |
话费计数 (Carging Counter) |
2 |
(2) Phase2
① GSM系统参数
在阶段2时GSM系统参数数据所选项目见表7-3所示。其中,6F38业务表在Phasel的基础上增加的业务有:
表7-3 GSM阶段2 系统参数数据所选项
标识符 |
名称 |
长度 |
6F05 |
语种选择(Language Preferernce) |
4 |
6F07 |
IMSI |
9 |
6F20 |
Kc,n |
9 |
6F30 |
PLMN选择(PLMN Selector) |
42 |
6F31 |
HPLMN搜索(HPLMN Search) |
1 |
6F38 |
业务表(Service Table) |
4 |
6F45 |
小区广播消息标识 (Cell Broad Message ID) |
8 |
6F74 |
BCCH消息(BCCH Information) |
16 |
6F78 |
接入控制(Access Control) |
2 |
6F7B |
禁止PLMN(Forbidden PLMN) |
12 |
6F7E |
TMSI LAI |
11 |
6FAD |
管理数据(Admin Data) |
3 |
6FAE |
Phase 识别(Phase Ident) |
2 |
业务9(Service9):MSISDN
业务10(Servicelo):扩展1文件(Extension l file)
业务12(servicel2):短消息参数(short Message Parameters)
业务13(Servicel3):最后拨号存储(Last Number Dialled)
业务14(servicel4):小区广播消息识别(cell Broadcasting
Message ldentifier fi1e) .
业务3、业务5、业务8和业务11在Phase2中不开放。6F78接入控制采用低级等级。
② 电信业务参数
电信业务所选项目见表7-4所示。
表7-4 GSM阶段2电信业务所选项
标识符 |
名称 |
6F3A |
缩位拨号(Abbreviated Dialling) |
6F3C |
短消息存储(Short Message Storage) |
6F3D |
容量配置参数(Capability Config.) |
6D40 |
MSISDN |
6F42 |
短消息存储参数(SMS Paramters) |
6F43 |
短消息存储状态(SMS Status) |
6F44 |
最后拨号存储(Last Number Dialled) |
6F4A |
扩展1文件(Extension 1 file) |
5. SIM卡的寿命
SIM卡的使用是有一定年限的。一般来说,它的物理寿命是取决于客户的插拔次数,约在1万次左右;而集成电路芯片的寿命取决于数据存储器的写入次数,不同厂家其指标有所不同,就Motorola经试验室试验约5万次左右。SIM卡的平均寿命约为4年左右。