SIM卡的硬件和软件接口有关技术

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

SIM卡(SubscriberIdentityModule)。即用户识别模块,是一张符合GSM规范的智慧卡。SIM卡可以插入任何一部符合GSM规范的移动电话中,实现电话号码随卡不随机的功能,而通话费则自动计入持卡用户的帐单上,与手机无关。SIM卡作为智能卡中特殊的一类卡,采用标准的接触式IC卡。他受到ISO7816标准(接触式集成电路IC卡的规定)和ETSI(欧洲电信标准委员会)的GSM11.11等标准的规范。他沿袭了智能卡在安全中的特色,并在移动用户认证和移动商务中扮演重要的角色。目前手机用户将一些重要的电话号码都储存在手机的SIM卡上。如果手机失窃,用户可以买一部新的,但是储存的号码怎么办呢?如果用户能事先将储存在SIM卡上的电话号码做一份电子拷贝,这样就算手机丢失了,用户还是可以很容易地将保存的号码写入到新的SIM卡里。为此,研究并设计了SIM卡读卡器,通过他可以将手机SIM卡中信息读取到电脑中,方便地实现电话簿和短消息的编辑、备份和管理。为经常使用手机的用户提供了一个经济、便捷的信息备份管理解决方案。SIM卡是一张符合GSM规范智能卡,他实际上是一个装有微处理器的芯片卡,内部有5个模块,且每个模块都对应一个功能:CPU(8位)、程序存储器(3~8kb)、工作存储器(6~16kb)、数据存储器(128~256kb)和串行通信单元。SIM卡能实现存储数据(电话本、短消息等)和在安全条件下(个人身份号码PIN、鉴权钥Ki正确)完成客户身份鉴权和客户信息加密算法的全过程。这些功能都是由SIM卡内的一部具有操作系统的微处理机完成。SIM卡具有机卡分离(SIM-ME接口)、通信安全可靠、成本低等特点。(1)SIM卡的物理特征:可以分尺寸为54mm×84mmID-1SIM(大卡)和尺寸为25mm×15mmPlug-inSIM(小卡)两种。(2)SIM卡的存储容量:一般SIM卡有8kB的存储容量,另外还有容量分别为16k和32k的SIM卡,即STKSIM卡。(3)SIM卡的使用温度:标准温度-25~+70℃,极限温度-35~85℃,极限情况下每次使用不得超过4小时,总共使用不得超过100次。(4)SIM卡的使用寿命:物理寿命是取决于客户的插拔次数,约在1万次左右;而集成电路芯片的寿命取决于数据存储器的写入次数,不同厂家其指标有所不同,就Mo-torola经试验室试验约5万次左右。平均寿命约为4年。一、SIM卡接口电路SIM卡引脚功能的定义如表1所列:SIM卡芯片有8个触点,与移动台设备相互接通:(1)电源VCC(触点C1):4.5~5.5V,ICC10mA;(2)复位RST(触点C2);(3)时钟CLK(触点C3):卡时钟3.25MHz;(4)不提供(触点C4);(5)接地端GND(触点C5);(6)编程电压VPP(触点C6);(7)数据I/O口(触点C7);(8)不提供(触点C8)。SIM卡同移动台设备连接时至少需5个连接线:数据I/O口(Data)、复位(RST)、接地端(GND)、电源(VCC)、时钟(CLK)。他与基带单元的接口电路如图1所示。其中SIMCD为SIM卡检测脚,用于检测SIM卡的拔插;SIMCLK为ME提供的读/写SIM卡的参考时钟;SIMRST为SIM卡复位信号;SIMIO为串行数据输入/输出线,由20kΩ上拉电阻上拉至高电平;SIMRnW为读/写控制信号,用以指示当前SIM_IO线上数据传输的方向;SIMPWCTRL为功率控制信号,可在空闲方式时控制SIM卡上的电源关闭,从而降低功耗,延长待机时间。二、单片机与SIM卡的接口单片机与SIM卡的接口电路如图1所示。该电路主要由外围有源晶体Y2提供4MHz、稳定的时钟频率给SIM卡,电源由一颗LDO输出3.3V、纯净的直流电到SIM卡的Cl_VCC上。这里选择ST7267的PE2脚作为I/O引脚,通过一个4.7kΩ的上拉电阻与SIM卡实现通讯;选择PE3脚作为SIM卡的复位控制引脚。四、SIM卡内部数据结构SIM卡共有3类数据文件:主文件(MasterFile,MF)、专用文件(DedicateFile,DF)、基本文件(ElementFile,EF)。组织结构规定如下:0x3F00代表根目录,0x2FXX代表根目录下的基本文件;0x7FXX代表一级子目录,0x6FXX代表一级子目录下的基本文件;0x5FXX代表二级子目录,0x4FXX代表二级子目录下的基本文件。5SIM卡上电复位流程SIM卡符合国际标准ISO7816的要求,按照协议中的规定,SIM应有8个触点,包括电源接口、复位控制接口、时钟输入接口、数据输入输出接口,SIM卡工作时整体电流消耗小于10mA。SIM卡的时钟频率可由外部提供,在指定时问内运行鉴权过程时至少需要13/4MHz的时钟频率,其他情况下,使用最小为13/8MHz的时钟频率。I/O端口的数据传输波特率为时钟频率的1/372。五、底层软件设计SIM卡的数据传输方式与其他存储卡不同,它遵循ISO7816标准。因此在进行SIM卡读写设计时应该注意数据传输时每一个数据位的宽度,然后按照ISO7816的标准编写程序。首先是接收到正确的复位应答信号(ATR),其次是向SIM卡发送命令,得到正确的返回数据和状态标志。5.1ETU的计算ETU(基本时间单位)就是SIM卡I/O脚上输入/输出每一位数据的时间,计算公式是;其中:参数F和D分别是时钟频率转换因子和波特率调整因子,这里使用默认的速率,即F=372,D=1;使用的时钟频率f是4MHz。可以计算出基本时间单位是93μs。5.2基本数据帧结构通信使用的协议是ISO7816-3所规定的T=0的异步半双工字符传输协议。基本的数据帧是由1个起始位(低电平)、8个数据位和1个奇偶校验位组成的,如图2所示。其中,校验位是将8个数据位与其自身做偶校验,也就是其中1的个数必须足偶数。起始位不做校验运算。在保护时间内SIM卡和单片机都要处于高电平(即I/O口是高电平)。在T=O协议里,如果SIM卡或者单片机检测到奇偶校验结果不正确,则在保护时间内把I/O端口拉低,以示出错。5.3SIM卡的APDU结构应用协议数据单元APDU(ApplicationProtocolDataUnits)包括了命令APDU以及应答APDU,其结构如下:其中:CLA是指令的类别,A0被制定为GSM的应用;INS是指令代码;Pl、P2、P3是指令参数,P3指示的是数据的长度;Data就是要传输的数据;SWl和SW2就是命令处理后返回的状态。5.4基本程序模块的设计设myBit为从I/O端口采样的存储变量,设Parity为奇偶校验变量,Parlty的初始化值为0。每次从I/O口采样后,myBit都要与Parity进行一次“异或”,结果放入Parity。这样采样9次后,如果Parity的最终值是0,就说明奇偶校验正确;如果不是0,就说明读取数据失败,返回错误信息,要求发送者重发。

1 / 4
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功