在终端使用IC卡进行的各种操作需要满足一定的流程,包括终端的操作、终端与IC卡之间的命令与响应,IC卡的内部处理等等。
所有的流程都从交易预处理流程开始。用户插卡以后,终端开始进入交易预处理流程,预处理流程图如下所示:
1、检测IC卡的插入
终端能够检测到IC卡是否已经插入读卡器内,如果IC卡已经插入,终端将继续下一步的处理。
2、应用选择
应用选择由终端执行,终端通过向卡片发送选择文件命令,选择卡片上的支付环境PSE(Payment System Environment)。PSE成功选择以后将返回包含发卡方专用数据在内的文件控制信息FCI(File Control Information)。电子存折/电子钱包应用必备的发卡方专用数据如下所示:
数据字段 长度(Byte) 发卡方标识符 8
应用类型标识 1
应用版本号 1
应用序列号 10
应用启用日期 4
应用有效日期 4
发卡方自定义FCI数据 2
3、有效性检查
终端得到卡片选择应用返回信息之后,对这些数据进行如下的检查:
* 检查卡片的发卡方标识和应用序列号,看卡片是否在终端存储的黑名单中。
* 检查终端是否支持该发卡方标识符。
* 检查应用类型标识符,判断应用在IC卡上的存在情况。
* 检查应用版本号,看终端是否支持IC卡回送的应用版本号所代表的应用版本。
* 检查应用的有效期。
检查完后,
* 如果所有检查项目条件都满足的话,终端继续下一步的处理。
* 如果其中某一条件不满足的话,终端进入自定义的错误处理流程。
4、选择电子钱包或电子存折
根据应用选择时IC卡返回的应用类型标识符终端可以判断IC卡支持ED和EP应用的情况,
* 如果IC卡和终端同时只支持ED或EP之一,终端自动向IC卡发送选择文件命令选择ED或EP应用,继续下一步的处理。
* 如果IC卡只支持一种应用并且该应用不被终端支持,则交易中止。
* 如果IC卡和终端都支持ED和EP两种应用,终端向持卡人提供选择ED或EP应用的过程,插卡人从中选择一种应用进行交易。
5、输入个人密码PIN
如果持卡人选择的是ED应用的话,终端提示用户输入个人密码PIN。
如果持卡人选择的是EP应用的话,无需PIN校验,可以略过这两个步骤。
用户输入PIN以后,终端向IC卡发送校验PIN的命令。
6、校验个人密码PIN
IC卡收到校验命令以后,卡内对PIN文件进行如下操作:
* 检查PIN尝试计数器,如果PIN尝试计数器值为0的话,此时PIN已经锁定,无法执行命令,这时IC卡回送状态码0x6983结束交易过程。
* 如果PIN没有被锁定,将用户输入的PIN值和文件中PIN记录的内容进行比对。
* 如果两个值相同,IC卡将PIN演讲计数器置为允许PIN重试的最大次数并返回状态码0x9000。PIN校验成功的结果在交易中止以前将一直保存在卡内,直至断电或者重新进行了应用选择操作。
* 如果两个值不相同,IC卡将PIN尝试计数器减1并返回状态码0x63Cx,x是PIN尝试计数器的新值。
PIN校验成功后将继续接下来的步骤。
如果PIN校验失败,终端收到状态码0x63Cx,终端将判断x的值,
* 如果x为0,表示PIN已经被锁定,终端将结束这次交易。
* 如果x不为0,终端将提示用户密码错误,重新输入并再次重复本步骤。
7、交易类型选择
用户可以在终端上选择要做的交易类型,每次交易只能够选择一种交易类型。
对于电子存折应用来说,用户在终端上可以选择的交易类型包括:圈存、圈提、消费、取现、修改透支限额、查询余额和查询明细。
对于电子钱包应用来说,用户在终端上可以选择的交易类型包括:圈存、消费和查询余额。
文章评论(0条评论)
登录后参与讨论