文档详情

智能卡内核的文件系统设计方案.doc

发布:2017-06-09约4.11千字共9页下载文档
文本预览下载声明
智能卡内核的文件系统设计方案 来源:中国一卡通网??作者:车平跃??发布时间:2010-10-27 10:43:28??字体:[大 中 小]关键字:智能卡??IC卡??内核??文件系统???????? 摘???要:随着IC卡从简单的同步卡发展到异步卡,从简单的EPROM卡发展到内带微处理器的智能卡(又称CPU卡),对IC卡的各种要求越来越高。 ??? 1 引言 ? ??? 随着 IC 卡从简单的同步卡发展到异步卡,从简单的EPROM 卡发展到内带微处理器的智能卡(又称CPU 卡),对IC 卡的各种要求越来越高。而卡本身所需要的各种管理工作也越来越复杂,因此就迫切地需要有一种工具来解决这一矛盾,而内部带有微处理器的智能卡的出现,使得这种工具的实现变成了现实。人们利用它内部的微处理器芯片,开发了应用于智能卡内部的各种各样的操作系统。COS 的出现不仅大大地改善了智能卡的交互界面,使智能卡的管理变得容易;而且,更为重要的是使智能卡本身向着个人计算机化的方向迈出了一大步,为智能卡的发展开拓了极为广阔的前景。 ? ??? COS 的全称是Chip Operating System(片内操作系统),它一般是紧紧围绕着它所服务的智能卡的特点而开发的。由于不可避免地受到了智能卡内微处理器芯片的性能及内存容量的影响,因此,COS 在很大程度上不同于我们通常所能见到的微机上的操作系统(例如DOS、UNIX 等)。 ? ??? COS 的主要功能是控制智能卡同外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。其中,与外界进行信息交换是COS 最基本的要求。在交换过程中,COS 所遵循的信息交换协议目前包括两类:异步字符传输的T=0 协议以及异步分组传输的T=l 协议。这两种信息交换协议的具体内容和实现机制在IS0/IEC78l6-3 和IS0/IEC7816-3A3 标准中作了规定;而COS 所应完成的管理和控制的基中功能则是在ISO/IEC78l6-4 标准中作出规定的。在该国际标准中,还对智能卡的数据结构以及COS 的基本命令集作出了较为详细的说明。至于 IS0/IEC78l6-l 和2,则是对智能卡的物理参数、外形尺寸作了规定,它们与COS 的关系不是很密切。 ? ??? 2 文件系统 ? ??? 2.1 文件系统概述 ? ??? 整张卡片包含3 种基本文件结构: ? ??? MF(Master File)文件:是整个文件系统的最高级,可以包含若干的DF 和EF 文件,卡片中只能有一个MF 文件。它是在卡的个人化过程被首先建立起来,在卡的整个生命周期内一直保持有效,可存储卡片的公共数据信息并为各种应用服务。卡片复位后,自动选择MF 文件为当前文件。 ??? DF(Dedicated File)文件:是MF 或DF 的下一级,包含用户设置的系统信息和应用相关数据,在MF 下DF 的数量只取决与卡片容量和用户的应用,它也可以包含若干的DF。 ? ??? EF(Elementary File)文件:是文件结构的末端,只包含系统信息、内部数据或用户数据。EF 文件从存储内容上分为三类:密钥文件、工作基本文件和ATR 文件。文件系统结构图如下:? 图1 文件系统结构图 ??? 2.2 文件结构? ??? 2.2.4 文件指针 ? 文件指针共6 字节:2 字节的父目录指针+2 字节的子目录的指针+2 字节的EF 指针,所有指针都指向文件头的首地址,在卡片刚上电或选择了MF 之后,2 字节的父目录指针为空(00 00),2 字节的子目录的指针为MF 的首地址;在任意选择某个目录(按部分AID 选择下一个DF 除外)后,原来的子目录设置为父目录,新选择的目录设置为子目录,同时EF 指针置为空(00 00);在任意位置选择EF 文件后,都只设置EF 指针,不影响父目录和子目录指针。如果是按部分AID 选择下一个DF,则父目录不改变,只改变重新设置子目录和EF 指针。 ? ??? 2.3 EF 文件? ??? 2.3.1 文件类型? ??? ?2.3.2 循环文件 ??? 假设已经建立一个记录数=10 的循环文件,如果没有写入任何记录,则当前记录指针=80。(bit7=1,表明当前记录未写满) ??? 如果追加了(Append Record)4 条记录,则当前记录指针=84。在成功选择这个文件后,内存记录指针CP=00,具体操作(读或更新)如下: ??? 如果操作第一条记录:则操作第4 条记录,操作成功后,设置CP=4。 ??? 如果操作最后一条记录:则操作第1 条记录,操作成功后,设置CP=1。 ??? 如果操作下一条记录: ??? 如果CP=00,则操作第4 条记录,操作成功后,设置CP=4。 ??? 如果CP!=00,则
显示全部
相似文档