IC卡开发和制作环境
文章出处:http://www.nexussmartsolutions.com 作者:不详 人气: 发表时间:2011年09月06日
[文章内容简介]:IC卡开发和制作环境
IC卡是携带应用信息和数据的媒体,空白IC卡是不能立即使用的,必须对IC卡应用系统进行个人化,写入系统IC卡和个人密码,个人专用信息和应用数据. 这就要在银行登记购买金融卡,输入个人密码,姓名等标识,交费并记帐.在IC卡使用过程中也需要核对密码,多次读出和修改卡上数据.如在商场交费时刷卡结帐,在ATM自动取款机取现金等.这些操作都需要一个使用环境,需要专用的IC卡读写器等硬件, 也需要应用系统开发的软件.
一.IC卡读写设备
IC卡读写设备大致可分为两大类:一类为专用读写设备或称脱机读写器.其特点是:充分利用IC卡存储量大,可以独立存储和工作, 不需要和主机相联就可完成数据读写的优点,可与应用设备结合或单独工作.例如:IC卡电表,水表,ATM机, 商场收款机.另一类为通用读写设备,或称联机读写器,是带有单片机和存储器的设备,通过并行或串行口与PC机或应用系统网络相连接. 在运行不同软件时可以读写不同种类的IC卡,组成不同的应用系统.如果配备开发系统软件,可对IC卡作初始规划,数据加密和初始写入,从而构成IC卡应用开发制作环境.在本讲中, 我们重点讨论这种通用开发系统的原理和使用方法.
IC卡读写设备由IC卡卡座,单片机,数据存储器RAM,程序存储器EEPROM,接口电路和外围设备等组成.接口包括与IC卡的通讯接口和与主机的通讯接口.
读写器各部分结构与功能如下:
1.IC卡卡座
IC卡卡座是连接IC卡与读写器的.其功能包括对IC卡供电,提供读写信号和传送数据.要求提供方便的插拔方式和可靠的接触,并带有带电插拔,过流保护,插卡检测等能力.IC卡和插座的结构尺寸必须符合国际标准化组织(ISO)7816的标准. 对触点数目,位置,信号名称和功能都有明确规定,以保证兼容性.
其中:C1(VCC)为电源;C2(RST)复位信号;C3(CLK)时钟脉冲;C4(RFU) 待用; C5(GND)接地端;C6(VPP)编程电压,用于对EPROM编程;C7( I/O) 数据输入输出端; C8(RFU)待用.
有些系统中IC卡的C4和C8未用,可见卡上仅有六个触点.由于IC卡与我们常见的磁卡,条码卡的动态扫描方式(俗称-刷卡-)不同,是通过卡座触点与IC卡上引脚接触,用电信号静态读写的,因此插拔方式应保证插拔迅速,接触可靠,磨损小.目前IC 卡插拔一般有下述几种形式.
(1)推入-拉出机构:卡的插拔均为手动,因此结构简单.
(2)推入-推入弹出机构:插入为手动,读写后再向内推卡,卡自动弹出.
(3)推入-弹出机构:手动推入,卡由机构锁定,操作后,系统自动释放,将卡弹出.
(4)电动式出入卡机构:卡轻轻插入,卡由机构自动引入,读写后自动送出.
在开发一个IC卡应用系统时,应该根据应用特点来选择卡座类型.如公交售票系统中.要求以快速挺拔,而金融卡则更重视可靠性和寿命.
2.单片机和存储器
读写器中配备单片机和ROM,RAM存储器,构成微机系统,单片机运行ROM中固化的软件,执行与IC卡和上位PC机的通迅规程.控制对IC卡的读写,完成IC 卡与主机间数据的格式转换.如果卡上数据加密加密存储,读写时要执行解密操作.密码,密钥和处理中间结果等参数保存在RAM中.对数据全部加密时,为减轻单片机负担,提高读写速度,常配有硬件密文转换和单元.
3.接口电路和外围设备
专用型和通用型读写器的接口和外围设备有所不同.
由于专用读写器脱机工作, 一般直接配备小型外围设备. 如LCD 液晶显示器或LED发光二极管显示器,用于系统状态监测和输入输出数据显示.配小型16键或24 键键盘,用于数据和密码输入.有些带打印机接口,可外接微型或小型打印机.例如收款机,ATM机可自动打印发货票和清单.由于用于不同领域,专用机外型,体积,功能和操作方式相差很大,对外接口也多为专用接口.
通用读写器一般与PC机或网络联机工作, 常用标准并行或串行口与上位机连接和通讯.常用的是带有25芯或9芯插口的RS232- C 型串行接口, 可直接接到PC 机的COM1或COM2上.此时,可利用主机的显示器作监视器,主机键盘作控制和输入,利用主机打印机输出.此时主机与读写器组成了IC卡应用与开发系统,操作与一般微机相仿,但用户界面将随所配软件而有很大不同.
二.IC卡开发软件及其使用
PC机配备通用读器后,可以对多种IC 卡进行开发和使用. 至于系统功能则要由PC机中运行的软件决定.运行已开发好的应用软件,就组成相应的IC卡开发系统. 在这一环境中,既可以对应用系统中的IC卡进行规划设计,完成卡的个人化进程, 也可用于开发应用管理程序,如医疗数据库系统.下面以一种常见的IC卡开发系统──明华IC卡读写系统为例,说明开发软件的功能和使用方法.该软件由深圳明华公司随读写器一起提供.主要包括一个菜单式IC 卡读写程序, 以及一组可由高级语言调用的IC卡读写函数.
软件安装方法如下:
将系统软盘插入驱动器A:或B:中,键入INSTALL X:然后回车(X:为软件安装的目标路径,一般为C:).此时安装软件运行,并自动在X:盘根目录下建立MWIC\DEMO 子目录,运行DEMO.EXE文件即可进入IC卡开发系统主菜单窗口,DEMO程序运行中会自动识别与读写器连接的串行口,自动识别读写器中的IC 卡型号,相应参数显示在屏幕上.然后程序检测IC卡,若卡参数正常,则光亮条定于读卡操作项上,回车即可读卡.
各行菜单列出了读写器软件基本功能,用鼠标加以选择, 单击即可产生下拉菜单或直接执行相应功能.主要功能解释如下:
卡型选择:通用读写器适于多种卡型.选中此功能产生下拉菜单, 可执行自动检测卡型,IC卡自动弹出及手动选择卡型三个子功能.本读写器适用于美国ATMEL 公司的AT系列和德国西门子公司的SEL系列各种IC卡读写.
选通迅口:根据选择的卡型,可将IC卡上可读数据读出, 并以十六进制形式显示在屏幕上. 多存储区的卡上, 不同区内容以不同颜色显示. 加密区密码和数据显示FFH,表示不能读出.
擦除操作:在改写卡上数据时,需先将待写区域内容擦除. 选中此功能可以输入擦除密码,核对正确,即可擦除指定存储区数据.
写卡操作:选中此功能,移动插入点到写入位置,键入写入数据后,按F5键, 即可写入.对写保护数据,用空格键切换,决定是否写入写保护位.
核对密码:对加有密码保护的IC卡,输入密码后,屏幕中显示错误计数的当前值,右下方显示输入密码是否正确.密码输入出错一次,次数减1, 计数值为零则此卡作废.
熔断操作:用于熔断带熔丝的IC卡上的熔丝.熔断前表示该卡未个人化, 卡上发行商密码可读,可改写,即可用于不同系统.熔断后密码不可改写,不可读出, 表示已个人化.
利用上述功能,我们可以对多种类型的IC存储卡,逻辑加密卡, 多分区卡进行分区,数据规划,加密,可读出,写入,修改卡上数据了.当然, 这时仅举一种开发软件及读写器实例.其它读写器和软件功能虽有差异,但基本功能和操作方法是大同小异的.可参考相应使用手册.
除此之外,在一个实际的IC卡应用系统中,上述功能应包含在应用软件中. 即软件程序员应该能在应用程序中使用高级语言对IC卡进行上述操作. 实现方法是: 在IC卡开发系统中提供了适于不同语言的调用函数, 用户可以在用户程序中通过函数调用来实现对IC卡操作的各种功能. 常见的函数有适于FOXPRO FOR DOS, FOXPROFOR WINDOWS,适用于VB和VC的等.
在IC卡应用系统中,IC 卡上数据常需与管理系统中的数据库进行数据交换. 用IC卡上数据更新数据库内容,或以数据库内容修改卡上数据.因此开发一个IC卡应用系统,除了要对IC卡作规划,进行初始数据写入,还需设计应用系统的程序和数据库,即要构造上述一些高级语言程序开发环境.
综上所述,开发一个IC卡应用系统所需要的软硬件环境包括:PC机或局域网络工作站,连接通用IC卡读写器;与读写器配套的IC卡读写控制软件, 设计应用程序的高级程序开发环境.有了这些条件,下一讲我们将讨论IC卡数据存储结构和对IC卡编程使用的方法.
本文关键词:IC卡开发和制作环境
上一篇:通向因特网安全交易之路 何为PKI 技术?[ 09-06 ]
下一篇:智能卡与公共密钥体系PKI[ 09-07 ]