IC卡与银行卡系统对接实时充值的技术介绍
文章出处:http://www.nexussmartsolutions.com 作者:招商银行广州分行信息技术部 蔡炜群 人气: 发表时间:2011年10月09日
前言
自1985年我国出现第一张银行卡,特别是在1993年国家实施“金卡工程”以来,各类银行卡、非银行卡的应用都取得突飞猛进的发展。银行卡在各企事业单位的代发工资、代收代扣各种费用、商场酒店消费等领域得到了广泛的应用。与此同时,非银行卡特别是各种IC卡由于其安全易用、适应能力强等原因,在学校园区、工业园区、住宅小区的小额消费和身份识别等领域也得到了广泛应用。近年来,基于IC卡技术的“公交一卡通”在公共交通领域的应用也得到广泛认同。
一、问题的提出
在实际应用中,银行卡大多数以磁条为载体,数据集中在银行主机,使用时必须要求终端与银行主机实时联网,同时银行卡的发行管理基本是由银行完成的;而非银行IC卡主要应用在比较特定的、相对封闭的领域,充值后既可联机也可以脱机使用。IC卡发行后一个很重要的环节就是需要充值,目前IC卡的充值方法主要有现金充值、IC卡圈存机转账充值。现金充值需要配备专门工作人员处理现金,需要专用场地,服务时间和地点都受限制;而圈存机虽然服务时间、地点可以较为灵活,但由于圈存机价格昂贵,也限制了它的使用。
本文根据笔者在某企业集团组织开发实施的一个实际应用,介绍了一种IC卡自助充值的技术方案在实际应用中,企业员工既有IC卡、又有银行卡,每个员T 的IC卡与自己的银行卡必须事先建立一一对应的绑定关系。IC卡与银行卡既可以分别是独立卡片,也可以是合二为一的联名卡即智能一卡通。如果使用智能一卡通,上面有两个独立的账户,一个是银行磁条账户,另一个是IC芯片电子钱包账户。银行负责磁条账户的应用和维护管理,企业负责电子钱包账户的应用和维护管理。
二、IC卡自助充值的技术方案
1.企业内部的IC卡终端设备需要组成一个网络
首先,企业内部必须有一部中心数据库服务器(此服务器最好有备份设备,采用企业级数据库服务器如SQL Server、Sybase等);其次,把分布在企业各区域中需要提供实时联网充值功能的Ic卡终端设备通过协议转换器连接到企业的内部网中,这样,这些终端设备就可以从服务器实时获取最新数据。
2.企业IC卡管理系统与银行系统联网
企业IC卡管理系统的中心数据库服务器必须通过前置机、通讯专线与银行的电脑网络系统实时联网,确保客户需要为IC卡电子钱包账户转账充值时,企业系统能与银行系统实时交换数据。
联网时, 企业的前置机是银行前置机的客户端, 银行系统通过银行核发IC卡对企业前置机进行身份认证、交易传输的加密工作,这样可以避免非法连接到银行系统。注意,这里的加密Ic卡只是用于银行系统与企业系统进行数据交换加密和身份识别,与IC卡电子钱包系统有着完全不同的用途。整个系统的网络结构图如图1所示。
3.建立IC卡子钱包账户与银行卡的绑定关系
为了使用银行提供的Ic卡自助充值功能,客户必须先自主、自助通过银行提供的各种服务平台,如网上银行、电话银行、自助银行里的自助服务终端、银行柜台,办理本人名下的Ic卡电子钱包账户与银行卡账户转账一一对应的绑定关系。银行系统验证客户的身份合法后,把绑定申请实时传输给企业系统,企业服务程序同时也验证绑定的合法性后反馈给银行,然后把结果登记在企业数据库。流程如图2所示。
4.转账与充值过程
从银行账户转账到IC卡电子钱包账户,可以有批量自动转账和单笔自助转账,这就要求企业数据库系统与银行系统必须对接,并且按定义好的数据接口进行信息交换。根据转账发起平台的不同,又可以分为转账充值同时进行和转账充值分开进行两种情况。下面分别叙述三种组合情况。
(1)转账充值同时进行的单笔自助转账
此种方式由IC卡持卡人自助发起转账充值请求, 而且操作都是在企业的Ic卡充值终端上操作。当持卡人在自助充值终端上选择充值服务后感应IC卡、输入IC卡密码,企业服务器判断IC卡如为有效白卡后即提示客户输入银行卡充值密码、充值金额,然后把充值请求发送给银行系统;银行系统根据IC卡电子钱包账户, 找到对应的银行卡账户,银行系统如判别充值请求为有效合法、银行账户资金充足后,把信息反馈6-业服务器。企业服务器接收到银行的信息后,立即反馈一个确认信息给银行;同时更新企业数据库中当前持卡人的转账信息,再把充值信息下传给当前充值终端,当前充值终端屏幕提示持卡人进行第二次感应IC卡,持卡人感应后,由当前充值终端对IC卡进行验证,验证正确, 即把银行卡的资金转到IC卡电子钱包账户。流程如图3所示。
(2)转账充值分开进行的批量自动转账
首先,采用这种转账方式的客户必须事先与企业签订一份书面协议,同时留存一份给银行保管。其次,企业根据实际情况,由6-业服务程序向银行系统发起转账请求。转账触发条件可以为周期性的转账如每月一次, 或者根据Ic卡电子钱包账户的余额如账户余额小于1O元等。批量转账过程类似第一种情况,但不需验证充值密码;转账成功后也不立即提示持卡人充值。只有当持卡人持Ic卡在联网的IC卡终端设备消费、查询余额时,由企业服务程序判别、提示持卡人充值。
(3)转账充值分开进行的单笔自助转账
这种转账方式是由客 通过银行的服务平台,如网上银行、电话银行、自助银行里的自助服务终端,自助发起转账交易请求,银行系统根据客户的银行账号找到对应的IC卡电子钱包账号。转账过程类似第一种情况,充值过程类似第二种情况。
5.数据接口
银行系统与企业系统的数据接口采用银行定义的、基于TCP/IP的Socket数据包,各数据域定义简要说明如下表。
三、安全性控制
本系统通过如下措施进行安全性控制,确保客户资金、银行系统和企业系统的安全。
1.银行系统与企业系统的网络连接通过专线连接,同时在企业端的前置机上安装银行自己核发的IC卡和运行银行下发的客户端程序,银行验证联网企业的合法身份,并对每一笔充值交易都用IC卡作数字签名认证和传输加密,而且采用动态密钥下载的方式每天更换加密密钥。
2.客户要使用自助充值功能,必须事先对银行账户与IC卡电子钱包账户进行一个绑定操作,而且绑定申请是否成功都必须经过银企双方系统的确认。同样,每一笔转账也是必须经过双方系统确认才能成功。
3.客户在IC卡终端设备进行自助转账充值操作所输入的银行密码是银行卡充值专用密码,不同于银行卡的取款交易密码,这样可以杜绝银行卡交易取款密码在企业系统被截留的可能。
4.客户在IC卡终端设备进行自助充值时,转账和充值都提示客户感应IC卡、进行相关验证,杜绝了客户进行转账操作后没有充值就离开导致资金充人别人的IC卡的可能。
5.如果一笔转账交易请求因为通讯问题银行系统不能传输给企业电脑系统确认,则这笔转账当不成功处理,交易被取消。如果银行把转账交易请求发给了企业系统,但因为通讯原因得不到企业系统的确认,银行系统会在通讯恢复时发查询交易给企业系统,如果得到确认,则交易成功;如果企业系统返回不成功信息, 银行系统则对交易作冲账处理,取消交易。
6.整个系统要求每天作对账处理, 即企业系统的应用程序每天把记录的成功转账交易以文件方式发送给银行,由银行系统读取后与自己记录的成功转账交易进行核对, 然后反馈结果给企业系统。如果有单边账,则由银企双方人工确认后作冲账或补账处理。
四、结束语
目前国内的很多公用事业部门如煤气公司、供电公司、自来水公司正在积极推动预付费的IC卡收费项目,即把计量仪表和收费装置合在一起,组成一个新的预付费型计量仪表,在这个新型的二合一的装置中的收费设备通常就是一个内置的Ic卡终端设备。而在使用过程中,IC卡的充值就是一个很重要的环节。目前多数是要求用户到银行柜台充值,如果再局限于这种传统做法,用户有可能在“八小时之外”出现断电、断水、停气的可能。即使可以购买一些固定面值的储值卡作应急之需,由于储值卡一般为一次性使用,也会增加发卡成本。可见,使用IC卡与银行卡系统对接进行实时充值技术,既可方便用户,又可提高相关企事部门的服务质量和工作效率,对于促进IC卡在各个领域的应用有非常积极的意义。