一种读写智能卡的方法及装置的制造方法_3

文档序号:9729856阅读:来源:国知局
与所述待验证签 名数据对应的验证结果。
[0077] 终端在需要使用智能卡对数字签名进行验证时,获取该待验证的签名数据,并根 据该待验证的签名数据生成验证数字签名指令,在该验证数字签名指令中包含了上述待验 证签名数据。然后通过所述PKI应用的验证数字签名接口函数向所述智能卡发送验证数字 签名指令,智能卡在接收到上述验证数字签名指令之后,获取其中的数据,并对待验证签名 数据进行验证,然后通过终端与智能卡之间的NFC连接将验证的结果返回给终端,从而使得 终端可W通过NFC连接接收到该验证结果。
[007引可选的,在本实施例中,验证数字签名指令中包含了化A(指令类别)、INS(指令 码)、私钥、数据发送状态、Lc、需要验证数字签名数据、Le(希望响应时回答的数据字节数)。 智能卡返回给终端的验证结果的格式包含了验证结果、CLA状态字、INS状态字、验证数字签 名命令中数据正确与否状态字、LC状态字、数据规范状态字、KEY初始化状态字、数据超长状 态字。
[0079] 例如,在上述的数字签名验证的过程中,终端发送APDU数字签名指令给智能卡,具 体的格式如表3所示。
[0080] 表 3
[0081]
[0082] 其中,P1 为公钥,且 Pl=0x01(公钥一)、Pl=0x02(公钥二);
[0083] P2为数据发送状态,且P2 = 0x00(Data已发完)、P2 = 0x01(Data未发完,会接着发 下一条);
[0084] Le为希望响应时回答的数据字节数;
[0085] 在需要验证数字签名数据中包括签名数据数据格式REF-VER-Sig(具体参见表4) 和原数据数据格式REF-V邸-Data(具体参见表5).
[00化]表4 Γ00871 L0088」 表5
「00891
'[0090]智能卡验证数字签名令之后,对待验证签名数据进行验证,然后返回给终端如 表6所示的APDU数据签名验证响应指令(即验证结果)。
[0091] 表6
[0092]
[0093] 在另一实施例中,可选的,所述获取所述ΡΚΙ应用标识对应的ΡΚΙ应用的步骤之后 还包括:通过所述ΡΚΙ应用的非对称加/解密接口函数向所述智能卡发送非对称算法加/解 密指令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的 与所述待加/解密数据对应的已经过非对称算法加/解密的数据。
[0094] 终端在需要使用非对称算法对数据进行加密或者解密时,获取待加密或者解密数 据,并根据该待加密或者解密数据生成非对称算法加/解密指令,在该非对称算法加/解密 指令中包含了上述待加密或者解密数据。然后通过所述ΡΚΙ应用的非对称加/解密接口函数 向所述智能卡发送非对称算法加/解密指令,智能卡在接收到上述非对称算法加/解密指令 之后,获取其中的数据,并根据接收到的非对称算法加/解密指令对获取到的待加密或者解 密数据进行加密或者解密,然后通过终端与智能卡之间的NFC连接将已经过非对称算法加/ 解密的数据返回给终端,从而使得终端可W通过NFC连接接收到该已经过非对称算法加/解 密的数据。
[00Μ]可选的,在本实施例中,非对称算法加/解密指令中包含了CLA(指令类别)、INS(指 令码)、公私钥、LC数据发送状态、Lc、需要加密/解密数据、Le(希望响应时回答的数据字节 数)。智能卡返回给终端的加密或者解密结果中包含了加密/解密结果、密文/明文数据、CLA 状态字、INS状态字、非对称算法加密/解密命令中数据正确与否状态字、LC状态字、KEY初始 化状态字、数据超长状态字。
[0096] 例如,在上述的加密或者解密的过程中,终端发送APDU非对称算法加/解密指令给 智能卡,具体的格式如表7所示。
[0097] 表 7 [009引
[0099] 其中,P1为公钥或私钥,且Pl = 0x01(公钥一)、Pl = 0x02(公钥二),Pl = 0x03(私钥 一)、Pl=0x04(私钥二);
[0100] P2为数据发送状态,且P2 = 0x00(Data已发完)、P2 = 0x01(Data未发完,会接着发 下一条);
[0101] Le为希望响应时回答的数据字节数。
[0102] 智能卡接收到非对称算法加/解密指令之后,获取指令中的数据并进行加密或者 解密,然后将加密或者解密后的数据返回给终端,具体如表8所示。
[010;3]表 8
[0104]
[0105] 在另一实施例中,可选的,所述获取所述PKI应用标识对应的PKI应用的步骤之后 还包括:通过所述PKI应用的对称加/解密接口函数向所述智能卡发送对称算法加/解密指 令,所述数字签名指令包含待加/解密数据;接收所述智能卡通过所述NFC连接返回的与所 述待加/解密数据对应的已经过对称算法加/解密的数据。
[0106] 具体的,终端在需要使用对称算法对数据进行加密或者解密时,获取待加密或者 解密数据,并根据该待加密或者解密数据生成对称算法加/解密指令,在该对称算法加/解 密指令中包含了上述待加密或者解密数据。然后通过所述PKI应用的对称加/解密接口函数 向所述智能卡发送对称算法加/解密指令,智能卡在接收到上述对称算法加/解密指令之 后,获取其中的数据,并根据接收到的对称算法加/解密指令对获取到的待加密或者解密数 据进行加密或者解密,然后通过终端与智能卡之间的NFC连接将已经过对称算法加/解密 的数据返回给终端,从而使得终端可W通过NFC连接接收到该已经过对称算法加/解密的数 据。
[0107] 可选的,在本实施例中,对称算法加/解密指令中包含了CLA(指令类别)、INS(指令 码)、密钥、数据发送状态、Lc、需要加密/解密数据、Le(希望响应时回答的数据字节数)。智 能卡返回给终端的加密或者解密结果中包含了加密/解密结果、密文/明文数据、CLA状态 字、INS状态字、对称算法加密/解密命令中数据正确与否状态字、LC状态字、KEY初始化状态 字、数据超长状态字。
[0108] 例如,在上述的加/解密的过程中,终端发送APDU非对称算法加/解密指令给智能 卡,具体的格式如表9所示。
[0109] 表9
[0110] _
[0111] 其中,P1 为密钥,且 Pl=0x01(密钥一)、Pl=0x02(密钥二),Pl=0x03(密钥 S);
[0112] P2为数据发送状态,且P2 = 0x00(Data已发完)、P2 = 0x01(Data未发完,会接着发 下一条);
[0113] Le为希望响应时回答的数据字节数。
[0114] 智能卡接收到对称算法加/解密指令之后,获取指令中的数据并进行加密或者解 密,然后将加密或者解密后的数据返回给终端,具体如表10所示。
[0115] 表10
[0116]
[0117]
[0118] 此外,为解决上述提到的传统技术中的在使用NFC技术对智能卡进行读写时存在 的安全性较低的技术问题,在本实施例中,还提供了一种读写智能卡的装置。
[0119] 具体的,如图2所示,该读写智能卡的装置包括NFC连接建立模块102、ΡΚΙ应用标识 获取模块104、数字签名发送模块106W及数字签名接收模块108,其中:
[0120] NFC连接建立模块102,用于通过近场通信NFC忍片感应智能卡,与感应到的智能卡 建立NFC连接;<
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1