智能卡的实际应用
发布时间:2008/11/22 0:00:00 访问次数:410
和简单的存储卡相比,微处理器卡的另一个优点是可以预先规定指令的序列。于是,就有可能用其参数准确规定所有的命令和序列,这样在对文件进行面向对象的授权访问时,同时防止了未授权的访问。智能卡在这方面所具有的能力是非常大的,简单的操作系统常常不能管理状态机,而现代的操作系统甚至能用指令参数来定义专用的状态机。
智能卡状态机可划分为微和宏两种类型。微状态机只规定短指令序列,而且只在序列中的第1条命令被送至卡后才被激活,一个典型的例子是需要鉴别一终端的命令。第1条命令向终端请求一随机数,它激活了一个微状态机,作为第2条命令它只接受一条鉴别命令,卡接收到这条指令,则完成处理并许可所有的其他命令。否则,若卡接收的是任何其他类型的命令,则微状态机产生一错误报文并中止处理。然后,命令序列必须从头重新开始。
微状态机仅仅是所有可能的状态机的一个子集,在智能卡中它有很大优势。因为,它在一个严格规定的序列中只限于极少数的几条指令,占用很少的存储和程序空间。在许多应用中,应用面向对象的访问机制时足以保护文件的内容,而没有另外强加于指令序列的限制。只有少量的过程,比如鉴别,才必须遵照预定的序列,能够很经济的用微状态机来实现。
宏状态机可以看作是微状态机的扩充和一般化。在一个规定的图形内,它使得对包括了参数的所有命令在它们执行之前可进行验证。取决于状态机的构造,在某些情况下,它有可能实施面向对象的文件保护,因为状态机可在指令实际执行之前进行所有必须的检验。在状态
框图中的一个差错,将对系统的安全性导致毁灭性的后果。虽然,对于复杂的状态机要验证它在状态框图中完全不存在错误是非常困难的,但在实际的文件访问保护中仍在使用着。在智能卡中对所有的处理和所有的指令产生正确的描述是非常费时的,而往往还要凭经验才能达到可靠的程度。图1为有两个状态的宏状态机的sdl图。
表1 状态框图的表格描述
图1 有两个状态“x”和“1”的智能卡宏状态机之例
在说明过宏状态机的优点后,现在我们必须转向它的不足之处。实现一个具有所需能力的宏状态机的成本很昂贵,这既指它的设计也包括了后继的编程。对状态机的程序存储要求,仅表示图形的存储就是巨大的。此外,所涉及图形的程序编码也必须存储在存储器中。存储空间的总量自然依赖于所完成的图形的复杂性,按照智能卡的相互关系来说,有着许多状态和相应数量的转换图形所含有的信`崽量会变得很大。
目前,正在开发的iso/iec 7816-9标准,讨论了智能卡的状态机。它说明了访问控制描述符acd(access control descriptor),规定了被准许处于某特定状态的指令以及其相关的参数,智能卡操作系统使用acd可以监控硬编码的状态机。
为了以摘要的形式说明宏状态机的能力,图2所示为一小型应用的状态框图,其操作如下所述。
经过复位,智能卡处于初始状态,以1表示之。在此状态,任何在目录中的文件都可用select file来选择,这并不引起状态转换。除了verin'pin,所有其他命令均被禁用,而卡用一出错报文来响应它们,在成功地验证了pin之后,状态机转换至状态2。
在状态2中允许两条指令,第1条路径经select file引导至状态3,在这里可以读出被选文件;第2条路径从状态2分枝至状态4,接着是从卡向终端请求一随机数(ask random)。除了external authenticab以外的任何其他指令都将导致返回至起始状态1;当终端被成功鉴别后,卡达到状态5;按照框图,在此状态时文件可用select file和update binary予以选择和写人。
图2 有上列状态和转换的智能卡宏状态机之例
在此框图中,状态3和5两者在一次会话期间不能并存,所以表现为两种结束状态。只有卡复位才能转移到状态1。然而,这点并未在图中示出,因为任何状态机的“意识”仅限于它目前的活动之中,毕竟一台状态机不能把信息从一次会话期间带入到下一次中去。
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
和简单的存储卡相比,微处理器卡的另一个优点是可以预先规定指令的序列。于是,就有可能用其参数准确规定所有的命令和序列,这样在对文件进行面向对象的授权访问时,同时防止了未授权的访问。智能卡在这方面所具有的能力是非常大的,简单的操作系统常常不能管理状态机,而现代的操作系统甚至能用指令参数来定义专用的状态机。
智能卡状态机可划分为微和宏两种类型。微状态机只规定短指令序列,而且只在序列中的第1条命令被送至卡后才被激活,一个典型的例子是需要鉴别一终端的命令。第1条命令向终端请求一随机数,它激活了一个微状态机,作为第2条命令它只接受一条鉴别命令,卡接收到这条指令,则完成处理并许可所有的其他命令。否则,若卡接收的是任何其他类型的命令,则微状态机产生一错误报文并中止处理。然后,命令序列必须从头重新开始。
微状态机仅仅是所有可能的状态机的一个子集,在智能卡中它有很大优势。因为,它在一个严格规定的序列中只限于极少数的几条指令,占用很少的存储和程序空间。在许多应用中,应用面向对象的访问机制时足以保护文件的内容,而没有另外强加于指令序列的限制。只有少量的过程,比如鉴别,才必须遵照预定的序列,能够很经济的用微状态机来实现。
宏状态机可以看作是微状态机的扩充和一般化。在一个规定的图形内,它使得对包括了参数的所有命令在它们执行之前可进行验证。取决于状态机的构造,在某些情况下,它有可能实施面向对象的文件保护,因为状态机可在指令实际执行之前进行所有必须的检验。在状态
框图中的一个差错,将对系统的安全性导致毁灭性的后果。虽然,对于复杂的状态机要验证它在状态框图中完全不存在错误是非常困难的,但在实际的文件访问保护中仍在使用着。在智能卡中对所有的处理和所有的指令产生正确的描述是非常费时的,而往往还要凭经验才能达到可靠的程度。图1为有两个状态的宏状态机的sdl图。
表1 状态框图的表格描述
图1 有两个状态“x”和“1”的智能卡宏状态机之例
在说明过宏状态机的优点后,现在我们必须转向它的不足之处。实现一个具有所需能力的宏状态机的成本很昂贵,这既指它的设计也包括了后继的编程。对状态机的程序存储要求,仅表示图形的存储就是巨大的。此外,所涉及图形的程序编码也必须存储在存储器中。存储空间的总量自然依赖于所完成的图形的复杂性,按照智能卡的相互关系来说,有着许多状态和相应数量的转换图形所含有的信`崽量会变得很大。
目前,正在开发的iso/iec 7816-9标准,讨论了智能卡的状态机。它说明了访问控制描述符acd(access control descriptor),规定了被准许处于某特定状态的指令以及其相关的参数,智能卡操作系统使用acd可以监控硬编码的状态机。
为了以摘要的形式说明宏状态机的能力,图2所示为一小型应用的状态框图,其操作如下所述。
经过复位,智能卡处于初始状态,以1表示之。在此状态,任何在目录中的文件都可用select file来选择,这并不引起状态转换。除了verin'pin,所有其他命令均被禁用,而卡用一出错报文来响应它们,在成功地验证了pin之后,状态机转换至状态2。
在状态2中允许两条指令,第1条路径经select file引导至状态3,在这里可以读出被选文件;第2条路径从状态2分枝至状态4,接着是从卡向终端请求一随机数(ask random)。除了external authenticab以外的任何其他指令都将导致返回至起始状态1;当终端被成功鉴别后,卡达到状态5;按照框图,在此状态时文件可用select file和update binary予以选择和写人。
图2 有上列状态和转换的智能卡宏状态机之例
在此框图中,状态3和5两者在一次会话期间不能并存,所以表现为两种结束状态。只有卡复位才能转移到状态1。然而,这点并未在图中示出,因为任何状态机的“意识”仅限于它目前的活动之中,毕竟一台状态机不能把信息从一次会话期间带入到下一次中去。
欢迎转载,信息来源维库电子市场网(www.dzsc.com)
上一篇:智能卡的差错检测和校正码
上一篇:智能卡的状态机理论基础