一种基于可信平台的金融IC卡多次发卡系统及方法与流程

文档序号:11832253阅读:271来源:国知局
一种基于可信平台的金融IC卡多次发卡系统及方法与流程

本发明属于金融与信息安全技术领域,具体涉及一种基于可信平台的金融IC卡多次发卡系统及方法。



背景技术:

金融IC卡(Integrated Circuit Card,集成电路卡),是芯片式银行卡,与磁条式银行卡相对,可存储密钥、数字证书、指纹信息和其他应用程序,具有信息存储量大、安全保密性好、可进行多种应用的集成等优点。

随着金融IC卡的逐步迁移和普及,金融IC卡的个人化面临新的挑战。金融IC卡可存储密钥,用于IC卡片的管理和应用,而密钥是金融IC卡个人化过程中写入的,写入过程即为发卡过程在金融IC卡中建立卡片密钥系统、文件系统,因此金融IC卡发卡过程是对安全性要求极其严格的一个过程,需要保证金融IC卡密钥写入的正确性和安全性。

同时,随着金融IC卡的进一步发展,需要在金融IC卡发卡后进行相关应用的更新和增加。当存在这种需求时,需要对已经发行过的金融IC卡进行第二次乃至多次的发卡过程。现有技术中无法满足金融IC卡多次发卡、增加新应用、更新密钥的要求,同时也无法保证在金融IC卡多次发卡的过程中保证IC卡的安全。



技术实现要素:

本发明实施例的目的是提供一种基于可信平台的金融IC卡多次发卡系统及方法,通过引入可信平台完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性,用户终端通过证书验证,链接可信平台密钥管理系统,从而由用户终端自行增加应用,并更新金融IC卡自身的密钥结构,进一步实现金融IC卡的个人化。

根据本发明的一个方面,提供了一种基于可信平台的金融IC卡多次发卡系统,所述系统 包括信息采集模块、银行端后台模块、可信平台;其中,

所述信息采集模块用于采集用户终端的个人信息,将所采集的信息上传至所述银行端后台模块。信息采集模块为银行端前端和/或用户终端;

所述银行端后台模块与所述信息采集模块和可信平台相连,用于金融IC卡数据的处理、存储和传输;

所述可信平台用于接收所述银行端后台模块所传送的用户信息,并用于根据所述用户信息生成密钥,并对所生成的密钥进行管理,将所生成的密钥通过银行端后台模块分发至金融IC卡。

上述方案中,所述根据所述用户信息生成密钥,进一步为采用国密密码算法SM2、SM3、SM4生成密钥。

上述方案中,所述信息采集模块为银行端前端,所述银行前端用于面对金融IC卡用户,完成用户使用金融IC卡的个人化过程,采集用户的个人数据,并将所收集的用户的个人信息上传至银行端后台模块进行处理和存储,实现用户和银行端后台模块的信息交互。

上述方案中,所述信息采集模块为用户终端,所述用户终端包括但不限于在安全证书保护下用户在个人电脑登陆银行的用户终端系统,用于用户实现金融IC卡的基本功能,所述用户终端将金融IC卡进行个人化的信息上传给所述银行端后台模块。

上述方案中,所述可信平台至少包括密钥管理子系统,所述密钥管理子系统采用国密密码算法SM2、SM3、SM4,重新生成新的金融IC卡密钥,完成密钥的生成和分散管理。

根据本发明的另一个方面,提供了一种基于可信平台的金融IC卡多次发卡方法,所述方法包括如下步骤:

步骤S101,采集用户信息;

步骤S102,对所采集的用户信息进行处理和存储;

步骤S103,将所述用户信息传输给可信平台;

步骤S104,可信平台接收所述用户信息,并根据所述用户信息生成密钥,并将所述密钥传输给所述银行端后台模块;

步骤S105,所述银行端后台模块将所述密钥写入金融IC卡。

上述方案中,所述根据所述用户数据生成密钥,进一步为采用国密密码算法SM2、SM3、SM4生成密钥。

上述方案中,所述采集用户信息,进一步为,银行端前端面对金融IC卡用户,完成用户使用金融IC卡的个人化过程,采集用户的个人数据,并将所收集的用户的个人信息上传至银行端后台模块进行处理和存储,实现用户和银行端后台模块的信息交互。

