CN102346862A - 非接触式卡的认证方法和装置 - Google Patents

非接触式卡的认证方法和装置 Download PDF

Info

Publication number
CN102346862A
CN102346862A CN2011102800794A CN201110280079A CN102346862A CN 102346862 A CN102346862 A CN 102346862A CN 2011102800794 A CN2011102800794 A CN 2011102800794A CN 201110280079 A CN201110280079 A CN 201110280079A CN 102346862 A CN102346862 A CN 102346862A
Authority
CN
China
Prior art keywords
contactless card
card
key
module
contactless
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
CN2011102800794A
Other languages
English (en)
Other versions
CN102346862B (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.)
Feitian Technologies Co Ltd
Original Assignee
Feitian Technologies 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 Feitian Technologies Co Ltd filed Critical Feitian Technologies Co Ltd
Priority to CN201110280079.4A priority Critical patent/CN102346862B/zh
Publication of CN102346862A publication Critical patent/CN102346862A/zh
Application granted granted Critical
Publication of CN102346862B publication Critical patent/CN102346862B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Storage Device Security (AREA)

Abstract

本发明公开一种非接触式卡的认证方法和装置,涉及信息安全领域。为解决不能进行实时检测的问题而发明。该方法包括:根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;向上位机发送寻卡失败的响应,删除本地存储的密钥后返回①;根据返回信息获取非接触式卡的***信息;根据非接触式卡的***信息,判断是否接收到上位机向非接触式卡发送的操作指令;检测操作指令的类型;向上位机发送卡在场相应的响应后返回①;根据操作指令向本地写入非接触式卡的密钥后返回⑥;判断本地是否存储非接触式卡相应的密钥;通过密钥对非接触式卡进行认证,得到认证结果;根据操作指令对非接触式卡进行相应的操作,并将操作的数据向上位机发送后执行⑥。

Description

