基于分布式多层结构的一卡通系统的规划和设计
文章出处:http://www.nexussmartsolutions.com 作者: 人气: 发表时间:2011年09月09日
IC卡具有安全性高、大容量、抗干扰、读写方便等优点。经过近几年的迅速发展,已形成多种类卡并行,多种应用模式共存的局面。目前,IC卡应用系统多为一些中小规模系统,应用于如就餐收费系统、门控系统、消费管理系统等等。IC卡的应用领域越来越广,但由于缺乏统一规划,没有实现“一卡多用”,导致“一人多卡”,保管、使用极不方便。为了实现“一卡多能”,探索出一个基于分布式多层结构系统的有效技术方案,本文结合IC卡一卡通信息管理服务系统,采用面向对象分析和设计的思想,主要从体系结构和实现技术上对分布式多层模式的IC卡一卡通管理系统的规划和设计进行了论述。
1 系统规划
非接触式逻辑加密卡CICC具有使用寿命长、成本低、安全可靠、抗干扰力强、使用方便等特点,是实现“一卡多能”比较理想的卡种。系统选用1KB存储空间非接触逻辑加密卡,其数据存储结构如下:逻辑加密卡的存储区域分为16个存储扇区,编号为0~15,每个扇区又划分成4个数据块,每块占用16个字节。在每个扇区内块的编号为0~3,其中第3块作为保留数据块用作记录系统认证和读写控制码,一般用户数据不能存入该块中,而第0扇区的第0数据块是卡制造商的保留数据块,不支持用户的写操作。这样在一块卡中共有64个数据块(它们的绝对地址编号为0~63)。在卡中,数据块是最小存储单位,而在使用时,卡的读写操作是以扇区为单位进行的。
系统硬件设备应配置有读写卡机具、计算机、网络设备等。其中机具有发卡机、考勤机、门禁机、消费机等四种,以实现不同的读写卡操作功能。每个机具都与计算机相连接,组成一个相对独立的应用功能站点。计算机通过网络相互连接,实现功能站点之间的相互沟通。这样,机具、计算机、IC卡通过网络相互连接和沟通,成为一个整体,构成了整个系统的硬件服务平台。在网络配置上,系统中配备了一台微机服务器,专门用于本系统数据存储;另外配置一台服务器作为应用程序服务器,用于与数据库服务器以及各应用功能站点之间进行通讯联络和控制;为了充分利用企业现有的企业网络资源,加快建设进度、降低成本,原企业网服务器可作为WEB服务器,并与系统中专用服务器相连,使企业网内各工作站可以通过浏览器访问数据库中的数据。
由于传统的基于客户机/服务器结构的应用系统可维护性不好及系统的扩展性不强,本系统采用分布式结构规划,即将整个应用系统的执行分成数个不同的部分并且执行在不同的机器中,基于分布式结构的系统有更好的灵活性和适应性,且系统的可维护性和可复用性更强并可实现负载平衡。基于这种思想采用的设计方案应包括连接机具负责数据的采集、数据的处理和系统的初始化设置等功能的计算机客户端应用程序;提供执行企业对象的环境,并且提供核心服务,包括交易管理,安全服务,容错能力和负载平衡等功能的应用程序服务器程序;以及提供浏览器页面的WEB服务器程序;和数据库存储备份的数据库管理系统。系统的整体规划方案如图1所示:
图1 基于分布式多层结构的一卡通系统的整体规划图
2 系统设计
系统设计包括数据库设计、应用程序服务器设计、WEB服务器设计和客户端应用程序设计。
2.1 数据库设计
数据库是系统的信息储存和信息交换中心,系统中的所有操作状态、操作过程和记录都集中在此进行储存和交换,因此数据库在系统中起着特殊重要的作用。按数据库中所储存的信息类型的性质和特点,大致可以分为以下几大类:基本配置参数及控制信息,持卡用户及单位信息,卡、机具信息和计算机信息,消费信息,考勤信息,门禁信息,黑名单信息,公用信息等。在系统中,持卡人、卡、机具和(连接有机具的)计算机构成了系统的活动主体,因此,如何正确、有效、清晰地记录和表达这些主体的属性、它们之间的相互关系和相互作用过程是数据库设计的主题之一,同时也是系统应用这些信息的基础。在数据库结构上,与软件功能模块的划分相对应,采用分层设计思想,即将数据库的设计在不同的应用层面上分别进行。最底层是用于对系统中各主体的基本属性描述的数据表,在其之上是用于描述这些主体之间相互关系和相互作用的数据表,最后是针对不同应用需要的而设计的应用层数据表。最后,各个数据库表层相互关联,形成一个统一完整的数据信息应用网络,构成关系型数据库框架体系结构。
2.2 应用程序服务器设计
在开发多层式应用系统中,编写应用程序服务器是非常重要的工作。因为应用程序服务器提供了客户端应用程序存取远程数据库的接口,可以编写逻辑组件,在应用程序服务器中,允许所有客户端应用程序调用和使用。客户端应用程序可以透过DCOM直接与应用程序服务器沟通。系统的应用程序服务器主要负责与数据库服务器进行数据存取、并对取出的数据进行安全处理,提供给系统的各个需要服务的客户端应用程序和WEB服务器程序。它与数据库服务器的存取方案如图2所示。
图2 应用程序服务器的存取方案
2.3 WEB服务器程序设计
在分布式多层应用系统中,为了让WEB服务器能够服务的客户端用户更多,反应客户端的要求更迅速,WEB服务器不直接与数据库服务器连结,而是通过应用程序服务器与数据库服务器相连。当WEB应用程序接受到客户端的查询要求时,可将查询工作交与应用程序服务器执行,当它执行完毕之后再把结果通过WEB应用程序传递给WEB服务器,最后再由WEB服务器回传给客户端的浏览器。
2.4 应用管理软件设计
应用管理软件是分散在各个连结机具的工作站上,用以面向用户机具,管理整个系统。系统以应用功能为基础,共划分出消费管理、考勤管理、门禁管理、卡管理、基本信息管理、操作权限管理等6个子系统。
3 系统安全机制
在系统中安全管理机制包括卡的加密和认证机制,卡权限管理机制,数据库安全管理机制,应用管理软件的安全等几个方面。对卡的加密和认证是保证系统能在安全状态下运行的基础。对卡的加密主要是利用逻辑卡本身所具有的安全加密特性完成的。逻辑卡使用的是一种符合ISO/IEC9789—2标准的三次DES加密算法,每张卡在出厂时都有一个唯一的编号,该编号不能被更改或复制;同时,卡上为用户设有两个专门的密匙存储区域,该区域不能被任何设备读出或复制(只有通过专门的系统卡才能进行读写)。通过两个密匙之间的不同相互认证,以及其它状态控制参数的设定来共同完成对卡的读写方式和权限的设定加密。利用逻辑卡的上述加密特点,在系统中对每张卡在特定的存储区域都有保存有一个统一的系统识别标志,以判别卡是否是系统内的合法用户。卡权限管理就是对一张卡在不同机具上可操作性的赋权过程。在系统中按作用和工作状态的不同机具分为门禁机,考勤机和消费结算机等三种,在对卡的控制机制上,门禁机和考勤机二者采用相同的方式——“白名单”方式。所谓的“白名单”方式就是对于每一张要求在机具上使用的卡,必须事先把机具所需要的卡信息(卡的识别符号、所要求的读写方式、控制参数等)发送到机具端并在机具端加以保存。当卡通过机具并请求其提供某种操作或服务时,机具首先读取该卡的信息,然后在自己所保存的卡信息中查找该卡的信息记录,若未找到或者发现是合法用户但没有所请求的服务权限,则机具就拒绝用户请求,使用户操作失败。而消费结算机则采用“黑名单”方式。“黑名单”的工作方式与“白名单”的工作方式正好相反,它所保存的是禁用卡的信息,因此,在某消费结算机中留存有记录的卡在进行消费结算时将被其拒绝,消费结算机也可采用特定方式进行卡的合法性检查。
由于在IC卡系统中,采集来的数据最终是要通过应用管理软件来处理的,因此应用管理软件的安全技术也是非常重要的。常用的应用管理软功能件包括浏览查询、报表处理、数据采集、数据处理、机具管理、卡管理和用户管理等等。为了防止非法用户进入管理软件并通过管理软件非法查看和篡改数据,必须对进入者进行身份的鉴别,以及对访问者进行访问权限控制。
基于分布式多层结构的一卡通应用系统的开发适应了现代化企事业单位进行科学而高效地管理需要。系统地研制成功有力地促进了企事业管理科学化的进程,目前已被江西省某大型企业使用,取得了良好的社会效益和经济效益。
参考文献:
【1】李维 分布式多层应用系统篇 北京:机械工业出版社 ,2000年
【2】李维 分布式多层应用电子商务篇 北京:机械工业出版社 ,2000年
【3】王景中等 基于智能IC卡的网络数据安全保密系统 计算机应用,2001,21(7):53-55
【4】肖政宏 韩秋风 多层软件结构技术及其实现 电脑与信息技术,2001,9(6):52-55
作者简介:刘小东 周绍梅 南昌大学计算中心 邓胡滨 华东交通大学信息学院