智能卡ISO7816-4规范(中文版) 联系客服

发布时间 : 星期日 文章智能卡ISO7816-4规范(中文版)更新完毕开始阅读8c465adc2f3f5727a5e9856a561252d381eb2051

6.14.2 使用与安全的条件

命令的成功执行要求从卡获得的最后询问是有效的。

不成功的比较可以被记录在卡内(例如,为了限制使用引用数据的进一步企图数)。 6.14.3 命令报文

表67 EXTERNAL AUTHENTICATE 命令APDU CLA 按 5.4.1定义的 INS ‘82’ P1 在卡内引用的算法 P2 秘密的引用,见表68 Le字段 空或后续数据字段的长度 数据字段 空或鉴别相关的数据(例如,对询问的响应) Le字段 空 P1=‘00’表示没有信息被给出。在发出命令之前引用的算法为已知,或在数据字段中提供。

P2=‘00’表示没有信息被给出。在发出命令之前引用的秘密为已知,或在数据字段中提供。

表68 引用控制P2的编码 b8 b7 b6 b5 b4 b3 b2 b1 含 义 0 0 0 0 0 0 0 0 ——没有信息被给出 0- - - - - - - ——全局引用数据 (例如,MF特定密钥) 1 - - - - - - - ——特定引用数据 (例如,DF特定密钥) - × × - - - - - ‘00’(其他值为RFU) - - - × × × × × ——秘密的号 :

1)例如,秘密的号可以是一个密钥号或一个短EF标识符。

2)当主体为空时,命令既可用来检索进一步允许的重试数(SW1-SW2=‘63CX’)或用来校验是否不要求验证(SW1-SW2=‘9000’)。 6.14.4 响应报文(标称情况)

表69 EXTERNAL AUTHENTICATE响应APDU 数据字段 空 SW1-SW2 状态字节 6.14.5 状态条件 下列特定报警条件可能发生。 ——SW1=‘63’, 同时SW2= ·‘00’:没有信息被给出(鉴别失效)。 ·‘CX’:计数器(鉴别失效;‘X’表示进一步允许的重试数)。 下列特定差错条件可能发生。 ——SW1=‘67’, 同时SW2= ·‘00’:错误的长度(Lc字段不正确)。 ——SW1=‘69’, 同时SW2= ·‘83’:鉴别方法被阻塞。 ·‘84’:引用的数据无效。 ·‘85’:使用的条件不被满足(在上下文中命令不被允许)。 ——SW1=‘6A’, 同时SW2=

·‘86’:不正确的参数P1-P2。 ·‘88’:引用的数据未被找到。 6.15 GET CHALLENGE命令 6.15.1 定义和范围

GET CHALLENGE 命令要求发出一个询问(例如,随机数)以便用于安全相关的规程(例如,EXTERNAL AUTHENTICATE 命令)。 6.15.2 使用与安全的条件

询问至少对下一个命令是有效的。在本规范本部分未规定进一步的条件。 6.15.3 命令报文

表70 GET CHALLENGE 命令APDU CLA 按5.4.1定义的 INS ‘84’ P1-P2 ‘0000’(其他值为RFU) Lc字段 空 数据字段 空 Le字段 在响应中期望的最大长度 6.15.4 响应报文(标称情况) 表71 GET CHALLENGE响应APDU 数据字段 询问 SWL-SW2 状态字节 6.15.5 状态条件 下列特定差错条件可能发生。 ——SW1=‘6A’, 同时SW2= ·‘81’:功能不被支持。 ·‘86’:不正确的参数P1-P2。 6.16 MANAGE CHANNEL命令 6.16.1 定义和范围

MANAGE CHANNEL 命令打开和关闭逻辑信道。 开放功能打开了新逻辑信道,而不是基本逻辑信道。提供选项为了卡分配逻辑信道号,或为了将逻辑信道号供应给卡。

关闭功能显式地关闭逻辑信道,而不是基本逻辑信道。在成功关闭之后,该逻辑信道可加以重新使用。

6.16.2 使用与安全的条件

当由基本逻辑信道执行开放功能时,则在成功开放之后,MF应隐式地被选择作为当前DF,并且新逻辑信道的安全状态应和ATR之后的基本逻辑信道的安全状态相同。新逻辑信道的安全状态应和任何其他逻辑信道的安全状态分开。

当由不是基本逻辑信道的某一逻辑信道执行开放功能时,则在成功开放之后,曾发出命令的逻辑信道的当前DF应被选择作为当前DF,并且新逻辑信道的安全状态应和曾执行开放功能的逻辑信道的安全功能相同。