非接触式卡的认证方法和装置
技术领域
本发明涉及信息安全领域,尤其涉及一种非接触式卡的认证方法和装置。
背景技术
非接触式卡又称射频卡,由IC芯片和感应天线组成。当非接触式卡在一定距离范围内靠近读卡器时,读卡器通过射频识别技术自动识别该非接触式卡后,可以通过无线电波对该非接触式卡进行读写操作。
现有技术中,一般的操作方法就是把卡放入读卡器射频场,然后读卡器寻卡成功后,进行认证操作,成功后等待响应的卡读写操作。
在实现上述检测非接触式卡的过程中,发明人发现现有技术中至少存在如下问题:由于认证通过后,非接触式读卡器需要等待上位机发送的操作指令后进行相应的操作,无法对卡片是否在射频场进行实时检测。
发明内容
本发明的实施例提供一种检测非接触式卡的方法和装置,能够对卡片是否在射频场进行实时检测。
一方面,提供一种非接触式卡的认证方法,包括:①、根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;如果接收到返回信息,执行③;如果未接收到返回信息,执行②;②、向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后返回①;③、根据所述返回信息获取所述非接触式卡的***信息;④、根据所述非接触式卡的***信息,判断是否接收到所述上位机向所述非接触式卡发送的操作指令;如果接收到所述操作指令,执行⑤;如果未接收到所述操作指令,执行⑥;⑤、判断所述操作指令的类型;如果所述操作指令的类型为存储密钥类,执行⑦;如果所述操作指令的类型为卡操作类,执行⑧;⑥、向所述上位机发送卡在场相应的响应后返回①;⑦、根据所述操作指令向本地写入所述非接触式卡的密钥后返回⑥;⑧、判断本地是否存储所述非接触式卡相应的密钥;如果本地存储所述非接触式卡相应的密钥,执行⑨;如果本地未存储所述非接触式卡相应的密钥,执行②;⑨、通过所述密钥对所述非接触式卡进行认证,得到认证结果;如果所述认证结果为认证通过,执行⑩;如果所述认证结果为认证未通过,执行②;⑩、根据所述操作指令对所述非接触式卡进行相应的操作,并将该操作的数据向上位机发送后执行⑥。
另一方面,提供了一种非接触式卡的认证装置,包括:
寻卡模块,用于根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;
如果接收到返回信息,执行***获取模块;如果未接收到返回信息,执行第一响应模块;
第一响应模块,用于向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后返回寻卡模块;
***获取模块,用于根据所述返回信息获取所述非接触式卡的***信息;
指令接收模块,用于根据所述非接触式卡的***信息,判断是否接收到所述上位机向所述非接触式卡发送的操作指令;
如果接收到所述操作指令,执行指令判断模块;如果未接收到所述操作指令,执行第二响应模块;
指令判断模块,用于判断所述操作指令的类型;
如果所述操作指令的类型为存储密钥类,执行写入密钥模块;如果所述操作指令的类型为卡操作类,执行密钥判断模块;
第二响应模块,用于向所述上位机发送卡在场相应的响应后返回寻卡模块;
写入密钥模块,用于根据所述操作指令向本地写入所述非接触式卡的密钥后返回第二响应模块;
密钥判断模块,用于判断本地是否存储所述非接触式卡相应的密钥;
如果本地存储所述非接触式卡相应的密钥,执行认证模块;如果本地未存储所述非接触式卡相应的密钥,执行第一响应模块;
认证模块,用于通过所述密钥对所述非接触式卡进行认证,得到认证结果;
如果所述认证结果为认证通过,执行卡操作模块;如果所述认证结果为认证未通过,执行第一响应模块;
卡操作模块,用于根据所述操作指令对所述非接触式卡进行相应的操作,并将该操作的数据向上位机发送后执行第二响应模块。
本发明实施例提供的非接触式卡的认证方法和装置,根据预先设置的周期进行寻卡操作,并在接收到返回信息时,获取该非接触式卡的***信息;当接收到上位机向非接触式卡发送的操作指令时,根据该操作指令执行相应的操作,从而实现非接触式卡的认证。本发明实施例提供的技术方案,由于可以根据预先设置的周期进行寻卡并认证,因此能够对卡片是否在射频场进行实时检测,解决了现有技术中由于认证通过后,非接触式读卡器需要等待上位机发送的操作指令后进行相应的操作,无法对卡片是否在射频场进行实时检测的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的非接触式卡的认证方法的流程图;
图2为本发明实施例二提供的非接触式卡的认证方法的流程图一;
图3为本发明实施例二提供的非接触式卡的认证方法的流程图二;
图4为本发明实施例二提供的非接触式卡的认证方法的流程图三;
图5为本发明实施例三提供的非接触式卡的认证装置的结构示意图一;
图6为本发明实施例三提供的非接触式卡的认证装置的结构示意图二;
图7为本发明实施例三提供的非接触式卡的认证装置的结构示意图三;
图8为图5所示的非接触式卡的认证装置中***获取模块的结构示意图;
图9为图7所示的***获取模块中级别获取单元的结构示意图;
图10为图5所示的非接触式卡的认证装置中认证模块的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决现有技术不能对卡片是否在射频场进行实时检测的问题,本发明实施例提供了一种非接触式卡的认证方法和装置。
如图1所示,本发明实施例一提供的非接触式卡的认证方法,包括:
步骤101,根据预先设置的周期进行寻卡操作,判断是否接收到返回信息。
在本实施例中,非接触式读卡器通过步骤101进行寻卡操作,可以通过该非接触式读卡器向非接触式卡发送寻卡指令实现。上位机可以根据该预先设置的周期通过非接触式读卡器向非接触式卡发送寻卡指令,使非接触式读卡器能够根据预先设置的周期进行寻卡操作;非接触式读卡器也可以使用内部定时器根据预先设置的周期向非接触式卡发送寻卡指令,使该非接触式读卡器能够根据预先设置的周期进行寻卡操作;还可以对该非接触式读卡器进行其他操作,使该非接触式读卡器能够根据预先设置的周期进行寻卡操作。
在本实施例中,步骤101中是否接收到返回信息,可以作为非接触式读卡器是否寻卡成功的依据;如果接收到返回信息,该非接触式读卡器寻卡成功,可以执行步骤103对该非接触式卡进行后续操作;如果未接收到返回信息,该非接触式读卡器寻卡失败,可以执行步骤102发送寻卡失败相应的响应。
在本实施例中,具体的,步骤101中判断是否接收到返回信息可以为:判断在预先设置的返回时间内是否接收到返回信息。
步骤102,向上位机发送寻卡失败相应的响应,并删除本地存储的密钥。
在本实施例中,当通过步骤101根据预先设置的周期进行寻卡操作后,未接收到返回信息时,非接触式读卡器可以通过步骤102向上位机发送寻卡失败相应的响应,并删除本地存储的密钥。其中,步骤102中上位机可以为与非接触式读卡器相连的,控制该非接触式读卡器进行相应操作的机器。
在本实施例中,非接触式读卡器通过步骤102向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后,可以返回步骤101;等待下一个周期时非接触式读卡器通过步骤101进行寻卡操作,在此不再一一赘述。
步骤103,根据该返回信息获取该非接触式卡的***信息。
在本实施例中,当通过步骤101根据预先设置的周期进行寻卡操作后,接收到非接触式卡的返回信息时,非接触式读卡器可以通过步骤103根据该返回信息获取该非接触式卡的***信息。由于不同串联级别的非接触式卡的***不同,因此通过步骤103获取非接触式卡的***信息的过程可以包括:首先根据非接触式卡的返回信息获取该非接触式卡的串联级别;然后根据该非接触式卡的串联级别,获取该非接触式卡的***信息。步骤103还可以通过其他方式获取非接触式卡的***信息,在此不再一一赘述。
在本实施例中,每个串联级别都对应4字节的标识符。串联级别1对应UID1,UID1中4个字节为全部***;串联级别2对应UID1和UID2的串联,其中UID1中第一个字节无效,只取后3个字节,UID2取全部4字节,串联级别2共7字节***;串联级别3对应UID1、UID2和UID3的串联,其中UID1和UID2的第一个字节无效,只取个字后3个字节,UID3取全部4字节,串联级别3共10字节***。
在本实施例中,非接触式读卡器通过步骤103获取非接触式卡的***信息后,可以对该***信息进行存储等操作,在此不作限制。
步骤104,根据该非接触式卡的***信息,判断是否接收到上位机向非接触式卡发送的操作指令。
在本实施例中,具体的,步骤104中判断是否接收到上位机向非接触式卡发送的操作指令,可以为:判断在预先设置的操作时间内是否接收到上位机向非接触式卡发送的操作指令。
在本实施例中,如果接收到该操作指令,可以执行步骤105判断该操作指令的类型;如果未接收到该操作指令,可以执行步骤106发送卡在场相应的响应。
步骤105,检测该操作指令的类型。
在本实施例中,步骤105中操作指令的类型可以为存储密钥类,也可以为卡操作类,还可以为其他操作类型,在此不再一一赘述。
在本实施例中,非接触式读卡器通过步骤104接收到上位机发送的操作指令时,可以根据该操作指令的格式确定该操作指令的类型;也可以通过其他方式确定该操作指令的类型,在此不再一一赘述。
在本实施例中,如果操作指令的类型为存储密钥类,执行步骤107向本地写入密钥;如果操作指令的类型为卡操作类,执行步骤108判断本地是否存储非接触式卡相应的密钥。当非接触式读卡器接收到上位机发送的操作指令为其他操作时,非接触式读卡器对该非接触式卡进行相应处理,在此不再一一赘述。其中,卡操作可以为读块、写块、加、减、恢复、转移或终止等操作,在此不作限制。
步骤107,根据该操作指令向本地写入非接触式卡的密钥,顺序执行步骤106。
在本实施例中,存储密钥指令可以包括非接触式卡的密钥、非接触式卡的***和扇区,还可以包括其他信息,在此不作限制;其中,非接触式卡的密钥,可以为用户通过上位机输入得到的,也可以将非接触式读卡器外接一个输入设备,用户通过该输入设备输入得到的,还可以是在上位机中预先设置的,在此不作限制;当本地存储相应的密钥时,非接触式读卡器可以首先删除已存储的密钥,再向本地写入密钥;当本地未存储相应的密钥时,非接触式读卡器可以直接向本地写入密钥。该非接触式读卡器向本地写入密钥的过程,既可以是非加密的,非接触式读卡器直接接收包含密钥的存储密钥指令;为了增加通信安全性,该非接触式读卡器向本地写入密钥的过程,也可以是加密的,包括:非接触式读卡器接收存储密钥指令后,通过预先约定的通信密钥对该存储密钥指令进行解密,得到相应的密钥,该预先约定的通信密钥可以为对称密钥,也可以为非对称密钥。
在本实施例中,非接触式读卡器通过步骤107根据操作指令向本地写入非接触式卡的密钥后,可以直接返回步骤106;也可以首先判断该向本地写入密钥的操作是否成功,并根据判断结果执行相应的操作。
步骤108,判断本地是否存储该非接触式卡相应的密钥。
在本实施例中,非接触式卡的密钥可以与相应的***同时存储在非接触式读卡器中,非接触式卡的密钥也可以与相应的***和扇区同时存储在非接触式读卡器中,在此不再一一赘述。
在本实施例中,如果本地存储该非接触式卡相应的密钥,执行步骤109通过该密钥对非接触式卡进行认证;如果本地未存储该非接触式卡相应的密钥,执行步骤102向上位机发送寻卡失败相应的响应。
步骤109,通过密钥对非接触式卡进行认证,得到认证结果。
在本实施例中,可以通过对非接触式卡和非接触式读卡器的两组随机数进行交替加密和解密,并确认解密后的随机数与初始随机数是否一致的方式对非接触式卡进行认证;也可以通过其他方式对非接触式卡进行认证,在此不再一一赘述。
在本实施例中,如果该认证结果为认证通过,执行步骤110对非接触式卡进行相应的操作;如果该认证结果为认证未通过,执行步骤102向上位机发送寻卡失败相应的响应。
步骤110,根据操作指令对非接触式卡进行相应的操作,并将该操作的数据向上位机发送。
在本实施例中,卡操作类指令可以包括非接触式卡的***和块号,也可以包括要进行的操作指令,还可以包括其他信息,在此不再一一赘述。
在本实施例中,非接触式读卡器通过步骤110根据操作指令对非接触式卡进行相应的操作并将该操作的数据向上位机发送后,可以直接执行步骤106;也可以首先判断该相应的操作是否成功,并根据判断结果执行相应的操作。
步骤106,向上位机发送卡在场相应的响应。
在本实施例中,非接触式读卡器通过步骤106向上位机发送卡在场相应的响应后,可以返回步骤101;等待下一个周期时非接触式读卡器通过步骤101进行寻卡操作,在此不再一一赘述。
本发明实施例提供的非接触式卡的认证方法,根据预先设置的周期进行寻卡操作,并在接收到返回信息时,获取该非接触式卡的***信息;当接收到上位机向非接触式卡发送的操作指令时,根据该操作指令执行相应的操作,从而实现非接触式卡的认证。本发明实施例提供的技术方案,由于可以根据预先设置的周期进行寻卡并认证,因此能够对卡片是否在射频场进行实时检测,解决了现有技术中由于认证通过后,非接触式读卡器需要等待上位机发送的操作指令后进行相应的操作,无法对卡片是否在射频场进行实时检测的问题。
如图2所示,本发明实施例二提供的非接触式卡的认证方法,包括:
步骤201,根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;具体过程与图1所示的步骤101相似,在此不再一一赘述。
步骤202,向上位机发送寻卡失败相应的响应,并删除本地存储的密钥;具体过程与图1所示的步骤102相似,在此不再一一赘述。
步骤203,根据该返回信息获取非接触式卡的串联级别。
在本实施例中,当通过步骤201确定接收到至少一个非接触式卡的返回信息时,可以根据该返回信息获取非接触式卡的串联级别。其中,根据非接触式卡的返回信息获取该非接触式卡的串联级别的过程,可以包括:
一、根据该非接触式卡的返回信息向非接触式卡发送2字节数据包0x93和0x20。
二、获取非接触式卡根据该2字节数据包0x93和0x20返回的第一确认信息。
在本实施例中,分别获取非接触式卡根据该2字节数据包0x93和0x20返回的第一确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x93和0x20后,判断是否接收到该2字节数据包0x93和0x20相应的第一响应数据,该第一响应数据包括UID1和BCC1,UID1为4字节***段的一组固定的唯一数或由非接触式卡动态产生的随机数,BCC1为UID1的校验字节;当接收到第一响应数据时,可以向非接触式卡发送0x93、0x70、UID1、BCC1和CRC1组成的数据包,CRC1为校验检测码;非接触式读卡器判断是否接收到非接触式卡发送的数据包相应的第一确认信息,该第一确认信息由S1和CRC1组成,S1表示通信开始;当非接触式读卡器接收到非接触式卡发送的数据包相应的第一确认信息时,获取该第一确认信息;当未接收到第一响应数据或未接收到非接触式卡发送的数据包相应的第一确认信息时,可以发送2字节数据包0x95和0x20。
三、将第一确认信息与0x40进行与运算,得到第一数据。
四、判断第一数据是否为0x00。
在本实施例中,当第一数据为0x00时,该非接触式卡的串联级别为1;当第一数据不为0x00时,向该非接触式卡发送2字节数据包0x95和0x20。
五、第一数据为0x00时,该非接触式卡的串联级别为1。
六、第一数据不为0x00时,向该非接触式卡发送2字节数据包0x95和0x20后,分别获取非接触式卡根据该2字节数据包0x95和0x20返回的第二确认信息,并将该第二确认信息与0x40进行与运算,得到第四数据。
在本实施例中,分别获取非接触式卡根据该2字节数据包0x95和0x20返回的第二确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x95和0x20后,判断是否接收到该2字节数据包0x95和0x20相应的第二响应数据,该第二响应数据包括UID2和BCC2,UID2为4字节***段,BCC2为UID2的校验字节;当接收到第二响应数据时,可以向非接触式卡发送0x95、0x70、UID2、BCC2和CRC2组成的数据包,CRC2为校验检测码;非接触式读卡器判断是否接收到非接触式卡根据2字节数据包0x95和0x20返回的第二确认信息,该第二确认信息由S2和CRC2组成,S2表示通信开始;当非接触式读卡器接收到非接触式卡根据2字节数据包0x95和0x20返回的第二确认信息时,获取该第二确认信息;当未接收到第二响应数据或未接收到第二确认信息时,可以发送2字节数据包0x97和0x20。
七、判断第四数据是否为0x00.
在本实施例中,当确定第四数据为0x00时,该非接触式卡的串联级别为2;当确定第四数据不为0x00时,向该非接触式卡发送2字节数据包0x97和0x20。
八、第四数据0x00时,该非接触式卡的串联级别为2。
九、第四数据不为0x00时,向该非接触式卡发送2字节数据包0x97和0x20后,分别获取该非接触式卡根据该2字节数据包0x97和0x20返回的第三确认信息,并将该第三确认信息与0x40进行与运算,得到第七数据。
在本实施例中,分别获取非接触式卡根据该2字节数据包0x97和0x20返回的第三确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x97和0x20后,判断是否接收到该2字节数据包0x97和0x20相应的第三响应数据,该第三响应数据包括UID3和BCC3,UID3为4字节***段,BCC3为UID3的校验字节;当接收到第三响应数据时,可以向非接触式卡发送0x97、0x70、UID3、BCC3和CRC3组成的数据包,CRC3为校验检测码;非接触式读卡器判断是否接收到非接触式卡根据2字节数据包0x97和0x20返回的第三确认信息,该第三确认信息由S3和CRC3组成,S3表示通信开始;当非接触式读卡器接收到非接触式卡根据2字节数据包0x97和0x20返回的第三确认信息时,获取该第三确认信息;当未接收到第三响应数据或未接收到第三确认信息时,可以向非接触式卡发送寻卡失败的响应。
十、判断第七数据是否为0x00。
十一、该第七数据为0x00时,该非接触式卡的串联级别为3。
十二、该第七数据不为0x00时,返回执行步骤102。
在本实施例中,还可以通过其他方式根据至少一个非接触式卡的返回信息获取该至少一个非接触式卡的串联级别,在此不再一一赘述。
步骤204,根据非接触式卡的串联级别,获取该非接触式卡的***信息。
在本实施例中,每个串联级别都对应4字节的标识符。串联级别1对应UID1,UID1中4个字节为全部***;串联级别2对应UID1和UID2的串联,其中UID1中第一个字节无效,只取后3个字节,UID2取全部4字节,串联级别2共7字节***;串联级别3对应UID1、UID2和UID3的串联,其中UID1和UID2的第一个字节无效,只取个字后3个字节,UID3取全部4字节,串联级别3共10字节***。
在本实施例中,非接触式读卡器通过步骤204获取非接触式卡的***信息后,可以对该***信息进行存储等操作,在此不作限制。
步骤205,根据该非接触式卡的***信息,判断是否接收到上位机向非接触式卡发送的操作指令;具体过程与图1所示的步骤104相似,在此不再一一赘述。
步骤206,检测该操作指令的类型;具体过程与图1所示的步骤105相似,在此不再一一赘述。
步骤208,根据该操作指令向本地写入非接触式卡的密钥。具体过程与图1所示的步骤107相似,在此不再一一赘述。
步骤210,判断本地是否存储该非接触式卡相应的密钥;具体过程与图1所示的步骤108相似,在此不再一一赘述。
步骤211,通过密钥对非接触式卡进行认证,得到认证结果。
在本实施例中,通过步骤211对非接触式卡进行认证的过程,可以包括:
一、获取所述非接触式卡发送的第一随机数;
二、通过所述密钥对所述第一随机数进行加密运算,得到第一加密数;
三、将所述第一加密数和本地生成的第二随机数向所述非接触式卡发送,使所述非接触式卡通过存储的初始密钥对所述第一加密数进行解密得到第三随机数,并对所述第二随机数进行加密得到第二加密数后返回;
四、接收所述非接触式卡发送的所述第三随机数和所述第二加密数;
五、通过所述密钥对所述第二加密数进行解密,得到第四随机数;
六、判断所述第一随机数和所述第三随机数是否一致,并判断所述第二随机数和所述第四随机数是否一致。
步骤212,根据操作指令对非接触式卡进行相应的操作,并将该操作的数据向上位机发送,顺序执行步骤207;具体过程与图1所示的步骤110相似,在此不再一一赘述。
步骤207,向上位机发送卡在场相应的响应;具体过程与图1所示的步骤106相似,在此不再一一赘述。
进一步的,如图3所示,本实施例中非接触式卡的认证方法,还可以包括:
步骤209,判断向本地写入非接触式卡的密钥的操作是否成功。
在本实施例中,可以通过判断本地是否存储相应的密钥,判断该操作是否执行成功;也可以通过其他方式判断该操作是否成功,在此不再一一赘述。
在本实施例中,如果成功,返回步骤207;如果不成功,返回步骤202。
进一步的,如图4所示,本实施例中非接触式卡的认证方法,还可以包括:
步骤213,判断对该非接触式卡进行相应的操作是否成功。
在本实施例中,可以通过判断是否接收到相应的返回信息,判断该操作是否成功;也可以通过其他方式判断该操作是否成功,在此不再一一赘述。
在本实施例中,如果成功,执行步骤207;如果不成功,执行步骤202。
本发明实施例提供的非接触式卡的认证方法,根据预先设置的周期进行寻卡操作,并在接收到返回信息时,获取该非接触式卡的***信息;当接收到上位机向非接触式卡发送的操作指令时,根据该操作指令执行相应的操作,从而实现非接触式卡的认证。本发明实施例提供的技术方案,由于可以根据预先设置的周期进行寻卡并认证,因此能够对卡片是否在射频场进行实时检测,解决了现有技术中由于认证通过后,非接触式读卡器需要等待上位机发送的操作指令后进行相应的操作,无法对卡片是否在射频场进行实时检测的问题。
如图5所示,本发明实施例三提供的非接触式卡的认证装置,包括:
寻卡模块501,用于根据预先设置的周期进行寻卡操作,判断是否接收到返回信息。
在本实施例中,非接触式读卡器通过寻卡模块501进行寻卡操作,可以通过该非接触式读卡器向非接触式卡发送寻卡指令实现。上位机可以根据该预先设置的周期通过非接触式读卡器向非接触式卡发送寻卡指令,使非接触式读卡器能够根据预先设置的周期进行寻卡操作;非接触式读卡器也可以使用内部定时器根据预先设置的周期向非接触式卡发送寻卡指令,使该非接触式读卡器能够根据预先设置的周期进行寻卡操作;还可以对该非接触式读卡器进行其他操作,使该非接触式读卡器能够根据预先设置的周期进行寻卡操作。
在本实施例中,寻卡模块501中是否接收到返回信息,可以作为非接触式读卡器是否寻卡成功的依据;如果接收到返回信息,执行***获取模块503;如果未接收到返回信息,执行第一响应模块502。
在本实施例中,具体的,寻卡模块501用于判断在预先设置的返回时间内是否接收到返回信息。
第一响应模块502,用于向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后返回寻卡模块。
在本实施例中,当通过寻卡模块501根据预先设置的周期进行寻卡操作后,未接收到返回信息时,非接触式读卡器可以通过第一响应模块502向上位机发送寻卡失败相应的响应,并删除本地存储的密钥。其中,第一响应模块502中上位机可以为与非接触式读卡器相连的,控制该非接触式读卡器进行相应操作的机器。
在本实施例中,非接触式读卡器通过第一响应模块502向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后,可以返回寻卡模块501;等待下一个周期时非接触式读卡器通过寻卡模块501进行寻卡操作,在此不再一一赘述。
***获取模块503,用于根据所述返回信息获取所述非接触式卡的***信息。
在本实施例中,当通过寻卡模块501根据预先设置的周期进行寻卡操作后,接收到非接触式卡的返回信息时,非接触式读卡器可以通过***获取模块503根据该返回信息获取该非接触式卡的***信息。由于不同串联级别的非接触式卡的***不同,因此通过***获取模块503获取非接触式卡的***信息的过程可以包括:首先根据非接触式卡的返回信息获取该非接触式卡的串联级别;然后根据该非接触式卡的串联级别,获取该非接触式卡的***信息。***获取模块503还可以通过其他方式获取非接触式卡的***信息,在此不再一一赘述。
在本实施例中,每个串联级别都对应4字节的标识符。串联级别1对应UID1,UID1中4个字节为全部***;串联级别2对应UID1和UID2的串联,其中UID1中第一个字节无效,只取后3个字节,UID2取全部4字节,串联级别2共7字节***;串联级别3对应UID1、UID2和UID3的串联,其中UID1和UID2的第一个字节无效,只取个字后3个字节,UID3取全部4字节,串联级别3共10字节***。
在本实施例中,非接触式读卡器通过***获取模块503获取非接触式卡的***信息后,可以对该***信息进行存储等操作,在此不作限制。
指令接收模块504,用于根据所述非接触式卡的***信息,判断是否接收到所述上位机向所述非接触式卡发送的操作指令。
在本实施例中,具体的,指令接收模块504中判断是否接收到上位机向非接触式卡发送的操作指令,可以为:判断在预先设置的操作时间内是否接收到上位机向非接触式卡发送的操作指令。
在本实施例中,如果接收到该操作指令,可以执行指令判断模块505判断该操作指令的类型;如果未接收到该操作指令,可以执行第二响应模块506发送卡在场相应的响应。
指令判断模块505,用于检测所述操作指令的类型。
在本实施例中,指令判断模块505中操作指令的类型可以为存储密钥类,也可以为卡操作类,还可以为其他操作类型,在此不再一一赘述。
在本实施例中,非接触式读卡器通过指令接收模块504接收到上位机发送的操作指令时,可以根据该操作指令的格式确定该操作指令的类型;也可以通过其他方式确定该操作指令的类型,在此不再一一赘述。
在本实施例中,如果操作指令的类型为存储密钥类,执行写入密钥模块507向本地写入密钥;如果操作指令的类型为卡操作类,执行密钥判断模块判断508本地是否存储非接触式卡相应的密钥。当非接触式读卡器接收到上位机发送的操作指令为其他操作时,非接触式读卡器对该非接触式卡进行相应处理,在此不再一一赘述。其中,卡操作可以为读块、写块、加、减、恢复、转移或终止等操作,在此不作限制。
第二响应模块506,用于向所述上位机发送卡在场相应的响应后返回寻卡模块501。
在本实施例中,非接触式读卡器通过第二响应模块506向上位机发送卡在场相应的响应后,可以返回寻卡模块501;等待下一个周期时非接触式读卡器通过寻卡模块进行寻卡操作,在此不再一一赘述。
写入密钥模块507,用于根据所述操作指令向本地写入所述非接触式卡的密钥后返回第二响应模块506。
在本实施例中,存储密钥指令可以包括非接触式卡的密钥、非接触式卡的***和扇区,还可以包括其他信息,在此不作限制;其中,非接触式卡的密钥,可以为用户通过上位机输入得到的,也可以将非接触式读卡器外接一个输入设备,用户通过该输入设备输入得到的,还可以是在上位机中预先设置的,在此不作限制;当本地存储相应的密钥时,非接触式读卡器可以首先删除已存储的密钥,再向本地写入密钥;当本地未存储相应的密钥时,非接触式读卡器可以直接向本地写入密钥。该非接触式读卡器向本地写入密钥的过程,既可以是非加密的,非接触式读卡器直接接收包含密钥的存储密钥指令;为了增加通信安全性,该非接触式读卡器向本地写入密钥的过程,也可以是加密的,包括:非接触式读卡器接收存储密钥指令后,通过预先约定的通信密钥对该存储密钥指令进行解密,得到相应的密钥,该预先约定的通信密钥可以为对称密钥,也可以为非对称密钥。
在本实施例中,非接触式读卡器通过写入密钥模块507根据操作指令向本地写入非接触式卡的密钥后,可以直接返回第二响应模块506;也可以首先判断该向本地写入密钥的操作是否成功,并根据判断结果执行相应的操作。
密钥判断模块508,用于判断本地是否存储所述非接触式卡相应的密钥。
在本实施例中,非接触式卡的密钥可以与相应的***同时存储在非接触式读卡器中,非接触式卡的密钥也可以与相应的***和扇区同时存储在非接触式读卡器中,在此不再一一赘述。
在本实施例中,如果本地存储该非接触式卡相应的密钥,执行认证模块509通过该密钥对非接触式卡进行认证;如果本地未存储该非接触式卡相应的密钥,执行第一响应模块502向上位机发送寻卡失败相应的响应。
认证模块509,用于通过所述密钥对所述非接触式卡进行认证,得到认证结果。
在本实施例中,可以通过对非接触式卡和非接触式读卡器的两组随机数进行交替加密和解密,并确认解密后的随机数与初始随机数是否一致的方式对非接触式卡进行认证;也可以通过其他方式对非接触式卡进行认证,在此不再一一赘述。
在本实施例中,如果该认证结果为认证通过,执行卡操作模块510对非接触式卡进行相应的操作;如果该认证结果为认证未通过,执行第一响应模块502向上位机发送寻卡失败相应的响应。
卡操作模块510,用于根据所述操作指令对所述非接触式卡进行相应的操作,并将该操作的数据向上位机发送后执行第二响应模块506。
在本实施例中,卡操作类指令可以包括非接触式卡的***和块号,也可以包括要进行的操作指令,还可以包括其他信息,在此不再一一赘述。
在本实施例中,非接触式读卡器通过卡操作模块510根据操作指令对非接触式卡进行相应的操作并将该操作的数据向上位机发送后,可以直接返回第二响应模块506;也可以首先判断该相应的操作是否成功,并根据判断结果执行相应的操作。
进一步的,如图6所示,本实施例中非接触式卡的认证装置,还可以包括:
第一操作判断模块511,用于判断向本地写入所述非接触式卡的密钥的操作是否成功。
在本实施例中,可以通过判断本地是否存储相应的密钥,判断该操作是否执行成功;也可以通过其他方式判断该操作是否成功,在此不再一一赘述。
在本实施例中,如果成功511,返回第二响应模块506;如果未成功,返回第一响应模块502。
进一步的,如图7所示,本实施例中非接触式卡的认证装置,还可以包括:
第二操作判断模块512,用于判断所述对所述非接触式卡进行相应的操作是否成功。
在本实施例中,可以通过判断是否接收到相应的返回信息,判断该操作是否成功;也可以通过其他方式判断该操作是否成功,在此不再一一赘述。
在本实施例中,如果成功,返回第二响应模块506;如果未成功,返回第一响应模块502。
进一步的,如图8所示,本实施例中***获取模块503,可以包括:
级别获取单元5031,用于根据所述返回信息获取所述非接触式卡的串联级别。
***获取单元5032,用于根据所述非接触式卡的串联级别,获取所述非接触式卡的***信息。
其中,如图9所示,级别获取单元5031,还可以包括:
第一发送子单元50311,用于根据所述非接触式卡的返回信息向所述非接触式卡发送2字节数据包0x93和0x20。
第一获取子单元50312,用于获取所述非接触式卡根据所述2字节数据包0x93和0x20返回的第一确认信息。
在本实施例中,获取非接触式卡根据该2字节数据包0x93和0x20返回的第一确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x93和0x20后,判断是否接收到该2字节数据包0x93和0x20相应的第一响应数据,该第一响应数据包括UID1和BCC1,UID1为4字节***段的一组固定的唯一数或由非接触式卡动态产生的随机数,BCC1为UID1的校验字节;当接收到第一响应数据时,可以向非接触式卡发送0x93、0x70、UID1、BCC1和CRC1组成的数据包,CRC1为校验检测码;非接触式读卡器判断是否接收到非接触式卡发送的数据包相应的第一确认信息,该第一确认信息由S1和CRC1组成,S1表示通信开始;当非接触式读卡器接收到非接触式卡发送的数据包相应的第一确认信息时,获取该第一确认信息;当未接收到第一响应数据或未接收到非接触式卡发送的数据包相应的第一确认信息时,可以发送2字节数据包0x95和0x20。
第一运算子单元50313,用于将所述第一确认信息与0x40进行与运算,得到第一数据。
第一判断子单元50314,用于判断所述第一数据是否为0x00。
在本实施例中,当第一数据为0x00时,该非接触式卡的串联级别为1;当第一数据不为0x00时,向该非接触式卡发送2字节数据包0x95和0x20。
第一级别确认子单元50315,用于所述第一数据为0x00时,所述非接触式卡的串联级别为1。
第二运算子单元50316,用于所述第一数据不为0x00时,向所述非接触式卡发送2字节数据包0x95和0x20后,分别获取所述非接触式卡根据所述2字节数据包0x95和0x20返回的第二确认信息,并将所述第二确认信息与0x40进行与运算,得到第四数据。
在本实施例中,分别获取非接触式卡根据该2字节数据包0x95和0x20返回的第二确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x95和0x20后,判断是否接收到该2字节数据包0x95和0x20相应的第二响应数据,该第二响应数据包括UID2和BCC2,UID2为4字节***段,BCC2为UID2的校验字节;当接收到第二响应数据时,可以向非接触式卡发送0x95、0x70、UID2、BCC2和CRC2组成的数据包,CRC2为校验检测码;非接触式读卡器判断是否接收到非接触式卡根据2字节数据包0x95和0x20返回的第二确认信息,该第二确认信息由S2和CRC2组成,S2表示通信开始;当非接触式读卡器接收到非接触式卡根据2字节数据包0x95和0x20返回的第二确认信息时,获取该第二确认信息;当未接收到第二响应数据或未接收到第二确认信息时,可以发送2字节数据包0x97和0x20。
第二判断子单元50317,用于判断所述第四数据是否为0x00。
在本实施例中,当确定第四数据为0x00时,该非接触式卡的串联级别为2;当确定第四数据不为0x00时,向该非接触式卡发送2字节数据包0x97和0x20。
第二级别确认子单元50318,用于所述第四数据为0x00时,所述非接触式卡的串联级别为2。
第三运算子单元50319,用于所述第四数据不为0x00时,向所述非接触式卡发送2字节数据包0x97和0x20后,获取所述非接触式卡根据所述2字节数据包0x97和0x20返回的第三确认信息,并将所述第三确认信息与0x40进行与运算,得到第七数据。
在本实施例中,分别获取非接触式卡根据该2字节数据包0x97和0x20返回的第三确认信息的过程可以包括:非接触式读卡器向非接触式卡发送2字节数据包0x97和0x20后,判断是否接收到该2字节数据包0x97和0x20相应的第三响应数据,该第三响应数据包括UID3和BCC3,UID3为4字节***段,BCC3为UID3的校验字节;当接收到第三响应数据时,可以向非接触式卡发送0x97、0x70、UID3、BCC3和CRC3组成的数据包,CRC3为校验检测码;非接触式读卡器判断是否接收到非接触式卡根据2字节数据包0x97和0x20返回的第三确认信息,该第三确认信息由S3和CRC3组成,S3表示通信开始;当非接触式读卡器接收到非接触式卡根据2字节数据包0x97和0x20返回的第三确认信息时,获取该第三确认信息;当未接收到第三响应数据或未接收到第三确认信息时,可以向非接触式卡发送寻卡失败的响应。
第三判断子单元50320,用于分别判断所述第七数据是否为0x00;
第三级别确认子单元50321,用于所述第七数据为0x00时,所述非接触式卡的串联级别为3。
在本实施例中,还可以通过其他方式根据至少一个非接触式卡的返回信息获取该至少一个非接触式卡的串联级别,在此不再一一赘述。
进一步的,如图10所示,本实施例中认证模块509,包括:
获取单元5091,用于获取所述非接触式卡发送的第一随机数;
运算单元5092,用于通过所述密钥对所述第一随机数进行加密运算,得到第一加密数;
发送单元5093,用于将所述第一加密数和本地生成的第二随机数向所述非接触式卡发送,使所述非接触式卡通过存储的初始密钥对所述第一加密数进行解密得到第三随机数,并对所述第二随机数进行加密得到第二加密数后返回;
接收单元5094,用于接收所述非接触式卡发送的所述第三随机数和所述第二加密数;
解密单元5095,用于通过所述密钥对所述第二加密数进行解密,得到第四随机数;
判断单元5096,用于判断所述第一随机数和所述第三随机数是否一致,并判断所述第二随机数和所述第四随机数是否一致。
本发明实施例提供的非接触式卡的认证装置,根据预先设置的周期进行寻卡操作,并在接收到返回信息时,获取该非接触式卡的***信息;当接收到上位机向非接触式卡发送的操作指令时,根据该操作指令执行相应的操作,从而实现非接触式卡的认证。本发明实施例提供的技术方案,由于可以根据预先设置的周期进行寻卡并认证,因此能够对卡片是否在射频场进行实时检测,解决了现有技术中由于认证通过后,非接触式读卡器需要等待上位机发送的操作指令后进行相应的操作,无法对卡片是否在射频场进行实时检测的问题。
本发明实施例提供的非接触式卡的认证方法和装置,可以应用在非接触式读卡器中。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

