对于普通的用户来说,电子钱包和电子现金(下面分别简称EP和EC)是几乎没有区别的,为什么这么说呢.因为站在应用的角度来讲,EP和EC都是为了做小额支付而生的.我们拿着一张IC卡去超市的POS机上消费,或是坐公交,只需轻轻一刷就可以了,你不必关心这张卡里面是基于EP的应用还是基于EC的应用.
如果你是金融电子这个行业里的人,尤其是对于开发人员,不知道EP和EC的区别真的要补习一下功课了.
首先,我们从应用的角度来看两者的区别.
EP本身是独立于借贷记的一种应用,无论是应用层的通信协议,还是相关的交易流程,与借贷记应用都有很大的差别.它的出现是为了满足小额支付的需要,可以说是PBOC专门为小额支付的推广制定的一个应用.
电子现金的概念出现在PBOC 08年修订版新加上去的规范<<基于借记贷记应用的小额支付规范>>里,从应用的角度来分析,它所实现的功能跟电子钱包相差无几,就是最基本的三个交易功能,圈存,消费,查询余额.那为什么人民银行后来会增加这样的基于借贷记的应用呢,这个我们不得而知.我个人的看法是,国内目前PBOC还处于起步阶段,这种电子现金的应用,可以作为PBOC的小范围推广应用(主要是因为它支持小额度脱机消费),对用户来讲,在一些服务行业实现小额支付的功能,而且因为它本身是基于借贷记的,未来时机成熟了,可以不用换卡,直接过渡到全国范围内的借贷记应用.
站在开发者的角度,我们需要很深的剖析EP与EC的区别.分以下几点:1交易流程上的差别,这个差异有很多地方,EC因为是基于供借贷记,从读取支付系统目录,到终端风险管理,一直到交易结束,每一步必不可少,完全遵守借贷记规范.而EP就没有这些限制.比如,EP没有支付系统目录的概念,当我们要做一个EP的交易,直接以AID选择当前的EP,然后就可以直接选择具体的交易了.而EC因为是基于借贷记的应用,需要读取支付系统目录,建立相应的应用列表,并最终通过匹配来进行应用选择.当然,如果当前EC的AID,并且是单应用,也可以直接用AID选择.
2 APDU的差异.EP虽然有一些基本的APDU跟借贷记是复用的,但因为它本身应用上的特殊性,它自己也定义了一套专门的APDU.比如针对圈存,有initialize forload(初始化圈存),credit for load(圈存)等APDU指令.而EC是基于借贷记的,兼容其APDU自不必说,另外还加了很少几个电子现金专用的APDU,比如get data(查询余额)等.在圈存的方式上,EP的圈存指令是由终端机发起的,而EC的圈存指令则是后台验证合法性通过发来的脚本,终端仅做解析,然后转发到IC卡.
3在安全管理方面,EP,EC也是有很大差别的.EC由于是基于借贷记,在安全规范方面也肯定要符合借贷记的标准,自然安全方面的要求要高过EP.比如一个基于EC的交易肯定要具备终端风险管理,终端行为分析,卡片行为分析等操作,而EP就没有这些要求.下面拿联机圈存安全认证流程举个例子来说明EP和EC在安全管理上的差异.
当我们要对一张基于EP的IC卡做圈存,首先我们向卡片发初始化圈存指令,卡片会生成一个MAC1,这个MAC1是卡片用本身的密钥,把一些必要的输入数据(比如圈存金额),用3des算法生成的一个报文鉴别码,这个MAC1随后被送往后台,后台解密这个MAC1,从而验证卡片的合法性.如果验证成功,后台生成一个MAC2返回给终端机,当终端对IC卡发圈存指令时,要把这个MAC2一起发给IC卡,卡片以同样的原理验证后台的合法性,如果验证成功,才更新卡上的金额,圈存成功.
再来EC是怎么来做圈存的.前面的应用选择,读应用数据成功后,终端向卡片发产生应用密文指令,卡片收到该命令,内部基于3des算法产生应用密文ARQC,这个有点类似于上面的MAC1.终端联机上送这个ARQC,后台用这个ARQC验证卡片的合法性,如果验证成功,会产一个授权响应密文ARPC,终端用ARPC给卡片发外部认证命令,这样卡片就可以验证后台的合法性,只有验证成功,才进行后续的圈存.
上一篇:国家突发公共事件总体应急预案
下一篇:小学冬季取暖应急预案