本发明涉及一种交互方法,特别是涉及一种可统一执行指令的一次交互方法,属于ic卡读取记录技术领域。
背景技术:
ic卡在实际应用中,很多情况下是需要联机处理业务的,此时并不需要做脱机数据认证,而获取处理选项后ic卡给出的afl指明的记录却包含所有可用的应用数据,包括发卡行公钥证书、ic卡公钥证书、签字记录、以及其它可能的无效数据,这会消耗相当的处理时间,读取效率低,客户延时感觉较长,使用体验差。
因此,亟需对ic卡读取记录交互方法进行改进,以解决上述存在的问题。
技术实现要素:
本发明的目的是提供一种可统一执行指令的一次交互方法,本发明ic卡智能读取应用记录只读取部分记录即可,缩短交易处理时间,提高读取效率,极大的提高了客户延时感觉。
为了达到上述目的,本发明采用的主要技术方案包括:
一种可统一执行指令的一次交互方法,包括如下步骤:
步骤1:通过业务系统提供的所需数据tag列表,核心读取第一张ic卡,核心在读取第一张ic卡时判断各个应用记录为有效记录或无效记录;
步骤2:业务系统所需的tag列表列出的所有数据被读出后,停止读取后续的记录;
步骤3:读取新ic卡,
读取新ic卡时,只读取有效记录,不再读取无效记录;
步骤4:读取完所有有效记录后,业务系统发现存有遗漏的tag,
此时必须再去真正读取无效记录,待发现无遗漏tag或读取完所有应用记录为止;
步骤5:核心重新登记有效记录与无效记录。
优选的,在步骤1中,第一次读ic卡时,有效记录列表为空,本次读ic卡需要核心读取ic卡全部应用记录,并判断应用记录为有效记录或无效记录。
优选的,在步骤2中,在第一次读ic卡过程中,随时判断是否所有关键tag都已经读取出来,发现关键tag全部读出时,立即停止继续读取应用记录,并生成有效记录表。
优选的,在步骤3中,核心首先读取有效记录表中的记录,如果新ic卡afl不包含有效记录表中记录,则不读取,当判断发现所有关键tag已经读出,终止读ic卡应用记录,对于无效记录,直接返回”\x70\x00”,标明此记录无数据。
优选的,在步骤4中,读取完有效记录表标明的记录后,缺少某些关键tag,则继续读取新ic卡afl标记的所有其它未被读出的应用记录,并根据新ic卡应用记录情况修正有效记录表。
优选的,此智能ic卡应用记录读取方法只发生在核心最底层的apdu交互层。
优选的,业务系统为处于远离ic卡机具位置的银行/非银行账务系统;
核心为执行emv/pboc借贷记标准流程的软件;
关键tag为业务系统要求上送的tag。
优选的,ic卡为以下两类ic卡片:
a:符合emv2004及以后版本规范的借贷记卡,
b:符合pboc2.0及以后版本规范的借贷记卡;
ic卡机具为与ic卡直接交互的设备。
优选的,有效记录为ic卡包含了关键tag的应用记录;
无效记录为ic卡不包含关键tag的应用记录;
有效记录表为包含有效记录的记录列表。
本发明至少具备以下有益效果:本发明ic卡智能读取应用记录只读取部分记录即可,缩短交易处理时间,提高读取效率,极大的提高了客户延时感觉。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本发明的原理流程图。
具体实施方式
以下将配合附图及实施例来详细说明本申请的实施方式,借此对本申请如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。
如图1所示,本实施例提供的可统一执行指令的一次交互方法,包括如下步骤:
步骤1:通过业务系统提供的所需数据tag列表,核心读取第一张ic卡,
核心在第一次读ic卡时,有效记录列表为空,本次读ic卡需要核心读取ic卡全部应用记录,并判断应用记录为有效记录或无效记录;
步骤2:在第一次读ic卡过程中,随时判断是否所有关键tag都已经读取出来,发现关键tag全部读出时,立即停止继续读取应用记录,并生成有效记录表;
步骤3:读取新ic卡,
核心首先读取有效记录表中的记录,如果新ic卡afl不包含有效记录表中记录,则不读取,当判断发现所有关键tag已经读出,终止读ic卡应用记录,对于无效记录,直接返回”\x70\x00”,标明此记录无数据;
步骤4:读取完所有有效记录后,业务系统发现存有遗漏的tag,
此时必须再去真正读取无效记录,读取完有效记录表标明的记录后,缺少某些关键tag,则继续读取新ic卡afl标记的所有其它未被读出的应用记录,并根据新ic卡应用记录情况修正有效记录表,待发现无遗漏tag或读取完所有应用记录为止;
步骤5:核心重新登记有效记录与无效记录。
本发明ic卡智能读取应用记录只读取部分记录即可,缩短交易处理时间,提高读取效率,极大的提高了客户延时感觉。
在本实施例中,此智能ic卡应用记录读取方法只发生在核心最底层的apdu交互层,完全不影响核心整体构架;
业务系统为处于远离ic卡机具位置的银行/非银行账务系统;
核心为执行emv/pboc借贷记标准流程的软件;
关键tag为业务系统要求上送的tag;
c卡为以下两类ic卡片:
a:符合emv2004及以后版本规范的借贷记卡,
b:符合pboc2.0及以后版本规范的借贷记卡;
ic卡机具为与ic卡直接交互的设备;
有效记录为ic卡包含了关键tag的应用记录;
无效记录为ic卡不包含关键tag的应用记录;
有效记录表为包含有效记录的记录列表。
在本实施例中,假设业务系统在做联机交易时需要核心上送以下tag:
5a5f249f269f279f109f379f36959a9c9f02829f349f419f0b5f20
去除其中不在ic卡应用记录中读取的tag,剩下的tag:
5a:卡号;
5f24:失效日期;
5f20:持卡人姓名;
9f0b:持卡人姓名扩展;
增加ic卡应用记录中必须存在的tag:
8c:cdol1;
8d:cdol2;
某银行ic卡结构,应用记录共计792字节,
afl:0801020010010200100507001802020018030301
sfi1,recno1:2磁道等效数据
701957138888000000000027d05019010000000000000f5f340101
sfi1,recno2:持卡人姓名持卡人证件号码持卡人证件类型
70255f2009e5bca0e6a087e6b2b39f61123333303130313139383030323031323032589f620100
sfi2recno1:发卡行公钥证书
7081c39081c07391cbcf974dc9f720b683b333c0b19c4649259c8af5ca2b1a09a90c6d2549db8eb9704e6c58ce5684e40af27691edd6f07e5bca6e30ab6125339ca18ed442df1f35da9af20b774f62a5693f3948b32942d8b2989dc2ca72e69fe02606791bdb85921ae56ae3bb0fa1f52bb23c37344399ba78a18fbc4ef574623a1dd8c56853b32c7cfa6f6492807ea6c95480471393d3e68fd1d2fc12d09b094a6f0696aba150d109fe740375e47bc264d9f64a9e813173d1f624b9650161b40bb258bf0e5a
sfi2,recno2:发卡行公钥指数发卡行公钥余项ca公钥索引;
700d9f32010392044981416f8f014f
sfi2,recno5:ic卡公钥指数ic卡公钥余项ddol;
70179f4701039f480a79d1a5acd21fef8386bb9f49039f3704
sfi2,recno6:签字的静态数据;
7081a39381a0a9a53ca42a4830b52b3779caa0ff84e042c5bf604ced04f718fd274d3e03bdc79566ba3e4967a40b37f7f686090cf51bdee8d6b9e1196080687b17c72e0e055ae115e8cd1518c80a631d6c056bcef982c2f5b4733873cbf8aee000ebc34e67aa05cb2b36a39d8d3747c1f31eb041aec2252efc43baff42b899495e24d53b922e112a8ed2a9001c0795fbd36ca86ac9d4efcc9f3c98219937689d843d93e43b4c
sfi2,recno7:ic卡公钥证书;
7081a49f4681a008d1cd1663951f2ed6cbea63570580771e604254bcdca08b1c183dd7ed39290aef0a586a5ecef1d76ae43293bb488578e0a09b3bdb39361ce9d61de8ac9515d40c4240100cc538aa5e70461b0b17f4ee14472738da231f622d78ae4018b530650ab4b3784dd8de37c0b19fe0346caeb1eccec579b703bf4d13398e786b60ae8adc40630b467b3e7c2ff4b0bdca3a5f63798f29630073a8f3f09da379d91865e0
sfi3,recno2:cdol1cdol2服务代码卡应用版本号静态认证数据tag列表;
70478c1b9f02069f03069f1a0295055f2a029a039f21039c019f37049f4e148d1a8a029f02069f03069f1a0295055f2a029a039f21039c019f37045f300209019f080200209f4a0182
sfi3,recno3:卡号cvm列表iac失效日期发卡行国家代码应用货币代码auc电子现金授权码;
70505a0a8888000000000027ffff8e0c000007d0000000005f0601039f0d05d8603ca8009f0e0500108000009f0f05d8683cf8005f24030501285f280201569f420201569f0702ff009f7406454343303031
第一次读ic卡
由于是第一次读ic卡,有效记录列表为空,所以本次读ic卡需要核心读取ic卡全部应用记录,全部792字节加上所需的协议字节,以sdi011读卡器实测需要1.1秒;
在读卡过程中,随时判断是否所有关键tag都已经读取出来,发现关键tag全部读出时,立即停止继续读取应用记录;
由于最后一个记录包含了关键tag,所以本例需要读出全部记录;
在读取应用记录中,生成有效记录表:
记录→内容→关键tag;
sfi1,recno2持卡人姓名5f209f0b
(5f20与9f0b只会出现1个,读出任一个,则认为另一个也读出了)
sfi3,recno2cdol1cdol28c8d
sfi3,recno3卡号失效日期5a5f24
第二次读同类型ic卡;
核心首先读取有效记录表中的记录;
sfi1,recno2:持卡人姓名持卡人证件号码持卡人证件类型;
70255f2009e5bca0e6a087e6b2b39f61123333303130313139383030323031323032589f620100
sfi3,recno2:cdol1cdol2服务代码卡应用版本号静态认证数据tag列表;
70478c1b9f02069f03069f1a0295055f2a029a039f21039c019f37049f4e148d1a8a029f02069f03069f1a0295055f2a029a039f21039c019f37045f300209019f080200209f4a0182
sfi3,recno3:卡号cvm列表iac失效日期发卡行国家代码应用货币代码auc电子现金授权码;
70505a0a8888000000000027ffff8e0c000007d0000000005f0601039f0d05d8603ca8009f0e0500108000009f0f05d8683cf8005f24030501285f280201569f420201569f0702ff009f7406454343303031
读取3个记录后判断发现所有关键tag已经读出,终止读ic卡应用记录;
此次读取ic卡,有效记录表无变化,同前:
记录→内容→关键tag;
sfi1,recno2持卡人姓名5f209f0b
(5f20与9f0b只会出现1个,读出任一个,则认为另一个也读出了)
sfi3,recno2cdol1cdol28c8d
sfi3,recno3卡号失效日期5a5f24
3个记录共计194字节,以sdi011读卡器实测需要0.28秒,对比之前的1.1秒,节省时间0.82秒,极大的提高了客户延时感觉;
第三次读其它类型ic卡,后续称新ic卡;
假设新ic卡结构与之前的卡结构有不同;
核心首先读取有效记录表中的记录,如果新ic卡afl不包含有效记录表中记录,则不读取,读取完有效记录表标明的记录后,假设还缺少某些关键tag,则继续读取新ic卡afl标记的所有其它未被读出的应用记录,并根据新ic卡应用记录情况修正有效记录表。
如在说明书及权利要求当中使用了某些词汇来指称特定组件。本领域技术人员应可理解,硬件制造商可能会用不同名词来称呼同一个组件。本说明书及权利要求并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的准则。如在通篇说明书及权利要求当中所提及的“包含”为一开放式用语,故应解释成“包含但不限定于”。“大致”是指在可接收的误差范围内,本领域技术人员能够在一定误差范围内解决技术问题,基本达到技术效果。
需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的商品或者系统中还存在另外的相同要素。
上述说明示出并描述了本发明的若干优选实施例,但如前所述,应当理解本发明并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本发明的精神和范围,则都应在本发明所附权利要求的保护范围内。
1.一种可统一执行指令的一次交互方法,其特征在于,包括如下步骤:
步骤1:通过业务系统提供的所需数据tag列表,核心读取第一张ic卡,
核心在读取第一张ic卡时判断各个应用记录为有效记录或无效记录;
步骤2:业务系统所需的tag列表列出的所有数据被读出后,停止读取后续的记录;
步骤3:读取新ic卡,
读取新ic卡时,只读取有效记录,不再读取无效记录;
步骤4:读取完所有有效记录后,业务系统发现存有遗漏的tag,
此时必须再去真正读取无效记录,待发现无遗漏tag或读取完所有应用记录为止;
步骤5:核心重新登记有效记录与无效记录。
2.根据权利要求1所述的一种可统一执行指令的一次交互方法,其特征在于:在步骤1中,第一次读ic卡时,有效记录列表为空,本次读ic卡需要核心读取ic卡全部应用记录,并判断应用记录为有效记录或无效记录。
3.根据权利要求1所述的一种可统一执行指令的一次交互方法,其特征在于:在步骤2中,在第一次读ic卡过程中,随时判断是否所有关键tag都已经读取出来,发现关键tag全部读出时,立即停止继续读取应用记录,并生成有效记录表。
4.根据权利要求1所述的一种可统一执行指令的一次交互方法,其特征在于:在步骤3中,核心首先读取有效记录表中的记录,如果新ic卡afl不包含有效记录表中记录,则不读取,当判断发现所有关键tag已经读出,终止读ic卡应用记录,对于无效记录,直接返回”\x70\x00”,标明此记录无数据。
5.根据权利要求1所述的一种可统一执行指令的一次交互方法,其特征在于:在步骤4中,读取完有效记录表标明的记录后,缺少某些关键tag,则继续读取新ic卡afl标记的所有其它未被读出的应用记录,并根据新ic卡应用记录情况修正有效记录表。
6.根据权利要求1-5任意一项所述的一种可统一执行指令的一次交互方法,其特征在于:此智能ic卡应用记录读取方法只发生在核心最底层的apdu交互层。
7.根据权利要求1-5任意一项所述的一种可统一执行指令的一次交互方法,其特征在于:业务系统为处于远离ic卡机具位置的银行/非银行账务系统;
核心为执行emv/pboc借贷记标准流程的软件;
关键tag为业务系统要求上送的tag。
8.根据权利要求1-5任意一项所述的一种可统一执行指令的一次交互方法,其特征在于:ic卡为以下两类ic卡片:
a:符合emv2004及以后版本规范的借贷记卡,
b:符合pboc2.0及以后版本规范的借贷记卡;
ic卡机具为与ic卡直接交互的设备。
9.根据权利要求1-5任意一项所述的一种可统一执行指令的一次交互方法,其特征在于:有效记录为ic卡包含了关键tag的应用记录;
无效记录为ic卡不包含关键tag的应用记录;
有效记录表为包含有效记录的记录列表。
技术总结