Claims (12)

1.一种非接触式卡的认证方法,其特征在于,包括:
①、根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;
如果接收到返回信息,执行③;如果未接收到返回信息,执行②;
②、向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后返回①;
③、根据所述返回信息获取所述非接触式卡的***信息;
④、根据所述非接触式卡的***信息,判断是否接收到所述上位机向所述非接触式卡发送的操作指令;
如果接收到所述操作指令,执行⑤;如果未接收到所述操作指令,执行⑥;
⑤、检测所述操作指令的类型;
如果所述操作指令的类型为存储密钥类,执行⑦;如果所述操作指令的类型为卡操作类,执行⑧;
⑥、向所述上位机发送卡在场相应的响应后返回①;
⑦、根据所述操作指令向本地写入所述非接触式卡的密钥后返回⑥;
⑧、判断本地是否存储所述非接触式卡相应的密钥;
如果本地存储所述非接触式卡相应的密钥,执行⑨;如果本地未存储所述非接触式卡相应的密钥,执行②;
⑨、通过所述密钥对所述非接触式卡进行认证,得到认证结果;
如果所述认证结果为认证通过,执行⑩;如果所述认证结果为认证未通过,执行②;
⑩、根据所述操作指令对所述非接触式卡进行相应的操作,并将该操作的数据向上位机发送后执行⑥。
2.根据权利要求1所述的非接触式卡的认证方法,其特征在于,还包括:
判断向本地写入所述非接触式卡的密钥的操作是否成功;
如果成功,返回⑥;
如果未成功,返回②。
3.根据权利要求1所述的非接触式卡的认证方法,其特征在于,还包括:
判断所述对所述非接触式卡进行相应的操作是否成功;
如果成功,返回⑥;
如果未成功,返回②。
4.根据权利要求1所述的非接触式卡的认证方法,其特征在于,所述根据所述返回信息获取所述非接触式卡的***信息,包括:
根据所述返回信息获取所述非接触式卡的串联级别;
根据所述非接触式卡的串联级别,获取所述非接触式卡的***信息。
5.根据权利要求4所述的非接触式卡的认证方法,其特征在于,所述根据所述返回信息获取所述非接触式卡的串联级别,包括:
根据所述非接触式卡的返回信息向所述非接触式卡发送2字节数据包0x93和0x20;
获取所述非接触式卡根据所述2字节数据包0x93和0x20返回的第一确认信息;
将所述第一确认信息与0x40进行与运算,得到第一数据;
判断所述第一数据是否为0x00;
所述第一数据为0x00时,所述非接触式卡的串联级别为1;
所述第一数据不为0x00时,向所述非接触式卡发送2字节数据包0x95和0x20后,分别获取所述非接触式卡根据所述2字节数据包0x95和0x20返回的第二确认信息,并将所述第二确认信息与0x40进行与运算,得到第四数据;
判断所述第四数据是否为0x00;
所述第四数据为0x00时,所述非接触式卡的串联级别为2;
所述第四数据不为0x00时,向所述非接触式卡发送2字节数据包0x97和0x20后,获取所述非接触式卡根据所述2字节数据包0x97和0x20返回的第三确认信息,并将所述第三确认信息与0x40进行与运算,得到第七数据;
分别判断所述第七数据是否为0x00;
所述第七数据为0x00时,所述非接触式卡的串联级别为3;
所述第七数据不为0x00时,返回②。
6.根据权利要求1所述的非接触式卡的认证方法,其特征在于,所述通过所述密钥对所述非接触式卡进行认证,包括:
获取所述非接触式卡发送的第一随机数;
通过所述密钥对所述第一随机数进行加密运算,得到第一加密数;
将所述第一加密数和本地生成的第二随机数向所述非接触式卡发送,使所述非接触式卡通过存储的初始密钥对所述第一加密数进行解密得到第三随机数,并对所述第二随机数进行加密得到第二加密数后返回;
接收所述非接触式卡发送的所述第三随机数和所述第二加密数;
通过所述密钥对所述第二加密数进行解密,得到第四随机数;
判断所述第一随机数和所述第三随机数是否一致,并判断所述第二随机数和所述第四随机数是否一致。
7.一种非接触式卡的认证装置,其特征在于,包括:
寻卡模块,用于根据预先设置的周期进行寻卡操作,判断是否接收到返回信息;
如果接收到返回信息,执行***获取模块;如果未接收到返回信息,执行第一响应模块;
第一响应模块,用于向上位机发送寻卡失败相应的响应,并删除本地存储的密钥后返回寻卡模块;
***获取模块,用于根据所述返回信息获取所述非接触式卡的***信息;
指令接收模块,用于根据所述非接触式卡的***信息,判断是否接收到所述上位机向所述非接触式卡发送的操作指令;
如果接收到所述操作指令,执行指令判断模块;如果未接收到所述操作指令,执行第二响应模块;
指令判断模块,用于检测所述操作指令的类型;
如果所述操作指令的类型为存储密钥类,执行写入密钥模块;如果所述操作指令的类型为卡操作类,执行密钥判断模块;
第二响应模块,用于向所述上位机发送卡在场相应的响应后返回寻卡模块;
写入密钥模块,用于根据所述操作指令向本地写入所述非接触式卡的密钥后返回第二响应模块;
密钥判断模块,用于判断本地是否存储所述非接触式卡相应的密钥;
如果本地存储所述非接触式卡相应的密钥,执行认证模块;如果本地未存储所述非接触式卡相应的密钥,执行第一响应模块;
认证模块,用于通过所述密钥对所述非接触式卡进行认证,得到认证结果;
如果所述认证结果为认证通过,执行卡操作模块;如果所述认证结果为认证未通过,执行第一响应模块;
卡操作模块,用于根据所述操作指令对所述非接触式卡进行相应的操作,并将该操作的数据向上位机发送后执行第二响应模块。
8.根据权利要求7所述的非接触式卡的认证装置,其特征在于,还包括:
第一操作判断模块,用于判断向本地写入所述非接触式卡的密钥的操作是否成功;
如果成功,返回第二响应模块;如果未成功,返回第一响应模块。
9.根据权利要求7所述的非接触式卡的认证装置,其特征在于,还包括:
第二操作判断模块,用于判断所述对所述非接触式卡进行相应的操作是否成功;
如果成功,返回第二响应模块;如果未成功,返回第一响应模块。
10.根据权利要求7所述的非接触式卡的认证装置,其特征在于,所述***获取模块,包括:
级别获取单元,用于根据所述返回信息获取所述非接触式卡的串联级别;
***获取单元,用于根据所述非接触式卡的串联级别,获取所述非接触式卡的***信息。
11.根据权利要求10所述的非接触式卡的认证装置,其特征在于,所述级别获取单元,包括:
第一发送子单元,用于根据所述非接触式卡的返回信息向所述非接触式卡发送2字节数据包0x93和0x20;
第一获取子单元,用于获取所述非接触式卡根据所述2字节数据包0x93和0x20返回的第一确认信息;
第一运算子单元,用于将所述第一确认信息与0x40进行与运算,得到第一数据;
第一判断子单元,用于判断所述第一数据是否为0x00;
第一级别确认子单元,用于所述第一数据为0x00时,所述非接触式卡的串联级别为1;
第二运算子单元,用于所述第一数据不为0x00时,向所述非接触式卡发送2字节数据包0x95和0x20后,分别获取所述非接触式卡根据所述2字节数据包0x95和0x20返回的第二确认信息,并将所述第二确认信息与0x40进行与运算,得到第四数据;
第二判断子单元,用于判断所述第四数据是否为0x00;
第二级别确认子单元,用于所述第四数据为0x00时,所述非接触式卡的串联级别为2;
第三运算子单元,用于所述第四数据不为0x00时,向所述非接触式卡发送2字节数据包0x97和0x20后,获取所述非接触式卡根据所述2字节数据包0x97和0x20返回的第三确认信息,并将所述第三确认信息与0x40进行与运算,得到第七数据;
第三判断子单元,用于分别判断所述第七数据是否为0x00;
第三级别确认子单元,用于所述第七数据为0x00时,所述非接触式卡的串联级别为3。
12.根据权利要求7所述的非接触式卡的认证装置,其特征在于,所述认证模块,包括:
获取单元,用于获取所述非接触式卡发送的第一随机数;
运算单元,用于通过所述密钥对所述第一随机数进行加密运算,得到第一加密数;
发送单元,用于将所述第一加密数和本地生成的第二随机数向所述非接触式卡发送,使所述非接触式卡通过存储的初始密钥对所述第一加密数进行解密得到第三随机数,并对所述第二随机数进行加密得到第二加密数后返回;
接收单元,用于接收所述非接触式卡发送的所述第三随机数和所述第二加密数;
解密单元,用于通过所述密钥对所述第二加密数进行解密,得到第四随机数;
判断单元,用于判断所述第一随机数和所述第三随机数是否一致,并判断所述第二随机数和所述第四随机数是否一致。
CN201110280079.4A 2011-09-20 2011-09-20 非接触式卡的认证方法和装置 Expired - Fee Related CN102346862B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110280079.4A CN102346862B (zh) 2011-09-20 2011-09-20 非接触式卡的认证方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110280079.4A CN102346862B (zh) 2011-09-20 2011-09-20 非接触式卡的认证方法和装置