上述方案中,所述采集用户信息,进一步为,用户终端采集对金融IC卡进行个人化的用户信息,并对所述用户信息进行上传。

上述方案中,所述可信平台至少包括密钥管理子系统,所述密钥管理子系统采用国密密码算法SM2、SM3、SM4,重新生成新的金融IC卡密钥,完成密钥的生成和分散管理。本发明实施例的基于可信平台的金融IC卡多次发卡系统,包括采集用户信息的信息采集模块、用于金融IC卡数据的处理、存储和传输银行端后台模块和可信平台;所述可信平台根据所述用户信息采用国密密码算法SM2、SM3、SM4生成密钥,从而完成金融IC卡的多次发卡。本发明通过引入可信平台,采用国密密码算法SM2、SM3、SM4,完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性,用户通过证书验证,链接可信平台,从而自行增加应用,并更新金融IC卡密钥结构,实现金融IC卡的个人化。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例一的基于可信平台的金融IC卡多次发卡系统的结构示意图;

图2为本发明实施例二的基于可信平台的金融IC卡多次发卡方法的流程示意图;

图3为图2所示步骤S105为多次发卡时的流程示意图。

具体实施方式

本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。

本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。

为便于对本发明实施例的理解,下面详细描述本发明的实施方式,通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。

本发明通过可信平台,生成金融IC卡主控密钥,初次发卡时将所述密钥写入金融IC卡中;当再次发卡时,通过可信平台再次生成金融IC卡主控密钥,并将所生成的主控密钥再次写入保持初次发卡状态的金融IC卡中,对金融IC卡操作系统进行更改和处理,完成卡片主控密钥的生成和替换,由此分散生成新的应用分支密钥,增加新的应用结构分支,同时保障卡片在使用过程中的密钥安全。这里的可信平台,通常情况下为可信计算平台,是基于计算机技术的可信平台。下面通过具体实施例和附图,对本发明作进一步的说明。

图1为本发明实施例一的基于可信平台的金融IC卡多次发卡系统的结构示意图。

如图1所示,本实施例的基于可信平台的金融IC卡多次发卡系统,包括:信息采集模块1、银行端后台模块2、可信平台3。

所述信息采集模块1用于采集用户终端的个人信息,将所采集的信息上传至所述银行端后台模块。信息采集模块为银行端前端和/或用户终端。

当信息采集模块1为银行端前端时,则通过银行端前端直接或间接的进行用户信息的采集。这里的银行端前端,是指银行服务层面的系统,即银行业务部门的柜面系统、网点前台,其主要作用为面对金融IC卡用户,完成用户使用金融IC卡的个人化过程,采集用户的个人数据,并将所收集的用户的个人信息上传至银行端后台模块进行处理和存储,实现用户和银行端后台模块的信息交互。

当信息采集模块1为用户终端时,则IC卡用户通过用户终端与银行端后台模块进行交互。所述用户终端包括但不限于在安全证书保护下用户在个人电脑登陆银行的用户终端系统,用于用户实现金融IC卡的基本功能,如对金融IC卡进行个人化,写入新选择的应用程序。用户终端将金融IC卡进行个人化的要求或信息上传给银行端后台模块,银行端后台模块根据所接收的用户信息对所述用户的相关信息进行相关的处理和存储,从而实现用户和银行端后台模块的信息交互。优选的,用户将所述新选择的应用程序的信息,通过CA验证证书进行验证,保证真实未伪造的情况下,将所述用户终端系统与可信平台相连,可信平台通过自身的密钥管理子系统,重新生成新的数据,产生新的金融IC卡密钥,可信平台将所产生的新的密钥发送给银行端后台,由银行端后台写入金融IC卡中,完成金融IC卡的再次发卡过程。优选的,所述将新的密钥再次写入金融IC卡时,通过与用户终端连接的IC卡读卡装置,完成重新写卡。

这里所采集的信息,包括金融IC卡用户的姓名、身份证号、所设定的密码、所需要的服务等信息。其中,优选的,在初次发卡中,所采集的信息中至少包括用户的姓名和身份证号,且写入IC卡片的永久区,不得擦除和更改。再次发卡中,所采集的信息包括但不限于所设定的密码、所需要的服务、数字证书的验证等。

所述信息采集模块1也可以同时包括银行端前端和用户终端,在不同的发卡过程中采用不同的信息采集方式。

所述银行端后台模块2与所述信息采集模块1和可信平台3相连,用于金融IC卡数据的处理、存储和传输。

这里的银行端后台模块2,包括但不限于银行后台服务器、银行数据库、卡片个人化中心。通常情况下,银行端后台模块为银行系统的核心。在本实施例的金融IC卡多次发卡系统中,银行端后台模块用于实现金融IC卡片信息数据的存放、各种交易信息的存放、处理以及与信息采集模块进行信息交互,将处理后的信息传输给可信平台。优选的,这里的信息交互通过安全链接信道进行。优选的,银行后台服务器用于对用户数据的处理,银行数据库用于对用户信息的存储,卡片个人化中心用于将相关数据写入金融IC卡,完成金融IC卡的个人化。

所述可信平台3与所述银行端后台模块2相连,用于接收所述银行端后台模块所传送的用户数据,并用于根据所接收的银行端的用户信息,采用国密密码算法SM2、SM3、SM4,生成密钥,并对所生成的密钥进行管理 ,将所生成的密钥通过银行端后台模块分发至金融IC卡。

可信平台3,至少包括密钥管理子系统。可信平台通过自身的密钥管理子系统,采用国密密码算法SM2、SM3、SM4,重新生成新的金融IC卡密钥,完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性。通过采用国密密码算法,,使得金融IC卡实现自主可控的密码控制,保障金融IC卡的安全性及在国内改进的适用性。优选的,可信平台的密钥管理子系统,完成金融IC卡主控密钥的生成,并在金融IC卡中建立密钥结构。在所述密钥结构的基础之上,在后续发卡的过程中,可对所述密钥结构进行修改、增加分支、删除分支等操作。

所述可信平台3的密钥管理子系统,以密码技术为基础,实现可信平台自身的完整性、身份可信性和数据安全性等功能。在密码技术为支撑的可信平台3,采用密码技术中的EK密钥标识可信平台3的身份,在平台所有者(密钥管理中心)授权下,在可信平台3的内部模块(Trusted cryptography module, TCM)中生成一个SM2密钥对,作为平台身份密钥(PIK),用于对TCM内部的信息进行数字签名,实现平台身份认证和平台完整性报告,从而向外部证实平台内部数据的可信性。所述生成密钥是指由应用层软件设置所需生成密钥的密钥属性、密钥使用授权、密钥迁移授权、密钥的保护操作密钥,并发送给可信密码模块生成指定的密钥。在TCM(可信密码模块)内,由保护操作密钥加密所生成的密钥私钥部分,然后将生成的密钥数据结构返回给应用层软件。密钥生成后,在应用层软件使用该密钥进行数据安全保护操作时,如果需要使用该密钥的私钥,需要将密钥数据(为一个数据结构)加载到可信密码模块内部,由保护操作密钥解密后才能使用。如果使用该密钥的公钥,则在应用层软件直接使用。可信平台密钥管理系统在本系统中主要实现金融IC卡在首次和以后的多次发卡过程中的密钥安全生成,是IC卡安全保证的源泉。

本实施例的基于可信平台的金融IC卡多次发卡系统,通过引入可信平台,采用国密密码算法SM2、SM3、SM4,完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性,用户通过证书验证,链接可信平台的密钥管理子系统,从而由用户自行增加应用,并更新金融IC卡自身的密钥结构,进一步实现金融IC卡的个人化。

图2为本发明实施例二的基于可信平台的金融IC卡多次发卡方法流程示意图。

如图2所示,本实施例的基于可信平台的金融IC卡多次发卡方法,包括如下步骤:

步骤S101,采集用户信息。

本步骤中,采集用户信息可以通过银行端前端进行,也可以通过用户终端进行。根据采集信息端的不同可分为两种途径完成,若是由银行柜面提交的大批量发卡数据部要求即时发卡时,可以通过批量发卡机来完成个人化发卡,若是由用户自己发起的申请或是银行柜面的单张需求即时发卡的金融IC卡片,在完成个人化数据后,通过安全信道将个人化数据传输给个人用户终端或者银行柜面终端,采用安全读卡器的方式单张发卡,即可实现用户端自己通过用户端软件来下载升级所持金融IC卡后对更改后的卡片能够进行个人化的需求,达到多次发卡的目的。