在成功的关闭功能之后,与该逻辑信道相关的安全状态被丢失。 6.16.3 命令报文

表72 MANAGE CHANNEL 命令APDU

CLA INS P1 P2 Lc字段 数据字段 Le字段 按5.4.1定义的 ‘70’ P1=‘00’打开逻辑信道 P1=‘80’关闭逻辑信道(其他值为RFU) ‘00’,‘01’,‘02’,‘03’(其他值为RFU) 空 空 ‘01’,如果P1-P2=‘0000’ 空,如果P1-P2≠‘0000’

P1的位b8用来表示开放功能或关闭功能;如果b8为“0”,则MANAGE CHANNEL应打开逻辑信道,如果b8为“1”,则MANAGE CHANNEL应关闭逻辑信道。

对于开放功能(P1=“00”),P2的位b1和b2用来按照与类别字节(见本部分规范5.4.1)相同的方式来编制逻辑信道号;P2的其他位为RFU。

——当P2的b1和b2为空时,则卡将分配在数据字段的位b1和b2中返回的逻辑信道号。

——当P2的b1和/或b2不为空时,它编码某一逻辑信道号,而不是基本逻辑信道,则卡将打开外部分配的逻辑信道号。 6.16.4 响应报文(标称情况)

表73 MANAGE CHANNEL响应APDU 数据字段 逻辑信道号,如果P1-P2=‘0000’ 空,如果P1-P2≠‘0000’ SW1-SW2 状态字节 6.16.5 状态条件

下列特定报警条件可能发生。 ——SW1=‘62’, 同时SW2= ·‘00’:没有信息被给出。

7 面向传输的行业间命令

对于遵循本规范本部分的所有卡而言,应该不强制要求支持本部分描述的所有命令或所支持命令的所有选项。

当要求进行国际交换时,卡的系统服务及相关命令的集合和选项应按照本规范本部分第9章中的定义使用。

表11提供了本规范本部分定义的命令概要。

安全报文交换(见5.6)对报文结构的影响不在本章中描述。

在7.X.5的每一条中所给出的差错和报警条件的列表不是穷举的(见5.4.5)。 7.1 GET RESPONSE 命令 7.1.1 定义和范围

GET RESPONSE命令用于从卡发送至接口设备、用可用的协议不能传送的那一些的APDU(或APDU的一部分)。 7.1.2 使用与安全的条件

无条件。 7.1.3 命令报文

表74 GET RESPONSE 命令APDU

CLA 按 5.4.1定义的 INS ‘CO’ P1-P2 ‘0000’(其他值为RFU) Lc字段 空 数据字段 空 Le字段 在响应中期望的数据最大长度 7.1.4 响应报文(标称情况)

如果Le字段仅包含“0”,则对于短的长度在不超过256,或者对于扩展的长度不超过65536的范围内,所有有效字节应被返回。

表75 “GET RESPONSE”响应APDU 数据字段 按照Le的APDU(的一部分) SWL-SW2 状态字节 7.1.5 状态条件

下列特定正常处理可能发生。 ——SW1=‘61’, 同时SW2= ·‘XX’:正常处理:更多的数据字节是有效的(‘XX’表示在后续GET RESPONSE仍然有效的额外字节数)。

下列特定报警条件能发生。 ——SW1=‘62’, 同时SW2= ·‘81’:返回数据的一部分可能已损坏。 下列特定差错条件可能发生。 ——SW1=‘67’, 同时SW2= ·‘00’: 长度错误(Le字段不正确)。 ——SW1=‘6A’, 同时SW2= ·‘86’:参数P1-P2不正确。 ——SW1=‘6C’, 同时SW2= ·‘XX’:长度错误(Le字段错误;‘XX’表示正确的长度)。 7.2 ENVELOPE 命令 7.2.1 定义和范围

ENVELOPE命令用来发送那些不能由有效协议来发送的APDU,或APDU的一部分,或任何数据串。

注:对于SM的ENVELOPE命令的用发在附录F中示出。 7.2.2 使用与安全的条件

无条件。 7.2.3 命令报文

表76 ENVELOPE 命令APDU CLA 按 5.4.1定义的 INS ‘C2’ P1-P2 ‘0000’(其他值为RFU) Lc字段 后续数据字段的长度 数据字段 APDU(的一部分) Le字段 空或期望数据的长度

当对于发送数据串而言根据T=0来使用ENVELOPE命令时,在ENVELOPE命令ADPU中的空数据字段意味着“数据串的结束”。