Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
IC CARD PAYMENT SYSTEM AND METHOD AND MULTI-APPLICATION IC CARD AND PAYMENT TERMINAL
Document Type and Number:
WIPO Patent Application WO/2011/063590
Kind Code:
A1
Abstract:
An IC card payment system comprises a host computer (1), a terminal (2) and an IC card (3), wherein the IC card (3) communicates with the terminal (2) through an interface device and the terminal (2) connects to the host computer (1) through a communication interface. An asymmetry key algorithm is used for implementing the off-line data authentication between the terminal (2) and the IC card (3) when offline transaction. If the transaction is not permitted offline, an online transaction is carried out between the terminal (2) and the IC card (3) through the host computer (1). An IC card payment method, a multi-application IC card and a payment terminal are also provided.

Inventors:
XU, Jinyao (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
徐晋耀 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
LI, Chunhuan (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
李春欢 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
HUI, Chunye (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
回春野 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
BO, Jianning (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
Application Number:
CN2010/001279
Publication Date:
June 03, 2011
Filing Date:
August 24, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
CHINA UNIONPAY CO., LTD. (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
中国银联股份有限公司 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
XU, Jinyao (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
徐晋耀 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
LI, Chunhuan (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
李春欢 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
HUI, Chunye (7/F, CUP Tower 36Hanxiao Rd., Pudong, Shanghai 5, 200135, CN)
回春野 (中国上海市浦东新区含笑路36号银联大厦7楼, Shanghai 5, 200135, CN)
International Classes:
G07F19/00; H04L9/32
Attorney, Agent or Firm:
CHINA PATENT AGENT (H. K.) LTD. (22/F, Great Eagle Centre23 Harbour Road, Wanchai, Hong Kong, Kong, CN)
Download PDF:
Claims:
权利要求

1. 一种 IC卡支付系统, 所述 IC卡支付系统包括主机、 终端和 IC卡, 其 中, 所述 IC卡通过接口设备与所述终端通信, 所述终端通过通信接口与所述 主机相连接;

其中, 在进行交易时, 所述终端和所述 IC卡使用非对称密钥算法进行数 据的认证。

2. 根据权利要求 1所述的 IC卡支付系统, 其特征在于, 在进行脱机交易 时, 所述终端和所述 IC卡使用非对称密钥算法进行脱机数据的认证。

3. 才艮据权利要求 1-2中任一个权利要求所述的 IC卡支付系统, 其特征在 于, 如果交易没有被脱机批准, 所述终端和所述 IC卡通过所述主机进行联机 交易。

4. 才艮据权利要求 1-2中任一个权利要求所述的 IC卡支付系统, 其特征在 于, 所述终端包括:

应用选择模块, 所述应用选择模块用于向所述 IC卡发送应用选择命令, 从而选择应用;

初始化应用模块, 所述初始化应用模块根据所述 IC卡返回的应答控制脱 机支付的交易金额, 并依据预定的条件集合确定是否采用脱机支付;

终端行为分析模块, 所述终端行为分析模块根据所述 IC卡传送来的初始 化应用命令响应数据中的指示从所述 I C卡中读取数据, 并将电子现金余额与 授权金额的差值和电子现金重置阀值进行比较, 从而判断是否发起联 受权, 并将交易请求发送给所述 IC卡;

终端数据认证模块,在进行交易时, 所述终端数据认证模块采用非对称密 钥算法进行数据的认证;

安全性检查模块,在所述终端数据认证模块完成数据认证后, 所述安全性 检查模块进行安全性检查, 其中, 所述安全性检查包括新卡检查、 终端异常文 件检查和商户强制交易联机检查。

5. 根据权利要求 4所述的 IC卡支付系统, 其特征在于, 所述终端数据认 证模块将动态应用数据发送到所述 IC卡中作为哈希运算的输入, 其中, 所述 动态应用数据包括签名的数据格式、 哈希算法标识、 IC 卡动态数据长度、 IC 卡动态数据、 填充字节; 在收到所述 IC卡发送的签名数据以及发卡方公钥证 书和 IC卡公钥证书后, 所述终端数据认证模块使用认证中心 (CA )公钥解密 发卡方公钥证书,从而恢复出发卡方公钥; 所述终端数据认证模块使用恢复出 的发卡方公钥解密 IC卡公钥证书,从而恢复出 IC卡公钥; 所述终端数据认证 模块使用恢复出的 IC卡公钥对 IC卡私钥签名的数据进行解密后得到哈希结 果, 并与明文数据的哈希结果进行比对。

6. 根据权利要求 1-2中任一个权利要求所述的 IC卡支付系统, 其特征在 于, 所述 IC卡包括:

应用选择应答模块,在接收到所述终端发送的应用选择命令后, 所述应用 选择应答模块向所述终端发送应答, 所述应答中包括文件控制信息;

初始化应用响应模块,在收到所述终端发来的初始化应用命令后, 所述初 始化应用响应模块根据预定的条件集合判断本次交易是否是电子现金交易 ,并 将初始化应用命令响应数据发送给所述终端;

IC卡行为分析模块, 在收到所述终端的交易请求后, 所述 IC卡行为分析 模块根据所述交易请求判断交易类型并根据判断结果进行交易;

IC卡数据认证模块, 在进行交易时, 所述 IC卡数据认证模块采用非对称 密钥算法进行数据的认证。

7. 根据权利要求 6所述的 IC卡支付系统, 其特征在于, 所述 IC卡数据 认证模块将所述终端发来的动态应用数据以及与本次交易相关的 IC卡动态数 据进行哈希运算;所述 IC卡数据认证模块使用 IC卡私钥对哈希运算结果进行 签名, 形成签名数据; 所述 IC卡数据认证模块将所述签名数据和发卡方公钥 证书和 IC卡公钥证书一并传递给所述终端。

8. 一种多应用 IC卡, 所述多应用 IC卡包括:

应用选择应答模块,在接收到终端发送的应用选择命令后, 所述应用选择 应答模块向所述终端发送应答, 所述应答中包括文件控制信息;

初始化应用响应模块,在收到所述终端发来的初始化应用命令后, 所述初 始化应用响应模块根据预定的条件集合判断本次交易是否是电子现金交易,并 将初始化应用命令响应数据发送给所述终端; IC卡行为分析模块, 在收到所述终端的交易请求后, 所述 IC卡行为分析 模块根据所述交易请求判断交易类型并根据判断结果进行交易;

IC卡数据认证模块, 在进行交易时, 所述 IC卡数据认证模块进行数据的 认证;

其中, 所述 IC卡数据认证模块采用非对称密钥算法进行数据的认证。

9. 居权利要求 8所述的多应用 IC卡,其特征在于,在进行脱机交易时, 所述 IC卡数据认证模块使用非对称密钥算法进行脱机数据的认证。

10. 根据权利要求 8-9中任一个权利要求所述的多应用 IC卡, 其特征在 于, 如果交易没有被脱机批准, 所述多应用 IC卡与所述终端通过主机进行联 机交易。

11. 根据权利要求 8-9中任一个权利要求所述的多应用 IC卡, 其特征在 于, 所述 IC卡数据认证模块将所述终端发来的动态应用数据进行哈希运算; 所述 IC卡数据认证模块使用 IC卡私钥对哈希运算结果进行签名 ,形成签名数 据;所述 IC卡数据认证模块将所述签名数据和发卡方公钥证书和 IC卡公钥证 书一并传递给所述终端。

12. 一种支付终端, 所述支付终端包括:

应用选择模块, 所述应用选择模块用于向 IC卡发送应用选择命令, 从而 选择应用;

初始化应用模块, 所述初始化应用模块根据所述 IC卡返回的应答控制脱 机支付的交易金额, 并依据预定的条件集合确定是否采用脱机支付;

终端行为分析模块, 所述终端行为分析模块根据所述 IC卡传送来的初始 化应用命令响应数据中的指示从所述 IC卡中读取数据, 并将电子现金余额与 授权金额的差值和电子现金重置阀值进行比较, 从而判断是否发起联机授权, 并将交易请求发送给所述 ic卡;

终端数据认证模块,在进行交易时, 所述终端数据认证模块进行数据的认 证;

安全性检查模块,在所述终端数据认证模块完成数据认证后, 所述安全性 检查模块进行安全性检查, 其中, 所述安全性检查包括新卡检查、 终端异常文 件检查和商户强制交易联机检查; 其中, 所述终端数据认证模块采用非对称密钥算法进行数据的认证。

13. 根据权利要求 12所述的支付终端, 其特征在于, 在进行脱机交易时, 所述终端数据认证模块使用非对称密钥算法进行脱机数据的认证。

14.根据权利要求 12-13中任一个权利要求所述的支付终端,其特征在于, 如果交易没有被脱机批准,所述支付终端与所述 IC卡通过主机进行联机交易。

15.根据权利要求 12-13中任一个权利要求所述的支付终端,其特征在于, 所述终端数据认证模块将动态应用数据发送到所述 IC卡中作为哈希运算的输 入, 其中, 所述动态应用数据包括签名的数据格式、 哈希算法标识、 IC 卡动 态数据长度、 IC卡动态数据、 填充字节; 在收到所述 IC卡发送的签名数据以 及发卡方公钥证书和 IC卡公钥证书后, 所述终端数据认证模块使用认证中心 ( CA )公钥解密发卡方公钥证书, 从而恢复出发卡方公钥; 所述终端数据认证 模块使用恢复出的发卡方公钥解密 IC卡公钥证书,从而恢复出 IC卡公钥; 所 述终端数据认证模块使用恢复出的 IC卡公钥对 IC卡私钥签名的数据进行解密 后得到哈希结果, 并与明文数据的哈希结果进行比对。

16. 一种 IC卡支付方法, 所述方法包括如下步骤:

( A1 )终端将应用选择命令通过接口设备发送给 IC卡;

( A2 )响应于收到的所述应用选择命令, 所述 IC卡将包括数据对象列表的 应答发送给所述终端;

( A3 )根据所述数据对象列表, 所述终端构造初始化应用命令, 并将所述 初始化应用命令发送给所述 IC卡, 其中, 所述初始化应用命令包括初始化参 数;

( A4 )根据所述初始化参数,.所述 IC卡判断本次交易是否是电子现金交易, 并将初始化应用命令响应数据发送给所述终端;

( A5 )所述终端根据所述初始化应用命令响应数据判断是否发起联机授权, 并将交易请求发送给所述 IC卡;

( A6 )所述 IC 卡根据所述交易请求判断交易类型并根据判断结果进行交 易, 其中, 在所述交易过程中进行数据认证;

其中, 所述 IC卡支付方法使用非对称密钥算法进行数据认证。

17. 根据权利要求 16所述的 IC卡支付方法, 其特征在于, 在进行脱机交 易时, 所述. IC卡支付方法使用非对称密钥算法进行脱机数据的认证。

18. 根据权利要求 16-17中任一个权利要求所述的 IC卡支付方法, 其特 征在于, 所述步骤 A6进一步包括: 所述交易类型包括脱机拒绝、 联机授权和 脱机批准, 并且, 如果判断出的交易类型为联机授权, 则进行联机交易。

19. 根据权利要求 16-17中任一个权利要求所述的 IC卡支付方法, 其特 征在于, 所述步骤 A6中的所述数据认证步骤进一步包括:

( cl )所述终端将动态应用数据传送给所述 IC卡以作为哈希运算的输入; ( c2 )所述 IC卡将所述动态应用数据进行哈希运算, 并使用 IC卡私钥对 哈希运算结果进行签名以形成签名数据, 随后将所述签名数据、发卡方公钥证 书和 IC卡公钥证书一并传递给所述终端;

( c3 )所述终端使用认证中心公钥解密所述发卡方公钥证书, 从而恢复出 发卡方公钥;

( c4 )所述终端使用恢复出的发卡方公钥解密所述 IC卡公钥证书,从而恢 复出 IC卡公钥;

( c5 )所述终端使用恢复出的 IC卡公钥对 IC卡私钥签名的数据进行解密, 从而得到哈希结果, 并与明文数据的哈希结果进行比对;

其中, 所述动态应用数据包括签名的数据格式、 哈希算法标识、 IC 卡动 态数据长度、 IC卡动态数据、 填充字节。

Description:
IC卡支付系统和方法以及多应用 IC卡、 支付终端 技术领域

本发明涉及支付系统和方法以及 IC 卡、 支付终端, 更具体地, 涉及 IC 卡脱机支付系统和方法以及多应用 IC卡、 脱机支付终端。 背景技术

目前, 随着 IC卡应用的不断增加和日益普及, 出现了许多使用 IC卡进行小 额脱机支付的应用, 例如电子钱包系统, 其普通交易流程如下: 终端向卡片发 出初始化命令启动交易; IC卡处理该初始化命令,检查其是否支持该初 化命 令中包含的密钥索引号以及是否有足够的余额 ; 随后, 生成一个伪随机数和过 程密钥 (SESPK ), 用于验证第一报文鉴别代码(MAC1 ), 并将其作为响应发送 给终端;终端的安全存取模块(PSAM )对该随机数产生第一报文鉴别码(MAC1 ); 此后, IC卡 <险证该报文鉴别码(MAC1 )的有效性, 从电子钱包余额中扣减消费 的金额, 并产生第二报文签别码(MAC2 ), 以供安全存取模块(PSAM )对其进 行合法性检查同时产生交易认证(TC )供主机验证。 安全存取模块(PSAM )验 证 IC卡产生的第二报文签别码(MAC2 )成功后, 终端批准交易的进行。 然而, 现有的电子钱包系统采用的是对称密钥体系, 该体系具有以下的缺点: 1、 密 钥传递过程复杂: 由于采用对称密钥, 密钥本身作为机密敏感数据, 在传送过 程中必须设计有安全可靠的机制来确保其安全 的传递。同时相应的管理机制也 十分复杂; 2、 安全认证模块安全性存在缺陷: 在对称密钥体系下, 为了认证 IC卡的合法性, 在终端中必须布放(如 SAM卡), 然而, 在现实情况中, 发卡方 对终端用户的管理是松散的, 故很难确保安全认证模块(如 SAM卡)使用的安 全性, 因此存在攻击者对安全认证模块(如 SAM卡)的非法攻击的安全隐患; 3、 密钥更新困难: 由于对用户的 IC卡认证的密钥存放于安全认证模块(如 SAM卡) 中, 故如果需要启用新的密钥, 则必须对安全认证模块(如 SAM卡) 中的密钥 进行更新, 然而, 对安全认证模块(如 SAM卡) 中密钥的更新一般采用密文加 认证的方式进行, 因而过程十分复杂, 难以实现。 此外, 从业务功能上来说, 电子钱包系统仅提供了小额脱机支付的解决方 法,不能提供大额联机交易的功 能。 ' 发明内容

为了解决上述现有技术方案所存在的缺陷, 本发明提出了一种 IC卡支付 系统和方法以及多应用 IC卡、 支付终端。

本发明的目的之一是通过以下技术方案实现的 :

一种 IC卡支付系统, 所述 IC卡支付系统包括主机、 终端和 IC卡, 其中, 所述 IC卡通过接口设备与所述终端通信, 所述终端通过通信接口与所述主机 相连接;

其中, 在进行交易时, 所述终端和所述 IC卡使用非对称密钥算法进行数 据的认证。

在上面所公开的方案中, 优选地, 在进行脱机交易时, 所述终端和所述

IC卡使用非对称密钥算法进行脱机数据的认 。

在上面所公开的方案中, 优选地, 如果交易没有被脱机批准, 所述终端和 所述 IC卡通过所述主机进行联机交易。

在上面所公开的方案中, 优选地, 所述终端包括:

应用选择模块, 所述应用选择模块用于向所述 IC卡发送应用选择命令, 从而选择应用;

初始化应用模块, 所述初始化应用模块根据所述 IC卡返回的应答控制脱 机支付的交易金额, 并依据预定的条件集合确定是否采用脱机支付 ;

终端行为分析模块, 所述终端行为分析模块根据所述 IC卡传送来的初始 化应用命令响应数据中的指示从所述 IC卡中读取数据, 并将电子现金余额与 授权金额的差值和电子现金重置阀值进行比较 , 从而判断是否发起联机授权, 并将交易请求发送给所述 IC卡;

终端数据认证模块,在进行交易时, 所述终端数据认证模块采用非对称密 钥算法进行数据的认证;

安全性检查模块,在所述终端数据认证模块完 成数据认证后, 所述安全性 检查模块进行安全性检查, 其中, 所述安全性检查包括新卡检查、 终端异常文 件检查和商户强制交易联初 查。

在上面所公开的方案中,优选地,所述终端数 据认证模块将动态应用数据 发送到所述 IC卡中作为哈希运算的输入, 其中, 所述动态应用数据包括签名 的数据格式、 哈希算法标识、 IC卡动态数据长度、 IC卡动态数据、 填充字节; 述终端数据认证模块使用认证中心( CA )公钥解密发卡方公钥证书 , 从而恢复 出发卡方公钥; 所述终端数据认证模块使用恢复出的发卡方公 钥解密 IC卡公 钥证书,从而恢复出 IC卡公钥; 所述终端数据认证模块使用恢复出的 IC卡公 钥对 IC卡私钥签名的数据进行解密后得到哈希结果 并与明文数据的哈希结 果进行比对。

在上面所公开的方案中, 优选地, 所述 IC卡包括:

应用选择应答模块,在接收到所述终端发送的 应用选择命令后, 所述应用 选择应答模块向所述终端发送应答, 所述应答中包括文件控制信息;

初始化应用响应模块,在收到所述终端发来的 初始化应用命令后, 所述初 始化应用响应模块根据预定的条件集合判断本 次交易是否是电子现金交易,并 将初始化应用命令响应数据发送给所述终端;

IC卡行为分析模块, 在收到所述终端的交易请求后, 所述 IC卡行为分析 模块根据所述交易请求判断交易类型并根据判 断结果进行交易;

IC卡数据认证模块, 在进行交易时, 所述 IC卡数据认证模块采用非对称 密钥算法进行数据的认证。

在上面所公开的方案中, 优选地, 所述 IC卡数据认证模块将所述终端发 来的动态应用数据进行哈希运算;所述 IC卡数据认证模块使用 IC卡私钥对哈 希运算结杲进行签名, 形成签名数据; 所述 IC卡数据认证模块将所述签名数 据和发卡方公钥证书和 IC卡公钥证书一并传递给所述终端。

本发明的目的之一是通过以下技术方案实现的 :

一种多应用 IC卡, 所述多应用 IC卡包括:

应用选择应答模块,在接收到终端发送的应用 选择命令后, 所述应用选择 应答模块向所述终端发送应答, 所述应答中包括文件控制信息;

初始化应用响应模块,在收到所述终端发来的 初始化应用命令后, 所述初 始化应用响应模块根据预定的条件集合判断本 次交易是否是电子现金交易,并 将初始化应用命令响应数据发送给所述终端;

IC卡行为分析模块, 在收到所述终端的交易请求后, 所述 IC卡行为分析 模块根据所述交易请求判断交.易类型并根据 断结果进行交易;

IC卡数据认证模块, 在进行交易时, 所述 IC卡数据认证模块进行数据的 认证;

其中, 所述 IC卡数据认证模块采用非对称密钥算法进行数 的认证。 在上面所公开的方案中, 优选地, 在进行脱机交易时, 所述 IC卡数据认 证模块使用非对称密钥算法进行脱机数据的认 证。

在上面所公开的方案中, 优选地, 如果交易没有被脱机批准, 所述多应用

IC卡与所述终端通过主机进行联机交易。

在上面所公开的方案中, 优选地, 所述 IC卡数据认证模块将所述终端发 来的动态应用数据进行哈希运算;所述 IC卡数据认证模块使用 IC卡私钥对哈 希运算结果进行签名, 形成签名数据; 所述 IC卡数据认证模块将所述签名数 据和发卡方公钥证书和 IC卡公钥证书一并传递给所述终端。

本发明的目的之一是通过以下技术方案实现的 :

一种支付终端, 所述支付终端包括:

应用选择模块, 所述应用选择模块用于向 IC卡发送应用选择命令, 从而 选择应用;

初始化应用模块, 所述初始化应用模块根据所述 IC卡返回的应答控制脱 机支付的交易金额, 并依据预定的条件集合确定是否采用脱机支付 ;

终端行为分析模块, 所述终端行为分析模块根据所述 IC卡传送来的初始 化应用命令响应数据中的指示从所述 IC卡中读取数据, 并将电子现金余额与 授权金额的差值和电子现金重置阀值进行比较 , 从而判断是否发起联机授权 , 并将交易请求发送给所述 ic卡;

终端数据认证模块,在进行交易时, 所述终端数据认证模块进行数据的认 证;

安全性检查模块,在所述终端数据认证模块完 成数据认证后, 所述安全性 检查模块进行安全性检查, 其中, 所述安全性检查包括新卡检查、 终端异常文 件检查和商户强制交易联机检查;

其中, 所述终端数据认证模块采用非对称密钥算法进 行数据的认证。

在上面所公开的方案中, 优选地, 在进行脱机交易时, 所述终端数据认证 模块使用非对称密钥算法进行脱机数据的认证 。

在上面所公开的方案中, 优选地, 如果交易没有被脱机批准, 所述支付终 端与所述 IC卡通过主机进行联机交易。

在上面所公开的方案中,优选地,所述终端数 据认证模块将动态应用数据 发送到所述 IC卡中作为哈希运算的输入, 其中, 所述动态应用数据包括签名 的数据格式、 哈希算法标识、 IC卡动态数据长度、 IC卡动态数据、 填充字节; 述终端数据认证模块使用认证中心(CA )公钥解密发卡方公钥证书, 从而恢复 出发卡方公钥; 所述终端数据认证模块使用恢复出的发卡方公 钥解密 IC卡公 钥证书,从而恢复出 IC卡公钥; 所述终端数据认证模块使用恢复出的 IC卡公 钥对 IC卡私钥签名的数据进行解密后得到哈希结果 并与明文数据的哈希结 果进行比对。

本发明的目的之一是通过以下技术方案实现的 :

一种 IC卡支付方法, 所述方法包括如下步骤:

( A1 )终端将应用选择命令通过接口设备发送给 IC卡;

( A2 )响应于收到的所述应用选择命令, 所述 IC卡将包括数据对象列表的 应答发送给所述终端;

( A3 )根据所述数据对象列表, 所述终端构造初始化应用命令, 并将所述 初始化应用命令发送给所述 IC卡, 其中, 所述初始化应用命令包括初始化参 数;

( A4 )根据所述初始化参数,所述 IC卡判断本次交易是否是电子现金交易, 并将初始化应用命令响应数据发送给所述终端 ;

( A5 )所述终端根据所述初始化应用命令响应数据 断是否发起联机授权, 并将交易请求发送给所述 IC卡;

( A6 )所述 IC 卡才艮据所述交易请求判断交易类型并根据判 断结果进行交 易, 其中, 在所述交易过程中进行数据认证; 其中, 所述 IC卡支付方法使用非对称密钥算法进行数据认 。

在上面所公开的方案中, 优选地, 在进行脱机交易时, 所述 IC卡支付方 法使用非对称密钥算法进行脱机数据的认证。

在上面所公开的方案中, 优选地, 所述步骤 A6进一步包括: 所述交易类 型包括脱机拒绝、联机授权和脱机批准, 并且, 如果判断出的交易类型为联机 授权, 则进行联机交易。

在上面所公开的方案中, 优选地, 所述步骤 A6中的所述数据认证步骤进 一步包括:

( cl )所述终端将动态应用数据传送给所述 IC卡以作为哈希运算的输入; ( c2 )所述 IC卡将所述动态应用数据进行哈希运算, 并使用 IC卡私钥对 哈希运算结果进行签名以形成签名数据, 随后将所述签名数据、发卡方公钥证 书和 IC卡公钥证书一并传递给所述终端;

( c 3 )所述终端使用认证中心公钥解密所述发卡方 钥证书, 从而恢复出 发卡方公钥;

( c4 )所述终端使用恢复出的发卡方公钥解密所述 IC卡公钥证书,从而恢 复出 IC卡公钥;

( c5 )所述终端使用恢复出的 IC卡公钥对 IC卡私钥签名的数据进行解密, 从而得到哈希结果, 并与明文数据的哈希结果进行比对;

其中, 所述动态应用数据包括签名的数据格式、 哈希算法标识、 IC 卡动 态数据长度、 IC卡动态数据、 填充字节。

本发明所公开的 IC卡支付系统和方法以及多应用 IC卡、支付终端具有如 下优点:由于采用了非对称密钥算法进行数据 的认证并且当交易没有被脱机批 准时所述终端和所述 IC卡可以与所述主机进行联机, 因而本发明所公开的技 术方案具有高安全性的小额支付功能、 并且密钥传输安全、便利、 无安全认证 模块被攻击的隐患; 此外, 本发明所公开的 IC卡支付系统和方法以及多应用 IC 卡、 支付终端即可以应用在不具备联机交易环境的 机具上, 也可以应用在 具备联机交易环境的标准商户的机具上。 附图说明 结合附图 , 本发明的技术特征以及优点将会被本领域技术 人员更好地理 解, 其中:

图 1为根据本发明的实施例的 I C卡支付系统的结构图;

图 2为根据本发明的实施例的 IC卡支付方法的终端侧支付流程图; 图 3为 ^据本发明的实施例的 IC卡支付方法的 IC卡侧支付流程图; 图 4为根据本发明的实施例的 IC卡支付方法的终端侧行为分析流程图; 图 5为根据本发明的实施例的 IC卡支付方法的 IC卡侧行为分析流程图。 具体实施方式

图 1为 居本发明的实施例的 IC卡支付系统的结构图。 如图 1所示, 本 发明公开的 IC卡支付系统包括主机 1、 终端 2和 IC卡 3, 其中, IC卡 3经由 终端 2与主机 1通信, 终端 2通过通信接口与主机 1相连接, 终端 2和 IC卡 3通过接口设备(例如, 经由触点)而相互通信。 所述主机 1包括电子现金账 户管理模块 13和持卡人主账户管理模块 14。 所述电子现金账户管理模块 13 用于管理预先保留的电子现金金额,即防止电 子现金金额用于非电子现金支付 以及对 IC卡脱机交易进行清算。所述持卡人主账户管 模块 14用于管理联机 授权的当前账户, 例如授权并清算联机交易或者对电子现金账户 进行金额划 转。

如图 1所示, 所述终端 2包括应用选择模块 8、 初始化应用模块 9、 终端 数据认证模块 10、 安全性检查模块 11和终端行为分析模块 12。 其中, 所述应 用选择模块 8向 IC卡 3发送应用选择命令 (例如 SELECT ), 从而选择应用。

根据 IC卡返回的应答(例如文件控制信息 FCI ),所述初始化应用模块 9 控 制可脱机支付的交易金额,并通过交易货币代 码、上次交易行为等判断条件(条 件集合的确定可根据实际需要自定义)来确定 是否采用脱机支付,从而使脱机 支付的风险达到最小。例如, 当满足如下条件时终端 2判断出可以釆用脱机支 付方式: (1 )终端 2支持电子现金交易; (2 )授权金额小于电子现金终端交易 限额。或者在终端 2不包括单独的电子现金终端交易限额的情况 , 小于终端 最低限额;( 3 )终端交易类型为消费交易。 当终端 2判断出可釆用脱机支付时, 终端 2将在初始化命令(例如 GP0命令, 即获取处理选项命令)中提供电子现 金终端支持指示器(即设置该指示器的值为 1 )。

当收到 IC卡 3发送的初始化应用命令响应数据后, 终端行为分析模块 12 才艮据该初始化应用命令响应数据中的指示( 例如,应用文件位置 AFL指示出了 电子现金特定数据(例如电子现金发卡方授权 码)等数据对象在 IC卡 3中的 位置)从 IC卡 3中读取数据 (例如电子现金余额、 电子现金重置阀值), 并将 电子现金余额与授权金额的差值和电子现金重 置阀值进行比较,同时结合终端 能力进行如下终端行为分析: ( 1 )如果电子现金余额减去授权金额大于或等于 电子现金重置阀值, 则向 IC卡请求脱机批准, 从而进行电子现金交易; (2 ) 如果电子现金余额减去授权金额小于电子现金 重置阀值,则终端行为分析模块 12根据终端 1的能力进行如下判断: (a )如果终端 2具备联机能力, 则终端 行为分析模块 12请求联机, 并要求持卡人输入联机个人密码(PIN ), 从而本 次交易请求由发卡方联机授权, 同时对电子现金余额进行更新; (b )如果终端 2不具备联机能力, 则终端行为分析模块 12请求脱机批准, 从而本次交易可 以脱机完成或者脱机拒绝; (c )如果终端尝试联机失败后, 则终端 2和 IC卡 进行标准借记 /货记交易处理。

在终端行为分析模块 12进行了终端行为分析过程中, 终端数据认证模块 10采用非对称密钥算法进行数据的认证, 即终端 2将动态应用数据送入 IC卡 3作为哈希运算的输入, 所述动态应用数据包括签名的数据格式、 哈希算法标 识、 IC卡动态数据长度、 IC卡动态数据、 填充字节等。 随后, 在收到 IC卡 3 发送的签名数据以及发卡方公钥证书和 IC卡公钥证书后, 终端数据认证模块 10 使用认证中心 (CA )公钥解密发卡方公钥证书, 从而恢复出发卡方公钥。 此后,终端数据认证模块 10使用恢复出的发卡方公钥解密 IC卡公钥证书,从 而恢复出 IC卡公钥。终端数据认证模块 10使用恢复出的 IC卡公钥对 IC卡私 钥签名的数据进行解密后得到哈希结果, 并与明文数据的哈希结果进行比对, 从而确定 IC卡 3的真伪。 其中, 发卡方在个人化 IC卡时, 将发卡方公钥证书 ( CA认证中心用 CA私钥对发卡方公钥进行数字签名 , 从而产生发卡方公钥证 书)和 IC卡公钥证书(发卡方使用发卡方私钥对 IC卡公钥进行数字签名, 从 而产生 IC卡公钥证书)写入 IC卡 3中, 并且认证中心(CA )公钥被下载至终 端 2。 其中, 所述私钥是指在一个实体使用的非对称密钥对 中仅被该实体使用 的密钥, 在数字签名方案中, 私钥定义了签名函数。 所述公钥是指在一个实体 使用的非对称密钥对中可以被公众使用的密钥 ,在数字签名方案中,公钥定义 了验证函数。 其中, 所述非对称密钥算法采用如下两种相关变换的 加密技术: 公开变换(由公钥定义)和私有变换(由私钥 定义)。 上述两种变换存在如下 特性:在获得公开变换的情况下是不能够通过 计 得出私有变换的。由上可知, 非对称密钥算法具有如下特点: 密钥传递便利、 更新方便, 并且对终端的安全 性要求低。 因此, 使用非对称密钥算法可以有效地防止伪卡交易 的产生, 从而 可以提高 IC卡交易的安全性。

在终端数据认证模块 10进行了数据认证后,安全性检查模块 11进行安全 性检查, 从而完成风险管理。 例如, 安全性检查模块 11可以进行如下检查: ( 1 )新卡检查, 如果存在连续脱机上限值和连续脱机下限值, 则安全性检查 模块 11检查最后联机交易序号寄存器(根据发卡方 证结果和 IC卡参数, 交 易被联机批准后, 最后联机交易序号寄存器被重新复位), 如果最后联机交易 序号为 0, 则安全性检查模块 11将终端验证结果(TVR ) 中的 "新卡" 位置设 置为 1 ; ( 2 )终端异常文件检查, 如果出现终端异常文件, 则安全性检查模块 11检查 IC卡 3上的主账号(PAN )是否列在终端异常文件上, 并且如果卡号 列在终端异常文件中, 则安全性检查模块 11将终端验证结果(TVR )中的 "卡 号出现在终端异常文件中" 位置设置为 1; ( 3 )商户强制交易联机检查, 在可 以联机的终端 2处, 商户可以将终端 2设置为交易应该联机处理; 如果检查到 商户强制交易联机, 则安全性检查模块 11.将终端验证结果(TVR )中的 "商户 强制交易联机" 位置设置为 1。

如图 1所示, 所述 IC卡 1 包括应用选择应答模块 4、 初始化应用响应模 块 5、 IC卡数据认证模块 6和 IC卡行为分析模块 7。 其中, 在接收到终端 2 发送的选择命令后, 所述应用选择应答模块 4向终端发送应答(例如文件控制 信息 FCI ), 所述应答包括 IC卡 3向终端 2请求的数据对象列表(例如用于请 求电子现金终端支持指示器、 授权金额以及交易货币代码等的数据对象列表 PD0L )。

在收到终端 1 发来的初始化应用命令(例如获取处理选项命 令, 既 GP0 命令)后, 初始化应用响应模块 5根据判断条件(可以根据具体需求确定条件 集合)来判断本次交易是否是电子现金交易。 例如, 当满足如下条件时 IC卡 3 判断出本次交易是电子现金交易 (即如果如下条件集合中的任一条件不满 足, 则本次交易不是电子现金交易): (1)初始化应用命令中包含电子现金终 端支持指示器(其值被设置为 1); (2)交易货币代码与应用货币代码匹配;(3) 授权金额不超过电子现金余额; (4)授权金额不超过电子现金单笔交易限额;

(5)发卡方认证失败指示器的值为 0; (6)上次联机交易发卡方脚本处理失 败指示器的值为 0; (7)个人密码(PIN)的尝试次数不为 0。 如果本次交易是 电子现金交易, 则 IC卡 3标识本次交易为电子现金交易, 并且向终端 2发送 初始化应用命令响应数据, 例如,所述响应数据包括电子现金的应用交互 特征

(AIP)和应用文件位置 (AFL)数据, 其中, 所述应用交互特征(AIP)指示 电子现金交易支持的功能, 所述应用文件位置 UFL)指示了电子现金特定数 据(例如电子现金发卡方授权码) 的位置。 如果本次交易不是电子现金交易, 则 IC卡在初始化应用命令响应数据中返回非电子 金的应用交互特征(AIP) 和应用文件位置(AFL), 即不返回电子现金发卡方授权码, 从而终端 2将本次 交易当作普通借记 /货记交易处理。

在收到终端 2的请求(例如生成交易密文命令 (例如 GENERATE AC))后, IC卡行为分析模块 7根据该请求进行脱机拒绝、联机授权以及脱 批准交易。 如果需进行脱机批准交易, 则 IC卡行为分析模块 7根据交易金额来更新 IC 卡 3中的电子现金余额和相关计数器, 以便保证 IC卡 3可以准确反映持卡人 可以脱 受权的额度。如果初始化应用响应模块 5已判定本次交易为电子现金 交易, 则 IC卡行为分析模块 7执行如下功能: ( 1 )如果终端 2脱机拒绝交易

(例如请求的密文类型为应用认证密文(AAC)) , 则 IC卡行为分析模块 7在生 成交易密文命令(例如, GENERATE AC)响应中返回应用认证密文(AAC); (2) 随后, IC卡行为分析模块 7进行 IC卡风险检查, 例如跳过联机授权未完成检 查、 上次交易发卡方认证失败检查、 上次联机交易发卡方脚本处理检查、新卡 检查、 脱机个人密码(PIN) 尝试次数检查及各类频度检查, 进行上次交易静 态数据认证 ( SDA )失败检查和上次交易动态数据认证( DDA )失败检查等; ( 3 ) 如果终端 2请求联机交易, 则 IC卡行为分析模块 7在生成交易密文命令(例 如, GENERATE AC)响应中返回联机授权请求(例如授权请求密 文(ARQC)); ( 4 )如果终端 2请求脱机批准, 则 IC卡行为分析模块 7从电子现金余额中扣 除授权金额, 并在发卡方应用数据的发卡方自定义数据 ( IDD ) 中返回更新后 的电子现金余额。余额是交易中的重要数据, 因此必须确保终端 2发送给主机 1的余额的真实性。一种余额校验方法如下: IC卡行为分析模块 7生成余额并 计算出余额校验码, 随后, IC卡行为分析模块 7将该余额和余额校验码一并 发送给终端 2 , 终端 2将余额和余额校验码上传至主机 1, 主机 1根据余额校 验码验证终端 2上传的余额是否真实, 从而确保交易的安全性。

在 IC卡行为分析模块 7进行了 IC卡行为分析过程中, IC卡数据认证模 块 6将终端 2发来的动态应用数据进行哈希运算, 随后, IC卡数据认证模块 6 使用安全存储的 IC卡私钥对哈希运算结果进行签名, 形成签名数据。 此后, IC卡数据认证模块 6将所述签名数据和发卡方公钥证书和 IC卡公钥证书一并 传递给终端 2。

如图 1所示,在脱机交易期间, IC卡 3执行如下操作以判断该次交易是否可 脱机授权: IC卡 3将当前授权金额与电子现金余额相比较, 如果当前授权金额 超出 IC卡 3的电子现金余额, 则请求联机授权; 如果交易被脱机批准, 则 IC卡 3 将从电子现金余额中减去此次交易的授权金额 ; 如果 I C卡 3请求联机授权但终 端不支持联机功能, 则可进行标准的借记 /货记交易处理或者直接终止交易。 完成交易后,终端 2通常在一定时间内将收集的交易数据发送给 机 1 , 以便进 行后续的清算。 当主机 1收到用于清算的交易数据时, 识别交易是否使用电子 现金交易, 如果是, 则电子现金账户管理模块 13从电子现金账户 (非持卡人主 账户) 中扣减相应的交易金额。 主机 1中的电子现金账户管理模块 13在清算操 作时可执行如下检查: 检查收到的应用交易计数器(ATC ), 以便获知是否有未 完成的交易待提交清算。

如图 1所示, 在联机交易期间, 主机 1中的持卡人主账户管理模块 14可 针对电子现金账户执行如下操作: ( 1 )检查 IC卡是否挂失; ( 2 )通过验证在 联机报文中发送的授权请求密文(ARQC ), 执行联机卡片认证(CAM ); ( 3 )检 查芯片数据内容, 以便发现交易被送至联机的原因。 通常, 导致交易需联机的 主要原因如下: (1 ) 电子现金余额与授权金额的差值小于电子现金 重置阈值; ( 2 ) 交易过程中发生异常, 从而强制交易联机进行(例如持卡人未能输入 正 确的脱机个人密码(PIN ) )。 主机 1可以对联机交易进行预定的额外处理。 例 如, 当由于授权金额大于卡的电子现金余额而导致 交易被送至联机处理时, 主 机 1中的持卡人主账户管理模块 14可以进行如下预定操作: ( 1 )检查主账户 余额, 如果余额充足, 则交易被批准, 并将授权批准发回给 IC卡 3, 且从主 账户中支出, 而 IC卡 3的电子现金余额保持不变; 或者(2 )对 IC卡 3的电 子现金账户进行自动圈存。

图 2为才艮据本发明的实施例的 IC卡支付方法的终端侧支付流程图。 图 3为 根据本发明的实施例的 IC卡支付方法的 IC卡侧支付流程图。 图 4为根据本发 明的实施例的 IC卡支付方法的终端侧行为分析流程图。图 5为根据本发明的实 施例的 IC卡支付方法的 IC卡侧行为分析流程图: 如图 2-5所示, 本发明所公 开的 IC卡支付方法包括如下步骤: (A1 )终端将应用选择命令通过接口设备发 送给 IC卡; ( A2 )响应于收到的所述应用选择命令, 所述 IC卡将包括数据对 象列表的应答发送给所述终端; (A3 )根据所述数据对象列表, 所述终端构造 初始化应用命令, 并将所述初始化应用命令发送给所述 IC卡, 其中, 所述初 始化应用命令包括初始化参数; ( A4 )根据所述初始化参数, 所述 IC卡判断本 次交易是否是电子现金交易, 并将初始化应用命令响应数据发送给所述终端 ; ( A5 )所述终端根据所述初始化应用命令响应数据 断是否发起联机授权, 并 将交易请求发送给所述 IC卡; ( A6 )所述 IC卡根据所述交易请求判断交易类 型并根据判断结果进行交易, 其中, 在所述交易过程中进行数据认证。 其中, 所述方法使用非对称密钥算法进行数据认证。

如图 2- 5所示, 步骤 A6进一步包括: 所述交易类型包括脱机拒绝、 联机授 权和脱机批准。

如图 2- 5所示, 步骤 A3进一步包括: 如果所述终端判断出可采用脱机支付 方式, 则所述终端在初始化命令(例如 GP0命令, 即获取处理选项命令)中提 供电子现金终端支持指示器(即设置该指示器 的值为 1 ), 其中, 如果满足如下 奈件,则所述终端判断出可以采用脱机支付方 式:所述终端支持电子现金交易; 授权金额小于电子现金终端交易限额,或者在 所述终端不包括单独的电子现金 终端交易限额的情况下, 小于终端最低限额; 终端交易类型为消费交易。

如图 2-5所示, 步骤 A5进一步包括: 所述终端将电子现金余额与授权金额 的差值和电子现金重置阀值进行比较,同时结 合终端能力进行如下终端行为分 析: (a l )如果所述电子现金余额减去所述授权金额大 或等于所述电子现金 重置阀值, 则向所述 IC卡请求脱机批准, 从而进行电子现金交易; 2 )如果 所述电子现金余额减去所述授权金额小于所述 电子现金重置阀值,则所述终端 根据终端能力进行如下判断: (I )如果所述终端具备联机能力, 则所述终端请 求联机; ( I I )如果所述终端不具备联机能力,则所述终端 求脱机批准; ( I I I ) 如果所述终端尝试联机失败后,则所述终端与 所述 IC卡进行标准借记 /货记交 易处理。

如图 2-5所示,步骤 A6进一步包括:如果判断出本次交易为电子现 交易, 则所述 IC卡执行如下步骤: (bl )如果所述终端脱机拒绝交易, 则所述 IC卡 在生成交易密文命令响应中返回应用认证密文 (AAC ); ( b2 )如果所述终端请 求联机交易,则所述 IC卡在生成交易密文命令响应中返回联机授权 求; ( b3 ) 如果所述终端请求脱机批准, 则所述 IC卡从所述电子现金余额中扣除所述授 权金额, 并在发卡方应用数据的发卡方自定义数据 ( IDD ) 中返回更新后的电 子现金余额。

如图 2-5所示, 步骤 A6中的所述数据认证步骤进一步包括: ( cl )所述终 端将动态应用数据传送给所述 IC卡以作为哈希运算的输入; ( c2 )所述 IC卡 将所述动态应用数据进行哈希运算, 并使用 IC卡私钥对哈希运算结果进行签 名以形成签名数据, 随后将所述签名数据、 发卡方公钥证书和 IC卡公钥证书 一并传递给所述终端; (c 3 )所述终端使用认证中心公钥解密所述发卡方 钥 证书, 从而恢复出发卡方公钥; (c4 )所述终端使用恢复出的发卡方公钥解密 所述 IC卡公钥证书, 从而恢复出 IC卡公钥; (c5 )所述终端使用恢复出的 IC 卡公钥对 IC卡私钥签名的数据进行解密, 从而得到哈希结果, 并与明文数据 的哈希结果进行比对。 其中, 所述动态应用数据包括签名的数据格式、哈希 算 法标识、 IC卡动态数据长度、 IC卡动态数据、 填充字节。

如图 2-5所示, 发明所公开的 IC卡支付方法还包括如下步骤: 完成数据 认证后, 所述终端进行如下安全性检查: (dl )新卡检查, 如果存在连续脱机 上限值和连续脱机下限值, 则所述终端检查最后联机交易序号寄存器,如 果最 后联机交易序号为 0, 则所述终端将终端险证结果(TVR ) 中的 "新卡" 位置 设置为 1; (d2)终端异常文件检查, 如果出现终端异常文件, 则所述终端检 所述终端异常文件 ,则所述终端将终端睑证结果(TVR) 中的 "卡号出现在 终端异常文件中" 位置设置为 1; (d3) 商户强制交易联机检查, 如果检查到 商户强制交易联机, 则所述终端将终端验证结果(TVR) 中的 "商户强制交易 联机" 位置设置为 1。

尽管本发明是通过上述的优选实施方式进行描 述的,但是其实现形式并不 局限于上述的实施方式。 应该认识到: 在不脱离本发明主旨和范围的情况下, 本领域技术人员可以对本发明做出不同的变化 和修改。