一、基础知识
IC卡从简单的存储器卡发展到带有微处理器的CPU卡,是人们对安全要求越来越高的必然结果。
COS是英文全称Chip Operating System(片内操作系统)的缩写。从本质上说它是智能卡芯片内的一个监控软件,一般存放于ROM、部分E2PROM或Flash中。COS的实现由四部分组成:文件系统(基础)、安全体系(重要)、通讯处理(辅助)、命令管理(接口)。
对任何一台计算机,操作系统是一个关键的支持平台(如Pentium机上的WIN’95操作系统,工作站上的UNIX操作系统)。对智能卡来说,COS同样起着核心作用。没有COS,卡片将不知道该做什么事情。
目前,对于卡内操作系统COS(Card Operating System),全世界没有统一的标准,是根据不同的应用对象定制的。但COS的基本结构一般都要遵循ISO-7816/3/4/5的规定。COS的完善与否决定着CPU卡的应用的广度和深度。
一般一种COS只针对于某种特定的应用,不同种类的智能卡,其COS的功能是有区别的。例如法国Gemplus公司1989年生产的PCOS(Payment Chip Operating System),采用3千字节ROM,8千字节EEPROM,主要应用于电子基金传输交易;德国G&D公司1994年生产的STARCOS,采用10千字节ROM,8千字节EEPROM,是支持多应用和多功能的大型COS;日本日立公司1995年生产出的HitachCOS,采用16千字节ROM,8千字节EEPROM,是一卡多用的大型COS;法国PHILIP公司1995年生产的DSCOS,采用3千字节ROM,1千字节EEPROM,是一个通用的小型COS;北京中钞同方智能卡有限公司1998年生产的中同卡ZTCOS,采用10千字节ROM,2千字节EEPROM,符合中国金融IC卡规范,主要用于国内金融系统。
不同种类的COS 之间可能会有很大的差异,但它们的基本结构和必须具备的功能是一样的。COS的主要功能包括:与读写器间进行通信的控制,卡内EEPROM中存储数据的管理,各种命令的处理等。其中与读写设备通信要遵循ISO-IEC7816/3中规定的T=0协议或T=1协议;对卡内数据的管理和卡内命令的处理要遵循ISO-7816/4的规定。
二、文件系统。
从应用的角度来看,卡内存放的是一些数据。例如对于金融IC卡,卡内要存放银行识别码、用户帐号、用户电子钱包金额、交易记录、密钥、用户密码等信息。COS如何存放、组织和管理这些数据至关重要。
根据ISO-IEC-7816/4协议规定,卡内的数据以文件形式存储,有三种类型文件:主文件MF(Master File),专用文件DF(Dedicated File)和基本文件EF(Elementary File)。这三种文件的关系如图3所示。

图3 文件结构
1) 主文件MF:文件结构的第一级,又称为根目录或根文件。
2) 专用文件DF:文件结构的第二、三、.....级,又称为子目录文件。
3) 基本文件EF:存放用户数据的文件。
在MF下可以创建一个或多个子目录DF或EF;在DF下可以继续创建DF 和EF;EF是最基本的数据文件。用户根据需要可以创建多个或多层DF,在每层DF下可以创建多个EF。
基本文件EF有4种数据结构:
1) 透明二进制文件结构。文件中存放的数据是一个二进制数据串。所谓透明是指该类文件对COS是透明的,不需要COS对其进行解释,存放的内容即为实际内容,从接口看该文件是一个数据单元序列。
2) 定长记录文件。文件中的数据是以记录方式存放的,每条记录长度一样。
3) 变长记录文件。文件中的数据是以记录方式存放的,每条记录的长度不一样。
4) 定长环形记录文件。文件中的数据是以记录方式存放的,每条记录长度一样。
|