APDU命令

来源:互联网 发布:可靠韩国代购淘宝店铺 编辑:程序博客网 时间:2024/05/24 04:43

APDU= Application Protocol data unit, 是智能卡与智能卡读卡器之间传送的信息单元

CLA    INS  P1  P2  Lc  Data  Le

其中CLA为指令类别;INS为指令码;P1、P2为参数;Lc为Data的长度;Le为希望响应时回答的数据字节数,0表最大可能长度。
一 命令分类:
COS命令由具体应用分为4种命令报文结构如下:
① 情形1

CLA INS P1 P2  00

② 情形2

CLA INS P1 P2 Le

③ 情形3

CLA INS P1 P2 Lc Data

④ 情形4

CLA INS P1 P2 Lc Data Le


二 响应报文
1) 响应结构
响应数据  响应状态码
Data      SW1 SW1

DATA: 返回给用户的数据,即命令的执行结果。
SW1、SW2: 返回命令处理的状态。
三 命令集
1) Read Binary功能:此命令用于读取二进制文件部分或全部的内容。

CLA  00

INS  B0

P1 见参数说明
P2 从文件中读取的第一字节的偏移地址
Le 期望读出数据的长度


2) Update Binary功能:此命令使用给定的数据来更新二进制文件部分或全部的内容。

CLA  00

INS  D6

P1 见参数说明
P2 要修改的第一字节的偏移地址
Lc 后续数据域的长度
Data 修改用的数据


3) Read Record功能:此命令用于读取记录文件中指定记录的内容。

CLA  00

INS  B2

P1 记录号
P2 见参数说明
Le 期望读出数据的长度


4) Update record 功能:此命令使用给定的数据来更新记录文件中指定记录的内容。当所指定的文件非记录文件时,命令将终止。

CLA  00

INS  DC

P1 P1= 00 表示当前记录
P1≠ 00 表示指定的记录号
P2 见参数说明
Lc 后续数据域的长度
Data 更新原有记录的新记录


5) Verify PIN功能:此命令将校验给定的密码的正确性,根据比较的结果修改安全状态,若校验失败次数达到PIN尝试上限,则PIN自动锁定。

CLA  00

INS  20

P1  00

P2

Lc  02 ~ 10

Data 外部输入的个人密码


6) Select File功能:此命令使用文件名或应用标示符来选择IC卡内DF或EF。

CLA  00

INS  A4

P1  00

P2  00

Lc  00 (选择MF文件)/  02

Data 无 / FID


7) Get Challenge功能:此命令请求IC卡返回一个用于安全相关过程的随机数。

CLA  00

INS  84

P1  00

P2  00

Le  04


8) Get Response功能:此命令为T=0协议情形4状态下,用来取卡中返回的数据。

格式:
CLA  00

INS  C0

P1  00

P2  00

Le 响应的期望数据最大长度


9) Internal Authenticate功能:此命令将为外部设备验证卡中的秘密模块的有效性提供数据。

CLA  00

INS  88

P1  00

P2  00 ~ 07 密钥号
Lc  04

Data 外部随机数(4字节)


10) External Authenticate功能:此命令将验证外部设备中的秘密模块的有效性。

CLA  00

INS  82

P1  00

P2  00  ~ 07 密钥号
Lc  0C

Data 发卡方认证数据


11) Change / Unlock PIN功能:修改、解锁、安装卡片个人密码。

CLA  00

INS  5E

P1  00  修改卡片个人密码
 01  解锁卡片个人密码
 02  安(重)装卡片个人密码
P2 密码号
Lc

Data


12) Unlock Key功能:解锁卡片应用密钥。

CLA  00

INS  5C

P1  01  解锁应用密钥
 02  安装卡片应用密钥
P2 密钥号
Lc 无 / 密钥长度
Data 无 / 加密的密钥


13) Create File

功能:此命令创建卡片文件系统。
CLA  00 /  80

INS  F2

P1  00 / FTP 文件类型
P2  00 / FAC 文件访问控制条件
Lc 无 /  07

Data

示例:
1 应用选择
(1)选择MF(主文件)

CLA   INS   P1   P2   Lc   Data

00    A4    00   00 

P1=00选择主文件                   


(2)根据应用标识符选择应用
CLA   INS   P1   P2   Lc   Data

00    A4    04   0C   07   A0 00 00 02 47 10 01

P1=04 选择DF(专用文件),此时数据域为DF的文件名(AID应用标识符)
DF包括EF(基本文件)和其他DF

DF1:EF.COM、EF.DG1........................EF.DG16、EF.Sod


2 使用SELECT命令选择基本文件
例:选择机读取区
CLA   INS   P1   P2   Lc   Data

00    A4    02   0C   02   01 01

3读二进制
CLA   INS   P1   P2   Lc   Data

00    B0    05   00   00                   //读取文件前256Byte

如果P1的最高位b8为1时,b6和b7位必须为0,b5-b1位表示待读取的基本文件的SFI;这时P2表示要读取数据起始位置在文件中的偏移量。
    如果P1的最高位为0时,P1的后7位和P2相连共同组成了一个超过256的整数,表示待读取数据块的起始位置在文件中的偏移量,可以用于超过256Byte文件的读取。

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 炸好了的肉梭子不脆了怎么办 跑步的时候胸抖的疼怎么办 小区内安装了乒乓球桌扰民了怎么办 裁判出示红牌如果球员不走怎么办 高三文化课不好又没有特长怎么办 孩子做事磨蹭拖拉不讲效率怎么办 宝贝幼儿园哭的嗓子哑了怎么办 我给孩子转学学校不接收怎么办 眼睛被太阳晒了胀豉豉的怎么办 电脑电源灯亮着屏幕是黑的怎么办 刚办健身卡健身房跑路了怎么办 孕妇怀孕初期胖的太快怎么办 魔幻陀螺二的陀螺拆不动怎么办 我不干了小厂不给我发工资怎么办 货车司机把人撞成重伤没钱出怎么办 房主卖房定金收了不想卖怎么办 领导迟迟不给升职加薪机会怎么办 加工中心铣圆进出刀有接刀痕怎么办 烧茄子时炸茄子茄子太吸油怎么办? 梦金园黄金刚买了不给退怎么办 给同学抄作业被老师发现了怎么办 不准体罚和变相体罚后熊孩子怎么办 钢琴练的不好走不了专业怎么办 老师来信息说孩子学习退步了怎么办 老人磕着膝盖走路腿疼怎么办 腿膝盖一受凉就疼怎么办可以不疼 手臂和膝盖摔烂了好痛?怎么办 结扎一个月后坐太久腰酸怎么办 杠铃深蹲肩关节背不过去怎么办 QQ音乐在别的地方停不了歌怎么办 孕8周胎儿发育变慢怎么办 8个月宝宝肋张力高怎么办 术后5个月左手张力高怎么办 宝宝4个月体检四肢张力稍高怎么办 上腹绷紧大便酸臭酸臭的怎么办 小学生从双杠上摔下来会怎么办 去健身房碰到教练让你报私教怎么办 提踵把小腿练粗了怎么办 健身后两个小腿不一边粗怎么办 宿舍床上隔段时间有虫子怎么办 b2驾照实习证扣6分怎么办