SIM卡结构及上电流程详解

1. sim卡概述

1.1 什么是SIM卡

SIM卡是(Subscriber Identity Module客户识别模块)的缩写,也成为用户身份识别卡,移动无线终端必须安装上此卡才能使用。SIM卡是整个GSM系统中唯一确认用户身份的设备,它是向网络标明用户合法身份的重要工具。

1.2 Sim卡的作用

  • SIM卡是完全由运营商掌握的用户端设备,通过对SIM卡的控制,实现对终端功能的控制。
  • SIM卡是手机终端功能的增强和补充,提升手机终端业务能力,降低在业务推广上的终端设备投入成本;
  • SIM卡可以通过预置或OTA方式部署应用,满足日益增长的行业应用需求;

2. Sim卡的主要功能

2.1存储数据

SIM卡存储的数据可分为四类:

  • 固定数据----这类数据在ME(Mobile Equipment)被出售之前由SIM卡中心写入,包括国际移动用户识别号(IMSI)、鉴权密钥(KI)等;
  • 临时数据----指的是网络相关的的临时数据,如位置区域识别码(LAI)、移动用户暂时识别码(TMSI)、禁止接入的公共电话网代码等;
  • 业务代码----如个人识别码(PIN)、解锁码(PUK)、计费费率等;
  • 电话号码、短消息等用户记录。

2.2 PIN码保护

SIM卡本身是通过PIN码来保护的,PIN是一个4~8位的个人密码,只有当用户输入正确的PIN码时,SIM卡才能被启用,移动终端才能对SIM卡进行存取,也只有PIN认证通过后,用户才能上网通话。

2.3 用户身份鉴权

确认用户身份是否合法,鉴权过程是在是在网络和SIM卡之间进行的,而鉴权时间一般是在移动终端登记入网和呼叫时。鉴权开始时,网络产生一个128比特的随机数RAND,经无线电控制信道传送到移动台, SIM卡依据卡中的密钥Ki和算法A3,对接收到的RAND计算出应答信号SRES,并将结果发回网络端。而网络端在鉴权中心查明该用户的密钥Ki,用同样的RAND和算法A3算出SRES,并与收到的SRES进行比较,如一致,鉴权通过。

2.4 Sim卡中的保密算法及密钥

SIM卡中最敏感的数据是保密算法A3、A8、密钥Ki、PIN、PUK和Kc。A3、A8算法是在生产SIM卡时写入的,无法读出。PIN码可由用户在手机上自己设定,PUK码由运营者持有,Kc是在加密过程中由Ki导出的。

2.5 SIM卡的类型

在这里插入图片描述

  • mini SIM:25mm×15mm,有的文档将这种卡称为标准卡。
  • micro SIM:15mm×12mm。
  • nano SIM:12mm×9mm。
  • 虚拟SIM:直接在手机或者其他移动设备中集成SIM卡功能,卡成为了手机芯片模块的一部分。使用虚拟SIM的设备,必定是运营商定制设备,或者设备供应商和运营商签订了协议。

2.6 Sim卡物理接口

在这里插入图片描述

  • Vcc:电源输入
  • RESET:复位信号
  • CLK:时钟输入信号
  • GND:接地
  • VPP:编程电压,现在已经基本不用
  • I/O:数据输入输出

2.7 SIM卡内部结构

在这里插入图片描述

  • CPU:处理器单元
  • RAM:用于存放临时数据
  • ROM:用于存放系统程序,用户不可修改
  • EEPROM:用于号码、短信等数据,可擦写的程序等

2.8 SIM卡文件结构

在这里插入图片描述
详细卡文件请参考:3GPP 31102 4.7

  • MF(Master File):主文件,理解为根目录。MF文件的ID为3F00
  • DF(Dedicated File):专用文件,理解为文件夹。常见的DF有:
  • DF-GSM:ID为7F20
  • DF-TELECOM:ID为7F10
  • ADF:Application DF,ID为7FFF
  • EF(Elementary File):基本文件,存储数据用的文件。基本文件又分为3类
  • 透明EF:透明结构的 EF 由一个字节序列组成。简单理解为只有一条记录的文件
    在这里插入图片描述
  • 线性固定EF:线性固定 EF 文件由一个记录长度固定的记录序列组成。第一个记录记录号是 1。 简单理解为记录多条记录的文件。
  • 在这里插入图片描述
  • 循环EF:循环文件用于以时间顺序存储的记录,当所有的记录空间都占用时,新的存储数据将覆盖最旧的信息。 如果线型固定EF的记录是一个数组的话,循环EF的记录就是一
    个循环链表。

