在交易金额无法事先确定时psam卡用于ic卡的连续扣款方法

文档序号:6586025阅读:424来源:国知局
专利名称:在交易金额无法事先确定时psam卡用于ic卡的连续扣款方法
技术领域
本发明涉及金融终端对IC卡的处理技术,具体地说是一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法。
IC卡目前在我国的金融、电信等领域得到了广泛的应用。IC卡功能强大、应用范围广,尤其是利用IC卡作为一种支付工具广泛应用人们的日常生活中,IC卡作为一种理想的代替磁条卡支付工具可以用在购物、消费等众多的场合。
目前IC卡作为支付工具使用时,主要是采用脱机(离线)扣款的方式。一般是在交易金额确定后,对IC卡作消费交易,在IC卡内一次性完成扣款,针对这种情况,中国人民银行为了统一中国的金融IC卡,特地制定了《中国金融集成电路(IC)卡规范》(中国金融出版社,书号ISBN7-5049-1937-3,1998.4),较好的解决了IC卡的规范化和通用性的问题。
对于交易金额确定的交易,采用上述的处理方式可以很好的解决支付问题。但是,另外一种情况是扣款的金额无法一次确定或是预见性的确定,对于无法确定或是预见性确定在日常生活中的例子很多,例如打电话、加油等等,对于这种情况,一般都是在打完电话或是加完油才知道确切的交易金额。如果采用在整个过程结束之后才可以确定金额,然后在IC卡内一次扣费,在此过程中如果持卡人提前抽卡,就会造成无法扣款,导致商户的损失,由于目前很多设备是无人执守的自助服务设备,采用这种方式就会有很大的风险。因此解决此类问题十分重要。
目前的解决方案主要是采用一种叫做“灰锁”的机制,灰锁的工作方式如下在开始交易前在卡内作灰锁标记,然后在扣款金额确定后,对IC卡作扣款交易。如果扣款成功,自动解除灰锁标记,IC卡可以继续正常使用;如果扣款失败或是提前抽卡,灰锁不会自动解除,这张卡就不可以继续使用了,必须回到发卡机构进行解锁处理,解除灰锁,同时办理其他手续(如补缴费)等,然后才可以继续使用。“灰锁”机制的要求很多,IC卡卡片必须支持灰锁机制,整个交易系统必须有完善的灰锁处理;如果一旦锁卡,用户必须回发卡机构解锁,才可继续使用,给用户带来极大的不便;最为重要的一点是灰锁和中国人民银行的标准不兼容,符合人民银行的金融IC卡无此机制,因此不可以在这些采用灰锁机制的系统或是设备上使用。另外灰锁机制必须制定新的技术标准,厂家才能按照标准,生产新的规范的IC卡,按照两种标准生产的卡片不兼容。
本发明的目的意在克服上述现有技术的不足,在完全符合中国人民银行集成电路IC卡标准的用户卡部分的前提下,提出一种在IC卡交易金额不确定或是无法预见情况下,能及时进行连续多笔扣款的处理方法。
实现上述目的的技术方案一种在交易金额无法事先确定时PSAM卡(《中国金融集成电路(IC)卡规范》中交易存取模块的简称)用于IC卡的连续扣款方法,包括连续多笔扣款初始化程序,产生连续多笔交易扣费单元的报文鉴别代码MAC1程序。扣费单元的报文鉴别代码MAC2的校验程序和结束连续多笔扣款程序,其中,1)连续多笔扣款初始化程序包括
a.设置累计交易金额变量,将累计交易金额变量中的累计交易金额置为0;b.PSAM在其内部用全国消费主密钥GMPK对试点城市标识分散,得到银行消费主密钥BMPK;c.PSAM在其内部用银行消费主密钥BMPK对成员行标识分散,得到成员行消费主密钥MPK;d.PSAM在其内部用成员行消费主密钥MPK对卡片应用序列号分散,得到卡片消费子密钥DPK;2)产生连续多笔交易扣费单元的报文鉴别代码MAC1的程序包括a.设置初始交易序号变量和结束交易序号变量;b.判定是开始扣费还是后续扣费,若是开始扣费,则将脱机交易序号赋值给初始交易序号变量,同时,令结束交易序号变量等于初始交易序号,若是后续扣费,则将脱机交易序号赋值给结束交易序号变量;c.用DPK对卡片传来的伪随机数、脱机交易序号、终端交易序号加密,得到过程密钥SESPK,作为临时密钥存放在卡中;d.用过程密钥SESPK对本扣费单元的交易金额、交易类型标识、终端机编号、交易日期和交易时间加密得到报文鉴别代码MAC1,将报文鉴别代码MAC1传送给IC卡。
3)从IC卡传送到PSAM卡的扣费单元的报文鉴别代码MAC2的校验程序包括
a.检查MAC2尝试计数器,如MAC2未被锁定,用过程密钥SESPK对交易金额加密得到MAC2`,将MAC2`与命令报文中的数据MAC2进行比较;b.若步骤a中加密数据MAC2`与命令报文中的数据MAC2完全相同,则PSAM卡将本扣费单元的交易金额累计入累计交易金额这个变量中,转步骤cc.当交易结束时,转结束连续多笔扣款流程,否则,由终端传来后续扣费标志,转PSAM卡产生连续多笔交易扣费单元的报文鉴别代码MAC1过程中的步骤b;d.若步骤a中加密数据MAC2`与命令报文中的数据MAC2不完全相同,则PSAM卡将MAC2尝试计数器减1,并回送状态码’63Cx’,转步骤e;e.当初始交易序号等于结束交易序号时,转连续多笔扣款初始化程序,当初始交易序号不等于结束交易序号时,转结束连续多笔扣款流程;f.如果’x’为零,PSAM卡将锁定消费密钥所在的全国密钥管理总中心AF;4)结束连续多笔扣款程序a.使用数据签名密钥SAM TACK对累计交易金额。交易类型标识。终端机编号。终端交易序号。交易日期和交易时间作交易鉴别代码TAC;b.终端脱机交易序号加1。
如果’x’为零,PSAM卡将锁定消费密钥所在的全国密钥管理总中心ADF。
扣费单元采用定值扣费或通过一个算法产生。
扣费单元采用逐渐次逼近的算法产生。
采用本发明提出的解决方案,由于在整个交易过程中,引入扣费单元的概念,很好地解决连续扣款或是扣款金额无法一次性确定的问题。本方法不采用灰锁机制,同时用户卡完全采用符合《中国金融集成电路(IC)卡规范》的用户卡片,各家银行发出的符合人行规范的IC卡无需作任何改动就可以解决这类问题,将应用的场合进一步扩大。PSAM卡在人行的标准上,增加上述技术方案就可以解决问题。同时这类PSAM卡不但可以用在传统的一次扣费场合,也可以用在多次扣费的场合。原有的IC卡系统的PSAM卡可以继续使用。
采用本文提出的解决办法和采用灰锁机制相比,其突出的技术进步在于一是用户卡无需作任何修改就可以使用,极大的节约了社会成本,使得《中国金融集成电路(IC)卡规范》的用户卡的应用范围扩大;原来发出的符合人行规范的IC卡不需要作任何改动就可以用于打电话、加油应用等场合;二是通过这种处理方法,原来IC卡的应用如POS设备、PSAM卡等不需作任何变动;只是在这些需要连续扣款或是交易金额无法一次确定的场合,改用新的PSAM卡,新的PSAM卡兼容原有的PSAM卡。三是由于不锁卡,极大的方便了用户和银行,用户不再会因为某些原因造成锁卡,免除了IC卡暂时不可使用带来的不便和麻烦;同时银行也不再需要为用户提供解开灰锁的工作,减低了银行的工作难度和压力。利用扣费单元的连续扣款方式可以代替灰锁机制的处理方法,彻底地解决了连续扣款或是交易金额无法一次确定的问题。
下面通过实施例,对本发明作进一步详细的说明
实施例一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,包括连续多笔扣款初始化程序。产生连续多笔交易扣费单元的报文鉴别代码MAC1程序。扣费单元的报文鉴别代码MAC2的校验程序和结束连续多笔扣款程序,其中,1)连续多笔扣款初始化程序包括a.设置累计交易金额变量,将累计交易金额变量中的累计交易金额置为0;b.PSAM在其内部用全国消费主密钥GMPK对试点城市标识分散,得到银行消费主密钥BMPK;c.PSAM在其内部用银行消费主密钥BMPK对成员行标识分散,得到成员行消费主密钥MPK;d.PSAM在其内部用成员行消费主密钥MPK对卡片应用序列号分散,得到卡片消费子密钥DPK。
通过连续多笔扣款初始化程序通知交易存取模块PSAM卡开始一个连续多笔扣款的处理流程,同时在PSAM内分散出这张卡的消费密钥,同时将累计交易金额置为0。
连续多笔扣款初始化命令支持多级消费密钥分散机制,分散产生《中国金融集成电路(IC)卡规范》中定义的消费子密钥DPK。根据银行IC卡试点技术方案,利用试点城市标识、成员行标识、卡片应用序列号分散得出卡片的消费子密钥DPK。
根据《中国金融集成电路(IC)卡规范》中规定的PSAM卡消费处理流程,消费密钥的分散过程由Lc和消费密钥共同确定,如果二者不一致,则返回错误信息。
以上分散密钥的过程和规范中规定的分散过程完全一样。
2)PSAM卡产生连续多笔交易扣费单元的报文鉴别代码MAC1程序包括a.设置初始交易序号变量和结束交易序号变量;b.根据终端传来参数判定是开始扣费还是后续扣费,若是开始扣费,则将脱机交易序号赋值给初始交易序号变量,同时,令结束交易序号变量等于初始交易序号,若是后续扣费,则将脱机交易序号赋值给结束交易序号变量;c.用DPK对卡片传来的伪随机数、脱机交易序号、终端交易序号加密,得到过程密钥SESPK,作为临时密钥存放在卡中;d.用过程密钥SESPK对本扣费单元的交易金额、交易类型标识、终端机编号、交易日期(终端)和交易时间(终端)加密得到报文鉴别代码MAC1,将报文鉴别代码MAC1传送给IC卡。
在此过程中,所有的中间结果只保留在卡片内部,外界无法得到。只有进行本命令后,才允许进行MAC2校验的命令。
参与处理的终端机编号和终端交易序号由卡片操作系统从卡片中取得。
上述产生从PSAM卡到IC卡的连续多笔交易扣费单元的报文鉴别代码MAC1(简称MAC1)程序,根据连续多笔扣款初始化,计算每个扣费单元的MAC1,产生《中国金融集成电路(IC)卡规范》中定义的MAC1。根据银行IC卡试点技术方案,利用DPK、随机数和交易信息得到过程密钥,进而加密得到MAC1。每个扣费单元的交易金额由交易终端(POS机)根据IC卡应用的特点确定。可以采用定值扣费(如打电话)或通过一个算法产生(如加油站加油可采用逐渐次逼近的算法),自适应交易过程。
3)从IC卡传送到PSAM卡的扣费单元的报文鉴别代码MAC2的校验程序包括a.检查MAC2尝试计数器,如MAC2未被锁定,用过程密钥SESPK对交易金额加密得到MAC2`,将MAC2`与命令报文中的数据MAC2进行比较;b.若步骤a中加密数据MAC2`与命令报文中的数据MAC2完全相同,则PSAM卡将本扣费单元的交易金额累计入累计交易金额这个变量中,转步骤c;c.当交易结束时,转结束连续多笔扣款流程,否则,由终端传来后续扣费标志,转PSAM卡产生连续多笔交易扣费单元的报文鉴别代码MAC1过程中的步骤b;d.若步骤a中加密数据MAC2`与命令报文中的数据MAC2不完全相同,则PSAM卡将MAC2尝试计数器减1,并回送状态码’63Cx’(这里’x’是MAC2尝试计数器的新值),转步骤e;e.当初始交易序号等于结束交易序号时,转连续多笔扣款初始化程序,当初始交易序号不等于结束交易序号时,转结束连续多笔扣款流程。
通过本程序,校验消费交易的MAC2,如果校验成功,将本扣费单元的金额累计入累计交易金额这个变量中。
为了保证PSAM卡对抗攻击,当x=0时,PSAM卡将锁定消费密钥所在的全国密钥管理总中心ADF。
在此过程中,所有的中间结果只保留在卡片内部,外界无法得到。
若MAC2尝试计数器为0的话,消费密钥所在的应用将被锁定,只能在应用维护密钥的控制下应用解锁后使用。
应用下的MAC2错误计数器在应用下所有消费密钥MAC2校验错误的情况下都要被减1。
4)结束连续多笔扣款程序a、使用数据签名密钥SAM TACK对累计交易金额。交易类型标识。终端机编号。终端交易序号。交易日期和交易时间作交易鉴别代码TAC;b、终端脱机交易序号加1。
根据需要,也可在结束连续多笔扣款程序步骤a中加入其它需要包含在签名中的内容,由终端作为参数值入。
结束连续多笔扣款程序是PSAM卡对整个过程的交易金额和消费数据,包括累计交易金额。开始时的交易序号。结束时的交易序号和终端机编号等,使用PSAM卡内的一个签名密钥作电子签名,算法和《中国金融集成电路(IC)卡规范》中交易鉴别代码TAC的计算算法完全相同。这个签名是PSAM卡对整个交易过程的确认。每个银行可以拥有自己的签名密钥。
综上所述,本发明PSAM卡在人行的标准上,只需增加上述几条简单的程序就可以很好地解决了连续扣款或是扣款金额无法一次性确定的问题。本方法不采用灰锁机制,同时用户卡完全采用符合《中国金融集成电路(IC)卡规范》的用户卡片,各家银行发出的符合人行规范的IC卡无需作任何改动就可以解决这类问题,将应用的场合得到了进一步扩大。同时这类PSAM卡不但可以用在传统的一次扣费场合,也可以用在多次扣费的场合。诸如打电话、加油等需要连续扣款或是扣款金额无法一次确定的场合采用本发明修改过的PSAM就可以很好地解决问题。
权利要求
1.一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,其特征在于包括连续多笔扣款初始化程序。产生连续多笔交易扣费单元的报文鉴别代码MAC1程序。扣费单元的报文鉴别代码MAC2的校验程序和结束连续多笔扣款程序,其中,1)连续多笔扣款初始化程序包括;a.设置累计交易金额变量,将累计交易金额变量中的累计交易金额置为0;b.PSAM在其内部用全国消费主密钥GMPK对试点城市标识分散,得到银行消费主密钥BMPK;c.PSAM在其内部用银行消费主密钥BMPK对成员行标识分散,得到成员行消费主密钥MPK;d.PSAM在其内部用成员行消费主密钥MPK对卡片应用序列号分散,得到卡片消费子密钥DPK;2)产生连续多笔交易扣费单元的报文鉴别代码MAC1的程序包括a.设置初始交易序号变量和结束交易序号变量;b.判定是开始扣费还是后续扣费,若是开始扣费,则将脱机交易序号赋值给初始交易序号变量,同时,令结束交易序号变量等于初始交易序号,若是后续扣费,则将脱机交易序号赋值给结束交易序号变量;c.用DPK对卡片传来的伪随机数、脱机交易序号、终端交易序号加密,得到过程密钥SESPK,作为临时密钥存放在卡中;d.用过程密钥SESPK对本扣费单元的交易金额、交易类型标识、终端机编号、交易日期和交易时间加密得到报文鉴别代码MAC1,将报文鉴别代码MAC1传送给IC卡;3)从IC卡传送到PSAM卡的扣费单元的报文鉴别代码MAC2的校验程序包括a.检查MAC2尝试计数器,如MAC2未被锁定,用过程密钥SESPK对交易金额加密得到MAC2`,将MAC2`与命令报文中的数据MAC2进行比较;b.若步骤a中加密数据MAC2`与命令报文中的数据MAC2完全相同,则PSAM卡将本扣费单元的交易金额累计入累计交易金额这个变量中,转步骤c;c.当交易结束时,转结束连续多笔扣款流程,否则,由终端传来后续扣费标志,转PSAM卡产生连续多笔交易扣费单元的报文鉴别代码MAC1过程中的步骤b;d.若步骤a中加密数据MAC2`与命令报文中的数据MAC2不完全相同,则PSAM卡将MAC2尝试计数器减1,并回送状态码’63Cx’,转步骤e;e.当初始交易序号等于结束交易序号时,转连续多笔扣款初始化程序,当初始交易序号不等于结束交易序号时,转结束连续多笔扣款流程;4)结束连续多笔扣款程序a.使用数据签名密钥SAM TACK对累计交易金额.交易类型标识。终端机编号。终端交易序号。交易日期和交易时间作交易鉴别代码TAC;b.终端脱机交易序号加1。
2.根据权利要求1所述一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,其特征在于如果’x’为零,PSAM卡将锁定消费密钥所在的全国密钥管理总中心ADF。
3.根据权利要求1所述一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,其特征在于扣费单元采用定值扣费或通过一个算法产生。
4.根据权利要求3所述一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,其特征在于扣费单元采用逐渐次逼近的算法产生。
全文摘要
一种在交易金额无法事先确定时PSAM卡用于IC卡的连续扣款方法,包括连续多笔扣款初始化程序。产生连续多笔交易扣费单元的报文鉴别代码MAC1程序。扣费单元的报文鉴别代码MAC2的校验程序和结束连续多笔扣款程序。采用上述技术方案,本发明在完全符合中国人民银行集成电路IC卡标准的用户卡部分的前提下,不但可以用在传统的一次扣费场合,更重要的是可以用在诸如打电话、加油等需要连续扣款或是扣款金额无法一次确定场合的扣费,很好地解决了无法事先确定情况下的及时扣费问题。
文档编号G06K19/067GK1332408SQ0112530
公开日2002年1月23日 申请日期2001年8月8日 优先权日2001年8月8日
发明者陈华, 徐恢 申请人:深圳市三金电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1