收藏 分销(赏)

智能卡操作系统.doc

上传人:xrp****65 文档编号:7692380 上传时间:2025-01-12 格式:DOC 页数:41 大小:92.50KB 下载积分:10 金币
下载 相关 举报
智能卡操作系统.doc_第1页
第1页 / 共41页
智能卡操作系统.doc_第2页
第2页 / 共41页


点击查看更多>>
资源描述
COS概述       随着IC卡从简单的同步卡发展到异步卡,从简单的 EPROM卡发展到内带微处理器的智能卡(又称CPU卡),对IC卡的各种要求越来越高。而卡本身所需要的各种管理工作也越来越复杂,因此就迫切地需要有一种工具来解决这一矛盾,而内部带有微处理器的   智能卡的出现,使得这种工具的实现变成了现实。人们利用它内部的微处理器芯片,开发了应用于智能卡内部的各种各样的操作系统,也就是在本节将要论述的COS。 COs的出现不仅大大地改善了智能卡的交互界面,使智能卡的管理变得容易;而且,更为重要的是使智能卡本身向着个人计算机化的方向迈出了一大步,为智能卡的发展开拓了极为广阔的前景。   COS的全称是Chip Operating System(片内操作系统),它一般是紧紧围绕着它所服务的智能卡的特点而开发的。由于不可避免地受到了智能卡内微处理器芯片的性能及内存容量的影响,因此,COS在很大程度上不同于我们通常所能见到的微机上的操作系统(例如DOS、UNIX等)。首先,COS是一个专用系统而不是通用系统。即:一种COS一般都只能应用于特定的某种(或者是某些)智能卡,不同卡内的COS一般是不相同的。因为coS一般都是根据某种智能卡的特点及其应用范围而特定设计开发的,尽管它们在所实际完成的功能上可能大部分都遵循着同一个国际标准。其次,与那些常见的微机上的操作系统相比较而言,COS在本质上更加接近于监控程序、而不是一个通常所谓的真正意义上的操作系统,这一点至少在目前看来仍是如此。因为在当前阶段,COS所需要解决的主要还是对外部的命令如何进行处理、响应的问题,这其中一般并不涉及到共享、并发的管理及处理,而且就智能卡在目前的应用情况而盲,并发和共享的工作也确实是不需要曲。   COS在设计时一般都是紧密结合智能卡内存储器分区的情况,按照国际标准(ISO /IEC 7816系列标准)中所规定的一些功能进行设计、开发。但是由于目前智能卡的发展速度很快,而国际标准的制定周期相对比较长一些,因而造成了当前的智能卡国际标准还不太完善的情况,据此,许多厂家又各自都对自己开发的COS作了一些扩充。就目前而言,还没有任何一家公司的CoS产品能形成一种工业标准。因此本章将主要结合现有的(指1994年以前)国际标准,重点讲述CO5的基本原理以及基本功能,在其中适当地列举它们在某些产品中的实现方式作为例子。   COs的主要功能是控制智能卡和外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。其中,与外界进行信息交换是coS最基本的要求。在交换过程中,COS所遵循的信息交换协议目前包括两类:异步字符传输的 T=0协议以及异步分组传输的T=l协议。这两种信息交换协议的具体内容和实现机制在ISO/IEC7816—3和ISO/IEC7816—3A3标准中作了规定;而COS所应完成的管理和控制的基中功能则是在ISO/IEC7816—4标准中作出规定的。在该国际标准中,还对智能卡的数据结构以及COS的基本命令集作出了较为详细的说明。   至于ISO/IEC7816—1和2,则是对智能卡的物理参数、外形尺寸作了规定,它们与COS的关系不是很密切。 COS的体系结构     依赖于上一节中所描述的智能卡的硬件环境,可以设计出各种各样的cos。但是,所有的COS都必须能够解决至少三个问题,即:文件操作、鉴别与核实、安全机制。事实上,鉴别与核实和安全机制都属于智能卡的安全体系的范畴之中,所以,智能卡的coS中最重要的两方面就是文件与安全。但再具体地分析一下,则我们实际上可以把从读写设备(即接口设备IFD)发出命令到卡给出响应的一个完整过程划分为四个阶段,也可以说是四个功能模块:传送管理器(TM)、安全管理器(SM)、应用管理器(AM)和文件管理器(FM)。其中,传送管理器用于检查信息是否被正确地传送。   这一部分主要和智能卡所采用的通信协议有关;安全管理器主要是对所传送的信息进行安全性的检查或处理,防止非法的窃听或侵入;应用管理器则用于判断所接收的命令执行的可能性;文件管理器通过核实命令的操作权限,最终完成对命令的处理。对于一个具体的COS命令而言,这四个阶段并不一定都是必须具备的,有些阶段可以省略,或者是并人另一阶段中;但一般来说,具备这四个阶段的COS是比较常见的。以下我们将按照这四个阶段对COS进行较为详细的论述。   在这里需要提起注意的是,智能卡中的“文件”概念与我们通常所说的“文件”是有区别的。尽管智能卡中的文件内存储的也是数据单元或记录,但它们都是与智能卡的具体应用直接相关的。 一般而言,一个具体的应用必然要对应于智能卡中的一个文件,因此,智能卡中的文件不存在通常所谓的文件共享的情况。而且,这种文件不仅在逻辑广必须是完整的,在物理组织上也都是连续的。此外,智能卡中的文件尽管也可以拥有文件名(FileN8me),但对文件的标识依靠的是与卡中文件—一对应的文件标识符(F3te ldentifier),而不是文件名。因为智能卡中的文件名是允许重复的,它在本质上只是文件的一种助记符,并不能完全代表莱个文件。 传 送 管 理 (Transmission Manaeer)   传送管理主要是依据智能卡所使用的信息传输协议,对由读写设备发出的命令进行接收。同时,把对命令的响应按照传输协汉的格式发送出去。由此可见,这一部分主要和智能卡具体使用的通信协议有关;而且,所采用的通信协议越复杂,这一部分实现起来也就越困难、越复杂。   我们在前面提到过目前智能卡采用的信息传输协议一般是T=0协议和T=1协议,如果说这两类协议的COS在实现功能上有什么不同的话,主要就是在传送管理器的实现上有不同。不过,无论是采用T=0协议还是T=1协议,智能卡在信息交换时使用的都是异步通信模式;而且由于智能卡的数据端口只有一个,此信息交换也只能采用半双工的方式,即在任一时刻,数据端口上最多只能有一方(智能卡或者读写设备)在发送数据。 T=0、T=1协议的不同之处在于它们数据传输的单位和格式不一样,T=0协汉以单字节的字符为基本单位,T=1协议则以有一定长度的数据块为传输的基本单位。   传送管理器在对命令进行接收的同时,也要对命令接收的正确性作出判断。这种判断只是针对在传输过程中可能产生的错误预言的,并不涉及命令的具体内容,因此通常是利用诸如奇偶校验位、校验和等手段来实现。对分组传输协议,则还可以通过判断分组长度的正确与否来实现。   当发现命令接收有错后,不同的信息交换协议可能会有不同的处理方法:有的协议是立刻向读写设备报告,并且请求重发原数据;有的则只是简单地在响应命令上作一标记,本身不进行处理,留待它后面的功能模块作出反应。这些都是由交换协议本身所规定的。   如果传送管理器认为对命令的接收是正确的,那么,它一般是只将接收到的命令的信息部分传到下—功能模块,即安全管理器,而滤掉诸如起始位、停止位之类的附加信息。相应地,当传送管理器在向读写设备发送应答的时候,则应该对每个传送单位加上信息交换协议中所规定的各种必要的附属信息。  安全体系(—SecvritySCructure)     智能卡的安全体系是智能卡的COs中一个极为重要的部分,它涉及到卡的鉴别与核实方式的选择,包括COS在对卡中文件进行访问时的权限控制机制,还关系列卡中信息的保密机制。可以认为,智能卡之所以能够迅速地发展并且流行起来.其中的一个重要的原因就在于它能够通过COS的安全体系给用户提供—个较高的安全性保证。   安全体系在概念上包括三大部分:安全状态(Security Status),安全属性(Security Attributes)以及安全机制(Security achanisms)。其中,安全状态是指智能卡在当前所处的一种状态,这种状态是在智能—卡进行完复位应答或者是在它处理完某命令之后得到的。事实上,我们完全可以认为智能卡在整个的工作过程中始终都是处在这样的、或是那样的一种状态之中,安全状态通常可以利用智能卡在当前已经满足的条件的集合来表示。   安全属性实际上是定义了执行某个命令所需要的一些条件,只有智能卡满足了这些条件,该命令才是可以执行的。因此,如果将智能卡当前所处的安全状态与某个操作的安全属性相比较,那么根据比较的结果就可以很容易地判断出一个命令在当前状态下是否是允许执行的,从而达到了安全控制的目的。和安全状态与安全属性相联系的是安全机制。安全机制可以认为是安全状态实现转移所采用的转移方法和手段,通常包括:通行字鉴别,密码鉴别,数据鉴别及数据加密。一种安全状态经过上述的这些手段就可以转移到另一种状态,把这种状态与某个安全属性相比较,如果一致的话,就表明能够执行该属性对应的命令,这就是COS安全体系的基本工作原理。   从上面对coS安全体系的工作原理的叙述中,我们可以看到,相对于安全属性和安全状态而言,安全机制的实现是安全体系中极力重要的一个方面。没有安全机制,COS就无法进行任何操作。而从上面对安全机制的介绍中,我们可以看到,COS的安全机制所实现的就是如下三个功能:鉴别与核实,数据加密与解密,文件访问的安全控制。因此,我们将在下面对它们分别进行介绍。其中,关于文件访问的安全控制,由于它与文件管理器的联系十分紧密,因此我们把它放到文件系统中加以讨论。   (1)鉴别与核实:鉴别与核实其实是两个不同的概念,但是由于它们二者在所实现的功能上十分地相似,所以我们同时对它们进行讨论,这样也有利于在比较中掌握这两个概念。   通常所谓的鉴别(Authentication)指的是对智能卡(或者是读写设备)的合法性的验证,即是如何判定一张智能卡(或读写设备)不是伪造的卡(或读写设备)的问题;而核实(verify)是指对智能卡的持有者的合法性的验证,也就是如何判定一个持卡人是经过了合法的授权的问题。由此可见,二者实质都是对合法性的一种验证,就其所完成的功能而言是十分类似的。但是,在具体的实现方式上,由于二者所要验证的对象的不同,所采用的手段也就不尽相同了。   具体而言,在实现原理上,核实是通过由用户向智能卡出示仅有他本人才知道的通行字,并由智能卡对该通行宇的正确性进行判断来达到验证的目的的。在通行字的传送过程中,有时为了保证不被人窃听r还可以对要传送的信息进行加密/解密运算,这一过程通常也称为通行字鉴别。   鉴别则是通过智能卡和读写设备双方同时对任意一个相同的随机数进行某种相同的加密运算(目前常用 DES算法),然后判断双方运算结果的一致性来达到验证的日的的。   根据所鉴别的对象的不同,COS又把鉴别分为内部鉴别(Interna1 Authentication)和外部鉴别(External Authentication)两类。这里所说的“内部”、“外部”均以智能卡作为参照点,因此,内部鉴别就是读写设备对智能卡的合法性进行的验证;外部签别就是智能 F对读写设备的合法性进行的验证。至于它们的具体的实现方式.我们在第5章中已有详细论述,此处不再重复。   智能卡通过鉴别与核实的方法可以有效地防止伪卡的使用,防止非法用户的入侵,但还无法防止在信息交换过程中可能发生的窃听,因此,在卡与读写设备的通信过程中对重要的数据进行加密就作为反窃听的有效手段提了出来。下面仅对加密中的一个重要部件——密码在COS中的管理及存储原理加以说明。   (2)密码管理:目前智能卡中常用的数据加密算法是DES算法。采用DES算法的原因是因为该算法已被证明是一个十分成功的加密算法,而且算法的运算复杂度相对而言也较小,比较适用于智能卡这样运算能力不是很强的情况。 DES算法的密码(或称密钥)长度是64位的。 COS把数据加密时要用到的密码组织在一起,以文件的形式储存起来,称为密码文件。最简单的密码文件就是长度为8个字节的记录的集合,其中的每个记录对应着一个DES密码;较为复杂的密码文件的记录中则可能还包含着该记录所对应的密码的各种属性和为了保证每个记录的完整性而附加的校验和信息。   其中的记录头部分存储的就是密码的属性信息,例如是可以应用于所有应用文件的密码还是只对应某一应用文件可用的密码;是可以修改的还是只能读取的密码等等。但是:不论是什么样的密码文件,作为一个文件本身,COS都是通过对文件访问的安全控制机制来保证密码文件的安全性的。   当需要进行数据加密运算时,COS就从密码文件中选取密码加入运算。从密码文件中读出密码时,与读取应用数据一样,只要直接给出密码所在的地址就可以了。当然,员简单的产生密码的方法是直接从密码文件中随机读出一个密码作为加密用密码。但是这样的机制可能会多次选中同一密码,从而给窃听者提供破译的机会,安全性不太高。因此,比较好的办法是在随机抽取出一个密码后再对密码本身作一些处理,尽量减少其重复出现的机会。例如PBOS产品中,采用的办法就是对从密码文件中选出的密码首先进行一次DES加密运算,然后将运算结果作为数据加密的密码使用。其计算公式如下: Key = DES(CTC, K(a))   式中,K是从密码文件中随机选取的一个密码;CTC是一个记录智能卡的交易次数的计数器,该计数器每完成一次交易就增一;key就是最后要提供给数据加密运算使用的密码。使用这种方法可以提高智能卡的安全性,但却降低了执行的效率。因此,具体采用什么样的方法来产生密码应当根据智能卡的应用范围及安全性要求的高低而具体决定。 应用管理器/文件管理器 (Application Manager/File Manager)   应用管理器   应用管理器的主要任务在于对智能卡接收的命令的可执行性进行判断。关于如何判断一条命令的可执行性,我们已经在安全体系一节中作了说明,所以我们可以认为,应用管理器的实现主要是智能卡中的应用软件的安全机制的实现问题。而因为智能卡的各个应用都以文件的形式存在,所以应用管理器的本质就是我们将要在下一节加以词论的文件访问的安全控制问题。正是基于这一点,我们也可以把应用管理器看作是文件管理器的一个部分。 文件管理   与安全一样,文件也是COs中的一个极为重要的概念。所谓文件,是指关于数据单元或卡中记录的有组织的集合。 COS通过给每种应用建立一个对应文件的方法来实现它对各个应用的存储及管理。因此,COS的应用文件中存储的都是与应用程序有关的备种数据或记录。此外,对某些智能卡的CoS,可能还包含有对应用文件进行控制的应用控制文件。   在COS中,所有的文件都有一个唯一的文件标识符(File ldentifier),因此通过文件标识符就可以直接查找所需的文件。此外,每个文件还可以有一个文件名作为助记符,它与文件标识符的不同之处在于它是可以重复的。COS中的各文件在智能卡的个人化过程中由发行商(Issuer) 根据卡的应用而创建,对卡的用户而言通常是不能对文件进行创建或删除的。但是用户可以根据情况对文件内容进行修改,可以对文件中的记录或数据单元进行增加、删除等操作。   (l)文件系统:COS的文件按照其所处的逻辑层次可以分为三类;主文件(Master File),专用文件(Dedicated File)以及基本文件(EIementary File)。其中,主文件对任何COS都是必不可少的,它是包含有文件控制信息及可分配存储区的唯一文件,其作用相当于是COS文件系统的根文件,处于COS文件系统的最高层;基本文件也是必不可少的一个部分,它是实际用来存储备应用的数据单元或记录的文件,处于文件系统的最底层,而专用文件是可选的,它存储的主要是文件的控制信息、文件的位置、大小等数据信息。我们可以用图6.38的树状结构来形象地描述一个COS的文件系统的基本结构。   当然,对于具体的某个COS产品,很可能由于应用的不同,对文件的实际分类标陈会有所不同。但只要仔细地进行分析,都可以归结为上面的三个逻辑层次。例如前面授到过的PCOS产品。它对文件的分类不是按照逻辑层次划分的,而是根据文件的用途进行的。   它的文件分为三类:COS文件(COSFile)、密码文件(KeyFile)和钱夹文件(PursesFile)。   其中所谓的COS文件保存有基本的应用数据;密码文件存储的是进行数据加密时要用到的密码;钱夹文件的作用有些类似于我们日常生活中的钱包。由此可见,它的这三类文件本质上其又都届今基本文件(EF)类。在PCOS中,专用文件的慨念不是很明显,但是事实上,如果大家留心的话,那么从以前的论述中,应该不难发现该产品存储器分区中FAT区内的文件捆;交器的作用就类似于专用文件;而整张PCoS卡本身的性质实际就是一个主文件。   cos文件有四种逻辑结构:透明结构,线性定长结构,线性变长结构,定长循环结构。   它们的定义及特点可以参阅ISO/IEC7816—4协议中的有关部分,这里不再详述。不过.无论采取的是什么样的逻辑结构,cos中的文件在智能卡的存储器中都是物理上连续存放的。卡中数据的存取方式、记录的编号方法、数据单元的大小等作为文件系统的特征,在智能卡的复位应答过程中由卡给出。职过一般而言,在智能卡中最为重要的数据存取方式还是随机存取方式,也就是卡的用户在得到授权后,可以直接地任意访问文件中的某个数据单元或记录。至于COS具体对文件可以进行什么样的操作.我们将在C()3的命令系统中进行讨论。   (2)文件访问安全:对文件访问的安全性控制是COS系统中的一个十分重要的部分,由于目前的国际标准(ISO/IEC7816-4)在这方面基本没有作出什么实质性的规定,因此,现有的文件访问的安全控制机制的具体实现方式多种多样。我们在这里准备介绍其中比较有代表性的两种实现方式:鉴别寄存器方式以及状态机方式。其中,采用鉴别寄存方式的有PCOS、ME2000等产品:采用状态机方式的产品有STARCOS。   采用鉴别寄存器方式时,通常是在内存RAM中设置一个8位(或者是16位)长的区域作为鉴别用寄存器。这里的鉴别是指对安全控制密码的鉴别。鉴别用寄存器所反映的是智能卡在当前所处的安全状态。采用这种方式时,智能卡的每个文件的文件头(或者是文件描述器)中通常都存储有该文件能够被访问的条件,——般是包括读、写两个条件r分别用Cr、Cu表示),这就构成了该文件的安全属性。而用户通过向智能卡输入安全密码.就可以改变卡的安全状态,这一过程我们j至常称为出示,这就是鉴别寄存器为式的安全机制。把上面的二方面结合起来,就能够对卡中文件的读写权限加以控制了。具体的操作机制我们以 PCOS为例加以描述。   首先,PBOS中的鉴别寄存器是8位字长的,这 s位dI的假;位分别与PC()3存储器中保密宇区内的7个安全密码的序号一一对应。寄存器中每——位的初始值都被置为“0”。如果用户向智能卡出示了某一个安全密妈,并且被F判断为正确的话,系统就在鉴别寄存器的相应位上写入“1”。   例如,如果处于保密宇区中的第2个安全密码被用户正确出示的话,PCOS就在寄存器的第2位上写“1”。同时,文件描述器中的读、写条件Cr、Cu保存的都是在0和7之间的一个数,它的值对应于该文件进行读(或写)操作时所需要出示的密码在保密宇区小的序号。在对某个文件进行读(或写)操作之前,系统首先判断在鉴别寄存器巾对应的第Cr(或Cu)位是否已被置为“1”(如果Cr等于0,就表示该文件可以被用户随意读取;对于Cu也是一样),只有当该位为“1”时,才表示读(或写)权限已经得到满足.才能对该文件进行读(或写)操作。这也就是说,如果用户想要对一个文件进行操作的话,就必须要首先出示对应于该文件的安全属性为正确的安全密码。系统据此就达到了对文件的访问进行安全控制的目的。   与鉴别寄存器方式完全不一样,状态机方式更加明显地表示出扩安全状态、安全属性以及安全机制的概念以及它们之间的关系(关于状态机的知识不属于本书的范畴,有兴趣的读者请自行查阅有关资料)。以5TARCOS为例,它采用的是‘—种确定状态机的机制,该机制通过系统内的应用控制文件(Applicatlon ControIFile,ACF)而得以实现。 ACF文件的格式已是一个线性变长结构的文件,其rh记录 01包括了该ACP所控制的应用可以允许的所有命令的指令码(INS);其余的记录分别与记录 01中的指令码一一对应,其中存储的都是对府命令的变体(Varient)纪录。所谓变体记录指的是这样的一些记录。记录中存储的是控制信息、初始状态、可能的下一状态以及某些附加的指令信富的组台,利用 ACF 中的这些变体记录就可以形成状态转移图。在变体记录中,控制信息部分是必不可少的。不同的变体记录主要在两个方面有区别:一是命令所允许的状态不同t二是以CLA宇节开始的指令信息部分不相同。这主要是由命令要操作的应用对象的不同而决定的。   利用 ACF,COS系统就可以实现对文件访问的安全控制了。当系统接收到一个应用进行操作的一条命令后,首先检验其指令码是否在相应的ACF文件的记录01中。如果不在其中,系统就认为该命令是错误的。在找到了对应的指令码后,系统把命令的其余部分与该命令对应的备变体记录中的指令信息按照该变体记录的控制信息的要求进行比较,如果比较结果一致,那么再查验变体记录中的初始状态信息。若所有这些检测都顺利通过,那么系统就进入对应变体记录中指明的下一状态;否则,继续查找下一个变体记录直到发现相应变体或是查完该命令对应的所有变体记录为止。如果没有找到相应的变体记录,说明该命令是非法的;否则就进入下一步对命令的处理,即由 COS调用实际的处理过程执行对命令的处理。当且仅当处理过程正常结束的时候,系统才进入一个新的状态,并开始等待对下一条命令的接收。 基本概念/主要功能      基本概念 数据元素(Data Element) 具有应用意义或内部工业环境中具有意义的信息。 数据单元(Data Unit) 可以被具体寻址确定的最小二进制信息集合。 记录(Record) 可以作为一个整体被IC卡处理,并可由记录号或记录标识符寻址确定的字节串。 记录号(Record Number) 在记录文件中,顺序、唯一的号码。 记录标识符(Record Identifier) 可以在应用级选择,一个文件中的几个记录可以具有相同的标识符。 文件(File) 在IC卡中,有组织的数据单元或记录的集合。 文件名(File Name) 在IC卡中可以唯一标识一个DF的字节串。 文件标识符(File Identifier) 每一文件(MF,DF,EF)均有的一个2字节标识信息。 文件控制信息(File Control Information) 一个文件的逻辑、结构及安全属性信息。 路径(Path) 无限制的文件标识符的联接。 可分配存储器(Allocable Memory) 在一个文件中包含的存储器的一部分,但还没有被具体分配。 命令-响应对(Command- Response Pair) 两个信息的集合:一个命令后跟随一个响应。 层次级别(Level)   从主文件开始,到具体某一文件中间DF的数量,其中主文件的层次级别为0。        主要功能 归纳起来,智能IC卡操作系统至少应具备以下4种基本功能: 硬件资源管理功能; 通讯传输管理功能; 应用控制管理功能; 安全控制管理功能。   其中每一种功能又由若干子功能组成。如按ISO的OSI参考模型分类,硬件资源管理功能属于物理层;通讯传输管理功能属于数据链路层;应用控制管理和安全控制管理则属于应用层。各层之间的逻辑关系见图。   图为智能IC卡各功能层之间的逻辑关系 硬件资源管理             智能IC卡中的硬件资源十分丰富,其功能也各不相同,见表3-1。其中EEPROM是提供用户的最主要的应用资源。 智能IC卡硬件功能说明 硬件资源       说明        主要功能 MPU         微处理器       系统的中央运算、处理、管理 CAU         加密运算协处理器   执行有关加、解密运算 ROM         只读存储器      存储操作系统程序 RAM         随机存储器      临时工作数据的暂存 EEPROM       电擦除存储器      应用程序、数据的存储 I/O         通讯接口        通讯传输 SL         安全逻辑        内部资源的硬件保护 ···   硬件资源管理的目的就是由它统一组织、协调、指挥这些硬件的运行,为高层应用提供相应程序接口,使高层应用编程更容易、实现更简单、可靠。它类似于PC机上的BIOS(基本输入输出接口)功能,但比它的管理层次更高。下面重点介绍用户存储器的组织管理。   一、用户存储器的数据结构   按ISO/IEC 7816标准,用户存储器的数据结构有线性固定结构(Linear Fixed)、线性可变结构(Linear Variable)、环形结构(Cyclic)、透明结构(Transparent)四种,见图3-2。用户可以根据应用数据的特点、更新速率等因素,决定选用哪种数据结构。 图2 数据组织结构 1、线性固定结构   典型结构如定长度记录,其中每一记录的存储位置均由一个唯一的记录号标识,可以随机读写。按有关ISO/IEC标准,记录号的范围为1~253。 2、线性可变结构   如可变长度记录,其中每一记录的存储位置均由一个唯一的记录号标识,可以随机读写。按有关ISO/IEC标准,记录号的范围为1~254。 3、环形结构   这种结构类似首尾环起来的定长度记录,不允许随机写。其中记录以某一固定顺序存放,因为记录数量有限,若超过限制数量,新写入的数据将覆盖掉旧的数据。 4、透明结构   二进制数据使用这种数据结构时,一般由用户寻址、管理该数据,操作系统只负责存储空间的分配。透明数据结构适用于声音、图像等超文本(HyperText)信息的存储。 二、用户存储器的文件组织形式   按ISO/IEC 7816标准规定,智能IC卡中的数据在用户存储器中以树型文件结构的形式组织存放。文件分成三种层次级别:一是主文件(Master File),形成文件系统的根,类似于DOS中的根目录;二是专用文件(Dedicated File),在主文件之下,类似于DOS中的目录;三是子专有文件(Child-DF),在DF之下的专有文件类似于DOS中的子目录。当然,DF之下还可以有DF,这主要依赖于用户存储器的大小。此外,还有元文件(Elementary File),主要存储实际应用数据和相应的系统管理信息,元文件可以存在于任何一个文件层次上。 智能IC卡文件的树型结构见下图。 图3 智能IC卡树型组织文件   在智能IC卡的文件结构中,主文件只能有一个并且随操作系统一起生成,用户无法控制;在文件存取过程中,不能越层存取,若想读写子专有文件下的元文件必须经过其高层文件层次;某一专有文件的大小在申请生成时预定且不可修改,也有的操作系统可以在使用中动态修改该专有文件大小,当然其前提是有足够的存储空间。 三、文件类型及其特性   智能IC卡操作系统的文件有三种层次级别。每一层次级别的文件还分不同的种类,具有不同的用途。 1、主文件   系统中必须存在唯一一个主文件,主文件组成智能IC卡文件系统的根。主文件中含有系统文件控制信息及可分配的存储空间,其下可以建立各种文件。   虽然系统允许在根下直接生成各种应用文件,但最佳的文件组织方法是每一种应用均分配一个专有文件,在相应应用的专有文件下再具体组织安排各种应用数据。这样做的优点是不同应用之间相互干扰小、便于应用设计、安全性更高等,有利于“一卡多用”。主文件一般用来存储不同应用之间的共享数据,如卡序列号、持卡人数据等信息。   在初始化时,主文件还可以被赋予一些安全特性,如禁止使用操作系统的某些命令等。这样做的目的是为了在从IC卡生产到最终应用的环节过多时的安全管理,便于跨部门甚至跨行业的“一卡多用”的安全实施。   智能IC卡一旦插入读写设备,主文件就立即被激活直到卡被拔出。在卡的生存期内,主文件不能被删除。 2、专有文件   专有文件含有文件控制信息及可分配的存储空间,其下可以建立各种文件。   一个专有文件将被用来存储某一应用的所有数据。每一应用的应用顺序均由该专有文件的状态机控制,使不同应用之间具有较强的独立性并且更安全。   专有文件在用户存储器中占据一块静态存储器,一旦专有文件建立,其存储器的大小就不能变动,但在该专有文件下的元文件则可以重新分配所使用存储器大小,可以被删除。专有文件下还可以再建立专有文件。此时,较高层的专有文件称为父专有文件(Parent-DF),较低层的称为子专有文件(Child-DF)。   父专有文件无论在逻辑上(操作系统管理)还是在物理上(用户存储器)均相互隔离。不同的专有文件均可使用主文件下的公共资源。父专有文件的建立一般分成两个步骤:先逻辑创建,即在操作系统中作一创建登记;再物理创建;实际分配一定数量的用户存储器。分步创建的优点是可以独立于时间和存储器位置生成具体应用。某一具体的父专有文件不能在其它专有文件或主文件中删除,该父专有文件的删除条件在其应用控制文件(ACF)中定义,只有满足该条件才删除。该父专有文件被删除之后,其下的子专有文件、元文件也同时被删除,释放的存储器块可由其它父专有文件使用。   子专有文件可以是某一子应用,子专用文件可有其自已的应用控制文件。某一具体的子专有文件不能在其它专有文件或主文件中删除。该子专有文件的删除条件在应用控制文件中定义,只有满足该条件才可删除。该子专有文件被删除之后,其下的专有文件(若还有)、元文件也同时被删除,释放的存储器块可由其它子专有文件使用。 3、元文件   元文件含有实际应用数据或文件控制信息,其下不可建立任何文件。 元文件分为三类:一类存储实际的应用数据,称为工作元文件(WEF);另一类存储相应的系统管理信息,称为系统管理元文件(SMEF);在ISO/IEC 7816标准中还定义有一种公共元文件(PEF)。   工作元文件(Working Elementary File)具有以下特性: 存储应用数据; 若条件满足可被读、写、删除等; 可以存在于任何文件结构; 可以是任何一种文件结构; 具有内部数据校验(如检查和)措施。 系统管理元文件(System Management EF)有以下两种。 1、内部保密文件(Internal Secret Files, ISF)具有以下特性: 存储系统或应用保密数据,如加密密钥、个人密码等; 可被输入、修改、覆盖,但不可读; 不能部分删除; 可以存在于任何文件层次; 文件结构可为线性可变结构。 2、应用控制文件(Application Control Files, ACF)具有以下特性: 存储应用状态机棗应用顺序控制数据; 不能删除; 每一文件层次必须有一ACF; 文件结构可为线性可变结构。 公共元文件(Public EF)主要用于存储系统或应用的公共数据,可以无条件存取。 四、文件属性   每一种文件均具有相应属性(Attributs),智能IC卡的文件属性一般有4种: 文件名(File Name)/文件标识(File Identifer); 安全状态(Security Status); 操作模式(Operation Mode); 注释(Notation)。 1、文件名/文件标识   每一文件可以通过其文件名或文件标识来寻址。按ISO/IEC 7816标准,文件类型不同,文件标识的编码也不相同。正确识别、寻址一个文件需要一个从主文件或当前专有文件到该文件的完整的标识路径。从主文件开始的路径称为绝对路径(Absolute Path),可以唯一确定某一文件,这一点和DOS操作系统中的有关概念十分相似。   在ISO/IEC 7816标准中规定,每一文件均由一个2字节长的文件标识参考确定,但在专有文件中也可以使用文件名来标识该文件,主要是为了便于应用设计人员设计该卡,特别是将父专有文件以文件名来标识,更容易区分、理解“一卡多用”。此外,在某一张卡上文件名一定要能唯一确定某一文件。其实,以名字命名该文件时操作系统同时在内部也自动分配给它一个标识,并通过标识来管理该文件。   不同文件类型的标识具有不同的编码。按ISO/IEC 7816标准,文件标识的第一个字节为文件限定符(File Qualifier),主要用于区别文件类型(如主文件、专有文件等);第二个字节为文件索引(File Index)。其中规定:   主文件:其标识确定为“3F00 H”(十六进制);   父专有文件(在标准中没有作具体规定):一般的操作系统中,文件名最长为8字节字符串(第一个字节不能为“20 H”),若文件名不足8字节长,操作系统将在其后以“20 H”补足剩余字节,所有父专有文件的名字不能相同;   子专有文件:子专有文件的文件标识为2字节。同一父专有文件下的子专有文件的标识不能相同,但不同父专有文件下的子专有文件的标识则可以相同;   元文件:文件标识为2字节。其中第一个字节为文件限定符,第二个字节为文件索引,在ISO/IEC 7816中都没有作十分明确的规定,其目的是为整个系统设计留有选择的余地。一般文件限定符可以根据情况自定,当然最好不与标准冲突。文件索引也可自定,一种典型的编码格式见表3-2。 表3-2一种元文件的典型编码 Bg b7 b6 b5 b4 b3 b2 b1 b0       定义 × ×                  文件类型 0 0                   WEF 0.1                   ACF 1.0                   ISF 1 1                   无用 × ×                  文件层次 0.0                    MF 0.1                    Parent-DF 1.0                    Child-DF 1 1                    无用 × × × ×                文件索引号                      1-15 2、安全状态   它主要用于定义不同命令在不同状态下(由某一应用的状态机决定)对该文件的存取权限。 3、操作模式   操作模式用于定义文件的静态存取特性,主要有以下几种特性: 可删除性(Erasable); 读/写特性(R/W); 存取特性(Access); 一次写入、多次读出特性(WORM); 只读特性(RO); 只写特性(WO); 可计算性(Compute):定义该文件是否可被某些命令存取执行。 4、注释   注释含有某一
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服