1.1 SIM卡类型分类
SIM卡:SIM卡是一种基于IC卡的特殊应用,主要用于终端用户的身份识别。SIM卡是存储了安全密钥、网络信息、用户信息等内容的集成电路芯片。其中的密钥可用于用户身份的鉴别,并可产生对通话进行加密的密钥。SIM卡的使用,完全防止了并机和通话被窃听等行为。GSM的SIM卡仅是一种单应用卡,它不能直接添加额外的应用,而我们平时在使用的移动炒股、移动银行等应用都是通过STK来实现的。s
R-UIM卡:也称为UIM,是CDMA网络中的用户识别模块,功能相当于GSM网络中的SIM和3G网络中的USIM。采用移动通信终端用户识别及加密技术,它支持专用的鉴权加密算法和OTA(over the air,空中下载)技术,可以通过无线空中接口方式对卡上的数据进行更新和管理。
UICC卡+USIM模块:是UMTS网络中的UICC卡上的一个应用模块。USIM卡不仅具有鉴权认证功能,还能够支持多种应用,如在手机上实现电子钱包、电子信用卡、电子票据等。USIM卡还在安全性方面对算法进行了升级 (支持RSA等算法),并增加了卡对网络的认证功能。
UICC卡+ISIM模块:是运行在IMS网络中的UICC卡上的应用模块,它包括了识别和认证IMS用户的相关参数。
UICC卡+CSIM模块:它是运行在UICC卡上的一种应用模块,是CDMA 2000系统中的用户标识模块,由R-UIM发展而来。
1.2 SIM卡文件类型分类
SIM卡的内容是以文件系统的形式组织的,包含Master File、Dedicated File和Element File三种类型的文件。
1) MF是SIM卡中的主目录,所有文件都在MF目录下,包括DF,ADF和EF,里面存放着整个SIM卡的控制和管理信息。
2) DF是MF下的目录,DF可以存在于主目录MF下,也可以存在于其他DF目录下,里面存放着整个目录的管理控制信息。
3) EF是MF或DF下基本元素,是存储文件内容的基本单元,既有文件头,也有文件体,文件头存放该文件的位置和控制信息,文件体存放真正的数据,整个SIM卡中只有基本文件有文件体,也只有基本文件才用来存放数据。
4) ADF是一种特殊的DF,一般一个ADF包含一个应用的所有DF和EF。
1.3 SIM卡中重要文件介绍
1.3.1 MF目录下文件
MF目录下共有四个EF:EFDIR,EFICCID,EFARR,EFPL。
1). EFDIR:文件结构类型为定长线性结构,包含多条记录,每条记录包含一个应用标志(AID)。某个应用必须用AID来选择,而不能通过路径来选择。例如选择USIM应用或GSM应用,必须通过AID来选择,而不是路径。应用于WCDMA网络的3G SIM卡一般都包括两个应用USIM和GSM。
2). EFICCID:该文件存贮SIM卡的ID身份识别码,每张SIM卡的识别码是唯一的,即不同SIM卡的ICCID是不同的,类似单板的IMEI。
3). EFARR:该EF包括在MF下的基本文件的访问规则索引。
4).EFPL:该文件为透明结构,包括n种语言的编码,每种编码占两个byte(TS 31.101 [11])。这些信息由用户/运营商确定,它按优先权的顺序定义了首选语言。
1.3.2 USIM应用目录(ADF)下文件
1). EFIMSI:此文件包含国际移动用户标志符,IMSI包括三部分MCC,MNC和MSIN(移动用户标志号码)。
2). EFPLMNwAcT(PLMN及接入技术列表):该文件为透明结构,可存储8个或以上记录,每个记录为五个字节,优先级依次降低,每五个字节中前两个字节表示PLMN,后两个字节表示接入技术。
3).EFUST(USIM Service Table):该文件指明了哪一个服务可用。如果一个服务在USIM中被指明不可用,ME不会选择此服务,业务无效意味着即使USIM有能力支持该业务,该业务也不能被USIM用户应用
SIM卡初始化流程
1.4 SIM卡文件初始化顺序
1)UICC的激活
2)应用选择(EFDIR):某个应用必须用AID来选择,而不能通过路径来选择。
3)SIM卡的ICCID(EFICCID)
语言标识(EFLI):默认语言总是优先使用EFLI文件而不是MF下的EFPL文件,
4)不受PIN码校验的信息,如紧急呼叫代码(EFECC )
5)验证PIN码,如果该过程失败,则USIM初始化过程终止。
6)管理数据请求(EFAD):该EF包括关于不同类型USIM卡操作模式的信息,如 常规模式、型号认证模式、制造商特定模式等。也就是说这个文件相当于SIM卡对UE的要求,其中最为关注的是MNC位数的标识,有一个案例就是SIM卡中EFAD中的MNC的位数标识是3位,而SIMLOCK段号中的MNC为2位,所以就出现了号段锁不住的现象。
7)USIM服务列表请求(EFUST)
8)USIM使能列表请求(EFEST):该文件指出那些服务是激活的,如果此表没有表明一个服务是激活的,则ME是不会选择此服务的。如果UST文件中标明是激活的,而EST也是激活的,则此服务是enable的,否则此服务是不可用的。UST和EST要配合使用,取他们两个的交集。
9)AND功能判断:用于EF存储电话本记录
10)FDN功能判断:固定拨号号码和补充业务控制字符串,还包括相关网络/承载能力的识别符等字段。
11)BDN功能判断:禁用拨号BDN,因为BDN服务依赖于呼叫控制特性,只有呼叫控制可用时,BDN才可用。
12)接入列表请求(EFACL),该文件包含了允许接入的APN列表,一个不支持ACL的ME不应该发送任何APN到网络。
13)IMSI请求(EFIMSI)
14)接入控制等级请求(EFACC):包含了已经分配了的网络访问控制级别,访问控制级别是控制访问尝试的一个参数,这个文件完全由运营商自己控制。
15)查询HPLMN时间周期(EFHPLMN):查询两次搜索HPLMN的时间间隔。
16)HPLMN接入技术请求(EFPLMNNwAct):此文件的信息由用户确定,信息按照优先权顺序定义了用户首选公用陆地移动网,第一个记录是最高优先级,以此递减。此文件也包含了本列表中的每个PLMN的接入技术。
17)用户控制的PLMN接入技术请求
18)运营商控制的PLMN接入技术请求(EFOPLMNwACT)
19)GSM初始化请求
20)CS域或PS域的位置区信息请求(EFLOCI或EFPSLOCI. ):
EFLOCI:临时移动用户识别符(TMSI)、位置区信息(LAI)、位置更新状态
EFPSLOCI:PS域的临时移动用户身份号(P-TMSI)、PS域的临时移动用户省份签名值(P-TMSI signature value)、路由区域信息(RAI)、路由区域更新状态。
21)CS域或PS域的加密和一致性检查参数请求。(EFKeys或EFKeysPS )
22)禁止的PLMN列表请求(EFFPLMN)
23)Hyperframe初始值请求(EFSTART-HFN ):该文件包含了承载者的STARTcs和STARTps值,该值由EFkeys/EFkeysps文件中最后一次CS或PS RRC连接中生成的密钥来保护,来控制密钥的寿命。
24)START的最大值请求 (EFTHRESHOLD ):该文件包含了STARTcs和STARTps的最大值,用来控制密钥的生存周期。
25)CBMID 请求. (EFCBMT):该文件包含了信息标识参数,这个参数将要被USIM传递小区广播信息的内容类型。
26)ME读取USIM上的QoS参数文件EFQOSP和EFSML ,并完全按照参数文件的内容进行ME设置,如果如果卡上没有EFQOSP和EFSML文件,ME进行后续流程 。
如果这些初始化过程都正确执行,那么ME就已准备OK,并发送STATUS命令通知USIM卡,开始执行用户发送的各种进程。