SIM卡结构及上电流程详解

SIM卡结构及上电流程详解

  • 1. sim卡概述
    • 1.1 什么是SIM卡
    • 1.2 Sim卡的作用
  • 2. Sim卡的主要功能
    • 2.1存储数据
    • 2.2 PIN码保护
    • 2.3 用户身份鉴权
    • 2.4 Sim卡中的保密算法及密钥
    • 2.5 SIM卡的类型
    • 2.6 Sim卡物理接口
    • 2.7 SIM卡内部结构
    • 2.8 SIM卡文件结构
    • 2.9 常用的文件操作
      • 2.9.1 常用的有如下操作
      • 2.9.2 PIN/PUK系列的命令:
      • 2.9.3 STK相关的命令:详细描述见STK主题文章
  • 3. sim卡初始化流程
  • 4. 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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/217646.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

JSP EL 通过 三元运算符 控制界面 标签 标签属性内容

然后 我们来说说 EL配合三元运算符的妙用 我们先这样写 <% page contentType"text/html; charsetUTF-8" pageEncoding"UTF-8" %> <%request.setCharacterEncoding("UTF-8");%> <!DOCTYPE html> <html> <head>&l…

芙蓉花 欣赏

芙蓉&#xff08;Hibiscus mutabilis Linn&#xff09;是一种锦葵科、木槿属植物原名&#xff1a;木芙蓉&#xff0c;别名&#xff1a;芙蓉花、拒霜花、木莲、地芙蓉、华木、酒醉芙蓉。其花或白或粉或赤&#xff0c;皎若芙蓉出水&#xff0c;艳似菡萏展瓣&#xff0c;故有“芙蓉…

每日一题--删除链表的倒数第 N 个结点

破阵子-晏殊 燕子欲归时节&#xff0c;高楼昨夜西风。 求得人间成小会&#xff0c;试把金尊傍菊丛。歌长粉面红。 斜日更穿帘幕&#xff0c;微凉渐入梧桐。 多少襟情言不尽&#xff0c;写向蛮笺曲调中。此情千万重。 目录 题目描述&#xff1a; 思路分析&#xff1a; 方法及…

类和对象(4)——补充内容+DateOJ题

Date类型的OJ 一&#xff0c;static成员例题 二&#xff0c;DateOJ题一&#xff0c;[计算日期到天数转换](https://www.nowcoder.com/practice/769d45d455fe40b385ba32f97e7bcded?tpId37&&tqId21296&rp1&ru/activity/oj&qru/ta/huawei/question-ranking)1…

原生实现底部弹窗效果 h5 小程序

<template><div class"home"><div class"btn" click"showPopupshow">弹出底部蒙层</div><div class"popup " catchtouchmove"true" :class"showPopup" ><div class"mask&q…

基于Flutter的图片浏览器的实现

一 效果展示&#xff1a; 1. 图片展示&#xff1a; 2.混色&#xff0c;平铺&#xff0c;拉伸&#xff0c;原图展示 二 实验准备&#xff1a; 1.在包结构中创建images包来存放我们用到的图片&#xff0c;在pubspec.yaml中声明路径&#xff1a; 2. 检查虚拟机是否正常运行&…

VS中如何使用Halcon

使用Halcon的本质就是调用Halcon的库&#xff0c;其主要步骤有&#xff1a; 1、将Halcon代码导出为C的.cpp文件 2、获取.cpp文件中的action函数的函数体 3、添加Halcon的动态库和静态库 4、添加action函数需要的头文件 导出halcon中的代码 a&#xff09;导出代码 b&#x…

【Vulnhub靶机】Jarbas--Jenkins

文章目录 信息收集主机发现端口扫描目录爆破 漏洞探测whatwebhash-identifierwhatweb 文档说明&#xff1a;https://www.vulnhub.com/entry/jarbas-1,232/ 靶机下载&#xff1a;Download (Mirror): 信息收集 主机发现 扫描C段 sudo nmap -sn 10.9.75.0/24端口扫描 sudo nma…

印刷基板开孔机上的直线导轨怎么安装?

直线导轨是属于高精度的传动元件&#xff0c;作为印刷基板开孔机重要的传动元件&#xff0c;倘若安装不当&#xff0c;严重则无法正常作业&#xff0c;轻则影响直线导轨的精度和寿命。那么&#xff0c;印刷基板开孔机的直线导轨是如何安装的呢&#xff1f; 在安装前&#xff0c…

(11_23)构建高效数据流转的 ETL 系统:数据库 + Serverless 函数计算的最佳实践

作者&#xff5c;柳下 概述 随着企业规模和数据量的增长&#xff0c;数据的价值越来越受到重视。数据的变化和更新变得更加频繁和复杂&#xff0c;因此及时捕获和处理这些变化变得至关重要。为了满足这一需求&#xff0c;数据库 CDC&#xff08;Change Data Capture&#xff…

完蛋!我被ConcurrentHashMap源码包围了!(一)

文章目录 1. 引言2. 使用3. 初始化4. 存储流程5. 取值流程6. 扩容流程 1. 引言 ConcurrentHashMap是一个线程安全的HashMap&#xff0c;在JDK1.7与JDK1.8&#xff0c;无论是实现还是数据结构都会有所不一样。这促使了ConcurrentHashMap有着HashMap一样的面试高频考点。 接下来…

POE交换机——电源解决方案-升压控制器\降压控制器\中高压降压转换器

PoE是一种有线以太网供电技术&#xff0c;使用于数据传输的网线同时具备直流供电的能力&#xff0c;PoE供电具有可靠、连接简捷、标准统一的优势。越来越多的工业物联网设备开始采用PoE供电&#xff0c; 如IP电话、网络视频监控以及无线以太网设备等。 PoE交换机是一种用于提供…