CN109741050B - 延长金融ic卡使用期限的方法以及相关方法和装置 - Google Patents

延长金融ic卡使用期限的方法以及相关方法和装置 Download PDF

Info

Publication number
CN109741050B
CN109741050B CN201811617938.2A CN201811617938A CN109741050B CN 109741050 B CN109741050 B CN 109741050B CN 201811617938 A CN201811617938 A CN 201811617938A CN 109741050 B CN109741050 B CN 109741050B
Authority
CN
China
Prior art keywords
card
data
financial
message
bank server
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
CN201811617938.2A
Other languages
English (en)
Other versions
CN109741050A (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.)
Bank of Communications Co Ltd
Original Assignee
Bank of Communications 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 Bank of Communications Co Ltd filed Critical Bank of Communications Co Ltd
Priority to CN201811617938.2A priority Critical patent/CN109741050B/zh
Publication of CN109741050A publication Critical patent/CN109741050A/zh
Application granted granted Critical
Publication of CN109741050B publication Critical patent/CN109741050B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Abstract

本发明提供一种延长金融IC卡使用期限的方法以及相关方法和装置,该方法包括:对待延期的金融IC卡进行身份认证和数据识别;向身份认证和数据识别成功的金融IC卡发送数据删除指令;根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据,而用于金融IC卡的制卡数据写入方法通过对该消息验证码进行校验,写入与校验通过的消息验证码对应的待写数据,实现不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。

Description

