EMVTag系列16《AC响应数据》
2014-08-01 18:00
148 查看
在一个联机交易中,要传送到发卡行的专有应用数据。
模板推荐值:07000103000000010A01
除了所有非接触应用的卡片需求外,qPBOC还应当遵守下面的要求:
收到GPO命令,卡片应当立即设置发卡行应用数据(标签“9F10”)的CVR部分为“03000000”。 CVR是发卡行应用数据的第4-7字节部分;
CVR字节2,位4、3、2、1未使用,仍保留设置为b“0”;
CVR字节3,位8、4、3、2、1未使用,仍保留设置为b“0”;
CVR字节4未使用,所有位仍保留设置为b“0”;
qPBOC终端处理需求
l 当终端接收到来自卡片的正确的GPO命令响应,它将检查发卡行应用数据(标签“9F10”)来确定卡片提供的密文类型。根据密文类型,判断交易拒绝、联机处理或脱机批准。
l 密文类型检查
l 如果返回ARQC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“10”),那么终端应将交易联机发送;
l 如果返回AAC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“00”),那么终端应拒绝交易;
l 如果返回TC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“01”),但卡的应用失效日期早于终端交易日期(终端本地),那么终端应脱机拒绝交易;
l 如果返回TC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“01”),那么终端应检查终端异常文件(如果存在),如果应用PAN在终端异常文件中出现,那么终端应脱机拒绝交易;
为了使得发卡行可以在主机端更紧密地跟踪资金,引入了在发卡方应用数据(9F10)的发卡行自定义数据部分中允许加入特殊数据的选项。对于qPBOC交易,当卡片应用对GPO指令回应联机认证请求(ARQC)的时返回;对于借记/贷记交易,当卡片应用对第1次生成应用密文指令回应联机认证请求(ARQC)的时返回。发卡行自定义数据(IDD)根据在个人化时选择的选项不同,会有所变化。
累计交易总金额、在CTTA基础上增加的累计交易总金额限制(CTTAL)、电子现金余额、可用脱机消费金额和能够个人化不超过15个字节的静态数据,是发卡行可选择联机发送的5个数据选项,发卡行可以在这5个选项中选择任意一个联机发送。同时如果该数据存在,在发送的指令中会被加上校验码,以保证数据完整性。发卡行自定义数据(IDD)仅在联机交易中被返回。
发卡行自定义数据(IDD)的ID值用于选择在发卡行自定义数据域中返回的数据的类型。缺省的情况下,发卡行自定义数据不会被返回。如果发卡行希望收到发卡行自定义数据,在9F10个人化值中,需要添加以上相应的数据的长度和标示符字节(在借记/贷记应用的自定义数据之后)。
例如,0x0A02表示在生成交易密文的指令应答中,将返回10个字节的发卡行自定义数据,包括数据类型标示符(0x02),累计交易总额和校验码。返回电子现金余额的选项,只有当应用被个人化为电子现金的时候才会有效。
文/闫鑫原创
转载请注明出处/article/1332642.html
字段 | 长度(字节) | 赋值 | 说明 |
长度 | 1 | 07 | |
分散密钥索引 | 1 | 00 | |
密文版本号 | 1 | 01 | 根据发卡行密钥版本设置 |
卡片验证结果(CVR) | 4 | 03 | |
00 | bits 8–7: 00 = 第2个GENERATE AC返回AAC 01 = 第2个GENERATE AC返回TC 10 = 不请求第2个GENERATE AC 11 = RFU bits 6–5: 00 = 第1个GENERATE AC返回AAC 01 = 第1个GENERATE AC返回TC 10 = 第1个GENERATE AC返回ARQC 11 = 不能返回11 bit 4: 1 = 发卡行认证执行但失败 bit 3: 1 = 脱机PIN执行 bit 2: 1 = 脱机PIN认证失败 bit 1: 1 = 不能联机 | ||
00 | bit 8: 1 = 上次联机交易没有完成 bit 7: 1 = PIN锁定 bit 6: 1 = 超过频率检查 bit 5: 1 = 新卡 bit 4: 1 = 上次联机交易发卡行认证失败 bit 3: 1 = 联机授权后,发卡行认证没有执行 bit 2: 1 = 由于PIN锁卡片锁定应用 bit 1: 1 = 上次交易SDA失败交易拒绝 | ||
00 | bits 8–5: 上次交易第2个生成应用密文(GENERATE APPLICATION CRYPTOGRAM(AC))命令后收到的带有安全报文的发卡行脚本命令 bit 4: 1 = 上次交易发卡行脚本处理失败指针 bit 3: 1 = 上次交易DDA失败交易拒绝 | ||
算法标识 | 1 | 01 | |
发卡行自定义数据长度 | 1 | 0A | |
ID号 | 1 | 01 | |
金额域 | 5 | 初始值0 | |
MAC | 4 | 初始值0 | |
其它的发卡行自定义数据 | 5 |
除了所有非接触应用的卡片需求外,qPBOC还应当遵守下面的要求:
收到GPO命令,卡片应当立即设置发卡行应用数据(标签“9F10”)的CVR部分为“03000000”。 CVR是发卡行应用数据的第4-7字节部分;
CVR字节2,位4、3、2、1未使用,仍保留设置为b“0”;
CVR字节3,位8、4、3、2、1未使用,仍保留设置为b“0”;
CVR字节4未使用,所有位仍保留设置为b“0”;
qPBOC终端处理需求
l 当终端接收到来自卡片的正确的GPO命令响应,它将检查发卡行应用数据(标签“9F10”)来确定卡片提供的密文类型。根据密文类型,判断交易拒绝、联机处理或脱机批准。
l 密文类型检查
l 如果返回ARQC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“10”),那么终端应将交易联机发送;
l 如果返回AAC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“00”),那么终端应拒绝交易;
l 如果返回TC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“01”),但卡的应用失效日期早于终端交易日期(终端本地),那么终端应脱机拒绝交易;
l 如果返回TC(发卡行应用数据(标签“9F10”)字节5的第6-5位=b“01”),那么终端应检查终端异常文件(如果存在),如果应用PAN在终端异常文件中出现,那么终端应脱机拒绝交易;
为了使得发卡行可以在主机端更紧密地跟踪资金,引入了在发卡方应用数据(9F10)的发卡行自定义数据部分中允许加入特殊数据的选项。对于qPBOC交易,当卡片应用对GPO指令回应联机认证请求(ARQC)的时返回;对于借记/贷记交易,当卡片应用对第1次生成应用密文指令回应联机认证请求(ARQC)的时返回。发卡行自定义数据(IDD)根据在个人化时选择的选项不同,会有所变化。
累计交易总金额、在CTTA基础上增加的累计交易总金额限制(CTTAL)、电子现金余额、可用脱机消费金额和能够个人化不超过15个字节的静态数据,是发卡行可选择联机发送的5个数据选项,发卡行可以在这5个选项中选择任意一个联机发送。同时如果该数据存在,在发送的指令中会被加上校验码,以保证数据完整性。发卡行自定义数据(IDD)仅在联机交易中被返回。
发卡行自定义数据选项 | 长度(字节) | IDD ID | 金额域 | MAC字节数 |
电子现金余额 | 10 | 0x01 | 标签“9F79” 的值(低5位字节) | 4 |
累计交易总金额(CTTA) | 10 | 0x02 | 值,此数据无标签(低5位字节) | 4 |
电子现金余额和CTTA | 15 | 0x03 | 值(10 字节, “9F79” 值 在第1位置) | 4 |
CTTA和CTTAL | 15 | 0x04 | 值(10 字节, CTTA值 在第1位置) | 4 |
可用脱机消费金额 | 10 | 0x05 | 标签“9F5D”的值 (低5位字节) | 4 |
静态 | 1 to 15 | N/A | 发卡行指定固定数据 | 无 |
例如,0x0A02表示在生成交易密文的指令应答中,将返回10个字节的发卡行自定义数据,包括数据类型标示符(0x02),累计交易总额和校验码。返回电子现金余额的选项,只有当应用被个人化为电子现金的时候才会有效。
文/闫鑫原创
转载请注明出处/article/1332642.html
相关文章推荐
- EMVTag系列16《AC响应数据》
- 机器学习系列(16)_怎样找到一份深度学习的工作(附学习材料,资源与建议)
- 大数据系列修炼-Scala课程16(1)
- EMVTag系列9《卡片管理数据》
- 剑指offer系列之16:树的子结构
- ISTQB AL-TM连载系列16:如何处理难以重现的缺陷
- 左手用R右手Python系列16——XPath与网页解析库
- 【转】Java 集合系列16之 HashSet详细介绍(源码解析)和使用示例--不错
- iPhone开发入门系列1(iOS8+Swift版)天天打靶APP学习15-16
- Android学习系列(16)--App列表之圆角ListView
- C#温故而知新学习系列之面向对象编程—16-析构函数
- 深入理解JavaScript系列(16):闭包(Closures)
- 算法设计与应用基础系列16
- 剑指Offer系列---(16)在O(1)时间删除链表结点
- Effective Modern C++翻译系列之Item16
- 小酌重构系列[16]——引入契约式设计
- Struts1.x系列教程(16):使用LocaleAction类实现国际化的Web程序
- Selenium-webdriver系列教程(16)————为firefox设置代理
- 原创]windows server 2012 AD架构试验系列 – 16更改DC计算机名