Publications (2)

Publication Number Publication Date
CN102346862A true CN102346862A (zh) 2012-02-08
CN102346862B CN102346862B (zh) 2014-02-05

Family

ID=45545519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110280079.4A Expired - Fee Related CN102346862B (zh) 2011-09-20 2011-09-20 非接触式卡的认证方法和装置

Country Status (1)

Country Link
CN (1) CN102346862B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722687A (zh) * 2012-05-30 2012-10-10 飞天诚信科技股份有限公司 一种检测非接触式cpu卡片离开射频场的方法
CN102880842A (zh) * 2012-08-16 2013-01-16 飞天诚信科技股份有限公司 一种增强非接触卡与读卡器通讯稳定性的方法
CN106295767A (zh) * 2016-07-31 2017-01-04 飞天诚信科技股份有限公司 一种智能卡及其工作方法
CN107465655A (zh) * 2016-06-03 2017-12-12 质子世界国际公司 通过非接触式读取的卡认证
CN108021832A (zh) * 2017-12-18 2018-05-11 宁波三星医疗电气股份有限公司 一种兼容多卡操作的电能表识卡方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493882A (zh) * 2009-03-13 2009-07-29 北京飞天诚信科技有限公司 实现接触式卡和非接触式读写器通讯的方法、***和设备
EP2239926A1 (en) * 2009-04-09 2010-10-13 Gemalto SA Method of detecting a NFC device emulating several contactless cards which may use a plurality of protocols
CN101866411A (zh) * 2009-04-16 2010-10-20 深圳市数智国兴信息科技有限公司 非接触式cpu卡一卡多应用安全认证加密方法及***

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101493882A (zh) * 2009-03-13 2009-07-29 北京飞天诚信科技有限公司 实现接触式卡和非接触式读写器通讯的方法、***和设备
EP2239926A1 (en) * 2009-04-09 2010-10-13 Gemalto SA Method of detecting a NFC device emulating several contactless cards which may use a plurality of protocols
CN101866411A (zh) * 2009-04-16 2010-10-20 深圳市数智国兴信息科技有限公司 非接触式cpu卡一卡多应用安全认证加密方法及***

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102722687A (zh) * 2012-05-30 2012-10-10 飞天诚信科技股份有限公司 一种检测非接触式cpu卡片离开射频场的方法
WO2013177926A1 (zh) * 2012-05-30 2013-12-05 飞天诚信科技股份有限公司 一种检测非接触式cpu卡片离开射频场的方法
CN102722687B (zh) * 2012-05-30 2014-07-30 飞天诚信科技股份有限公司 一种检测非接触式cpu卡片离开射频场的方法
CN102880842A (zh) * 2012-08-16 2013-01-16 飞天诚信科技股份有限公司 一种增强非接触卡与读卡器通讯稳定性的方法
CN102880842B (zh) * 2012-08-16 2015-09-23 飞天诚信科技股份有限公司 一种增强非接触卡与读卡器通讯稳定性的方法
CN107465655A (zh) * 2016-06-03 2017-12-12 质子世界国际公司 通过非接触式读取的卡认证
CN107465655B (zh) * 2016-06-03 2020-08-28 质子世界国际公司 认证方法和非接触式通信电路
CN106295767A (zh) * 2016-07-31 2017-01-04 飞天诚信科技股份有限公司 一种智能卡及其工作方法
CN106295767B (zh) * 2016-07-31 2019-03-15 飞天诚信科技股份有限公司 一种智能卡及其工作方法
CN108021832A (zh) * 2017-12-18 2018-05-11 宁波三星医疗电气股份有限公司 一种兼容多卡操作的电能表识卡方法

Also Published As

Publication number Publication date
CN102346862B (zh) 2014-02-05

Similar Documents

Publication Publication Date Title
US8947211B2 (en) Communication data protection method based on symmetric key encryption in RFID system, and apparatus for enabling the method
CN103201998B (zh) 用于保护移动装置中的本地资源的数据处理
CN101170554B (zh) 资讯安全传递***
CN101923660B (zh) 基于rfid的动态密码身份认证***及方法
CN105989386A (zh) 一种读写无线射频识别卡的方法和装置
CN101916342A (zh) 一种安全移动存储设备及利用其实现数据安全交换的方法
CN102346862B (zh) 非接触式卡的认证方法和装置
CN106027250A (zh) 一种身份证信息安全传输方法及***
CN101488111A (zh) 一种身份认证方法和***
Pang et al. Secure and efficient mutual authentication protocol for RFID conforming to the EPC C-1 G-2 standard
CN103530785A (zh) 一种基于nfc功能的双重防伪***与方法
CN102034041A (zh) 一种验证绑定数据卡和移动主机的方法、装置及***
CN113780495B (zh) 一种nfc标签数据的写入方法及终端
CN106296177A (zh) 基于银行移动应用的数据处理方法和设备
CN106027457A (zh) 一种身份证信息传输方法和***
CN101488179A (zh) 一种无线射频识别***认证方法和设备
CN111191252A (zh) 一种智能卡操作***加解密方法、装置及存储介质
CN201229570Y (zh) 一种移动硬盘数据保护装置
CN101296231A (zh) 一种数据卡操作的方法及数据卡
CN105389526A (zh) 加密区和非加密区一体化的移动硬盘及其数据存储方法
CN103218633A (zh) 一种rfid安全认证方法
CN107612915A (zh) 基于验证码变换的双保密形式的防密码破解的方法和装置
CN105635164B (zh) 安全认证的方法和装置
CN109766681A (zh) 用户身份验证方法、装置、指纹登录器及可读存储介质
CN102685121A (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
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20140205