智能卡的传输协议命令

时间:2008-11-21

  原则上,传输协议应构造的完全独立于应用层的数据和命令,这也是OSI层次模型的意图。遗憾地是,在理 论要求和真正的实践中存在着差异。这里有两条命令其目的仅在于允许传输机制可在应用层上使用,名为 GET RESPONSE(获取晌应)和ENVELOPE(包封)。这里还有另一条命令,MANAGE CHANNEL(通道管理),它 的功能不能由应用层单独使用,这三条命令的功能参见表1~表3。

  表1 遵照ISO/IEC 7816-4的GET RESPONSE的功能

  表2 遵照ISO/IEC 7816-4的ENVELOPE的功能

  表3 遵照ISO/IEC 7816-4 MANAGE CHANNEL的功能

  在T=0的协议中,不可能在一个命令一响应循环①中,既发送一个数据字组给智能卡雨同时又从智能卡接收一数据字组,因之,这个协议不支持情况4(Case 4)的命令,虽然它们被经常用到。于是,在T=0协议时被迫使用一个工作区,这样就工作在一种简单的方式中。情况4命令被送至卡,如果它是成功的,一特殊的回送代码被发送给终端。它通知终端,命令已产生了数据正等待着提取,终端于是就发送一条GET RESPONSE命令给智能卡并接收数据。这样就结束了对于第1条命令的命令-响应循环。只要除GET RESPONSE命令之外,没有别的命令被送给卡,则响应数据就可以多次被请求。

  当命令在保密通信的电文中被完全加密时,T=0协议中有可能发生传输问题,它既需要不加密的指令字节同时还需要不加密的Le字节。ENVELOPE命令用嵌入一个完整的具有其头标和数据部分的APDU到ENVELOPE命令的APDU的数据中的方法避开了这个限制。这样可以不受任何限制的加密,并可用任何协议传送。同样的方法也用于智能卡所产生的响应之中,它也嵌入在ENVELOPE命令的APDU之中。

  逻辑通道允许在单独一张卡中有多达四项应用可相互独立地寻址。在类别字节中用两位来使命令与应用相协调。在使用一新的逻辑通道之前,终端必须明显地经MANAGECHANNEL命令通知智能卡,向卡表示需用另外的通道。通道号可由终端给出,或由卡在其响应中提供一个空闲的通道号。当被打开的新的逻辑通道是标准通道(0通道)时,卡的表现就好像在复位之后面对着新的通道一样,这就是说,MF是被选择了的,并且未曾达到安仝状态。当一个不是0通道的新逻辑通道被打开后,现行选择的DE和安全状态都被保留了下来。当一逻辑通道被关闭后,相关的文件选择和安全状态均被清除。

  欢迎转载,信息来源维库电子市场网(www.dzsc.com


  
上一篇:DRAM的CAS先于RAS有效刷新
下一篇:DRAM的隐藏刷新

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。

相关技术资料