|
近年来,非接触式IC卡系统在全国各地的公共交通领域有了较发展,为了方便IC卡的发卡和充值,各地陆续推出了IC卡自助充值系统,现用户在点或银行进行IC卡自助充值。由于移动互联和第方支付的速发展,各大城市的公交卡着手积极研究移动充值的解决方案,大都采用NFC读写卡方式。
由于卡片规范、密钥体系和交易流程均不相同,上述研究法完全适用于中铁银通卡。中铁银通卡芯片技术标准符合《金融集成电路(IC)卡规范》(简称:PBOC),电子现金账户和联机账户并存,芯片可存储数字证书、密钥、持卡人信息、指纹等信息。乘车时用户使用电子现金脱机消费模式,具有交易速、便捷、安全、不可伪造、不可重复消费等特点。
联机账户可用于互联购票等联机交易,适用于所有符合PBOC的终端,其范围广、适应性强。本文将线上充值思路应用于中铁银通卡,设计并现了中铁银通卡线上充值系统(简称:线上充值系统),现银通卡的线上自助充值,同时,对系统的总体架构、关键技术、业务功能和流程设计进行了论述。
1、系统设计
1总体架构
系统使用WS、IDEA等工具进行开发,总体架构分为3层,分别为表现层、应用层、支撑层,如图1所示。
图1系统总体架构
(1)表现层即人机交互层,包括手机终端充值应用、蓝牙读卡器和管理平台,该层采用VUE框架,手机端A采用BS架构,管理平台采用CS架构,使用微信支付宝小程序的原生API,将信息可视化后与用户进行交互。
(2)应用层采用S框架。表现层将操作请求传递给应用层处理。该层负责所有的业务流程控制以及数据库的增删改查,同时,负责与表现层、支撑层的开放平台、第方支付系统进行对接。
(3)支撑层主要指开放平台。开放平台提供已封装API供应用层或其他拓展业务的第方系统调用。采用HTTPS通信协议,调用方可通过开放平台提供的SDK现对该系统的间接访问。开放平台通过ISO8583金融报文和固定格式接口与中铁银通卡发卡系统进行通讯。
2数据库设计
本文使用MSQL工具建立关系型数据库,按照一致性、完整性、安全性和规范化原则进行设计。MSQL数据库支持多线程和化的SQL查询算法,有效提高查询速度。数据库中的交易明细表如表1所示。
表1交易明细表结构
3安全设计方案
由于金融交易和账户信息读写对系统的安全性要求较高,交易合法性验证、数据加密和访问控制3个方面进行系统安全设计。
(1)交易合法性验证
本文采用双向身份认证和授权方式校验交易合法性。业务系统被分配仅有标识以及与之相匹配的应用鉴别密文,开放平台根据仅有标识进行身份认证、状态校验和权限控制等。业务系统与开放平台每次交互都需要进行密钥交换并保存对方的公钥,同时使用RSA2算法做数字签,保证业务数据的可靠性和防抵赖性。
(2)数据加密
为保证业务系统数据与开放平台间的数据传输安全,本文将整体业务数据转成JSON字符串,用AES加密算法对业务数据进行加密。蓝牙读卡器传输数据采用CRC校验、3DES加密等技术。
(3)访问控制
业务系统登录账号由管理员统一下发,不开放个人注册。
2、关键技术
1消息认证码(MAC)校验技术
基于PBOC的圈存写卡交易,中铁银通卡发卡系统收到请求后,会在响应报文中含MAC值的发卡行脚本命令,终端解析脚本命令并发送给IC卡执行。IC卡产生本次交易过程密钥,计算出MAC值并校验。若两者相同,证明该上行数据的发送者是中铁银通卡发卡系统,且数据在传送过程中未被修改、删除或重组,否则会拒绝该交易。
2终端及卡片冲正机制
为保证卡片金额与后台交易的一致性,需设计完善的冲正机制,处理圈存写卡异常情况。在读卡器终端保留比较后一笔圈存交易,如圈存写卡过程中发生拔卡、断、软件异常退出等异常情况,导致写卡失败,交易会立刻发起冲正。
若IC卡未写卡结果信息,则终端再次读卡,并与卡片交易计数器数值做比较,若交易计数器数值加1,且余额未增加,则同样发起冲正。
发起冲正后,若未收到上层系统的冲正应答,则重复发3次冲正请求,若均未应答,则提示人工处理。若收到上层系统的圈存应答,则丢弃该应答。
3、系统功能
线上充值系统主要分为手机终端软件和管理平台两部分,功能结构如图2所示,手机终端软件(微信小程序、支付宝小程序)与蓝牙读卡器连接后可现对银通卡的读写。
图2系统功能结构
1手机终端软件功能
(1)电子现金圈存及余额查询
用户使用第方支付为银通卡电子现金做圈存,可选择系统给出的圈存金额或手动输入金额。交易成功后,界面显示更新后的余额信息。电子现金圈存界面如图3所示。
图3电子现金圈存界面
(2)圈存记录查询
用户可根据卡号信息查询到该卡的圈存记录,核圈存数据,界面如图4所示。
图4圈存记录查询界面
(3)联机账户充值及余额查询
用户使用第方支付为银通卡的联机账户充值,可选择系统给出的充值金额或手动输入充值金额。充值成功后,联机账户进行余额更新。
(4)充值记录查询
用户可根据卡号信息查询到联机账户的充值记录,并核充值数据。
2管理平台功能
管理人员可通过浏览器登陆管理平台,具体功能包括订单列表查询、POS充值列表查询和指定账户圈存列表查询。管理人员可以通过管理平台核账务和资金清算情况。管理平台界面如图5所示。
图5管理平台界面
4、系统流程设计
线上充值系统交易总体流程如图6所示。
图6线上充值系统交易流程
1电子现金圈存流程
(1)用户将卡片插入蓝牙读卡器中,读卡器识别卡片信息后,上送卡号、余额及其他金融数据;
(2)用户在手机终端软件选择圈存金额,进入支付流程,充值业务系统根据用户提交的金额向第方支付系统做扣款请求,确认付款成功后,完成支付。
(3)支付成功后,终端提出圈存写卡请求,为确保资金安全,充值业务系统需再次与第方支付系统确认并验证支付信息,充值业务系统向开放平台提出圈存写卡请求,并调用开放平台API做多次验证与交互,银通卡发卡系统更新后台余额并下发写卡指令,终端收到写卡指令,写卡成功后,卡片写卡成功脚本信息,再由充值业务系统回传至中铁银通卡发卡系统。
2联机账户充值流程
(1)与41中的(1)一致;
(2)与41中的(2)一致;
(3)充值业务系统调用开放平台API做联机账户充值请求,中铁银通卡发卡系统收到请求后更新后台余额,并执行结果,交易结束。
3查询流程
(1)用户在手机终端软件上触发查询业务;
(2)终端软件将读卡器上送的卡号信息上送至充值业务系统,充值业务系统与开放平台交互并将查询结果至手机界面。
5、结束语
本文通过分析银通卡充值服务所面临的新需求,提出银通卡线上充值的解决方案,使银通卡充值业务变得更高效、便利、自动化。中铁银通卡线上充值系统投入使用后,市场反馈良好,线上充值比例占总充值金额的25%,并呈逐渐上升趋势。在后续使用中,随着PBOC的升级,系统需要根据中铁银通卡应用的升级不断化。
下一步,可研究线上充值交易流程及异常处理机制的化,自动处理由于写卡失败等原因造成的充值失败,还可研究业务系统的充值账务自动核对、自动退款等新功能,提升旅客使用体验。
经过筛选和调研易支付很可能会成为带动经济发展的新生力量。我爱易支付免签约支付平台,已稳定运营八年,T0提现秒到账,免结算费,交易费率低至0.8%,每日凌晨00:00自动结款不压资金,完美解决支付难不稳定等问题,一站式接入支付宝,微信,QQ钱包,银联支付,云闪付,京东等支付平台,可以帮助开发者快速集成支付接口在自己网站,APP,及各大平台,您还在等什么,快点加入我们吧!https://www.wapay.cn
|
|