在这里插入图片描述
注意:线性固定EF和循环EF最多只能存放255条记录
根据上面的描述,可以看得出来,要精确的定位到一个EF文件,完整的文件路径应该是:
MFID + DFID + EFID。
举例:DF-TELECOM下面的EF-SMS(保存短消息的SIM卡文件,ID为6F3C),完整路径就是“3F007F106F3C”。

2.9 常用的文件操作

2.9.1 常用的有如下操作

• SELECT:选择文件
• STATUS:查询当前目录的信息
• READ BINARY:读取透明EF内容
• UPDATE BINARY:更新透明EF内容
• READ RECORD:读取线性固定EF或者循环EF的记录
• UPDATE RECORD:更新线性固定EF或者循环EF的记录

2.9.2 PIN/PUK系列的命令:

• VERIFY CHV:验证PIN码
• CHANGE CHV:修改PIN码
• DISABLE CHV:关闭PIN码验证
• ENABLE CHV:打开PIN码验证
• UNBLOCK CHV:解锁

2.9.3 STK相关的命令:详细描述见STK主题文章

• TERMINAL PROFILE:告知SIM卡手机对STK的支持能力。初始化SIM卡的过程中发给SIM卡。
• FETCH:手机从SIM卡获取命令
• TERMINAL RESPONSE:手机返回SIM卡执行主动式命令的结果
• ENVELOPE:手机发送数据或者事件给SIM卡。

3. sim卡初始化流程

在这里插入图片描述
如上图所示,SIM 卡激活后(用指定的高低电平顺序给SIM卡的几个管脚上电,在ISO/IEC7816-3定义), ME 选择专有文件 DF-GSM,并查询语种文件EF-LP(language preferred)。如果语种文件不可得,或者 EF 中的语言不被支持,那么 ME 选择一种缺省语言。然后 ME 进行 CHV1 验证过程。如果 CHV1 验证过程执行成功, ME 接着执行 SIM 卡 PHASE 请求过程。如果 ME 检测到一个 PHASE 1 SIM 卡,它将忽略接.与 FDN(Fixed Dialing Number,固定拨号) 有关的过程,并进入GSM启动操作。

:现在的SIM卡基本上都是Phase 2的

对于 PHASE 2 SIM 卡,只有在以下二个条件之一满足时,才能启动 GSM 操作:

  1. 如果EFIMSI和EFLOCL为失效,GSM操作立即启动;
  2. 如果EFIMSI 和 EFLOCI 已失效,ME 激活这二个 EF。

如果 FDN 功能满足以下3种情况,则GSM流程启动,否则GSM操作不应该启动

  1. FDN 在 SIM 卡中被分配并激活,并且FDN 被置为“ ENABLED”;
  2. FDN 在 SIM 卡中被分配并激活,并且 FDN 被置为“ DISABLED”;
  3. FDN 未被分配或未被激活;

然后, ME 执行下述GSM启动操作,包括:

  1. ADMINISTRATIVE 信息请求
  2. SIM 卡服务表请求
  3. IMSI 请求
  4. 存取控制请求
  5. HPLMN 搜索周期请求
  6. PLMN选择请求
  7. 位置信息请求
  8. 密钥请求Draft prETS 300 608:1996.08 HCCL GSM 11.11 Version4.18.0
  9. BCCH 信息请求
  10. 禁止 PLMN 请求

SIM 卡初始化成功完成以后, MS 准备 GSM 会话。

4. SIM卡常用协议

SIM卡相关协议都在以下3个协议系列中:

  • 11系列:GSM only (before Rel-4)
  • 51系列:GSM only (Rel-4 and later)
  • 31系列:3G and beyond / GSM (R99 and later)

日常工作中经常用到的有:

  • SIM/USIM:11.11 / 51.011 / 31.102
  • STK:11.14 / 51.015 / 31.111
  • SIM/USIM测试协议:51.010 / 31.121
  • STK测试协议:51.010-4 / 31.124
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

四儿家的小祖宗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值