延长金融IC卡使用期限的方法以及相关方法和装置
技术领域
本发明涉及IC卡领域,尤其涉及一种延长金融IC卡使用期限的方法以及相关方法和装置。
背景技术
金融IC卡又称芯片银行卡,是以芯片作为介质的一种银行卡。金融IC卡的容量大,可以存储密钥、数字证书、指纹等信息,其工作原理类似于微型计算机,具有消费信用、转账结算、现金存取等多种金融功能,应用十分广泛。
金融IC卡通过嵌入卡中的集成电路芯片存储数据信息,与传统的磁条卡相比,金融IC卡具有以下优势:
1、实现一卡多用。金融IC卡的存储容量是传统磁条卡的数百倍,可植入更多的应用程序,比如社保、公交、零售、医院、自助售票及售货等,从而使金融IC卡被广泛应用除银行外的各个合作领域,真正实现“一卡多用、一卡通行”。
2、安全保密性好。相比磁条卡,金融IC卡具备很强的抗攻击能力,很难被复制与伪造。
3、“闪付”快捷消费。不同于传统的磁条卡中只能有一个账户,金融IC卡中还可以增加电子现金账户(即“电子钱包”),可通过“闪付”实现脱机快速消费。
但是,金融IC卡制造时,其内存储有金融IC卡有效日期数据,一般金融IC卡的有效期为10年或更短,导致了金融IC卡不可能长期使用,当有效期届满时,客户需要去银行换卡,银行作废原有金融IC卡,并为客户制新金融IC卡,客户一般需等待7个工作日才可以拿到金融IC卡,导致用户体验极差,并且给银行带来巨额开销。
发明内容
本发明提供一种延长金融IC卡使用期限的方法、装置、系统、设备以及介质,不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。
为了实现上述目的,本发明采用如下技术方案:
第一方面,提供一种延长金融IC卡使用期限的方法,包括:
对待延期的金融IC卡进行身份认证和数据识别;
向身份认证和数据识别成功的金融IC卡发送数据删除指令;
根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据。
进一步地,该对待延期的金融IC卡进行身份认证和数据识别,包括:
根据用户的延期请求,通过读卡器向该金融IC卡发送调用指令;
接收该金融IC卡反馈的主密钥;
调用加密机对该主密钥进行校验;
当校验通过时,向该金融IC卡发送渠道开启指令;
接收该金融IC卡返回的报文,该报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
调用加密机判断该报文的真实性,实现数据识别。
进一步地,该根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据,包括:
根据该历史业务数据以及金融IC卡有效期信息生成密钥;
根据该密钥、该历史业务数据以及该有效期信息生成该制卡数据。
进一步地,该密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
第二方面,提供一种延长金融IC卡使用期限的装置,包括:
认证识别模块,对待延期的金融IC卡进行身份认证和数据识别;
删除指令发送模块,向身份认证和数据识别成功的金融IC卡发送数据删除指令;
制卡数据生成模块,根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据。
进一步地,该认证识别模块包括:
调用指令发送单元,根据用户的延期请求,通过读卡器向该金融IC卡发送调用指令;
主密钥接收单元,接收该金融IC卡反馈的主密钥;
主密钥校验单元,调用加密机对该主密钥进行校验;
渠道开启指令发送单元,当校验通过时向该金融IC卡发送渠道开启指令;
报文接收单元,接收该金融IC卡返回的报文,该报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
数据识别单元,调用加密机判断该报文的真实性,实现数据识别。
进一步地,该制卡数据生成模块包括:
密钥生成单元,根据该历史业务数据以及金融IC卡有效期信息生成密钥;
数据生成单元,根据该密钥、该历史业务数据以及该有效期信息生成该制卡数据。
进一步地,该密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
第三方面,提供一种用于金融IC卡的制卡数据写入方法,包括:
根据银行服务器的身份认证和数据识别指令输出认证识别信息;
根据该银行服务器反馈的数据删除指令删除历史业务数据,该数据删除指令由该银行服务器根据认证识别信息进行身份认证和数据识别成功后生成;
接收该银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条该制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息;
对该消息验证码进行校验;
写入与校验通过的消息验证码对应的待写数据。
进一步地,该根据银行服务器的身份认证和数据识别指令输出认证识别信息,包括:
接收并校验该银行服务器根据用户的延期请求而发送的调用指令,当校验通过时向该银行服务器输出主密钥,以使该银行服务器根据该主密钥进行身份认证;
接收并校验该银行服务器在根据该主密钥进行身份认真通过后而发送的渠道开启指令,当校验通过时向该银行服务器输出报文,以使该银行服务器根据该报文进行数据识别。
进一步地,该报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
该当校验通过时向该银行服务器输出报文,包括:
当校验通过时向读卡器发送随机数读取指令,以获得读卡器随机数;
根据本地计数器中的金融IC卡随机数以及该读卡器随机数产生认证密文,并将该读卡器随机数、该金融IC卡随机数以及该认证密文输出。
进一步地,该根据该银行服务器反馈的数据删除指令删除历史业务数据,包括:
接收并校验该银行服务器反馈的该数据删除指令,当校验通过时删除该本地的原始制卡数据。
进一步地,用于金融IC卡的制卡数据写入方法还包括:
接收并校验该银行服务器反馈的数据备份指令,当校验通过时输出历史业务数据,用于数据备份。
进一步地,该制卡数据包包括:历史业务数据、金融IC卡有效期信息、RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
第四方面,提供一种用于金融IC卡的制卡数据写入装置,包括:
认证识别输出模块,根据银行服务器的身份认证和数据识别指令输出认证识别信息;
数据删除模块,根据该银行服务器反馈的数据删除指令删除历史业务数据,该数据删除指令由该银行服务器根据认证识别信息进行身份认证和数据识别成功后生成;
接收模块,接收该银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条该制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息;
消息验证码校验模块,对该消息验证码进行校验;
写入模块,写入与校验通过的消息验证码对应的待写数据。
进一步地,该认证识别输出模块包括:
主密钥输出单元,接收并校验该银行服务器根据用户的延期请求而发送的调用指令,当校验通过时向该银行服务器输出主密钥,以使该银行服务器根据该主密钥进行身份认证;
报文输出单元,接收并校验该银行服务器在根据该主密钥进行身份认真通过后而发送的渠道开启指令,当校验通过时向该银行服务器输出报文,以使该银行服务器根据该报文进行数据识别。
第五方面,提供一种金融服务系统,包括:读卡器、银行服务器以及加密机,该银行服务器执行上述延长金融IC卡使用期限的方法。
第六方面,一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,该处理器执行该计算机程序时实现上述延长金融IC卡使用期限的方法的步骤。
第七方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述延长金融IC卡使用期限的方法的步骤或上述用于金融IC卡的制卡数据写入方法的步骤。
本发明提供的延长金融IC卡使用期限的方法、用于金融IC卡的制卡数据写入方法、相关装置、设备和介质,该延长金融IC卡使用期限的方法包括:对待延期的金融IC卡进行身份认证和数据识别;向身份认证和数据识别成功的金融IC卡发送数据删除指令;根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据,而用于金融IC卡的制卡数据写入方法通过对该消息验证码进行校验,写入与校验通过的消息验证码对应的待写数据,实现不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。
为让本发明的上述和其他目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附图式,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了本发明实施例一种金融服务系统的结构框图;
图2是本发明实施例一种延长金融IC卡使用期限的方法的流程图;
图3示出了图2中步骤S100的具体步骤;
图4示出了本发明实施例一种延长金融IC卡使用期限的装置的结构图;
图5是本发明实施例一种用于金融IC卡的制卡数据写入方法的流程图;
图6示出了本发明实施例一种用于金融IC卡的制卡数据写入装置的结构图;
图7示出了采用本发明实施例延长金融IC卡使用期限的整体流程;
图8为本发明实施例计算机设备的结构图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
现有金融IC卡的有效期届满时,客户需要去银行换卡,银行作废原有金融IC卡,并为客户制新金融IC卡,客户一般需等待7个工作日才可以拿到金融IC卡,导致用户体验极差,并且给银行带来巨额开销。
由于金融IC卡中包含金融IC卡失效期的数据分组完全不可修改,无法通过正常途径将一张金融IC卡的使用期限延长(金融IC卡中由数据域包含失效日期标识)。本发明实施例采用金融数据加消息验证码方式,让金融IC卡可以校验通过新生成的金融数据,再次将数据写入IC卡中。
具体地,本发明实施例提供一种延长金融IC卡使用期限的方法以及用于金融IC卡的制卡数据写入方法,该延长金融IC卡使用期限的方法根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据,而用于金融IC卡的制卡数据写入方法通过对该消息验证码进行校验,写入与校验通过的消息验证码对应的待写数据,实现不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。具体通过下述实施例及应用场景进行具体说明。
图1示出了本发明实施例一种金融服务系统的结构框图。如图1所示,该金融服务系统主要包括:读卡器1a、银行服务器1b以及加密机1c,其中,读卡器1a、银行服务器1b以及加密机1c主要设置在银行端1,用于与金融IC卡2进行数据交互,以延长金融IC卡2的使用期限。
其中,该读卡器1a主要用于读取金融IC卡2中的数据信息并向金融IC卡2传输指令,作为银行服务器1b与金融IC卡2之间的交互设备。
银行服务器1以及加密机1c主要设置在银行的应用系统中,该银行服务器1主要用于执行本发明实施例一种延长金融IC卡使用期限的方法的步骤,加密机1c用于产生密钥并对金融IC卡2中的密钥进行校验。
从银行服务器的角度来说,为了能够延长金融IC卡使用期限,缩短客户等待时间,本申请提供一种延长金融IC卡使用期限的方法的实施例,由银行服务器执行该方法的步骤,参见图2,该延长金融IC卡使用期限的方法包括:
步骤S100:对待延期的金融IC卡进行身份认证和数据识别。
其中,因金融领域对数据安全性的要求高,为保障数据安全,在金融IC卡与银行服务器进行交互和数据修改过程中,身份认证和数据识别尤为重要,可以有效保障金融数据的安全性。
具体地,以读卡器为媒介,读取金融IC卡的身份认证信息和数据识别信息,进行身份认证和数据识别。
步骤S200:向身份认证和数据识别成功的金融IC卡发送数据删除指令。
其中,当金融IC卡身份认证和数据识别成功后,生成数据删除指令,并下发至金融IC卡,以便金融IC卡根据该指令删除其内的制卡数据。
步骤S300:根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据。
具体地,历史业务数据中包含多条历史业务数据,历史业务数据中包含多条业务数据。
针对每条历史业务数据,首先根据该条历史业务数据以及金融IC卡有效期信息生成密钥;然后根据该密钥、该历史业务数据以及有效期信息生成一条新的制卡数据。其中,该密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
其中,每条业务数据均需要重新写入金融IC卡中,每条业务数据均与有效期信息一起生成一条制卡数据,以便将多条业务数据逐条写入金融IC卡中。
另外,每条制卡数据均包括消息验证码和待写数据,该消息验证码用于金融IC卡对该制卡数据的身份或写入权限进行验证,只要该消息验证码经过金融IC卡验证通过后,该金融IC卡中的系统才允许该条制卡数据写入,否则拒绝写入该条制卡数据,由此能够保障新的制卡数据的写入安全,防止数据被篡改。
其中,该消息验证码(MAC)通过调用加密机产生,产生消息验证码所用公式如下:
HMAC(K,M)=H(K⊕opad∣H(K⊕ipad∣M)),
其中,K为主密钥,由加密机产生,另外,该主密钥的长度需为64字节,若小于64字节,需在后面补“0”。M是上下文消息;H为散列函数;opad和ipad分别是由若干个0x5c和0x36组成的字符串,该字符串为固定值,由程序写入并制数量;⊕标识异或运算,|标识链接操作,举例来说,opad与ipad为两个字符串,链接操作表示为将两个字符串合并成一个字符串。
消息验证码和密钥(统称为“过程密钥A”和“过程密钥B”)的产生过程如下:
首先,金融IC卡/发卡行决定(或随机选择)是使用消息验证码密钥A和B还是数据加密密钥A和B来进行所选择的算法处理。(以下统称为“KeyA”和“KeyB”,其中,金融IC卡中的Key在制卡的过程中写入金融IC卡,银行端的Key由银行服务器向加密机请求已有A,B密钥)。
然后,将当前的ATC(金融IC卡内部计数器,用于统计金融IC卡使用次数)在其左边用十六进制数字‘0’填充到8个字节,用KeyA和KeyB对该数据作3-DES运算产生过程密钥A:
Z=3-DES(Key)[‘00’||‘00’||‘00’||‘00’||‘00’||‘00’||ATC]。
具体为:根据KeyA对输入数据进行DES加密,得到加密数据,然后利用KeyB对该加密数据进行DES解密,得到解密数据,之后,再利用KeyA对解密数据进行DES加密,得到单长度过程密钥。
另外,过程密钥(指金融IC卡与后台系统交互时为了确保安全由KeyA,KeyB加密过后的数据)的产生过程如下:
首先,进行数据填充并分块:依据GB/T 16649.4对报文MSG(银行后台系统生成制卡数据中的不同步骤,每个步骤可以理解为一个MSG)进行填充,因此在MSG的右端强制加上1个‘80’字节,然后再在右端加上最少的‘00’字节,使得结果报文的长度MSG=(MSG||‘80’||‘00’||‘00’||…||‘00’)是8字节的整数倍,其中,“||”为字符串连接,例如‘80’||’00’的结果为‘8000’,再将MSG拆分为8字节的块X1~XK,用于密文计算。
然后,产生消息验证码过程密钥:消息验证码过程密钥KS(KS是由数据通过KeyA,KeyB计算得出)既可以只包括最左端密钥块(即:上一步分解的密钥块),即:KS=KSL,也可以由最左端密钥块和最右端密钥块连接而成,即:KS=(KSL||KSR)。
最后,进行密文计算:用消息验证码过程密钥的最左端块KSL,以CBC模式的分组加密处理8字节块X1~XK。其中,CBC模式是一种加密模式,利用过程密钥最左端块KSL分别处理消息验证码被分成的从X1-XK16个模块。
Hi=ALG(KSL)[Xi⊕Hi-1],其中,i=1~K。初始值H0=(‘00’||‘00’||‘00’||‘00’||‘00’||‘00’||‘00’||‘00’)。
其中,可以采用两种方法计算8字节的块HK+1。
1.依照ISO/IEC 9797-1算法1:HK+1=HK;
2.依照ISO/IEC 9797-1算法3:HK+1=ALG(KSL)[ALG-1(KSR)[HK]]。
JR/T 0025使用第二种计算方法。
MAC的值等于HK+1的从左向右前s个字节的值。
另外,可以根据KMC(金融IC卡管理主密钥)获取到消息验证码过程密钥等,然后KMC计算出消息验证码的值。
通过84820100(认证指令)指令以及第一步计算出的消息验证码的值,返回正确的校验值(该校验值用于认证金融IC卡是否为本行卡),认证第一个消息验证码值保留,作为下一个消息运算的初始值填进该消息中。
根据认证获取到消息验证码的过程密钥之后,做单长度DES密钥加密(即对制卡数据进行加密)获取的值作为MAC计算初始值,根据金融IC卡应用的列表的指令(84F24000)得到消息验证码值,保留(消息验证码计算中需制卡数据加上下文关系由KeyA,Key(过程密钥)加密而成,但首次制卡数据产生时并无上下文(MSG)所以首次应添加该值)。其中,单长度DES密钥加密时可根据加密的值采用单长度DES加密和双长度DES加密,如加密的值为8位则采用单长度DES加密,如加密的值为8的倍数位则采用双长度DES加密。
综上所述,本发明实施例提供的延长金融IC卡使用期限的方法,根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据,而用于金融IC卡的制卡数据写入方法通过对该消息验证码进行校验,写入与校验通过的消息验证码对应的待写数据,实现不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。
图3示出了图2中步骤S100的具体步骤。如图3所示,该步骤S100包括:
步骤S101:根据用户的延期请求,通过读卡器向该金融IC卡发送调用指令。
其中,通过调用指令获取该金融IC卡的主密钥。
值得说明的是,金融IC卡在发卡时,银行服务器会调用密钥机生成公私钥对,公钥存储在银行的密钥机中,私钥则作为主密钥存储在金融IC卡中,作为银行识别该金融IC卡的依据。其中,该公私钥对可以是相同的一对密钥,也可以是呈一定关联关系的一对密钥。
步骤S102:接收该金融IC卡反馈的主密钥。
步骤S103:调用加密机对该主密钥进行校验。
具体地,利用加密机中的公钥对该主密钥进行匹配校验。
步骤S104:当校验通过时,向该金融IC卡发送渠道开启指令。
其中,通过向金融IC卡发送渠道开启指令,使得金融IC卡反馈卡内的报文。
步骤S105:接收该金融IC卡返回的报文,该报文包括:读卡器随机数、金融IC卡随机数以及认证密文。
具体地,该读卡器随机数为在该金融IC卡接收到渠道开启指令后,从读卡器中读取的一数值,该金融IC卡随机数为金融IC卡计数器中当前时刻的数值,实际应用中,该金融IC卡的系统中存在一套计算机制,银行的服务器中存在一套与该计算机制匹配或相同的计算机制,该金融IC卡根据读卡器随机数、金融IC卡随机数,通过该计算机制得到认证密文。
步骤S106:调用加密机判断该报文的真实性,实现数据识别。
具体地,通过调用加密机,利用计算机制根据该读卡器随机数、金融IC卡随机数计算认证密文,若得到的认证密文与该金融IC卡上传的认证密文相同或匹配,则认为该报文真实可靠,实现了数据识别,否则,则不认定该报文的真实性。
通过分析可以得知,通过采用认证匹配校验机制,能够有效保证银行金融数据的真实可靠性,有效防止在延长金融IC卡使用期限时数据被篡改。
可以理解的是,在金融IC卡与银行服务器交互时,通过金融IC卡与读卡器产生的随机数进行报文认证,并进行安全离散处理保证数据在传送过程中未被篡改。
离散处理方法:为每张金融IC卡生成一个校验码分散密钥KMAC,并写入相应的IC卡,这个密钥用来校验EXTERNAL AUTHENTICATE(外部认证)命令使用的对称CMAC。其中,KMAC是一个16字节的密钥。
KMAC采用以下公式产生:
KMAC=DES3(KMC)[KEYDATA的6个最低有效字节||’F0’||’02’]||DES3(KMC)[KEYDATA的6个最低有效字节||‘0F’||’02’]。
另外,必须为每张金融IC卡生成一个密钥加密的分散密钥(KDEK)并将它写入相应的金融IC卡,这个密钥用来对STORE DATA(存储数据)命令收到的机密数据进行解密。其中,KEDK是一个16字节的密钥。
其中,KEDK采用以下公式产生:
KEDK=DES3(KMC)[KEYDATA的6个最低有效字节||’F0’||’03’]||DES3(KMC)[KEYDATA的6个最低有效字节||‘0F’||’03’]。
离散处理主要包括:以主账号(卡号)和主账号序列号(如果主账号序列号不存在,则用一个字节“00”代替)的最右16个数字作为输入数据,以及16字节的发卡行主密钥IMK作为输入,生成16字节的IC卡子密钥MK作为输出值。
基于同一发明构思,本申请实施例还提供了一种延长金融IC卡使用期限的装置,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于延长金融IC卡使用期限的装置解决问题的原理与上述方法相似,因此延长金融IC卡使用期限的装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4示出了本发明实施例一种延长金融IC卡使用期限的装置的结构图。如图4所示,该延长金融IC卡使用期限的装置100包括:认证识别模块110、删除指令发送模块120以及制卡数据生成模块130。
认证识别模块110对待延期的金融IC卡进行身份认证和数据识别。
其中,因金融领域对数据安全性的要求高,为保障数据安全,在金融IC卡与银行服务器进行交互和数据修改过程中,身份认证和数据识别尤为重要,可以有效保障金融数据的安全性。
具体地,以读卡器为媒介,读取金融IC卡的身份认证信息和数据识别信息,进行身份认证和数据识别。
删除指令发送模块120向身份认证和数据识别成功的金融IC卡发送数据删除指令。
制卡数据生成模块130根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据。
具体地,历史业务数据中包含多条历史业务数据,历史业务数据中包含多条业务数据。
该制卡数据生成模块130可以包括:密钥生成单元以及数据生成单元。
密钥生成单元根据该历史业务数据以及金融IC卡有效期信息生成密钥。
数据生成单元根据该密钥、该历史交易数据以及该有效期信息生成该制卡数据。
其中,该密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
其中,每条业务数据均需要重新写入金融IC卡中,每条业务数据均与有效期信息一起生成一条制卡数据,以便将多条业务数据逐条写入金融IC卡中。
另外,每条制卡数据均包括消息验证码和待写数据,该消息验证码用于金融IC卡对该制卡数据的身份或写入权限进行验证,只要该消息验证码经过金融IC卡验证通过后,该金融IC卡中的系统才允许该条制卡数据写入,否则拒绝写入该条制卡数据,由此能够保障新的制卡数据的写入安全,防止数据被篡改。
其中,该消息验证码(MAC)通过调用加密机产生。
综上所述,本发明实施例提供的延长金融IC卡使用期限的装置,根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至该金融IC卡进行延期处理,其中,每条该制卡数据均包括消息验证码和待写数据,而用于金融IC卡的制卡数据写入方法通过对该消息验证码进行校验,写入与校验通过的消息验证码对应的待写数据,实现不需要作废原有金融IC卡就可以有效延长金融IC卡使用期限,缩短客户等待时间,提高用户体验,并且减少银行的开销。
在一个可选的实施例中,该认证识别模块110可以包括:调用指令发送单元、主密钥接收单元、主密钥校验单元、渠道开启指令发送单元、报文接收单元以及数据识别单元。
调用指令发送单元根据用户的延期请求,通过读卡器向该金融IC卡发送调用指令。
其中,通过调用指令获取该金融IC卡的主密钥。
值得说明的是,金融IC卡在发卡时,银行服务器会调用密钥机生成公私钥对,公钥存储在银行的密钥机中,私钥则作为主密钥存储在金融IC卡中,作为银行识别该金融IC卡的依据。其中,该公私钥对可以是相同的一对密钥,也可以是呈一定关联关系的一对密钥。
主密钥接收单元接收该金融IC卡反馈的主密钥。
主密钥校验单元调用加密机对该主密钥进行校验。
具体地,利用加密机中的公钥对该主密钥进行匹配校验。
渠道开启指令发送单元当校验通过时向该金融IC卡发送渠道开启指令。
其中,通过向金融IC卡发送渠道开启指令,使得金融IC卡反馈卡内的报文。
报文接收单元接收该金融IC卡返回的报文,该报文包括:读卡器随机数、卡片随机数以及认证密文。
具体地,该读卡器随机数为在该金融IC卡接收到渠道开启指令后,从读卡器中读取的一数值,该金融IC卡随机数为金融IC卡计数器中当前时刻的数值,实际应用中,该金融IC卡的系统中存在一套计算机制,银行的服务器中存在一套与该计算机制匹配或相同的计算机制,该金融IC卡根据读卡器随机数、金融IC卡随机数,通过该计算机制得到认证密文。
数据识别单元,调用加密机判断该报文的真实性,实现数据识别。
具体地,通过调用加密机,利用计算机制根据该读卡器随机数、金融IC卡随机数计算认证密文,若得到的认证密文与该金融IC卡上传的认证密文相同或匹配,则认为该报文真实可靠,实现了数据识别,否则,则不认定该报文的真实性。
通过分析可以得知,通过采用认证匹配校验机制,能够有效保证银行金融数据的真实可靠性,有效防止在延长金融IC卡使用期限时数据被篡改。
从金融IC卡的角度来说,为了能够延长其使用期限,缩短客户等待时间,本申请提供一种用于金融IC卡的制卡数据写入方法的实施例,由金融IC卡内的系统执行该方法的步骤,参见图5,该用于金融IC卡的制卡数据写入方法运行在该金融IC卡的系统中,具体包括:
步骤S10:根据银行服务器的身份认证和数据识别指令输出认证识别信息。
其中,根据银行服务器下发的指令向银行服务器反馈认证识别信息进行身份认证和数据识别,只有身份认证和数据识别成功后,才与该银行服务器进行数据交互,以此保障金融数据安全。
具体地,当接收到银行服务器根据用户的延期请求而下发的调用指令后,首先对该调用指令进行验证,验证通过后,才会向银行服务器输出该金融IC卡的主密钥,以使所述银行服务器根据所述主密钥进行身份认证。
另外,在身份认证成功后,该银行服务器会下发渠道开启指令,以使该金融IC卡与该银行服务器建立通信连接。此时,当金融IC卡接收到渠道开启指令后,首先对该校验渠道开启指令进行校验,当校验通过时输出金融IC卡的报文,以使所述银行服务器根据所述报文进行数据识别。
值得说明的是,该报文主要包括:读卡器随机数、卡片随机数以及认证密文。
当校验通过时输出金融IC卡的报文主要包括以下步骤:
步骤a:当校验通过时向读卡器发送随机数读取指令,以获得读卡器随机数;
步骤b:根据本地计数器中的卡片随机数以及该读卡器随机数产生认证密文,并将该读卡器随机数、该卡片随机数以及该认证密文输出。
具体地,实际应用中,该金融IC卡的系统中存在一套计算机制,银行的服务器中存在一套与该计算机制匹配或相同的计算机制,该金融IC卡根据读卡器随机数、金融IC卡随机数,通过该计算机制得到认证密文。
银行服务器对报文进行真实性认证时,调用加密机,利用加密机中的计算机制根据该读卡器随机数、金融IC卡随机数计算认证密文,若得到的认证密文与该金融IC卡上传的认证密文相同或匹配,则认为该报文真实可靠,实现了数据识别,否则,则不认定该报文的真实性。
步骤S20:根据所述银行服务器反馈的数据删除指令删除历史业务数据,所述数据删除指令由所述银行服务器根据认证识别信息进行身份认证和数据识别成功后生成。
具体地,当该金融IC卡接收到银行服务器下发的数据删除指令后,首先对该数据删除指令进行校验,当校验通过后,删除该金融IC卡内的原始制卡数据。
其中,根据获取到的实例列表,开始删除实例(值得说明的是,金融IC卡中银行数据作为实例加载在金融IC卡中,此处为删除该金融IC卡中现有的银行数据),执行删除指令(84E40000),根据消息验证码以及具体的实例,进行删除。其中,为确保安全,消息验证码中包含金融IC卡可以解析的数据指令,确保只有本行数据可以对金融IC卡进行操作。
步骤S30:接收所述银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条所述制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息。
其中,该制卡数据包包括:历史业务数据、金融IC卡有效期信息、RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
步骤S40:对该消息验证码进行校验。
步骤S50:写入与校验通过的消息验证码对应的待写数据。
具体地,写入数据的过程实际上就是安装实例的过程,根据安装实例指令以及消息验证码值和具体实例,开始安装实例至金融IC卡中。
消息验证码校验过程:首先确认消息验证码的顺序(为了确认银行金融数据为合法数据,并按照先后顺序加载入金融IC卡,由于银行服务器是将所有制卡数据处理过后分成不同的消息验证码)。然后选择应用。之后进行初始化更新(银行卡数据作为一个应用安装到金融IC卡的操作系统中,并且每个行的应用id(AID)是不一样的,可自行设置)。
获取到消息验证码过程密钥,根据KMC计算出消息验证码值,重新计算法消息验证码之后,进行外部认证。值得说明的是,因为消息验证码是由KeyA、KeyB两个过程密钥加密得来,所以要获取密钥重新计算消息验证码,也就是解密的过程。另外,过程密钥也存放在卡片无法被外部读取的安全元件中,IC卡本身通过指令获取该密钥。
为确保数据安全,并且解析数据,重新计算消息验证码,根据写卡指令,将卡片数据根据规范写入不同分组。其中,分组是由银联颁发的IC卡规范将卡片数据分组归类得来的。
其中,该金融IC卡删除历史业务数据后进行数据重写过程,在写入一条制卡数据时,首先对该条制卡数据中的消息验证码进行校验,当校验通过时,才会允许写入该条制卡数据中的待写数据,否则拒绝数据写入,以此确保数据写入安全,实现数据重写,达到延长金融IC卡有效期的效果。
在一个可选的实施例中,该用于金融IC卡的制卡数据写入方法还可以包括:
接收银行服务器下发的数据备份指令;
对该数据备份指令进行校验;
当校验通过时,输出该金融IC卡内的历史业务数据至银行服务器,以此实现数据备份,防止重写卡失败时数据丢失。
基于同一发明构思,本申请实施例还提供了一种用于金融IC卡的制卡数据写入装置,可以用于实现上述实施例所描述的方法,如下面的实施例所述。由于用于金融IC卡的制卡数据写入装置解决问题的原理与上述方法相似,因此用于金融IC卡的制卡数据写入装置的实施可以参见上述方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6示出了本发明实施例一种用于金融IC卡的制卡数据写入装置的结构图。如图6所示,该用于金融IC卡的制卡数据写入装置200包括:认证识别输出模块210、数据删除模块220、接收模块230、消息验证码校验模块240以及写入模块250。其中:
认证识别输出模块210根据银行服务器的身份认证和数据识别指令输出认证识别信息。
其中,根据银行服务器下发的指令向银行服务器反馈认证识别信息进行身份认证和数据识别,只有身份认证和数据识别成功后,才与该银行服务器进行数据交互,以此保障金融数据安全。
具体地,该认证识别输出模块210可以包括:主密钥输出单元以及报文输出单元。
主密钥输出单元接收并校验该银行服务器根据用户的延期请求而发送的调用指令,当校验通过时向该银行服务器输出主密钥,以使该银行服务器根据该主密钥进行身份认证。
报文输出单元接收并校验该银行服务器在根据该主密钥进行身份认真通过后而发送的渠道开启指令,当校验通过时向该银行服务器输出报文,以使该银行服务器根据该报文进行数据识别。
值得说明的是,该报文主要包括:读卡器随机数、卡片随机数以及认证密文。
当校验通过时输出金融IC卡的报文主要包括以下步骤:
步骤a:当校验通过时向读卡器发送随机数读取指令,以获得读卡器随机数;
步骤b:根据内部卡片交易计数器中的卡片随机数以及该读卡器随机数产生认证密文,并将该读卡器随机数、该卡片随机数以及该认证密文输出。
具体地,实际应用中,该金融IC卡的系统中存在一套计算机制,银行的服务器中存在一套与该计算机制匹配或相同的计算机制,该金融IC卡根据读卡器随机数、金融IC卡随机数,通过该计算机制得到认证密文。
银行服务器对报文进行真实性认证时,调用加密机,利用加密机中的计算机制根据该读卡器随机数、金融IC卡随机数计算认证密文,若得到的认证密文与该金融IC卡上传的认证密文相同或匹配,则认为该报文真实可靠,实现了数据识别,否则,则不认定该报文的真实性。
数据删除模块220根据该银行服务器反馈的数据删除指令删除历史业务数据,该数据删除指令由该银行服务器根据认证识别信息进行身份认证和数据识别成功后生成。
具体地,当该金融IC卡接收到银行服务器下发的数据删除指令后,首先对该数据删除指令进行校验,当校验通过后,删除该金融IC卡内的原始制卡数据。
接收模块230接收该银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条该制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息。
其中,该制卡数据包包括:历史业务数据、金融IC卡有效期信息、RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
消息验证码校验模块240对该消息验证码进行校验。
写入模块250写入与校验通过的消息验证码对应的待写数据。
其中,该金融IC卡删除历史业务数据后进行数据重写过程,在写入一条制卡数据时,首先对该条制卡数据中的消息验证码进行校验,当校验通过时,才会允许写入该条制卡数据中的待写数据,否则拒绝数据写入,以此确保数据写入安全,实现数据重写,达到延长金融IC卡有效期的效果。
在一个可选的实施例中,该用于金融IC卡的制卡数据写入装置还可以包括:数据备份指令接收模块、数据备份指令校验模块以及数据输出模块。
该数据备份指令接收模块接收银行服务器下发的数据备份指令。
该数据备份指令校验模块对该数据备份指令进行校验。
该数据输出模块在校验通过时,输出该金融IC卡内的历史业务数据至银行服务器,以此实现数据备份,防止重写卡失败时数据丢失。
基于上述内容,本申请提供一种延长金融IC卡使用期限的场景,如图7所示,具体内容如下:
延长金融IC卡使用期限可采用两种工作模式:
1.将读卡器放置银行柜台,并对接银行服务器,在用户需要延长金融IC卡使用期限时,持卡人将金融IC卡交由银行柜员,由银行柜员将金融IC卡插入读卡器,操作系统进行卡片升级。
2.将银行自助机具(相当于读卡器)对接银行服务器,持卡人自行在自助机具操作对卡片进行升级。
另外,该金融IC卡使用期限的流程主要包括:
1.将卡片插入读卡器中,银行服务器接收到卡片延期指令,发起卡片重写交易。
2.银行服务器控制读卡器调用IC卡接口,向卡片发送调用指令;
3.卡片接收到调用指令后,对该调用指令进行校验,校验通过时返回主密钥至银行服务器。
4.银行服务器调用加密机对该主密钥进行校验;
5.由加密机返回主密钥校验值;
6.银行服务器根据该主密钥校验值认证该卡片是否为本行卡,即身份识别,以此判断是否可对卡片进行操作;
7.当身份识别成功后,银行服务器向卡片发送OPEN CHANNEL(渠道开启)指令8050;
8.卡片接收到OPEN CHANNEL指令后,对该OPEN CHANNEL进行校验,校验通过后,卡片与读卡器交互,向读卡器发送随机数读取指令,获取读卡器随机数,并将该数添加至报文的相关数据域(可以认为是返回报文中的一参数区域)中,同时调用卡片内部ATC(卡片交易计数器)的卡片随机数,并根据卡片随机数以及读卡器随机数产生认证密文,并将该卡片随机数和认证密文插入报文的相关数据域中,然后卡片通过读卡器将报文返回银行服务器。
9.银行服务器通过调用加密机认证密文和卡片随机数,以识别卡片返回数据是否为真实有效数据。
10.银行服务器根据加密机返回的结果判断认证密文与随机数是否合规,若是,则调用IC卡接口,向卡片发送数据删除指令;
11.卡片接收到数据删除指令后,校验数据删除指令,当校验通过时删除金融IC卡内的原始制卡数据,并向该银行服务器返回删除成功的信息。
12.银行服务器在接收到删除成功的信息后,进行OPEN CHANNEL认证,认证通过后,组织数据域(银行服务器此时已经将卡片有效期放入对应数据域中)向加密机进行请求,根据卡片原始数据调用加密机,由加密机生成新有效期的制卡数据,包括产生RSA公私钥对、发卡行私钥加密、产生离散的发卡行主密钥和应用主密钥并在每条数据后根据上下文加入MAC演算,即在产生新的制卡数据的所有步骤中均加入消息验证码,使卡片可以校验通过新的制卡数据,其中,新的制卡数据中还有新的有效期信息,并由银行服务器调用IC卡接口,将新的制卡数据传输至金融IC卡;
13.卡片接收新的制卡数据,对每条制卡数据进行MAC校验,当MAC校验通过时,写入该制卡数据的内容,当MAC校验失败时,拒绝写入该制卡数据的内容,当新的制卡数据写入成功后,新的有效期信息也写入了该卡片,至此,实现金融IC卡使用期限的延长。
由于本发明实施例提供的方法解决了金融IC卡到达有效期无法使用的问题,使客户可以及时拿到金融IC卡,解决现有生产环境客户换卡的7个工作日的时间问题,提升了客户体验。按照我国现有IC卡量50亿,预估十分之一客户及5亿客户换卡,按现有卡片市场价(不包含邮寄费用)5元计算,可为各大银行节省约25亿成本。
上述实施例阐明的装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机设备,具体的,计算机设备例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
在一个典型的实例中计算机设备具体包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的延长金融IC卡使用期限的方法步骤。
下面参考图8,其示出了适于用来实现本申请实施例的计算机设备600的结构示意图。
如图8所示,计算机设备600包括中央处理单元(CPU)601,其可以根据存储在只读存储器(ROM)602中的程序或者从存储部分608加载到随机访问存储器(RAM))603中的程序而执行各种适当的工作和处理。在RAM603中,还存储有系统600操作所需的各种程序和数据。CPU601、ROM602、以及RAM603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡,调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口606。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装如存储部分608。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述延长金融IC卡使用期限的方法的步骤或上述用于金融IC卡的制卡数据写入方法的步骤。
在这样的实施例中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (19)

