最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

android sim 卡7816,SIM卡基础技术规范, ISO

互联网 admin 27浏览 0评论

android sim 卡7816,SIM卡基础技术规范, ISO

前言:好久前做了个开发SIM卡读写卡的项目, 研究了下ISO-7816协议, 整理了一些常用的APUD指令, 最近有时间, 决定把它记录下来.

传输协议

在SIM卡和ME的数据交互过程中,规定了T=0和T=1两种传输协议

命令头标由5个连续的字节组成:(T0)

CLA:  命令类别,取值为“A0”,当CLA=FF时,为PPS过程的头标;

INS:   指令代码;

P1,P2:   指令附加参数;

P3:   由INS的编码而定,或是表示命令中送给SIM卡的数据长度,或是表示等待从SIM卡响应的数据最大长度。

注释:  也就是说将这些拼接上A0+INS+P1+P2+P3

举例:  A0A40000023F00(进入到3F00文件, 其中A4是命令, 相当于终端中用cd进入文件位置一样)

文件标识符3F:主文件;

7F:第一级专有文件

5F:第二级专有文件

2F:主文件下的基本文件

6F:在第一级专有文件下的基本文件

4F:在第二级专有文件下的基本文件

判断SIM卡是否是白卡A0A40000023F00 // 进入3F00主文件A0A40000027F20 // 进入7F20文件A0A40000026F07 // 进入6F07文件A0B0000009     // B0 允许SIM卡从当前透明文件中读取字节串// 返回的字符串str = [str substringWithRange:NSMakeRange(0, 18)];    if ([str isEqualToString:@"FFFFFFFFFFFFFFFFFF"]) {        // 为白卡

return YES;

}

读取短信中心A0A40000023F00

A0A40000027F10

A0A40000026F42

A0C000000F

A0B2010428     // B2  用于读取线性固定文件或循环文件的记录

读取iccidA0A40000023F00

A0A40000022FE2

A0B000000A// 返回的卡号为倒序卡号

读取IMSI号A0A40000023F00

A0A40000027F20

A0A40000026F07

A0B0000009

以上就是本次内容了, 遵循SIM卡规范国际标准,写卡我这里就不说了, 希望对初次接触SIM卡的小伙伴有所帮助.

喜欢的小伙伴点个喜欢或关注吧, 你们的鼓励是我前进的动力!

作者:CoderW

链接:

android sim 卡7816,SIM卡基础技术规范, ISO

前言:好久前做了个开发SIM卡读写卡的项目, 研究了下ISO-7816协议, 整理了一些常用的APUD指令, 最近有时间, 决定把它记录下来.

传输协议

在SIM卡和ME的数据交互过程中,规定了T=0和T=1两种传输协议

命令头标由5个连续的字节组成:(T0)

CLA:  命令类别,取值为“A0”,当CLA=FF时,为PPS过程的头标;

INS:   指令代码;

P1,P2:   指令附加参数;

P3:   由INS的编码而定,或是表示命令中送给SIM卡的数据长度,或是表示等待从SIM卡响应的数据最大长度。

注释:  也就是说将这些拼接上A0+INS+P1+P2+P3

举例:  A0A40000023F00(进入到3F00文件, 其中A4是命令, 相当于终端中用cd进入文件位置一样)

文件标识符3F:主文件;

7F:第一级专有文件

5F:第二级专有文件

2F:主文件下的基本文件

6F:在第一级专有文件下的基本文件

4F:在第二级专有文件下的基本文件

判断SIM卡是否是白卡A0A40000023F00 // 进入3F00主文件A0A40000027F20 // 进入7F20文件A0A40000026F07 // 进入6F07文件A0B0000009     // B0 允许SIM卡从当前透明文件中读取字节串// 返回的字符串str = [str substringWithRange:NSMakeRange(0, 18)];    if ([str isEqualToString:@"FFFFFFFFFFFFFFFFFF"]) {        // 为白卡

return YES;

}

读取短信中心A0A40000023F00

A0A40000027F10

A0A40000026F42

A0C000000F

A0B2010428     // B2  用于读取线性固定文件或循环文件的记录

读取iccidA0A40000023F00

A0A40000022FE2

A0B000000A// 返回的卡号为倒序卡号

读取IMSI号A0A40000023F00

A0A40000027F20

A0A40000026F07

A0B0000009

以上就是本次内容了, 遵循SIM卡规范国际标准,写卡我这里就不说了, 希望对初次接触SIM卡的小伙伴有所帮助.

喜欢的小伙伴点个喜欢或关注吧, 你们的鼓励是我前进的动力!

作者:CoderW

链接:

发布评论

评论列表 (0)

  1. 暂无评论