|
智能卡技术及其应用
智能卡(Smart Card) 是IC 卡的一种。它是一种内含了集成电路芯片的塑料卡片,大小如同信用卡,本身有一定的存储能力和计算能力,可以以适当的方式进行读写。
根据卡中镶嵌的集成电路的不同, IC 卡基本上分为3 类:
1) 存储器卡卡中的集成电路为EEPROM ,即可电擦除的可编程只读存储器。其中可以写入一定的数据,在掉电的情况下不会丢失。这种卡也可以由磁卡来代替,但是显然用集成电路卡在数据的安全性方面更胜一筹。
2) 逻辑加密卡卡中的集成电路具有加密逻辑和EEPROM ,使卡中的数据受到一定的加密算法的保护。此时,需要有一个可以进行加解密计算的运算器芯片存在于卡上。
3) CPU 卡CPU 卡比较复杂,其中的集成电路不但包括EEPROM ,而且包括CPU (中央处理器) 、随机存储器RAM 以及固化在只读存储器中的片内操作系统(Chip Operating System ,COS) 。CPU 的处理速度和处理能力比逻辑加密卡的速度要强得多。
习惯上,人们往往统称以上3 种卡为智能卡,但是严格地讲,只有CPU 卡才是真正的智能卡。下面对智能卡的介绍以CPU 卡为代表。
1 智能卡的结构
1. 1 智能卡的物理结构
一般来说,智能卡本身没有电源,也没有显示器和操作控制面板。它通过8 个外露的金属触头与外界进行数据交换。当智能卡被插入智能卡接入设备时,接入设备与金属触头接触,向智能卡供电,经过一定的初始数据交换,两者就可以通信了。
智能卡通过8 个金属触点和外界进行接触,并通过这几个触点给智能卡供电、提供时钟和进行通信,如图1 所示。
此主题相关图片如下:
图中:
MPU : 即CPU ,目前一般采用8 位到32 位的RISC 芯片。
I/ O :输入/ 输出电路,负责IC 卡信息的输入/ 输出工作。
CAU :加密运算协处理器。
SL :安全逻辑。它与CAU 共同完成加密运算。
ROM :只读存储器,用来存放操作系统。
RAM :随机存储器,是应用程序运行的空间。
EEPROM :电可擦除存储器,用来存放应用程序和加密算法。
1. 2 智能卡的数据结构
为了高效、有序地存取智能卡内的信息,需要对各种信息进行层次式管理。卡内的存储器可以划分为以下几层: ①存储器整体(文件系统) ; ②文件; ③记录。
整个存储器可划分为若干个文件。文件是相关信息的集合。对于不同的应用来说,文件的形式也不同。
根据ISO7816 的规定,智能卡的文件形式可以分为以下4 类:具有定长记录的线性文件;具有可变长记录的线性文件;具有定长记录的环形文件;二进制无格式文件(流式文件,透明文件) 。按照文件的组织结构,文件系统的框架结构如图2 所示。
此主题相关图片如下:
文件系统(即存储器整体) :主文件(Master File)形成文件系统的根, 相当于根目录; 专有文件(Dedicated File) 相当于目录文件; 基本文件( Elementery File) 相当于一般意义上的数据文件。智能卡的文件系统形成了一个树形结构。
智能卡和外部环境的信息互通一般采用主从方式,即通过接口设备给智能卡发命令,智能卡给接口设备送回应。智能卡与智能卡接取设备之间的信息采用异步半双工传输,又分字符传输和分组传输。信息采用的格式称作应用协议数据单元(APDU :Application Protocol Data Unit ) 。外部环境(智能卡接取设备) 根据要求对智能卡的CPU 发送命令,使智能卡执行存储器特定区域的存取。因此,外部节点应该将存取类型、文件标识和目标文件的记录号一并通知CPU ,这些信息作为命令、参数或数据存放在APDU 中。
1. 3 智能卡的安全控制
智能卡的广泛使用给我们带来了一些问题,最突出的是安全问题,如智能卡和接口设备之间流通的信息可以被截取分析,从而可以被插入和复制假的信号;模拟(或伪造) 智能卡,使接口设备无法判断出是合法的还是模拟的智能卡;在交易中更换智能卡(在授权过程使用的是合法的智能卡,而在交易数据之前更换为另一张卡) ;修改信用卡中控制余额更新的日期等。对于安全问题可在硬件、软件、管理等方面采取多种措施
来解决。
一般的智能卡在芯片的设计阶段就考虑了硬件的安全性。对于直接扫描器件,从探头读取、重新激活智能卡芯片的测试功能等等都有良好的抵制能力。卡和接口设备中设置安全区,在安全区中包含有逻辑电路或外部不可读的存储区,禁止一切不合规范的操作。
除硬件手段外,智能卡还利用软件对智能卡接取设备和用户进行认证,对持卡人、卡和接口设备的合法性进行相互检验,并根据认证的结果判断用户或终端的存取权限。这种检验一般采用密码与签名的方法。用户的输入输出都通过I/ O 功能,系统内部
的总线由安全逻辑所控制,只有当用户/ 终端的认证合法完成时,安全逻辑才会允许用户对智能卡有读写权利。
智能卡还通过存储区域保护来实现对数据的保护,也可以用加密的方式实现数据保密。与加密有关的有解密和密钥管理,包括密钥的生成、分配、保管和销毁等等。
2 智能卡的应用
智能卡本身并不具有很高的使用价值,它至多只不过是替代了计算器或记事本的功能,但是如果将智能卡与其它设备组合成系统,就能提供非常丰富的功能。
现有的智能卡从业务范围来看,主要涉及以下几个方面:
1) 在金融领域中,用智能卡代替现有的磁卡,既提高了安全性,又能在一张智能卡上追加各种业务。可以作为现金卡、信用卡、证券卡等等。
2) 在通信领域,主要应用于移动电话和公用电话。目前, 在GSM 手机中已大量使用了SIM(Subscriber Identif y Module) 卡。在GSM 手机中SIM 卡作为用户识别卡,用以标识单个的用户,每次通信均相关于该用户所对应的SIM 卡,而非用户所使用的终端。另一种电信卡是我们现在广泛使用的电话IC 卡。其中主要记录了卡的余额数据。由于IC 卡电话机的可靠性、安全性、经济性均比磁卡电话机好,因此今后公用电话卡将大量采用IC 卡。
3) 在医疗保险领域中,可以利用智能卡大容量存储的优势,对个人健康信息、治疗记录、保险信息等进行管理。
4) 在交通领域中,以智能卡为票证代替纸质车票及磁卡应用于公共交通自动售票、过桥收费、汽车加油等。
5) 在企业内,智能卡可以作为考勤卡、机器操作卡、工资卡、就餐卡等等,提高企业内部的信息处理效率和管理水平。
6) 在教育、娱乐行业,智能卡也可以用于管理,如会员卡、优惠卡等。
智能卡主要具有以下优点:
·快捷方便,节省人力资源。不仅用户携带方便,而且节省了用户对终端操作时大量复杂的输入劳动,只需由读卡设备将存储在智能卡上的信息读出即可。·保密性。智能卡封装性比较好,信息不易泄漏。
更重要的是,由于智能卡本身具有处理能力,可以对外界的操作作出判断,因而为防止外界的非法操作提供了保证。例如,智能卡中可以存放口令,每当存取卡上数据时对口令进行验证,这样就能保护信息不被窃取。
智能卡也可以进行加密运算,对其输入、输出的数据均可采用这种方法进行保护。
·加快信息流通。由于智能卡与接取设备之间是采用电子信息传送,速度比人的手动输入快得多,而且可以极大地减少人为的差错。
·成本低。智能卡的集成电路芯片成本随着技术的进步在逐年下降,而集成度却逐年上升。集成电路的运算能力、存储能力已经不是智能卡发展的障碍。而价格的低廉将极大地促进智能卡的商业应用。
·可再利用。智能卡通过重写其中的用户信息或者其它数据可以重新利用。
·可一卡多用。一张智能卡可以作为多种服务的接入手段,从而进一步增加了其方便、友好的特性。
3 相关的技术标准
目前, ISO 已经对智能卡制定了相应的标准,如表1 所示。
此主题相关图片如下:
这些技术标准主要是为了保证不同厂商的智能卡、终端、网络接口之间信息交互的兼容性。尽管目前智能卡的标准已经比较全面,但是随着对开发系统、开放网络环境要求的日益加强,现在又提出了新的智能卡标准,用来简化智能卡应用的开发,以及增强各个智能卡应用之间的通用能力。OpenCard 框架和J avaC2ard 标准就是其中最引人注目的两个。
4 智能卡的发展前景
智能卡应用的程度取决于以下3 方面的因素:
·智能卡技术的发展水平;
·终端智能化的程度;
·标准的制定。
智能卡应当发展到能够内嵌大容量的存储器件,用来存储足够的数据,包括应用程序,加密、解密算法,智能卡操作系统COS ,应用程序运行的RAM 空间,用户数据以及未来发展所需要预留的空间。智能卡CPU 的处理能力必须足够强,能够加载操作系统、应
用程序,有时还包括加密/ 解密算法,而且为了保证一定的响应能力, 它的处理速度必须要达到一定的水平。
目前,智能卡技术已达到相当水平。以J avaCard为例,最小的J ava VM (J ava 虚拟机) 需要16k ROM ,8k EPROM ,256 字节的RAM ,而现在的智能卡已完全达到这一水平。
用户对智能卡的操作应当有良好的界面与可操作性,这就要求终端应具有较高的智能化程度,能够识别不同的智能卡,与智能卡进行复杂的信息交互工作;有足够的能力与网络进行复杂的交互,能进行加密/ 解密运算,以完成复杂的业务功能。
目前,智能卡和终端之间的信息交互已经建立起了比较广泛的标准,但是卡上所运行的软件仍然没有统一的标准。从目前的发展方向来看,使用J avaCard是一种可以令大多数人满意的方法。由于J ava 虚拟机填补了不同软硬平台之间的差异,使得信息的交流变得更加统一。 |
|