CN105068910A - 一种智能卡的测试方法和装置 - Google Patents

一种智能卡的测试方法和装置 Download PDF

Info

Publication number
CN105068910A
CN105068910A CN201510497694.9A CN201510497694A CN105068910A CN 105068910 A CN105068910 A CN 105068910A CN 201510497694 A CN201510497694 A CN 201510497694A CN 105068910 A CN105068910 A CN 105068910A
Authority
CN
China
Prior art keywords
smart card
test
card
test code
smart
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201510497694.9A
Other languages
English (en)
Other versions
CN105068910B (zh
Inventor
闫熙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Datang Microelectronics Technology Co Ltd
Datang Semiconductor Design Co Ltd
Original Assignee
Datang Microelectronics Technology Co Ltd
Datang Semiconductor Design Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Datang Microelectronics Technology Co Ltd, Datang Semiconductor Design Co Ltd filed Critical Datang Microelectronics Technology Co Ltd
Priority to CN201510497694.9A priority Critical patent/CN105068910B/zh
Publication of CN105068910A publication Critical patent/CN105068910A/zh
Application granted granted Critical
Publication of CN105068910B publication Critical patent/CN105068910B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Credit Cards Or The Like (AREA)
  • Storage Device Security (AREA)

Abstract

本发明提供一种智能卡的测试方法和装置。所述方法,包括:输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;接收外部利用所述测试指令信息编辑得到的测试代码;利用所述测试代码对所述智能卡进行测试。

Description

一种智能卡的测试方法和装置
技术领域
本发明涉及通信领域,尤其涉及一种智能卡的测试方法和装置。
背景技术
金融IC卡已成为金融支付领域的重要发展趋势。金融IC卡安全性高、信息存储容量大,并且相比较磁条卡,在防范银行卡交易欺诈风险和提升金融支付工具附加功能等方面有得天独厚的优势,因此越来越得到银行的青睐。
金融IC卡在正式商用前,必须对卡片操作系统进行严格的内部测试,测试内容主要包括未知指令安全性检测、特定算法正确性检测、文件系统访问权限控制检测、指令一致性检测、个人化后文件操作及访问控制检测、多应用安全性检测、卡片寿命检测等,而这些检测需要通过读卡器对卡片发送数以百万计的APDU指令实现,通过人工逐个发送显然是不现实的,因此,需要一套具有高度智能化的检测工具实现对以上测试点的检测。
现已有的测试工具只针对单一规范,通用性不足。一般根据ISO7816-4规范和特定智能卡操作系统设计测试用例,不涉及各行业规范,例如对金融、社保卡测试不够全面。
发明内容
本发明提供一种智能卡的测试方法和装置,要解决的技术问题是如何提高测试的通用性。
为解决上述技术问题,本发明提供了如下技术方案:
一种智能卡的测试方法,包括:
输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
接收外部利用所述测试指令信息编辑得到的测试代码;
利用所述测试代码对所述智能卡进行测试。
其中,所述利用所述测试代码对所述智能卡进行测试,包括:
当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
以及,接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
其中,在接收所述第一智能卡反馈的测试结果之后,还包括:
根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
以及,接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
其中,在利用所述测试代码对所述智能卡进行测试之前,还包括:
读取智能卡连接的读卡器的接口的类型信息;
根据读卡器的类型,确定所述测试代码的发送策略;
根据所述发送策略,通过所述读卡器发送所述测试代码。
一种智能卡的测试装置,包括:
输出模块,用于输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
接收模块,用于接收外部利用所述测试指令信息编辑得到的测试代码;
测试模块,用于利用所述测试代码对所述智能卡进行测试。
其中,所述测试模块包括:
第一发送单元,用于当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
第一接收单元,用于接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
其中,所述测试模块还包括:
获取单元,用于在接收所述第一智能卡反馈的测试结果之后,根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
第二发送单元,用于向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
第二接收单元,用于接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
其中,所述装置还包括:
读取模块,用于在利用所述测试代码对所述智能卡进行测试之前,读取智能卡连接的读卡器的接口的类型信息;
确定模块,用于根据读卡器的类型,确定所述测试代码的发送策略;
其中,所述测试模块根据所述发送策略,通过所述读卡器发送所述测试代码。
本发明提供的实施例,通过输出预先存储的指令信息,允许用户使用脚本语言所支持的内部指令组合新的外部指令,使能够根据不同的应用场景或者行业规范,设计不同的测试脚本对智能卡操作系统进行测试,解决了以前测试工具只支持单一规范和通用性不足的缺陷。
附图说明
图1为本发明提供的智能卡的测试方法实施例的流程图;
图2为本发明提供的智能卡的测试装置实施例的结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明作进一步的详细描述。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1为本发明提供的智能卡的测试方法实施例的流程图。图1所示方法包括:
步骤101、输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
步骤102、接收外部利用所述测试指令信息编辑得到的测试代码;
步骤103、利用所述测试代码对所述智能卡进行测试。
本发明提供的实施例,通过输出预先存储的指令信息,允许用户使用脚本语言所支持的内部指令组合新的外部指令,使能够根据不同的应用场景或者行业规范,设计不同的测试脚本对智能卡操作系统进行测试,解决了以前测试工具只支持单一规范和通用性不足的缺陷。
下面对本发明提供的方法作进一步说明:
举例来说,现在测试工具提供以下几个函数
*ADDP1[IN],P2[IN],P3[OUT],将两个16进制的数P1,P2相加,结果放入P3
*HTODP1[IN],P2[OUT],将16进制的数P1转换为10进制的数P2
*DTOHP1[IN],P2[OUT],将10进制的数P1转换为16进制的数P2
如果用户需要做两个十进制数的加法,则必须先调用DTOH将10进制数转换为16进制数,然后通过ADD做加法,最后通过HTOD再将结果转换为10进制数,比较麻烦,用户可以编写一个ADDH指令放到工具/lib目录下,然后直接调用*ADDHP1[IN],P2[IN],P3[OUT]将两个10进制数相加,具体ADDH指令编写方式如下:
ADDH.ts
#defineADDHp1[in],p2[in],p3[out]
*DTOH$p1,$p1
*DTOH$p2,$p2
*ADD$p1,$p2,$p3
*HTOD$p3,$p3
完成上述文件编写后,用户就可以直接调用*ADDHP1[IN],P2[IN],P3[OUT]了,该指令就是用户通过内部指令编写的新外部指令。
在实际应用中,可以更新本地存储的指令信息,方便用户开发新的测试代码。
随着技术的发展,目前需要多卡同时操作的应用场景,因此允许测试工具同时对多张卡片发送指令,且能相互共享卡片返回数据。
其中,所述利用所述测试代码对所述智能卡进行测试,包括:
当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
以及,接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
进一步的,在接收所述第一智能卡反馈的测试结果之后,还包括:
根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
以及,接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
发送给不同卡片数据有不同的指令,例如给卡片A发送则为*APDUA
给卡片B发送指令则为*APDUB,界面上也提供了打开读卡器A,B,C的相对应按钮。
共享卡片的返回数据的主要应用场景为多卡数据交互的情况。
举例来说,在使用公交卡进行消费时,需要消费密钥,该密钥不直接存储在POS上,而是存储在POS上一个名叫PSAM卡的卡片上,要进行消费,则必须先读取公交卡信息,传递到PSAM卡进行加密,将加密结果再传递给公交卡以认证POS的合法性,该场景要求必须能够进行多卡数据交互。
对非PC/SC协议读卡器,根据读卡器厂家给予的读卡器驱动接口。
在现有技术中,如果读卡器不支持非PCSC协议。一般不能够通过非PCSC协议的读卡器连接卡片,限制了对于卡片/读卡器兼容性的测试。
其中,PCSC协议是用于电脑和读卡器之间进行通信协议,是主流协议,但是并不是所有读卡器都遵循,部分读卡器使用自己单独的协议,需要测试工具调用该类型读卡器单独的API进行通信。14443协议时读卡器和卡片进行通信的协议,因该协议较为复杂,所以并不是所有读卡器都完全遵循该协议,假设14443协议要求发送完apdu指令后必须等待1秒后才能发下一条指令,也许该类型读卡器在等待了0.5秒就下发了指令,如出现上述情况,就需要修改卡片上的东西对增加对该类型读卡器的兼容性。
其中,在利用所述测试代码对所述智能卡进行测试之前,还包括:
读取智能卡连接的读卡器的接口的类型信息;
根据读卡器的类型,确定所述测试代码的发送策略;
根据所述发送策略,通过所述读卡器发送所述测试代码。
具体的,兼容性测试主要是指部分读卡器使用的14443协议非标准14443协议,没有严格遵循规范,致使卡片要想使用该读卡器,则必须对卡片的通信协议进行修改。现有软件基本上只能够支持PCSC接口协议,根本无法连接到这类读卡器,更不用说进行通信了,因为只支持PCSC接口读卡器,所以一般遇到需要发送指令的地方,直接调用PCSC接口的API发送指令,不用考虑其它类型读卡器的问题。
在本发明中,创建了一个单独的读卡器类,内部包含了各类协议读卡器接口,每次需要发送指令的时候均需要该类去判断连接的是哪类读卡器,需要调用哪个API去发送指令。
图2为本发明提供的智能卡的测试装置的结构图。图2所示装置包括:
输出模块201,用于输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
接收模块202,用于接收外部利用所述测试指令信息编辑得到的测试代码;
测试模块203,用于利用所述测试代码对所述智能卡进行测试。
其中,所述测试模块203包括:
第一发送单元,用于当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
第一接收单元,用于接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
其中,所述测试模块203还包括:
获取单元,用于在接收所述第一智能卡反馈的测试结果之后,根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
第二发送单元,用于向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
第二接收单元,用于接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
其中,所述装置还包括:
读取模块,用于在利用所述测试代码对所述智能卡进行测试之前,读取智能卡连接的读卡器的接口的类型信息;
确定模块,用于根据读卡器的类型,确定所述测试代码的发送策略;
其中,所述测试模块根据所述发送策略,通过所述读卡器发送所述测试代码。
本发明提供的实施例,通过输出预先存储的指令信息,允许用户使用脚本语言所支持的内部指令组合新的外部指令,使能够根据不同的应用场景或者行业规范,设计不同的测试脚本对智能卡操作系统进行测试,解决了以前测试工具只支持单一规范和通用性不足的缺陷。
本领域普通技术人员可以理解上述实施例的全部或部分步骤可以使用计算机程序流程来实现,所述计算机程序可以存储于一计算机可读存储介质中,所述计算机程序在相应的硬件平台上(如系统、设备、装置、器件等)执行,在执行时,包括方法实施例的步骤之一或其组合。
可选地,上述实施例的全部或部分步骤也可以使用集成电路来实现,这些步骤可以被分别制作成一个个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
上述实施例中的各装置/功能模块/功能单元可以采用通用的计算装置来实现,它们可以集中在单个的计算装置上,也可以分布在多个计算装置所组成的网络上。
上述实施例中的各装置/功能模块/功能单元以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。上述提到的计算机可读取存储介质可以是只读存储器,磁盘或光盘等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求所述的保护范围为准。

Claims (8)

1.一种智能卡的测试方法,其特征在于,包括:
输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
接收外部利用所述测试指令信息编辑得到的测试代码;
利用所述测试代码对所述智能卡进行测试。
2.根据权利要求1所述的方法,其特征在于,所述利用所述测试代码对所述智能卡进行测试,包括:
当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
以及,接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
3.根据权利要求2所述的方法,其特征在于,在接收所述第一智能卡反馈的测试结果之后,还包括:
根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
以及,接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
4.根据权利要求1所述的方法,其特征在于,在利用所述测试代码对所述智能卡进行测试之前,还包括:
读取智能卡连接的读卡器的接口的类型信息;
根据读卡器的类型,确定所述测试代码的发送策略;
根据所述发送策略,通过所述读卡器发送所述测试代码。
5.一种智能卡的测试装置,其特征在于,包括:
输出模块,用于输出预先存储的指令信息,其中所述指令信息为用于测试智能卡的指令信息;
接收模块,用于接收外部利用所述测试指令信息编辑得到的测试代码;
测试模块,用于利用所述测试代码对所述智能卡进行测试。
6.根据权利要求5所述的装置,其特征在于,所述测试模块包括:
第一发送单元,用于当同时对至少两个智能卡发送测试代码时,向所述至少两个智能卡中的第一智能卡发送测试代码时,其中所述测试代码包括第一智能卡的标识信息;
第一接收单元,用于接收所述第一智能卡反馈的测试结果,其中所述测试结果包括所述第一智能卡的标识信息。
7.根据权利要求6所述的装置,其特征在于,所述测试模块还包括:
获取单元,用于在接收所述第一智能卡反馈的测试结果之后,根据所述第一智能卡的反馈结果,获取所述至少两个智能卡中的第二智能卡的测试指令;
第二发送单元,用于向所述至少两个智能卡中的第二智能卡发送测试代码时,其中所述测试代码包括第二智能卡的标识信息;
第二接收单元,用于接收所述第二智能卡反馈的测试结果,其中所述测试结果包括所述第二智能卡的标识信息。
8.根据权利要求5所述的装置,其特征在于,所述装置还包括:
读取模块,用于在利用所述测试代码对所述智能卡进行测试之前,读取智能卡连接的读卡器的接口的类型信息;
确定模块,用于根据读卡器的类型,确定所述测试代码的发送策略;
其中,所述测试模块根据所述发送策略,通过所述读卡器发送所述测试代码。
CN201510497694.9A 2015-08-13 2015-08-13 一种智能卡的测试方法和装置 Active CN105068910B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510497694.9A CN105068910B (zh) 2015-08-13 2015-08-13 一种智能卡的测试方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510497694.9A CN105068910B (zh) 2015-08-13 2015-08-13 一种智能卡的测试方法和装置

Publications (2)

Publication Number Publication Date
CN105068910A true CN105068910A (zh) 2015-11-18
CN105068910B CN105068910B (zh) 2017-11-17

Family

ID=54498287

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510497694.9A Active CN105068910B (zh) 2015-08-13 2015-08-13 一种智能卡的测试方法和装置

Country Status (1)

Country Link
CN (1) CN105068910B (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105676106A (zh) * 2015-12-31 2016-06-15 东信和平科技股份有限公司 一种非接触智能卡芯片型号自动化检测系统及方法
CN106021117A (zh) * 2016-06-07 2016-10-12 公安部第三研究所 智能卡系统中间人攻击验证平台及测试方法
CN106908709A (zh) * 2015-12-23 2017-06-30 上海华虹集成电路有限责任公司 检测智能卡非接触通信过程中电磁扰动的系统和方法
CN106934310A (zh) * 2017-02-24 2017-07-07 飞天诚信科技股份有限公司 一种测试智能卡的方法及读卡器
CN107341423A (zh) * 2017-07-13 2017-11-10 金邦达有限公司 智能卡的测试方法及测试设备、计算机可读存储介质
CN110442487A (zh) * 2019-08-13 2019-11-12 东信和平科技股份有限公司 一种智能卡通讯协议测试方法、装置、系统及可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101126793A (zh) * 2007-09-18 2008-02-20 东信和平智能卡股份有限公司 智能卡测试系统及方法
CN102495797A (zh) * 2011-11-25 2012-06-13 大唐微电子技术有限公司 智能卡测试装置和测试方法
CN102664043A (zh) * 2012-03-30 2012-09-12 大唐微电子技术有限公司 实现移动支付的智能sd卡测试的装置及方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101126793A (zh) * 2007-09-18 2008-02-20 东信和平智能卡股份有限公司 智能卡测试系统及方法
CN102495797A (zh) * 2011-11-25 2012-06-13 大唐微电子技术有限公司 智能卡测试装置和测试方法
CN102664043A (zh) * 2012-03-30 2012-09-12 大唐微电子技术有限公司 实现移动支付的智能sd卡测试的装置及方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106908709A (zh) * 2015-12-23 2017-06-30 上海华虹集成电路有限责任公司 检测智能卡非接触通信过程中电磁扰动的系统和方法
CN105676106A (zh) * 2015-12-31 2016-06-15 东信和平科技股份有限公司 一种非接触智能卡芯片型号自动化检测系统及方法
CN106021117A (zh) * 2016-06-07 2016-10-12 公安部第三研究所 智能卡系统中间人攻击验证平台及测试方法
CN106021117B (zh) * 2016-06-07 2018-11-20 公安部第三研究所 智能卡系统中间人攻击验证平台及测试方法
CN106934310A (zh) * 2017-02-24 2017-07-07 飞天诚信科技股份有限公司 一种测试智能卡的方法及读卡器
CN106934310B (zh) * 2017-02-24 2019-09-13 飞天诚信科技股份有限公司 一种测试智能卡的方法及读卡器
CN107341423A (zh) * 2017-07-13 2017-11-10 金邦达有限公司 智能卡的测试方法及测试设备、计算机可读存储介质
CN107341423B (zh) * 2017-07-13 2020-10-09 金邦达有限公司 智能卡的测试方法及测试设备、计算机可读存储介质
CN110442487A (zh) * 2019-08-13 2019-11-12 东信和平科技股份有限公司 一种智能卡通讯协议测试方法、装置、系统及可读介质

Also Published As

Publication number Publication date
CN105068910B (zh) 2017-11-17

Similar Documents

Publication Publication Date Title
CN105068910A (zh) 一种智能卡的测试方法和装置
US8768250B2 (en) Enhanced near field communication terminal, smart card and communication method thereof
CN102799962B (zh) 一种配置型业务流程系统及其实现方法
US9158598B2 (en) Apparatus, method, program and system for processing information utilizing a multi-platform capable of managing a plurality of applications
CN103559523B (zh) 基于swp se实现的非接触读写设备及方法
CN101866434B (zh) 信息处理装置、方法和程序
EP3598368A1 (en) Financial transaction management system, method, storage medium and server
CN102136085A (zh) 电信智能卡及基于电信智能卡的非接触应用管理方法
CN102479123A (zh) 卡片操作系统的测试系统及测试方法
US20170109720A1 (en) Browser applied in pos terminal
Saminger et al. An NFC ticketing system with a new approach of an inverse reader mode
CN102664043B (zh) 实现移动支付的智能sd卡测试的装置及方法
CN104239829A (zh) 近场通信装置及方法
CN102496112A (zh) 基于智能sd卡的三屏支付系统及实现方法
CN105184337A (zh) 一种nfc设备进行智能卡应用检测方法和系统
TW202040385A (zh) 以裝置識別資料透過電信伺服器識別身份之系統及方法
CN110191054B (zh) 路由处理方法及装置、存储介质和电子设备
WO2010118612A1 (zh) 一种安装非接触支付应用的方法、智能卡及移动终端
CN107229962A (zh) 一种基于移动终端的通用智能卡
WO2010016332A1 (ja) 通信装置、通信方法、及びプログラム
EP2793201A1 (en) Safety information transfer system, device and method based on extended parameter set
US8844827B2 (en) Chip card, and method for the software-based modification of a chip card
CN104461902A (zh) 一种金融支付的测试平台、方法及系统
Husemann Standards in the smart card world
CN103870958A (zh) 一种移动支付方法及移动支付专用设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant