CN108243402B - 一种读写智能卡的方法及装置 - Google Patents

一种读写智能卡的方法及装置 Download PDF

Info

Publication number
CN108243402B
CN108243402B CN201810051995.2A CN201810051995A CN108243402B CN 108243402 B CN108243402 B CN 108243402B CN 201810051995 A CN201810051995 A CN 201810051995A CN 108243402 B CN108243402 B CN 108243402B
Authority
CN
China
Prior art keywords
smart card
data
digital signature
pki
returned
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.)
Active
Application number
CN201810051995.2A
Other languages
English (en)
Other versions
CN108243402A (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.)
Guangdong Oppo Mobile Telecommunications Corp Ltd
Original Assignee
Guangdong Oppo Mobile Telecommunications Corp 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 Guangdong Oppo Mobile Telecommunications Corp Ltd filed Critical Guangdong Oppo Mobile Telecommunications Corp Ltd
Priority to CN201810051995.2A priority Critical patent/CN108243402B/zh
Publication of CN108243402A publication Critical patent/CN108243402A/zh
Application granted granted Critical
Publication of CN108243402B publication Critical patent/CN108243402B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B5/00Near-field transmission systems, e.g. inductive or capacitive transmission systems
    • H04B5/70Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes
    • H04B5/77Near-field transmission systems, e.g. inductive or capacitive transmission systems specially adapted for specific purposes for interrogation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • H04L63/0442Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3247Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
    • H04L9/3249Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures using RSA or related signature schemes, e.g. Rabin scheme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Telephone Function (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明实施例公开了一种读写智能卡的方法,包括:通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据。本发明实施例还相应地公开了一种读写智能卡的装置。本发明中的读写智能卡的方法及装置可以提高智能卡读写时的安全性,提升用户体验。

Description

一种读写智能卡的方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种读写智能卡的方法及装置。
背景技术
智能卡也叫CPU卡,卡内的集成电路中带有微处理器CPU、存储单元以及芯片操作***COS。装有COS的CPU卡相当于一台微型计算机,不仅具有数据存储功能,同时具有命令处理和数据安全保护等功能。
NFC(Near Field Communication)即近距离无线通讯技术。是由免接触式射频识别(RFID)演变而来,并向下兼容RFID,即NFC本身也是一种非接触式识别和互联技术,可以在移动设备、消费类电子产品、PC和智能控件工具间进行近距离无线通信。NFC提供了一种简单、触控式的解决方案,可以让消费者简单直观地交换信息、访问内容与服务。
现有的NFC技术可用于移动终端对智能卡的读写,但对于通过NFC对智能卡的读写方式上,并没有采用较好的加密手段,因此导致在使用NFC技术对智能卡进行读写时,例如支付的场景中,安全性较低。
发明内容
基于此,为解决上述提到的传统技术中的在使用NFC技术对智能卡进行读写时存在的安全性较低的技术问题,特提供了一种读写智能卡的方法。
一种读写智能卡的方法,包括:
通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;
通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;
在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据。
可选的,在所述返回的PKI应用标识与预设值不匹配时,返回错误提示信息。
可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
此外,为解决上述提到的传统技术中的在使用NFC技术对智能卡进行读写时存在的安全性较低的技术问题,特提供了一种读写智能卡的装置。
一种读写智能卡的装置,包括:
NFC连接建立模块,用于通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;
PKI应用标识获取模块,用于通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;
数字签名发送模块,用于在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;
数字签名接收模块,用于接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据。
可选的,所述装置还包括错误提示信息返回模块,用于在所述返回的PKI应用标识与预设值不匹配时,返回错误提示信息。
可选的,所述装置还包括数字签名验证模块,用于:
通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
可选的,所述装置还包括非对称加解密模块,用于:
通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
可选的,所述装置还包括对称加解密模块,用于:
通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
实施本发明实施例,将具有如下有益效果:
采用了上述读写智能卡的方法及装置之后,在带有NFC芯片的移动终端对智能卡进行读写的过程中,可以通过移动终端与智能卡之间的NFC连接实现基于PKI机制的数据交互,也就是说,在用户使用移动终端对智能卡进行读写的时候,还要经过加密处理,提高了移动终端对智能卡的读写的过程中的安全性,提升了用户体验。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
其中:
图1为一个实施例中一种读写智能卡的方法的流程示意图;
图2为一个实施例中一种读写智能卡的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为解决上述提到的传统技术中的在使用NFC技术对智能卡进行读写时存在的安全性较低的技术问题,在本实施例中,特提供了一种读写智能卡的方法。上述读写智能卡的方法依赖于计算机程序实现,可运行于基于冯诺依曼体系的计算机***上。该计算机程序可以是适配智能卡的应用程序。该计算机***可以是基于冯诺依曼体系的并带有近场通信功能的计算机设备,例如智能手机、平板电脑、智能手表、智能手环或带有NFC感应器的个人计算机等设备。
具体的,该读写智能卡的方法如图1所示,包括如下步骤:
步骤S102:通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接。
如前所述,智能卡(CPU卡)为标准的具有智能卡芯片的集成电路设备,终端中设置有智能卡读写芯片,终端中包含有智能卡读写芯片的驱动程序。当智能卡接触或靠近终端时,智能卡读写芯片驱动程序即可感应到智能卡,也就是说,终端可以通过近场通信NFC芯片感应智能卡。
在本实施例中,智能卡中可安装有近场通信(英文:Near Field Communication,简称:NFC)芯片,终端中的智能卡读写芯片可以是近场通信芯片,终端可通过感应近场通信信号,根据近场通信信号感应到相关的智能卡,并与感应到的智能卡建立NFC连接。
智能卡在贴近终端并通过NFC信号与终端建立连接之后,就可以与终端之间进行数据交互,则可将智能卡中存储的与该智能卡对应的相关数据通过NFC信号发送给终端,由终端通过NFC芯片接收。
例如,用户将公交卡贴合在基于本实施例的手机终端上时,手机终端则可通过NFC检测到公交卡的接触事件,并可通过手机终端中的NFC芯片建立与该智能卡的连接关系。
步骤S104:通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识。
在步骤S102中,终端通过安装在终端和智能卡中的NFC芯片建立了与智能卡之间的NFC连接,也就是所,终端与智能卡之间能通过该NFC连接进行通信和/或数据交互,即智能卡能接收到终端发送的数据,终端也能接收智能卡返回的数据。
PKI(Public Key Infrastructure)即“公钥基础设施”,是一种遵循既定标准的密钥管理平台,它能够为所有网络应用提供加密和数字签名等密码服务及所必需的密钥和证书管理体系,简单来说,PKI就是利用公钥理论和技术建立的提供安全服务的基础设施。PKI技术是信息安全技术的核心,也是电子商务的关键和基础技术。
公钥基础设施PKI选择请求是终端在与智能卡建立NFC连接之后,根据该NFC连接生成的。该请求是为了获知该已连接的智能卡的具体类型,例如,公交卡、食堂饭卡或购物卡。智能卡在接收到该请求之后,根据请求的相关内容,将其本身对应的PKI应用标识返回给终端。
在本实施例中,在终端向智能卡发送公钥基础设施PKI选择请求之后,智能卡将智能卡中存储的与该智能卡对应的用于表示该智能卡对应的应用类型的PKI应用标识通过NFC信号发送给终端,由终端通过NFC芯片接收。该应用标识为已预先存储在智能卡的存储器中,智能卡通过读取其自身的存储器读取该应用标识。
步骤S106:在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据。
终端在接收到智能卡返回的PKI应用标识之后,判断该PKI应用标识是否与预设值匹配。需要说明的是,在本实施例中,预设值可以只有一个,也就是说,在该终端上,只支持某一种应用类型的智能卡,而不支持其他种类的智能卡;另外,预设值还可以包含多个,终端在预设值列表中查找与上述PKI应用标识匹配的预设值,若查找到,则判定所述返回的PKI应用标识与预设值匹配;在此种情况下,终端同时支持多种类型的智能卡,即用户既可以在终端上使用A类智能卡,也可以在终端上使用B类智能卡。
在本实施例中,不同的PKI应用标识对应于不同的PKI应用,在接收到的PKI应用标识与预设值匹配时,则可以在终端中查找与该PKI应用标识对应的PKI应用,并选择该PKI应用。也就是说,终端通过上述操作成功选择了终端中的一个PKI应用,并且该PKI应用是与该智能卡对应的PKI应用。
需要说明的是,若所述返回的PKI应用标识与预设值不匹配,即说明在该终端中不存在与该智能卡对应的PKI应用,不能利用该终端实现与终端之间的PKI数据交互,则返回相应的错误提示信息,该错误提示信息用于告知用户智能卡读写失败。
在选择了PKI应用之后,终端就可以通过该PKI应用与智能卡进行数据交互,并且可以进行数据交换以实现数据的安全交互。例如,在用户需要进行支付、刷卡或端到端传输等业务时,利用上述PKI应用进行数字签名验证、验证数字签名、对数据进行加密或解密,可以使得上述业务的办理的安全性能提高。
具体的,通过PKI应用的数字签名接口函数向智能卡发送需要签名数据以供智能卡进行数字签名,即向智能卡发送数字签名指令,在该数字签名指令中包含了待签名的数据。
步骤S108:接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据。
智能卡在接收到步骤S106中终端发送的包含了待签名数据的数字签名指令之后,获取其中的数据并进行数字签名,然后将已签名数据返回给终端,终端在接收到之后保存该签名数据。
需要说明的是,在本实施例中,智能卡在对待签名数据进行数字签名的时候是使用的公钥进行加密的,并且在已签名数据返回给终端的时候,一并将智能卡自身的公钥证书也返回给终端,以供终端根据该公钥证书在后续的过程中进行解密或验证。终端在接收到智能卡回传的数据之后,通过公钥证书获取智能卡的公钥,通过该公钥对智能卡返回的已签名数据中的数字签名进行验证签名,验证通过则保存该数字签名,否则输出错误。
进一步地,在本实施例中,数字签名指令中包含了CLA(指令类别)、INS(指令码)、私钥、数据发送状态、需要数字签名数据、Le(希望响应时回答的数据字节数)。在智能卡返回的数据格式中包含了数字签名状态、签名后数据、CLA状态字、INS状态字、数字签名命令中数据正确与否状态字、LC状态字、数据超长状态字、KEY初始化状态字。
例如,在上述的数字签名的过程中,终端发送APDU(ApplicationProtocolDataUnit,应用协议数据单元)数字签名指令给智能卡,具体的格式如表1所示。
表1
CLA INS P1 P2 Lc 需要数字签名数据 Le
0x80 0x0C XX XX Lc Data to be signed
具体的,P1为私钥,且P1=0x03(私钥一)、P1=0x04(私钥二);
P2为数据发送状态,且P2=0x00(Data已发完)、P2=0x01(Data未发完,会接着发下一条);
Le为希望响应时回答的数据字节数。
而智能卡收到数字签名指令之后,对数据进行签名,然后回复手机已签名的数据(即APDU数字签名响应指令)如表2所示。
表2
Figure BDA0001552626370000071
Figure BDA0001552626370000081
在另一实施例中,终端与智能卡之间可以通过NFC连接的数据交互实现验证数字签名的过程,具体的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
终端在需要使用智能卡对数字签名进行验证时,获取该待验证的签名数据,并根据该待验证的签名数据生成验证数字签名指令,在该验证数字签名指令中包含了上述待验证签名数据。然后通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,智能卡在接收到上述验证数字签名指令之后,获取其中的数据,并对待验证签名数据进行验证,然后通过终端与智能卡之间的NFC连接将验证的结果返回给终端,从而使得终端可以通过NFC连接接收到该验证结果。
可选的,在本实施例中,验证数字签名指令中包含了CLA(指令类别)、INS(指令码)、私钥、数据发送状态、Lc、需要验证数字签名数据、Le(希望响应时回答的数据字节数)。智能卡返回给终端的验证结果的格式包含了验证结果、CLA状态字、INS状态字、验证数字签名命令中数据正确与否状态字、LC状态字、数据规范状态字、KEY初始化状态字、数据超长状态字。
例如,在上述的数字签名验证的过程中,终端发送APDU数字签名指令给智能卡,具体的格式如表3所示。
表3
Figure BDA0001552626370000082
其中,P1为公钥,且P1=0x01(公钥一)、P1=0x02(公钥二);
P2为数据发送状态,且P2=0x00(Data已发完)、P2=0x01(Data未发完,会接着发下一条);
Le为希望响应时回答的数据字节数;
在需要验证数字签名数据中包括签名数据数据格式REF-VER-Sig(具体参见表4)和原数据数据格式REF-VER-Data(具体参见表5).
表4
Tag Length Value Meaning Presence
E1 0xXXXX 签名
表5
Tag Length Value Meaning Presence
E2 0xXXXX 原数据
智能卡验证数字签名指令之后,对待验证签名数据进行验证,然后返回给终端如表6所示的APDU数据签名验证响应指令(即验证结果)。
表6
Figure BDA0001552626370000091
Figure BDA0001552626370000101
在另一实施例中,可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
终端在需要使用非对称算法对数据进行加密或者解密时,获取待加密或者解密数据,并根据该待加密或者解密数据生成非对称算法加/解密指令,在该非对称算法加/解密指令中包含了上述待加密或者解密数据。然后通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,智能卡在接收到上述非对称算法加/解密指令之后,获取其中的数据,并根据接收到的非对称算法加/解密指令对获取到的待加密或者解密数据进行加密或者解密,然后通过终端与智能卡之间的NFC连接将已经过非对称算法加/解密的数据返回给终端,从而使得终端可以通过NFC连接接收到该已经过非对称算法加/解密的数据。
可选的,在本实施例中,非对称算法加/解密指令中包含了CLA(指令类别)、INS(指令码)、公私钥、LC数据发送状态、Lc、需要加密/解密数据、Le(希望响应时回答的数据字节数)。智能卡返回给终端的加密或者解密结果中包含了加密/解密结果、密文/明文数据、CLA状态字、INS状态字、非对称算法加密/解密命令中数据正确与否状态字、LC状态字、KEY初始化状态字、数据超长状态字。
例如,在上述的加密或者解密的过程中,终端发送APDU非对称算法加/解密指令给智能卡,具体的格式如表7所示。
表7
CLA INS P1 P2 Lc 需要加/解密数据 Le
0x80 0x50 0xXX 0xXX Lc Data to be encrypted
其中,P1为公钥或私钥,且P1=0x01(公钥一)、P1=0x02(公钥二),P1=0x03(私钥一)、P1=0x04(私钥二);
P2为数据发送状态,且P2=0x00(Data已发完)、P2=0x01(Data未发完,会接着发下一条);
Le为希望响应时回答的数据字节数。
智能卡接收到非对称算法加/解密指令之后,获取指令中的数据并进行加密或者解密,然后将加密或者解密后的数据返回给终端,具体如表8所示。
表8
Figure BDA0001552626370000111
在另一实施例中,可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
具体的,终端在需要使用对称算法对数据进行加密或者解密时,获取待加密或者解密数据,并根据该待加密或者解密数据生成对称算法加/解密指令,在该对称算法加/解密指令中包含了上述待加密或者解密数据。然后通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,智能卡在接收到上述对称算法加/解密指令之后,获取其中的数据,并根据接收到的对称算法加/解密指令对获取到的待加密或者解密数据进行加密或者解密,然后通过终端与智能卡之间的NFC连接将已经过对称算法加/解密的数据返回给终端,从而使得终端可以通过NFC连接接收到该已经过对称算法加/解密的数据。
可选的,在本实施例中,对称算法加/解密指令中包含了CLA(指令类别)、INS(指令码)、密钥、数据发送状态、Lc、需要加密/解密数据、Le(希望响应时回答的数据字节数)。智能卡返回给终端的加密或者解密结果中包含了加密/解密结果、密文/明文数据、CLA状态字、INS状态字、对称算法加密/解密命令中数据正确与否状态字、LC状态字、KEY初始化状态字、数据超长状态字。
例如,在上述的加/解密的过程中,终端发送APDU非对称算法加/解密指令给智能卡,具体的格式如表9所示。
表9
CLA INS P1 P2 Lc 需要加/解密数据 Le
0x80 0x51 0xXX 0xXX Lc Data to be encrypted
其中,P1为密钥,且P1=0x01(密钥一)、P1=0x02(密钥二),P1=0x03(密钥三);
P2为数据发送状态,且P2=0x00(Data已发完)、P2=0x01(Data未发完,会接着发下一条);
Le为希望响应时回答的数据字节数。
智能卡接收到对称算法加/解密指令之后,获取指令中的数据并进行加密或者解密,然后将加密或者解密后的数据返回给终端,具体如表10所示。
表10
Figure BDA0001552626370000121
Figure BDA0001552626370000131
此外,为解决上述提到的传统技术中的在使用NFC技术对智能卡进行读写时存在的安全性较低的技术问题,在本实施例中,还提供了一种读写智能卡的装置。
具体的,如图2所示,该读写智能卡的装置包括NFC连接建立模块102、PKI应用标识获取模块104、数字签名发送模块106以及数字签名接收模块108,其中:
NFC连接建立模块102,用于通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;
PKI应用标识获取模块104,用于通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;
数字签名发送模块106,用于在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;
数字签名接收模块108,用于接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据。
可选的,如图2所示,在本实施例中,所述装置还包括错误提示信息返回模块110,用于在所述返回的PKI应用标识与预设值不匹配时,返回错误提示信息。
可选的,如图2所示,在本实施例中,所述装置还包括数字签名验证模块112,用于:通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
可选的,如图2所示,在本实施例中,所述装置还包括非对称加解密模块114,用于:通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
可选的,如图2所示,在本实施例中,所述装置还包括对称加解密模块116,用于:通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
实施本发明实施例,将具有如下有益效果:
采用了上述读写智能卡的方法及装置之后,在带有NFC芯片的移动终端对智能卡进行读写的过程中,可以通过移动终端与智能卡之间的NFC连接实现基于PKI机制的数据交互,也就是说,在用户使用移动终端对智能卡进行读写的时候,还要经过加密处理,提高了移动终端对智能卡的读写的过程中的安全性,提升了用户体验。
以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

Claims (10)

1.一种读写智能卡的方法,其特征在于,包括:
通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;
通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;
在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据;其中,在接收所述已签名数据的同时还接收到所述智能卡自身的公钥证书,以获取所述智能卡的公钥,通过所述公钥对所述已签名数据的数字签名进行验证签名,验证通过则保存所述数字签名,否则输出错误。
2.根据权利要求1所述的读写智能卡的方法,其特征在于,在所述返回的PKI应用标识与预设值不匹配时,返回错误提示信息。
3.根据权利要求1或2所述的读写智能卡的方法,其特征在于,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
4.根据权利要求1或2所述的读写智能卡的方法,其特征在于,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
5.根据权利要求1或2所述的读写智能卡的方法,其特征在于,所述获取所述PKI应用标识对应的PKI应用的步骤之后还包括:
通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
6.一种读写智能卡的装置,其特征在于,包括:
NFC连接建立模块,用于通过近场通信NFC芯片感应智能卡,与感应到的智能卡建立NFC连接;
PKI应用标识获取模块,用于通过所述NFC连接向所述智能卡发送公钥基础设施PKI选择请求,获取所述智能卡返回的PKI应用标识;
数字签名发送模块,用于在所述返回的PKI应用标识与预设值匹配时,获取所述PKI应用标识对应的PKI应用,通过所述PKI应用的数字签名接口函数向所述智能卡发送数字签名指令,所述数字签名指令包含待签名数据;
数字签名接收模块,用于接收所述智能卡通过所述NFC连接返回的与所述待签名数据对应的已签名数据;其中,在接收所述已签名数据的同时还接收到所述智能卡自身的公钥证书,以获取所述智能卡的公钥,通过所述公钥对所述已签名数据的数字签名进行验证签名,验证通过则保存所述数字签名,否则输出错误。
7.根据权利要求6所述的读写智能卡的装置,其特征在于,所述装置还包括错误提示信息返回模块,用于在所述返回的PKI应用标识与预设值不匹配时,返回错误提示信息。
8.根据权利要求6或7所述的读写智能卡的装置,其特征在于,所述装置还包括数字签名验证模块,用于:
通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字签名指令,所述验证数字签名指令包含待验证签名数据;
接收所述智能卡通过所述NFC连接返回的与所述待验证签名数据对应的验证结果。
9.根据权利要求6或7所述的读写智能卡的装置,其特征在于,所述装置还包括非对称加解密模块,用于:
通过所述PKI应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
10.根据权利要求6或7所述的读写智能卡的装置,其特征在于,所述装置还包括对称加解密模块,用于:
通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指令,所述数字签名指令包含待加/解密数据;
接收所述智能卡通过所述NFC连接返回的与所述待加/解密数据对应的已经过对称算法加/解密的数据。
CN201810051995.2A 2015-12-09 2015-12-09 一种读写智能卡的方法及装置 Active CN108243402B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810051995.2A CN108243402B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201510909083.0A CN105490708B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置
CN201810051995.2A CN108243402B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201510909083.0A Division CN105490708B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置

Publications (2)

Publication Number Publication Date
CN108243402A CN108243402A (zh) 2018-07-03
CN108243402B true CN108243402B (zh) 2021-06-01

Family

ID=55677474

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201510909083.0A Active CN105490708B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置
CN201810051995.2A Active CN108243402B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201510909083.0A Active CN105490708B (zh) 2015-12-09 2015-12-09 一种读写智能卡的方法及装置

Country Status (1)

Country Link
CN (2) CN105490708B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105490708B (zh) * 2015-12-09 2018-01-23 广东欧珀移动通信有限公司 一种读写智能卡的方法及装置
CN105872955B (zh) * 2016-04-29 2019-01-18 昆山维信诺科技有限公司 整合近场通信的触控集成电路及其近场通信方法
CN109257071B (zh) * 2017-07-12 2021-10-22 深圳如一探索科技有限公司 设备控制方法、装置及设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101916388A (zh) * 2010-07-27 2010-12-15 武汉天喻信息产业股份有限公司 智能sd卡及利用该智能sd进行移动支付的方法
CN103138925A (zh) * 2011-11-25 2013-06-05 ***通信集团公司 发卡操作方法、ic卡片和发卡设备
CN203243339U (zh) * 2013-05-06 2013-10-16 天地融科技股份有限公司 一种数据传输***
CN103489028A (zh) * 2013-09-23 2014-01-01 深圳前海君浩银通科技发展有限公司 一种金融ic卡、多协议通讯***和方法
CN104021473A (zh) * 2014-05-30 2014-09-03 刘劲彤 一种可视金融卡的安全支付方法
CN104184892A (zh) * 2014-08-12 2014-12-03 桂林微网半导体有限责任公司 基于移动终端智能卡的数据传输方法及移动终端
CN104820807A (zh) * 2015-04-15 2015-08-05 四川量迅科技有限公司 一种智能卡数据处理方法
CN105490708B (zh) * 2015-12-09 2018-01-23 广东欧珀移动通信有限公司 一种读写智能卡的方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2893797A1 (fr) * 2005-11-23 2007-05-25 Proton World Internatinal Nv Personnalisation d'une carte bancaire pour d'autres applications
CN101808092B (zh) * 2010-03-12 2013-03-20 中国电信股份有限公司 多证书共享方法、***和智能卡
EP2509275A1 (en) * 2011-04-04 2012-10-10 Buntinx Method and system for authenticating entities by means of mobile terminals
CN103164738B (zh) * 2013-02-06 2015-09-30 厦门盛华电子科技有限公司 一种基于移动支付多通道数字认证的手机用户识别卡
CN103746802B (zh) * 2014-01-27 2017-07-25 天地融科技股份有限公司 一种基于协商密钥的数据处理方法和手机
CN105024824B (zh) * 2014-11-05 2018-12-21 浙江码博士防伪科技有限公司 基于非对称加密算法的可信标签的生成与验证方法及***

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101916388A (zh) * 2010-07-27 2010-12-15 武汉天喻信息产业股份有限公司 智能sd卡及利用该智能sd进行移动支付的方法
CN103138925A (zh) * 2011-11-25 2013-06-05 ***通信集团公司 发卡操作方法、ic卡片和发卡设备
CN203243339U (zh) * 2013-05-06 2013-10-16 天地融科技股份有限公司 一种数据传输***
CN103489028A (zh) * 2013-09-23 2014-01-01 深圳前海君浩银通科技发展有限公司 一种金融ic卡、多协议通讯***和方法
CN104021473A (zh) * 2014-05-30 2014-09-03 刘劲彤 一种可视金融卡的安全支付方法
CN104184892A (zh) * 2014-08-12 2014-12-03 桂林微网半导体有限责任公司 基于移动终端智能卡的数据传输方法及移动终端
CN104820807A (zh) * 2015-04-15 2015-08-05 四川量迅科技有限公司 一种智能卡数据处理方法
CN105490708B (zh) * 2015-12-09 2018-01-23 广东欧珀移动通信有限公司 一种读写智能卡的方法及装置

Also Published As

Publication number Publication date
CN108243402A (zh) 2018-07-03
CN105490708B (zh) 2018-01-23
CN105490708A (zh) 2016-04-13

Similar Documents

Publication Publication Date Title
US9740847B2 (en) Method and system for authenticating a user by means of an application
CN107077670B (zh) 传输和处理交易消息的方法和装置、计算机可读存储介质
ES2970201T3 (es) Sistema de identificación personal con tarjeta sin contacto
JP2019083536A (ja) モバイルアプリケーションの安全性を確保する方法および装置
US20110185181A1 (en) Network authentication method and device for implementing the same
US20160012272A1 (en) Fingerprint authentication system and a fingerprint authentication method based on nfc
CN107181714A (zh) 基于业务码的验证方法和装置、业务码的生成方法和装置
EP3017411A1 (en) Payment card including user interface for use with payment card acceptance terminal
BRPI0816328A2 (pt) dispositivos móveis de atualização com elementos adicionais
CN101778383A (zh) 用于信息处理的设备、方法、程序和***
CN102790676B (zh) 一种带有nfc功能手机远程身份认定或防伪的方法
CN110598433B (zh) 基于区块链的防伪信息处理方法、装置
CN107924516B (zh) 一种移动终端的支付认证方法、装置及移动终端
CN104754568A (zh) 基于nfc的身份识别方法及装置
CN108243402B (zh) 一种读写智能卡的方法及装置
CN116097692A (zh) 经由基于nfc的认证的增强现实信息显示与交互
CN102034307A (zh) 一种基于电子钱包的动态密码认证***及方法
CN107872321B (zh) 电子身份认证的方法和电子身份终端设备
CN107437997B (zh) 一种射频通信装置及方法
CN110533128B (zh) 一种基于加密的防伪溯源数据处理方法、装置、***及介质
JP2021175184A (ja) 複数の回転セキュリティ鍵を備えた非接触カード
US11301840B1 (en) Systems and methods for provisioning point of sale terminals
KR101666591B1 (ko) 스마트 오티피 인증 시스템 및 방법
CN105405010B (zh) 交易装置、使用其的交易***与交易方法
KR101426223B1 (ko) 스마트카드와 스마트 단말을 이용한 보안정보 조회 방법 및 이를 위한 컴퓨터로 판독가능한 기록매체

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: Changan town in Guangdong province Dongguan 523860 usha Beach Road No. 18

Applicant after: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

Address before: 523860 No. 18 Wusha Haibin Road, Chang'an Town, Dongguan City, Guangdong Province

Applicant before: GUANGDONG OPPO MOBILE TELECOMMUNICATIONS Corp.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant