数字抢答器的设计.doc
《数字抢答器的设计.doc》由会员分享,可在线阅读,更多相关《数字抢答器的设计.doc(35页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 绪论1.1 IC卡的介绍以及国内外应用概况1.1.1 IC卡的介绍IC卡,又称“集成电路卡”、“智能卡”,英文名称“Integrated Circuit Card”或“Smart card” ,它将具有存储、加密及数据处理能力的集成电路芯片模块封装于信用卡尺寸一样大小的塑料基中,便构成了IC卡。IC卡的概念是20世纪70年代初提出来的,法国布尔(BULL)公司于1976年首先创造出IC卡产品,并将这项技术应用到金融、交通、医疗、身份证明等多个行业,它将微电子技术和计算机技术结合在一起,提高了人们生活和工作的现代化程度1。根据卡中所镶嵌的集成电路的不同,IC卡可以分为以下三类:1.存储器卡:
2、卡中的集成电路为EEPROM(电可擦除的可编程只读存储器)。2.逻辑加密卡:卡中的集成电路具有加密逻辑和EEPROM。3.CPU卡:卡中的集成电路包括中央处理器CPU、EEPROM、随机存储器RAM以及固化在只读存储器ROM中的片内操作系统COS。2一般认为,智能卡(SmartCard)是指上述的第三种IC卡,即CPU卡。但也有的文献把存储器卡和微处理器卡统称为智能卡。智能卡上通常安装有智能卡操作系统智能卡操作系统是以功能函数的形式对智卡的具体应用进行操作和管理的一种系统软件1-3。1.1.2 IC卡的国内外应用概况随着全球信息化,网络化和知识化经济浪潮的到来,智能卡产业的战略地位越来越重要,
3、它己成为事关国民经济、国防建设、人民生活和信息安全的基础性、战略性产业。特别是近几年来,在世界半导体产业环境不断改善,集成电路的性能以惊人的速度向快速和微型方面发展,其发展潜力,高技术含量和广阔的市场都令人叹为观止4。我国的IC卡产业及应用始于20世纪90年代初,是伴随着我国政府启动的“金卡工程”而发展起来的,至今已有近十年的历史。在这短暂的十年里,我国的IC卡产业及应用从无到有、从小到大,迅速走过了启动阶段,发展的速度是惊人的。特别是近两年来,我国的年发卡量均超亿张,年增长率达到30%一40%,已成为世界IC卡应用发展最快的国家之一。目前,我国IC卡产业的成熟度主要集中在生产环节上,与生产环
4、节相反,从事高端研发的企业数量偏少,不管是在芯片的设计、还是COS的开发都比较缺乏,国际主要的IC卡供应商已经纷纷在我国设立了研发中心,争夺我国的市场已成为其全球市场的一个重要策略。智能IC卡这一新型信息技术的结晶正在迅速地进入社会生活和人们消费活动的各个方面。由于智能IC卡在各种应用中所承担的特殊性工作使得智能IC卡及信息安全性研究无疑有着十分重要的意义1-3。1.2 IC卡密码安全性以及其研究现状1.2.1 IC卡硬件安全性智能卡作为人与信息系统连接的纽带,其应用范围不断扩大,针对智能卡的各种各样的攻击手段不断出现,智能卡的安全和保密性则显得尤为重要。智能卡由半导体芯片,电极模片和塑料模片
5、三大部分组成。其中半导体芯片是智能卡的核心部分,在半导体芯片中包含了存储器、译码电路、接口驱动电路、微处理器单元等各种功能电路。其中随机字发生器、时钟频率保护电路、欠压保护电路等对智能卡的安全起到至关重要的作用。智能卡芯片具有一定的计算能力。它不仅能够管理各种输入输出的数据、校验来自接口设备输入的个人密码,而且能够根据应用系统的要求主动识别与之连接的接口设备。因此,在智能卡中能够建立多种应用系统的授权,存放多个应用系统的相关数据,并实现对相关数据信息的高可靠性、高安全性控制;可以进行复杂的信息处理和计算,并保持智能卡芯片上信息的机密性和完整性。在智能卡芯片的设计阶段、生产环境、生产流程及使用过
6、程中会遇到各种潜在的威胁。攻击者可能采取各种方法对智能卡实施物理探测以获取智能卡的设计信息和操作内容。其目的是弄清硬件的安全机制、访问控制机制、鉴别机制、数据保护系统、存储体分区、密码模块程序的设计细节以及初始化数据、私有数据、口令或密码密钥等敏感数据。另外攻击者可以利用电子探测和修改智能卡上重要安全数据的方法,非法获得对智能卡的使用权。对于各种方式的攻击智能卡采用了多种安全手段进行防范。其安全措施的基本原理是:增加集成电路上的复杂性;提高抗干扰能力;增加噪声来掩盖真正的电源功率的消耗;提高对异常信号的控制功能。具体措施有:限制程序计数器技术;插入随机的时钟信号;采用低频报警的低频传感器技术;
7、使用多层电路设计方法;附加顶层传感器网;加入自毁技术;采用抗电磁波探测密码技术;在智能卡处理器中加入锁存电路和随机多线程技术。1.2.2 IC卡软件安全性在系统的初始化阶段选择性的对相关存储数据的芯片进行合法性验证,可以保证数据资料的安全。例如:在特定的存储芯片的指定地址中,设置安全标识的内码,该标识仅仅对程序编写人员是透明的。上电初始化时,读取该内码与程序内的内码比较,若相同则表示该芯片是合法的。这样可以杜绝潜在恶意的篡改数据资料。对于IC卡的攻击者,其最主要的目的是攫取卡中的信息、或者对卡进行非法复制、或者篡改卡中内容、或者冒用他人的卡等,以达到破坏系统的目的。对IC卡进行攻击的有效途径通
8、常有以下两种:1.穷举法具体方法是:在终端设备上进行口令校验尝试,由于校验错误时,错误计数将减少一次,因此,必须保留至少一次机会,留待使用应用系统进行正确校验,以恢复错误计数,恢复之后再重新进行尝试,直到找出卡中密码为止。可见,穷举法实施的条件是:IC卡的口令空间较小,攻击者掌握了IC卡应用系统。2.中途拦截中途拦截是指在IC卡与应用系统间的通信过程中截获信息。当然,有人提出过一些措施以抗中途拦截攻击,但仍然不是非常安全可靠。所以,有必要加强对卡中数据的保密,使得即使口令保护失效时,攻击者也很难获取卡中信息。1.3 信息安全特性及实施方法智能IC卡是存储重要信息的载体,其所具有的安全技术必须足
9、以保证信息的安全。一般讲,其信息安全至少应具有以下五个方面的特性:1.机密性(Confidentiality):防止未经授权的信息获取,如未经授权应无法理解信息本身的真正涵义等;2.完整性(Iniegrity):防止未经授权的信息更改,如未经授权,应无法对信息进行任何形式的更改。一般用于防止对信息的主动恶意的篡改;3.可获取性(Accessibility):防止未经授权的信息截流;4.真实性(Anthenticity):能通过一系列的技术手段验证信息的真实性;5.持久性(Durability):长时间信息保存的可靠性,准确性等。智能IC卡的安全性应从以下三个方面逐步全面实施:1.智能IC卡用芯
10、片制造和芯片运输的安全技术; 2.智能IC卡硬件的安全技术;3.智能IC卡软件的安全技术。随着现代社会信息化程度的提高,不管是政府部门还是民间组织,都将信息视为最宝贵的资源,更加重视有关信息的安全及保密。特别是在我国,随着“金卡工程”等智能IC卡应用工程的推广实施,智能IC卡将广泛应用于金融、电信、医疗、保险及交通等国民经济的各个领域。其中智能IC卡作为信息传输、存储、处理及交换等的中间媒介,对有关信息的安全保护起着举足轻重的作用。为此,它所采用的安全保护措施就更为人们所关注7。1.4 研究目的及主要工作本课题的研究目的是研究IC卡系统及其密码控制相关技术,加大对IC卡电子密码锁方面的研究来加
11、快发展IC卡行业的可靠性和安全性,同时促进信息产业的发展,给社会进步做出贡献。本课题采取理论分析和实验研究相结合的方法开展通用型IC卡读写技术的设计研究工作,主要完成硬件设计和软件设计两方面的内容,包括以下工作和任务:1.根据系统的总体目标和功能要求,完成总体设计方案;2.完成系统硬件设计,实现IC卡与单片机主机之间的通信功能,采用串行通信的方式与51单片机连接,确定元器件选型; 3.根据硬件设计方案和器件选择结果,设计电路原理图; 4.编辑程序,实现对IC卡的相应密码控制功能,然后将操作结果或读来的数据传送回单片机,通过报警电路来显示结果。2 系统总体方案2.1 方案一硬件系统平台的模块结构
12、和外部接口见图2-1。电源模块由5V直流稳压电源输入,通过稳压器件,为系统提供各种电源。IC卡插入IC卡模块中的IC卡座后,系统可对IC卡进行读写。RS-232接口通过直连串口线与PC机或者其他设备的串口相连,用于系统调试或者数据传输。硬件系统平台的模块结构见图2.1。电源模块由5V直流稳压电源输入,通过稳压器件,为系统提供各种电源。IC卡插入IC卡模块中的IC卡座后,系统可对IC卡进行读写。RS-232接口通过直连串口线与PC机或者其他设备的串口相连,用于系统调试或者数据传输。 图2-1方案一总体设计框图本硬件平台与嵌入式软件平台一起构成一套IC卡手持终端原型系统。本平台采用模块化设计的思想
13、,各个模块各自独立、自成体系。模块化设计,增强了各个部分的可重用性。2.2 方案二单片机的选择:在本次设计中采用AT89C51单片机作为控制部分,它的特点是能兼容MCS51指令系统;具有4KBFlashROM;32条双向输入输出线,并且每条均可单独做I/O的控制;有两个16为可编程定时器/计数器;可编程UARL通道;低功耗空闲和掉电模式;128X8bit内部RAM;可直接驱动LED显示器。键盘部分的选择:采用4*4矩阵式按键键盘。IC卡部分的选择:采用存储器卡,即集成电路为E2PROM(可用电擦除的可编程只读存储器)的智能卡。当输入密码时,单片机会将输入的密码和IC卡内保存的初始密码比对,只有
14、在比对完全相同的条件下,系统才认为输入密码正确,才能使用IC卡进行想要进行的操作。所以,首先必须采用4*4的按键键盘来输入密码,通过系统比对后,会将比对结果通过报警电路显示出来5。方案二的的总体色设计框图如图2.2所示。图2-2方案二总体设计框图2.3 方案比较及选择本文采用的是方案二,设计的是一个IC卡密码锁系统,它主要包括两个部分:IC卡数据通信部分和密码管理部分。当输入密码时,单片机会将输入的密码必须采用4*4的按键键盘来输入密码,来节省I/O口以用于系统应用。LCD的显示需要比较多的I/O口,并且LCD的成本比LED的高很多。IC卡是以ATMEL公司的AT24系列存储器芯片AT24C0
15、1A作为串联通信的接口电路。AT24C01A支持I2 C总线数据传送协议,I2 C总线协议规定,任何将数据传送到总线的器件作为发送器。本设计基于单片机实现传统电子密码锁基本功能, 引入嵌入式技术, 减少电子密码锁外围元器件, 硬件电路简单,采用组合逻辑电路,但电路较复杂,可靠性差,由此,人们想到用单片机来实现,将密码存人RAM区,但由于断电后,密码无法保存故实用价值不大。现介绍一款本人用AT89C5l和串行R0M制作的电子密码锁,就克服了以上两大缺陷主要特点为:1保密性好,由于采用6位密码,随机破码率很低,并能随时更改密码就避免因人员的更替而使锁的密级下降。2误码输入保护。三次输入错码发出警告
16、声并封闭主控电路。3由于采用了串行R0M芯片停电不丢码。4结构简洁,故障率低,密码输入操作简便。5通用性强,可根据需要,安装在不同的设备上。在本系统需求分析后发现使用这款芯片会造成极大的资源浪费,大大增加开发成本。具体表现如下:(l)对Flash要求不高(2)只需要25个通用I/0引脚。使用AT89C51这款芯片既满足了用户的要求,又节约了成本。下面会详细介绍这款芯片。3 系统硬件电路设计3.1 硬件总体设计本设计采用的是AT89C51作为控制核心,基本的设计思路是在通过4*4的按键键盘输入密码,通过AT89C51的比对,将结果输出到LED显示出来。用51单片机的I/O口的输入输出模拟出串行E
17、EPROM的各条指令的时序。用于IC卡的通用存贮器芯片多为E2PROM,其常用的协议主要有两线串行连接协议(I2C总线协议)和三线串行链接协议。系统总体设计框图如图3-1所示。图3-1系统总体设计框图总体方案采用两级控制、主从式结构及总线型网络拓扑结构。键盘采用4*4矩阵排列, 主控芯片采用AT89C51, 键盘扫描电路进行行扫描, 按键采用机械式开关结构, 每个按键都有自己相应的作用, 可分为数字按键和功能按键。整个控制系统的实现过程是当密码控制系统工作后,通过的按键键盘查询方式进行密码输入,输入的密码与AT89C51从IC卡芯片读取的原始密码在主控制器中进行比对,只有输入密码和原始密码完全
18、相同,才会开放某些权限;反之,不会开放权限,并且会发出报警信号7-9。3.2 AT89C51芯片介绍AT89C51完全兼容MCS一51系列单片机的所有功能,比以往惯用的8O31CPU外加EPROM为核心的单片机系统在硬件上具有更加简单方便等优点。AT89C51的常见封装如图3-2所示。图3-2 AT89C51的DIP封装3.2.1 主要性能特点(1) 适于控制应用的8位CPU(2) 具有布尔处理(位处理)能力(3) 64KB程序存储器空间(4) 64KB数据存储器空间(5) 128字节片内数据存储器空间(6) 两个16位定时/计数器(7) 一个全双工的串行I/O接口(8) 6源5向量中断结构,
19、每个中断源都具有两级(低级和高级)(9) 片内时钟振荡器(10) 4K字节片内程序存储器(11) 32根双向并可按位寻址的I/O口线3.2.2 管脚说明VCC : 供电电压。GND : 接地。P0口 : 它既可作为通用I/O口,也可作为地址/数据线使用。作为I/O使用时要接510K欧的上拉电阻。P1口 : 是一个带内部上拉电阻的8位双向I/O口P2口 : 是一个带内部上拉电阻的8位双向I/O口,它既可作为通用I/O口,也可以跟P0口配合构成地址的高8位信号。当P2口作为地址线使用时,就不能再作通用的I/O口使用了。 P3口 : 是一个带内部上拉电阻的8位双向I/O口,也可作为AT89C51的一
20、些特殊功能口,P3口管脚第二功能如表3-1所示。表3-1P3口第二功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(计时器0外部输入)P3.5T1(计时器1外部输入)P3.6 (外部数据存储器写选通)P3.7 (外部数据存储器读选通)RST:复位输入。AT89C51便能完成系统重置的各种动作,使得内部特殊功能寄存器之内容均被设置成已知状态,并且至地址0000H处开始读入程序代码并执行程序。本设计中在这个引脚接入一个开关,当系统自动掉电后通过手动控制单片机复位,即按键电平复位。XTAL1,TXAL2: 用来接晶振10。本设计中在
21、XTAL1和XTAL2上接上一只12MHz石英震荡晶体系统就可以动作了,同时为了避免噪音的干扰而死机,在两个引脚与地之间加入一个20F的小电容,从而使系统工作更加稳定10。3.3 键盘模块电路设计虽然独立式键盘结构简单,使用方便,但每一个按键开关要占一根I/O口线,因此在按键较多时,为了减少键盘与单片机接口时所占用的I/O口线的数目,通常都将键盘排列成行列矩阵式,如图。每一水平(行线)与垂直线(列线)的交叉处不相通,是通过一个按键连通的。利用这种行列矩阵结构只需N个行线和M个列线即可组成M*N个按键的键盘。在这种行列矩阵式非编码键盘的单片机系统中,对键的识别通常采用两步扫描判别法。如图3-4所
22、示的4*4键盘,首先判别按键所在的行,由单片机P2口向键盘输出列扫描字,然后读入行线状态来判断。其方法是:向P2口输出0FH,即列线全部输出0,行线输出全1,然后将P2口低4位(即行线)的电平状态读入一个临时变量中,如果有按键按下,总会有一根行线被拉到低电平,从而使行输入不全为1。然后判别按键所在的列,由单片机P2口向键盘输出的行扫描字,然后读入列线状态来判断。其方法是:向P2口输出F0H,即行线输出全0,列线输出1,然后将P1口高4位(即列线)的电平状态读入另一临时变量中。如果有按键按下,总会有一根列线被拉到低电平,从而使列输入不全为1。采用4*4的行列式键盘,分别接51单片机的P2.0P2
23、.7。键盘采用查寻方式来响应按键的按下和放开两个过程11。键盘电路原理图如图3.4所示。 图3-4键盘部分的原理图3.4 I2C总线接口电路设计目前市场上的IC卡种类较多,比较有代表性的有ATMEL公司的AT系列和SIEMENS公司的SLE系列,我们根据用户的要求和市场的供给情况选用了ATMEL公司设计的AT24C01A卡。此卡的特点是:(1)卡内有1K位的存储容量,内部组态为128个8位字节。(2)双线串行接口,双向数据传送。(3)串行口满足ISOIEC 78163同步传递协议;(4)自定写人周期最大为10mS;(5)存储器可擦除100,000次以上,数据可保存100年。3.4.1 I2C总
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数字 抢答 设计
限制150内