1.一种延长金融IC卡使用期限的方法,其特征在于,包括:
对待延期的金融IC卡进行身份认证和数据识别;
向身份认证和数据识别成功的金融IC卡发送数据删除指令;
根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至所述金融IC卡进行延期处理,其中,每条所述制卡数据均包括消息验证码和待写数据;
其中,该消息验证码用于金融IC卡对该制卡数据的身份或写入权限进行验证,只有该消息验证码经过金融IC卡验证通过后,该金融IC卡中的系统才允许该条制卡数据写入,否则拒绝写入该条制卡数据。
2.根据权利要求1所述延长金融IC卡使用期限的方法,其特征在于,所述对待延期的金融IC卡进行身份认证和数据识别,包括:
根据用户的延期请求,通过读卡器向所述金融IC卡发送调用指令;
接收所述金融IC卡反馈的主密钥;
调用加密机对所述主密钥进行校验;
当校验通过时,向所述金融IC卡发送渠道开启指令;
接收所述金融IC卡返回的报文,所述报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
调用加密机判断所述报文的真实性,实现数据识别。
3.根据权利要求2所述延长金融IC卡使用期限的方法,其特征在于,所述根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据,包括:
根据所述历史业务数据以及金融IC卡有效期信息生成密钥;
根据所述密钥、所述历史业务数据以及所述有效期信息生成所述制卡数据。
4.根据权利要求3所述延长金融IC卡使用期限的方法,其特征在于,所述密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
5.一种延长金融IC卡使用期限的装置,其特征在于,包括:
认证识别模块,对待延期的金融IC卡进行身份认证和数据识别;
删除指令发送模块,向身份认证和数据识别成功的金融IC卡发送数据删除指令;
制卡数据生成模块,根据数据删除成功的金融IC卡的历史业务数据以及有效期信息生成多条制卡数据并发送至所述金融IC卡进行延期处理,其中,每条所述制卡数据均包括消息验证码和待写数据;
其中,该消息验证码用于金融IC卡对该制卡数据的身份或写入权限进行验证,只有该消息验证码经过金融IC卡验证通过后,该金融IC卡中的系统才允许该条制卡数据写入,否则拒绝写入该条制卡数据。
6.根据权利要求5所述延长金融IC卡使用期限的装置,其特征在于,所述认证识别模块包括:
调用指令发送单元,根据用户的延期请求,通过读卡器向所述金融IC卡发送调用指令;
主密钥接收单元,接收所述金融IC卡反馈的主密钥;
主密钥校验单元,调用加密机对所述主密钥进行校验;
渠道开启指令发送单元,当校验通过时向所述金融IC卡发送渠道开启指令;
报文接收单元,接收所述金融IC卡返回的报文,所述报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
数据识别单元,调用加密机判断所述报文的真实性,实现数据识别。
7.根据权利要求6所述延长金融IC卡使用期限的装置,其特征在于,所述制卡数据生成模块包括:
密钥生成单元,根据所述历史业务数据以及金融IC卡有效期信息生成密钥;
数据生成单元,根据所述密钥、所述历史业务数据以及所述有效期信息生成所述制卡数据。
8.根据权利要求7所述延长金融IC卡使用期限的装置,其特征在于,所述密钥包括:RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
9.一种用于金融IC卡的制卡数据写入方法,其特征在于,包括:
根据银行服务器的身份认证和数据识别指令输出认证识别信息;
根据所述银行服务器反馈的数据删除指令删除历史业务数据,所述数据删除指令由所述银行服务器根据认证识别信息进行身份认证和数据识别成功后生成;
接收所述银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条所述制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息;
对所述消息验证码进行校验;
写入与校验通过的消息验证码对应的待写数据。
10.根据权利要求9所述用于金融IC卡的制卡数据写入方法,其特征在于,所述根据银行服务器的身份认证和数据识别指令输出认证识别信息,包括:
接收并校验所述银行服务器根据用户的延期请求而发送的调用指令,当校验通过时向所述银行服务器输出主密钥,以使所述银行服务器根据所述主密钥进行身份认证;
接收并校验所述银行服务器在根据所述主密钥进行身份认真通过后而发送的渠道开启指令,当校验通过时向所述银行服务器输出报文,以使所述银行服务器根据所述报文进行数据识别。
11.根据权利要求10所述用于金融IC卡的制卡数据写入方法,其特征在于,所述报文包括:读卡器随机数、金融IC卡随机数以及认证密文;
所述当校验通过时向所述银行服务器输出报文,包括:
当校验通过时向读卡器发送随机数读取指令,以获得读卡器随机数;
根据本地计数器中的金融IC卡随机数以及所述读卡器随机数产生认证密文,并将所述读卡器随机数、所述金融IC卡随机数以及所述认证密文输出。
12.根据权利要求11所述用于金融IC卡的制卡数据写入方法,其特征在于,所述根据所述银行服务器反馈的数据删除指令删除历史业务数据,包括:
接收并校验所述银行服务器反馈的所述数据删除指令,当校验通过时删除所述本地的原始制卡数据。
13.根据权利要求9所述用于金融IC卡的制卡数据写入方法,其特征在于,还包括:
接收并校验所述银行服务器反馈的数据备份指令,当校验通过时输出历史业务数据,用于数据备份。
14.根据权利要求9所述用于金融IC卡的制卡数据写入方法,其特征在于,所述制卡数据包包括:历史业务数据、金融IC卡有效期信息、RSA公私钥对、加密的发卡行私钥、离散的发卡行主密钥以及应用主密钥。
15.一种用于金融IC卡的制卡数据写入装置,其特征在于,包括:
认证识别输出模块,根据银行服务器的身份认证和数据识别指令输出认证识别信息;
数据删除模块,根据所述银行服务器反馈的数据删除指令删除历史业务数据,所述数据删除指令由所述银行服务器根据认证识别信息进行身份认证和数据识别成功后生成;
接收模块,接收所述银行服务器在历史业务数据删除成功后根据本地历史业务数据以及有效期信息生成的至少一条制卡数据,其中,每条所述制卡数据均包括消息验证码和待写数据,并且,至少一条待写数据中包含金融IC卡有效期信息;
消息验证码校验模块,对所述消息验证码进行校验;
写入模块,写入与校验通过的消息验证码对应的待写数据。
16.根据权利要求15所述用于金融IC卡的制卡数据写入装置,其特征在于,所述认证识别输出模块包括:
主密钥输出单元,接收并校验所述银行服务器根据用户的延期请求而发送的调用指令,当校验通过时向所述银行服务器输出主密钥,以使所述银行服务器根据所述主密钥进行身份认证;
报文输出单元,接收并校验所述银行服务器在根据所述主密钥进行身份认真通过后而发送的渠道开启指令,当校验通过时向所述银行服务器输出报文,以使所述银行服务器根据所述报文进行数据识别。
17.一种金融服务系统,其特征在于,包括:读卡器、银行服务器以及加密机,所述银行服务器执行如权利要求1至4任一项所述延长金融IC卡使用期限的方法。
18.一种计算机设备,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现权利要求1至4任一项所述延长金融IC卡使用期限的方法的步骤。
19.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4任一项所述延长金融IC卡使用期限的方法的步骤或权利要求9至14任一项所述用于金融IC卡的制卡数据写入方法的步骤。
CN201811617938.2A 2018-12-28 2018-12-28 延长金融ic卡使用期限的方法以及相关方法和装置 Active CN109741050B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811617938.2A CN109741050B (zh) 2018-12-28 2018-12-28 延长金融ic卡使用期限的方法以及相关方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811617938.2A CN109741050B (zh) 2018-12-28 2018-12-28 延长金融ic卡使用期限的方法以及相关方法和装置

Publications (2)

Publication Number Publication Date
CN109741050A CN109741050A (zh) 2019-05-10
CN109741050B true CN109741050B (zh) 2021-05-11

Family

ID=66361602

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811617938.2A Active CN109741050B (zh) 2018-12-28 2018-12-28 延长金融ic卡使用期限的方法以及相关方法和装置

Country Status (1)

Country Link
CN (1) CN109741050B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111010670B (zh) * 2019-12-19 2021-09-21 广州赛特智能科技有限公司 一种基于多设备协作的遥控方法、装置及处理终端
CN111737673A (zh) * 2020-06-22 2020-10-02 支付宝(杭州)信息技术有限公司 一种线上身份核验方法、装置以及用户终端

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105303208A (zh) * 2015-10-26 2016-02-03 福建新大陆电脑股份有限公司 一种ic卡管理方法及系统

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100421087C (zh) * 2005-12-20 2008-09-24 上海华虹集成电路有限责任公司 非接触式智能卡数据读写的方法
EP2273373A1 (en) * 2009-07-02 2011-01-12 Vodafone Holding GmbH Storing of frequently modified data in an IC card
CN101599825A (zh) * 2009-07-09 2009-12-09 交通银行股份有限公司 信息校验系统、服务器及方法
CN101789153B (zh) * 2010-01-05 2011-11-16 交通银行股份有限公司 一种磁卡磁介质信息安全写入方法及系统
CN103473851A (zh) * 2012-06-06 2013-12-25 汉斯·杰里·乌尔本·彼得森 一种快速发卡授权方法及系统
CN106709386B (zh) * 2016-12-30 2019-12-31 金邦达有限公司 智能卡数据写入方法及装置
CN107729972B (zh) * 2017-09-01 2020-09-08 捷德(中国)科技有限公司 一种智能ic卡的数据保护方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105303208A (zh) * 2015-10-26 2016-02-03 福建新大陆电脑股份有限公司 一种ic卡管理方法及系统