这里的银行端前端,是指银行服务层面的系统,即银行业务部门的柜面系统、网点前台,其主要作用为面对金融IC卡用户,完成用户使用金融IC卡的个人化过程,采集用户的个人数据,并将所收集的用户的个人信息上传至银行端后台模块进行处理和存储,实现用户和银行端后台模块的信息交互。

这里的用户终端,包括但不限于在安全证书保护下用户在个人电脑登陆银行的用户终端系统,用于用户实现金融IC卡的基本功能,如对金融IC卡进行个人化,写入新选择的应用程序。用户终端将金融IC卡进行个人化的要求或信息上传给银行端后台模块,银行端后台模块根据所接收的用户信息对所述用户的相关信息进行相关的处理和存储,从而实现用户和银行端后台模块的信息交互。优选的,用户将所述新选择的应用程序的信息,通过CA验证证书进行验证,保证真实未伪造的情况下,将所述用户终端系统与可信平台相连,可信平台通过自身的密钥管理子系统,重新生成新的数据,产生新的金融IC卡密钥,可信平台将所产生的新的密钥发送给银行端后台,由银行端后台写入金融IC卡中,完成金融IC卡的再次发卡过程。优选的,所述将新的密钥再次写入金融IC卡时,通过与用户终端连接的IC卡读卡装置,完成重新写卡。

这里所采集的信息,包括金融IC卡用户的姓名、身份证号、所设定的密码、所需要的服务等信息。其中,优选的,在初次发卡中,所采集的信息中至少包括用户的姓名和身份证号,且写入IC卡片的永久区,不得擦除和更改。再次发卡中,所采集的信息包括但不限于所设定的密码、所需要的服务、数字证书的验证等。

步骤S102,对所采集的用户信息进行处理和存储。

本步骤通过银行端后台模块来完成。通常情况下,银行端后台模块为银行系统的核心。通过银行端后台模块,对金融IC卡片信息数据进行存放、各种交易信息进行存放、处理。

步骤S103,将所述用户信息传输给可信平台。

步骤S104,可信平台接收所述用户信息,采用生成密钥,并将所述密钥传输给所述银行端后台模块。

本步骤中的可信平台,至少包括密钥管理子系统。可信平台通过自身的密钥管理子系统,采用国密密码算法SM2、SM3、SM4,重新生成新的金融IC卡密钥,完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性。在可信平台密钥管理子系统及金融IC卡片中,所使用的非对称密钥协商算法和非对称密码算法为SM2,进行非对称加解密及签名验证,所述对称密码算法为SM4,进行对称加解密,所述杂凑密码算法为SM3,生成摘要。

所述银行端后台模块至少包括卡片个人化中心,即发卡系统。由CA认证中心完成CA公私钥的发放,由发卡方完成卡片主控密钥的替换,由发卡系统在可信平台的安全管控下完成金融IC卡内部密钥的生成和分散,金融IC卡上的密钥都是可信的。由于所有密码算法本身都是安全的,密码使用流程中密钥信息和密文信息都是安全的,所有需要用密码保护的信息均被有效保护,因此在整个金融IC卡发卡系统业务流程(从可信平台密钥管理系统生成密钥,到密钥的下发,卡片的使用过程)中,密钥是完全受到安全保护的,不为个人所知,因此本实施例民涉及的金融IC卡多次发卡方法是安全的。

优选的,可信平台的密钥管理子系统,完成卡片主控密钥的生成,并在金融IC卡中建立密钥结构。在所述密钥结构的基础之上,在后续发卡的过程中,可对所述密钥结构进行修改、增加分支、删除分支等操作。

在可信平台密钥管理子系统收到银行端后台模块发送的用户信息的数据的,如发卡数据文件,对所述数据进行解析,产生金融IC卡公私钥、公钥证书、IC卡子密钥,再次形成包含密钥、证书等数据项的发卡数据文件传送给银行端后台模块。银行端后台模块可包含数据准备子系统,这里通过数据准备子系统接收到数据文件后,进行数据的解析转换并准备。

步骤S105,所述银行端后台模块将所述密钥写入金融IC卡。

优选的,当所述写入金融IC卡为初次发卡时,所述写入的过程至少包括建立金融IC卡中的密钥结构、写入IC卡基本信息、建立IC应用结构。当所述写入金融IC卡为再次发卡时,所述写入的过程包括对金融IC卡中原有密钥结构的修改、增加分支、删除分支。

