基于ET44M210的指纹识别智能卡设计
摘要:文章介绍了智能卡技术和指纹识别技术,给出了以ET44M210芯片为核心的具有指纹识别功能的智能卡系统的一种实验设计方法,并阐述了系统设计和软件流程。
关键词:ET44M210;智能卡系统;指纹识别
0 引言
新一代智能卡Smart Card的内嵌芯片CPU等于一个特殊类型的单片机,内部带有控制器、存储器、时运控制逻辑和算法单元。由于CPU卡有存储容量大、处理能力强、信息存储安全等特性,在对各种卡片技术的评估过程中,智能卡脱颖而出,成为目前最佳、最具有经济效益的解决方案,被广泛用于信息安全性要求特别高的场合。生物识别技术是利用人体的生物特征鉴别每个人的真实身份,主要包括虹膜、面孔、指纹、掌纹等。其中以指纹识别技术最为成熟稳定。智能卡技术和指纹识别技术的结合使用,具有优势互补的特点。智能卡作为个人身份及指纹信息的存储载体,利用指纹的唯一性达到个人身份鉴别的目的,为智能卡技术和指纹识别技术的应用提供了更加广泛的发展空间。
本文介绍了采用ET44M210芯片为基础的一个智能银行卡系统的实验设计方法,其中ET44M210为智能卡,PC机模拟读卡机。考虑到预防手指模型欺骗技术,采用输入密码加指纹双重验证的方式。
1 硬件系统结构
1.1 实验中采用的芯片简介
1.1.1 ET44M210微处理器
ET44M210微处理器采用精简指令集的结构(RISC),外接6MHz的晶振,除条件转移指令需要二个时钟周期外,所有指令只要一个时钟周期。在芯片内部整合了USB、16位模数转换、串行周边控制界面(SPI)等功能。处理器内部拥有16kB ROM、1.3kB RAM、42个IO口,供电电压3.6~5V。
ET44M210芯片是一款低价格、高性能,采用CMOS工艺制造,具有RISC架构的8位微控制器芯片。芯片采用SMA封装,引脚数为100,由台湾义统电子股份有限公司(Etoms Electronics Com)设计生产。ET44M210的设计充分体现了SoC化产品的特征。图1 ET44M210的模块结构图。
1.1.2 ET44M210芯片的开发工具
ET USBICE仿真软件ET44M210芯片采用“USB接口仿真+实验模板”作为硬件开发工具,如图2所示。开发板的前半部分是仿真模板,在其上有一个ET44M210芯片,内部固化了仿真程序。仿真模板通过板上的USB接口与PC机通信,在仿真软件的配合下构成一个低成本、高性能的在线仿真器ICE和写入器。
开发板的后半部分是实验模板,在其上也有一个ET44M210芯片,用户通过实验模板进行系统开发和模拟实验。实验模板上有3个USB接口供用户使用。实验板上还有1个48引脚的插座,可供连接I/O接口、ADC、PWM、SPI等使用。
ET44M210芯片采用ET USBICE仿真软件作为软件开发工具,如图3所示。
ET USBICE仿真软件使用USB接口与PC计算机进行通信。软件具有标准的通用仿真软件界面和工程导向管理功能,适用于Windows98/2000/XP等多种操作系统,可以很方便地对源程序进行编写、编译、侦错、仿真运行、代码生成、写入等全过程。
1.2 指纹识别简介
(1)指纹模块的结构。本系统的指纹采集模块使用的是某公司的指纹模块,它包括指纹传感器、指纹识别芯片。若需要大于16用户的指纹数据,可以使用PC存储器内的指纹数据。
(2)指纹模块的采集功能。该模块在本系统中具有指纹采集的功能。将采集到的指纹存储在模块中后传输给PC并保存。
(3)指纹模块的识别功能。该模块在本系统中具有指纹判断的功能。将采集到的指纹与先前存储的指纹相鉴别,识别出是否是正常的用户,并将识别结果保存。
(4)指纹采集与识别。流程如图4所示。
2.1 ET44M210的功能
(1)通信功能。通过USB接口与PC机连接,传输已经加密的指纹信息及用户银行个人信息,然后由PC机将之解密,与中央数据库比较。
(2)运算功能。IC卡在向外传输命令之前都会先将其按相应算法加密,同理,IC卡在收到PC机传来的加密信息后,用相应算法对信息进行解密,具体算法请参见系统原理及框图。
(3)内部信息管理功能。由于卡内存储信息量很少(用户个人信息及银行存款信息),故信息系统不必做得很复杂,采用定长存储方式,可以实现信息的建立、修改、删除、维护等基本操作。另外还要实现信息访问的安全控制,如对里面的信息进行修改时,要有不同的安全控制等级。
(4)命令处理功能。智能卡与PC机之间通信采用相应的协议,为实现模拟的真实性,我们在此处使用现在通用的智能卡通信标准协议:使其支持ISO7816-4,6,8,9智能卡标准。根据PC机上传输的不同命令进行相应的处理。
(5)扩展功能。基本功能之外还要在其上加入液晶显示功能及语音功能。其中液晶显示用户的基本信息,语音则通过单片机的AD和PWM功能实现,通过功放发出声音“请放入手指”及“确认通过”、“确认失败”的声音。
2.2 PC机的功能
(1)通信功能。通过USB接口与智能卡进行通信,且产生随机数通过RSA及ECC算法对数据进行加解密;与指纹传感器进行通信,得到相应的指纹数据。
(2)数据库管理功能。模拟中央数据库,存储大量用户信息,以采入的指纹数据为标准进行查找。
(3)模糊比较功能。在进行指纹比较过程中,所得到的数据与原始数据肯定存在一定程度的偏差,因此可设定好百分比,只要偏差在此允许范围内便可默认为一致。
(4)数据读取显示功能。PC机通过和单片机通讯可以读到其相应数据,在屏幕上可以显示以下内容:
修改用户密码或指纹密码; (CHANGEPIN)
消费/取现;(DEBITFORPURCHASE/CASHWITHDRAW)
读余额;(GETBALANCE)
输入密码; (GETPIN)
中英文选择;(CHINESEENGLISH)
打印凭证: (PRINT)
- 基于FPGA的DSP设计方法(08-26)
- 电力电子装置控制系统的DSP设计方案(04-08)
- 基于DSP Builder的VGA接口设计(04-10)
- 基于DSP和USB的高速数据采集与处理系统设计(05-01)
- 数字信号处理(DSP)应用系统中的低功耗设计(05-02)
- 基于DSP的嵌入式显微图像处理系统的设计(06-28)