Also Published As

Publication number Publication date
CN109741050A (zh) 2019-05-10

Similar Documents

Publication Publication Date Title
US11877213B2 (en) Methods and systems for asset obfuscation
CN107925572B (zh) 软件应用程序到通信装置的安全绑定
US11876905B2 (en) System and method for generating trust tokens
US11240219B2 (en) Hybrid integration of software development kit with secure execution environment
CN110692214B (zh) 用于使用区块链的所有权验证的方法和系统
US9547769B2 (en) Data protection hub
AU2015264124B2 (en) Offline authentication
US9647845B2 (en) Key downloading method, management method, downloading management method, device and system
JP4036838B2 (ja) セキュリティ装置、情報処理装置、セキュリティ装置が実行する方法、情報処理装置が実行する方法、該方法を実行させるための装置実行可能なプログラムおよびチケット・システム
US7784106B2 (en) Manufacturing unique devices that generate digital signatures
US6385723B1 (en) Key transformation unit for an IC card
US8621230B2 (en) System and method for secure verification of electronic transactions
JP2018522353A (ja) サーバベースド支払のための認証システム及び方法
CN110582774B (zh) 用于软件模块绑定的系统和方法
CN113015991A (zh) 安全的数字钱包处理系统
CN109741050B (zh) 延长金融ic卡使用期限的方法以及相关方法和装置
US11777733B2 (en) Token keys to generate cryptograms for token interactions
CN116823257A (zh) 一种信息处理方法、装置、设备及存储介质
WO2009039600A1 (en) System and method for secure verification of electronic transactions
US20240037556A1 (en) Method and system for payment processing using distributed digitized surrogates
AU2008203525B2 (en) Linking public key of device to information during manufacturing
Chung Design of Smart Card Enabled Protocols for Micro-Payment and Rapid Application Development Builder for E-Commerce

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
GR01 Patent grant
GR01 Patent grant