图3为图2所示步骤S105为多次发卡时的流程示意图。

当所述发卡过程为再次发卡时,需要判断二次发卡的金融IC卡中的原有卡内数据是继续保持、否是擦除,若保持则重新恢复到以前卡片的个人化状态,若擦除则再次实现发卡,即建立卡片结构、建立金融IC卡主分区、装载卡片主控密钥、建立适合新的结构的应用分区、生成应用分区应用主控密钥、装载各个分区的应用密钥,最后还原金融IC卡以前卡片上的数据。实现在保持原有卡片应用的基础上,可以由用户通过银行平台选择加载有需求的应用,并实现金融IC卡的二次个人化,即重新发卡。

具体的,如图3所示,本实施例的基于可信平台的金融IC卡发卡方法,包括如下步骤:

步骤S201,校验再次发卡数据。

在二次重新发卡过程中,存在着前台和后台系统的多次数据交互,为了保证金融IC卡在整个处理过程中既能保证原有数据不被更改又能增添新的应用,保证金融IC卡片在处理过程的安全性,依赖可信平台密钥管理系统来提供安全保障。首先需要对待写入的数据或再次发卡的数据进行校验,校验数据的完整性、准确性、正确性。在对数据进行校验的基础上,进行后续的数据判断和写入。即,首先需要保证数据的有效性。这里的校验,在银行端后台模块进行,通常情况下需要银行端后台模块与外部其他系统的交互,如身份验证系统。

在保证数据交互时候的一致性时,本实施例在处理中将处理过程进行编号处理,再编号后处理后,有步骤对其进行确认,若确认不能通过则前面处理不成功,并在确认后做记录点,若是在本次处理不成功的情况下,再次循环读取记录点,从记录点处开始新一次的处理,这样在处理过程中节省了时间,以及节省用户端与个人化系统间交互时的带宽流量,具有一定的时效性。

步骤S202,判断与再次发卡数据相对应的原有卡内数据是否存在。

当再次发卡的过程是对原有数据的更改时,则金融IC卡内存在与再次发卡数据相对应的原有卡内数据。当再次发卡过程为新应用的增加时,则金融IC卡内不存在与再次发卡数据相对应的原有卡内数据。本步骤是对再次发卡过程的一个间接判断。当判断与再次发卡数据相对应的原有卡内数据不存在时,则转入步骤S207;当判断与再次发卡数据相对应的原有卡内数据存在时,则转入步骤S203。

步骤S203,确认是否需要写入再次发卡数据。

这一步是对是否需要进行再次发卡或是否对原有卡内数据进行修改的一个确认步骤。在快速流程的再次发卡过程中,可以省略此步骤,默认客户的再次发卡请求,从而加速再次发卡流程。这里进行一步确认,是由于对原有卡内数据的修改,涉及到客户的切身利益,需要再次确认一下是否需要修改,从而更好的体现对金融IC卡用户的尊重。当确认,确实需要写入再次发卡数据,开启再次发卡过程时,则转入步骤S205;当确认,不需要写入再次发卡数据,即此时客户发现原有数据现符合自已的意愿,则转入步骤S204。

步骤S204,保持原有卡内数据。

本步骤中,即在再次发卡的过程中,并未对再次发卡数据进行更改或写入,而保持了原有卡内数据,此时,终止再次发卡,直接进入步骤S208。

步骤S205,擦除原有卡内数据。

本步骤正常继续再次发卡过程,擦除与再次发卡数据相对应的原有卡内数据,为再次发卡数据的写入做准备。

步骤S206,建立再次发卡数据的标记。

这里是对再次发卡数据的预处理,做出标记。所述做标记,可以通过采用再次发卡数据的摘要数据的方式进行,也可以采用其他标记方式。

步骤S207,写入再次发卡数据,完成后续发卡过程。

步骤S208,再次发卡结束。

本实施例的基于可信平台的金融IC卡多次发卡方法,通过引入可信平台,采用国密密码算法SM2、SM3、SM4,完成密钥的生成和分散管理,保证了密钥生成过程的安全可靠性,用户通过证书验证,链接可信平台的密钥管理子系统,从而由用户自行增加应用,并更新金融IC卡自身的密钥结构,进一步实现金融IC卡的个人化。

通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1