Smart COS操作系统技术解析
文章出处:http://www.nexussmartsolutions.com 作者: 人气: 发表时间:2012年02月19日
[文章内容简介]:COS的主要功能是控制智能卡和外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。一般来讲,接口设备与卡之间的命令处理过程可分为四个功能模块:即传输管理器、安全管理器、应用管理器和文件管理器。
1. Smart COS简介
CPU卡操作系统简称COS,它是伴随着集成电路卡从简单的EEPROM发展到带微处理器的智能卡而应运产生的。随着CPU卡应用的日益广泛,作为国内制卡行业和读写机具开发生产企业的先锋,深圳市明华澳汉科技有限公司于1999年6月成功地开发出符合《中国金融集成电路(IC)卡规范》、ISO/IEC7816标准的且拥有自主版权的CPU卡操作系统Smart COS。在金融领域,它可作为现金卡、信用卡等银行卡使用;在社保、工商、税务、证券等各种付费行业可作为用户卡使用;在电子商务网络系统中,可做为交易双方的身份识别。
Smart COS具有如下特点:
1)符合《中国金融集成电路(IC)卡规范》、《中国金融集成电路(IC)卡应用规范》
2)支持ISO-7816 T=0 通讯协议。
3)文件系统支持二进制文件、定长记录文件、变长记录文件、循环定长记录文件。
4)支持电子钱包、电子存折功能。
5)支持Single DES、Triple DES等加密算法,并支持用户特有的安全加密算法的下载。
6)支持线路加密、线路认证功能,防止通信数据被非法窃取或篡改。
7)可用作安全保密模块,使用过程密钥实现加密、解密。
8)支持多种容量选择,可选择2K、4K、8K、16K字节的EEPROM空间。
9)安全机制使用状态机,并支持PIN检验、CPU卡和终端的双向认证、数据加密、解密、MAC验证。
10)满足个别需求,可根据特殊行业的特殊用户的需求定制。
2.Smart COS功能模块
CPU卡也称智能卡,它的核心就是芯片操作系统,外界对卡发布的所有命令都需要通过操作系统才能对CPU卡起作用。
COS的主要功能是控制智能卡和外界的信息交换,管理智能卡内的存储器并在卡内部完成各种命令的处理。一般来讲,接口设备与卡之间的命令处理过程可分为四个功能模块:即传输管理器、安全管理器、应用管理器和文件管理器。
传输管理
对于COS而言,通讯层是接收和发送数据的通道,负责终端和卡片之间的数据传输。为了使卡片具有兼容性,大多数CPU卡都遵循ISO7816中规定T=0和T=1的传输协议。T=0通讯协议是异步半双工字符传输协议,数据以字符的形式按照规定的时间周期进行传输。T=1通讯协议是异步半双工块传输协议,在传输数据之前,首先将要传输的数据分为多块,之后再将每一块数据以字符的形式按照规定的时间周期进行传输。Smart COS V3.1符合T=0的协议标准。
安全管理
安全管理是对CPU卡中的数据进行安全控制及管理,它具体可分为两种功能:一是安全传输功能,二是对内部安全数据的控制管理。
(1)在卡与外界进行数据传输时,若以明文方式传输,数据有可能被劫获或篡改。为防止这种情况,提供了线路保护功能,主要通过以下两种方式实现:一是对传输的数据进行加密,数据以密文方式传输。二是对传输的数据附加安全报文MAC码,接收方首先对传输的数据进行MAC码校验,以此来确认数据在传输过程中的完整性并对发送方进行认证。
Smart COS V3.1具有线路保护功能。写入或修改密钥时,可采用密文方式;写入或修改二进制文件,可采用安全报文方式。用户可以根据应用的具体要求,灵活地使用线路保护功能。
(2)内部安全数据的控制管理包括对卡中文件访问权限的控制和密钥的管理二方面。考虑到密钥的绝对安全性能,Smart COS对于内部用于安全认证和数据加密的各种密钥实行安全控制管理。一旦密钥在卡中建立,只有在授权的情况下,才允许内部使用,CPU卡之外绝不会被泄露出来。
应用管理
应用管理对外部而言是指卡片如何管理不同的应用,也就是说,卡片是多应用卡片还是单应用卡片。单应用卡片相对比较简单,内部只提供单个DF文件,并且只有一套安全管理系统和应用数据。而多应用卡片就比较复杂,卡中可以存在多个DF文件,每个DF文件都有自己的专有EF数据文件和密钥系统,每个应用之间相互独立,具有“防火墙”功能。。Smart COS支持一卡多应用,可以建立一个DF文件当作一个应用,也可以将多个DF文件组合在一起看作一个应用。用户在使用的时候,可以根据情况来规划。
应用管理对卡片内部来说指的是卡片是如何管理DF文件及其下属的EF数据文件,并且负责解释执行命令。命令是卡片提供给外部环境用来访问卡片数据的手段,外部只有通过命令才能访问卡片中的数据或对卡片进行相应的操作,通过卡片提供的命令就能判断卡片具有的功能。
文件管理
在CPU卡中,数据都是以各种文件的形式进行存储,以目录的方式进行管理。文件管理器负责对所有文件的操作和访问,因此文件管理系统设计的好坏直接影响着卡片的使用效率和功能。
Smart COS的文件管理遵循以下原则:
(1)文件系统分三层结构即MF-DF-EF。在选择某个文件之前必须先选择它的上一层文件,不允许跨层选择。卡片上电后自动选择主控文件。
(2)MF建立之后,Smart COS自动将整个EEPROM空间都分配给了它。只要EEPROM空间允许且满足增加权限要求,MF下可任意增加新应用;只要EEPROM空间允许且满足增加权限要求,DF下可任意增加基本文件。
(3)对某个文件操作之前,必须先选择该文件;对于基本文件操作,可在命令中直接用短文件标识符指定该文件。
(4)每个文件都有可以设置访问权限;文件的访问权限受该文件安全属性的控制。
(5)在MF和DF建立正常结束之前,安全条件不起作用。
3.Smart COS文件系统
按照ISO/IEC 7816-4规范要求,COS的文件系统物理上分两个层次级别,分别是专有文件DF和基本文件EF,最上层的DF又称为MF,组成一个类似于DOS的层次结构。若要对文件系统中的某文件进行读、写操作,应先使用选择命令指定相应的MF、DF和EF。
Smart COS 文件系统层次结构如下:
主控文件(Master File , MF)
主控文件是整个文件系统的根,每张卡有且只有一个主控文件。它是在卡的个人化过程中首先被建立起来的,在卡的整个生命周期内一直存在并保持有效,可存储卡的公共数据信息并为各种应用服务。在物理上,主控文件占有的存储空间包括MF文件头的大小以及MF所管理的EF和DF的存储空间。
专用文件(Dedicated File,DF)
在MF下针对不同的应用建立起来的一种文件,是位于MF之下的含有EF的一种文件结构(可看做文件目录),它存储了某个应用的全部数据以及与应用操作相关的安全数据。DF在建立之初,不必指定空间大小,其空间大小随其下建立基本文件的空间大小而改变。对DF的建立操作由MF的安全属性控制。
Smart COS采用两级目录结构,即MF下只能有一级DF,DF下面不可再建立子DF,只能建立EF。
基本文件(Elementary File,EF)
基本文件存储了各种应用的数据和管理信息,它存在于MF或DF下。EF从存储内容上分为两类:安全基本文件和工作基本文件。
安全基本文件(Secret Elementary File,SEF)的内容包含用于用户识别和与加密有关的保密数据(个人识别码、密钥等),卡将利用这些数据进行安全管理。SEF要在MF或DF建立后,才能建立。安全基本文件的内容不可被读出,但可使用专门的指令来写入和修改。在MF和每个DF下只能建立一个安全基本文件,但KEY和PIN的类型须由用户写入密钥时指出。
工作基本文件(Working Elementary File,WEF)包含了应用的实际数据,其内容不被卡解释。在符合读、修改安全属性时,可对其内容进行读取、修改。工作文件的个数和大小受到MF或DF所拥有空间的限制。
Smart COS支持以下四种基本文件:
此外还有一些只能特殊使用的文件类型,如ATR文件、钱包文件、存折文件、密钥文件等,但其文件结构也不会超出以上四种文件类型。
4.Smart COS安全体系
智能卡之所以能够迅速地发展并且流行起来,其主要原因是COS的文件和安全两大特点。Smart COS的安全体系可以为用户提供一个较高的安全性保证。
状态机
状态机又称安全状态,是指卡在当前所处的一种安全级别。卡的主控目录和当前应用目录下分别有一个状态机,为16种不同的安全状态(0~F)。复位后主控目录的安全状态为0,应用目录的改变不影响主控目录的安全状态,只有主控目录下的口令核对或外部认证才能改变主控目录的安全状态。
当前应用的安全状态在被成功地选择或复位后自动清为0。只能用当前应用的口令核对或外部认证才能改变当前应用的状态。如果当前目录为MF,则当前应用的安全状态等于主控目录的安全状态。
安全属性
安全属性是指对某个文件进行某种操作时所必须满足的安全状态的值。安全属性又称访问权限,在建立该文件时用一个字节指定。
Smart COS的安全属性是用状态区间来描述的。例如,一个文件的读权限为XY,则当前应用的状态M必须满足X= Y)即可。如果定义一种可永远满足的权限要求,即不需权限,该安全属性定义为0X即可,因为0是一种自动获得的状态。
安全机制
安全属性和安全状态是通过安全机制紧密联系起来的。安全机制可以认为是安全状态实现转移所采用的转移方法和手段,通常包括校验个人密码与认证、数据加密与解密、文件访问的安全控制。
校验个人密钥是对CPU卡持有者的合法性的验证,即判定一个持卡人是否经过了合法授权。认证分外部认证、内部认证和相互认证三种。外部认证是指CPU卡对接口设备的合法性进行验证。内部认证是指接口设备对智能卡的合法性进行验证。相互认证包括外部认证和内部认证。
SmartCOS通过核对口令和外部认证两种方法来实现状态机的转变。需指出的是状态机不存在级别高低,同样的操作可定义为任意的状态机,即你可以用一种改变状态机的手段来实现从任一种状态机到另外任一种状态机的转变,即可以从0转变为F,也可从F转变为0。
密码算法
Smart COS 支持世界上公认的DES加密算法,包括Single DES和Triple DES算法。关于该算法的详细说明请参考《中国金融集成电路(IC)卡规范》一书。
另外,Smart COS V3.1也支持用户下载自己的密码算法,并开放一部分内部资源,让用户编写自己的COS指令来实现对密码算法的调用。此项功能用户在订货时须事先声明。
5. 电子钱包和电子存折功能
Smart COS具有符合中国人民银行规范的电子钱包和电子存折应用功能。借助电子钱包可实现圈存和消费交易;借助电子存折可实现圈存、圈提、消费、取现和修改透支限额交易。在上述交易过程中,除电子钱包的消费不需要验证个人密码外,其它所有交易均需提交个人密码,同时终端和CPU卡之间也要进行双向验证,以此来保证交易三方的合法性。根据实际应用的不同,在一张金融卡上,可以同时兼有电子存折和电子钱包,也可以只具有其中的一种。
6.Smart COS命令集
Smart COS命令集分为内部命令和外部命令两类。在满足《中国金融集成电路(IC)卡规范》和ISO/IEC 7816-3/4要求的基础上,Smart COS命令做了进一步的扩展,如下表所示:
√ 表示遵照《中国金融集成电路(IC)卡规范》和《中国金融集成电路(IC)卡应用规范》。
* 表示遵照《规范》和ISO/IEC 7816-3/4。
∆ 表示为自定义指令。
7.硬件环境
CPU卡集成电路芯片是COS的载体,它由CPU 、ROM、RAM和EEPROM组成。ROM中封装着芯片操作系统,EEPROM 中存放用户的数据。通常每一种COS都是针对某一微处理芯片的性能、容量等特点而开发设计的。目前,Smart COS已成功的运用在AT89SC 168和SLE44C系列芯片上。基于芯片的容量不同,可以提供2K、4K、8K、16K字节的EEPROM使用空间。
8.Smart COS开发套件
为了方便用户对Smart COS的学习和应用,深圳明华澳汉科技有限公司提供如下开发套件,它包括:
1)、Smart COS开发工具
2)、Smart COS使用手册
3)、Smart COS测试样卡
4)、Smart COS范例指令集
5、(M&W)RD系列CPU卡读写器
借助此开发套件,可以完成从规划文件结构、联机测试到发卡等一系列功能。Smart COS
开发工具的使用说明,请参考其帮助文件。
9.总结
CPU卡严密的安全体系和成熟的金融运用技术决定了它的服务对象主要面向金融行业。尽管真正意义上的信用卡在近几年内不会飞速增长,但是,具有银行交易应用功能同时在其它某一领域具有消费功能的银行卡,却存在广阔的发展空间,例如医保、税务、公共交通等,银行如果与这些部门联合起来,则跨行业间的金融服务将成为可能。让Smart COS智能卡科技将人们带入崭新的二十一世纪。
本文关键词:SmartCOS,COS,操作系统,智能卡,CPU卡
上一篇:ISO/IEC 14443协议浅谈---TYPE A 与 TYPE B 之比较[ 02-19 ]
下一篇:非接触智能卡芯片MIFARE Plus安全性探讨[ 02-19 ]