本发明涉及互联网技术领域,尤其涉及一种生成ic卡安全数据的方法及装置。
背景技术:
随着信息技术的不断发展,ic卡在人们生活中的应用也越来越广泛。使用ic卡代替现金可以快速便捷地进行各种交易,从而方便人们的生活。但在使用ic卡进行交易时,需要在ic卡中预先存储有如个人化安全信息等安全数据。
现有的ic卡安全数据的生成主要应用在银行发行实体银行ic卡的场景中。银行接收用户申请ic卡的申请后,根据用户的个人信息数据,按照ic卡设计规范生成安全数据,并在卡片制作和个人化的过程中,存储到ic卡存储区域中。可见,在这种卡片发行方式下,ic卡安全数据的生成存在着一个准备卡数据的过程,生成效率较低。
然而,由于互联网消费场景的不断普及,传统的ic卡发行方式已经不能满足人们的需要。在互联网时代,各种卡片发行方可接入tsm平台,通过互联网发行虚拟ic卡。用户网上提交卡片申请后,卡片发行方将安全数据传输到用户的手机等智能终端中,即可实现虚拟ic卡的下发,即空中发卡。
在空中发卡的业务场景下,用户的申请需求往往是密集型和高并发式的,并且希望能够实现实时、快速地实现卡片申请的申请和下发,因而,传统的ic卡安全数据的生成方法,由于存在着一个准备卡数据的生成过程,使得安全数据的生成效率较低,无法应对互联网环境下密集型的申卡需求,为用户实现实时发卡,因而,用户体验较差。
综上,目前亟需一种生成ic卡安全数据的方法,用于解决现有技术中ic卡安全数据的生成效率较低的技术问题。
技术实现要素:
本发明提供一种生成ic卡安全数据的方法及装置,用于解决现有技术中ic卡安全数据的生成效率较低的技术问题。
本发明实施例一提供的一种生成ic卡安全数据的方法,其包括:
第一设备接收ic卡安全数据生成请求;所述ic卡安全数据生成请求包括待生成的安全数据的n种数据类型;其中,n为大于等于1的整数;
针对于所述n种数据类型中的任一数据类型,所述第一设备根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
可选地,所述第一设备生成所述任一数据类型的安全数据,包括:
所述第一设备若确定生成所述任一数据类型的安全数据所需的性能消耗大于等于性能消耗阈值,则从第二设备中预先生成并存储的安全数据中获取所述任一数据类型的安全数据。
可选地,所述第一设备生成所述任一数据类型的安全数据,还包括:
所述第一设备若确定生成所述任一数据类型的安全数据所需的性能消耗小于性能消耗阈值,则通过本地计算或者调用加密机生成所述任一数据类型的安全数据。
可选地,所述第一设备通过本地计算生成所述任一数据类型的安全数据,包括:
所述第一设备若确定所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过低安全级别计算模块生成所述任一数据类型的安全数据,并通过高安全级别计算模块进行加密;
所述第一设备若确定所述第一安全数据的安全级别大于等于安全级别阈值,则通过所述高安全级别计算模块生成并加密所述任一数据类型的安全数据。
可选地,所述第一设备生成所述任一数据类型的安全数据后,还包括:
所述第一设备若确定所述任一数据类型的安全数据的安全级别大于等于安全级别阈值,则通过安全保护加密模块存储所述任一数据类型的安全数据;
若确定所述所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过非安全保护加密模块存储所述任一数据类型的安全数据。
基于同样的发明构思,本发明实施例二提供了一种生成ic卡安全数据的装置,其包括:
接收模块,用于接收ic卡安全数据生成请求;所述ic卡安全数据生成请求包括待生成的安全数据的n种数据类型;其中,n为大于等于1的整数;
生成模块,用于针对于所述n种数据类型中的任一数据类型,根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
可选地,所述生成模块具体用于:
若确定生成所述任一数据类型的安全数据所需的性能消耗大于等于性能消耗阈值,则从第二设备中预先生成并存储的安全数据中获取所述任一数据类型的安全数据。
可选地,所述生成模块还具体用于:
若确定生成所述任一数据类型的安全数据所需的性能消耗小于性能消耗阈值,则通过本地计算或者调用加密机生成所述任一数据类型的安全数据。
可选地,所述生成模块还具体用于:
若确定所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过低安全级别计算模块生成所述任一数据类型的安全数据,并通过高安全级别计算模块进行加密;
若确定所述第一安全数据的安全级别大于等于安全级别阈值,则通过所述高安全级别计算模块生成并加密所述任一数据类型的安全数据。
可选地,所述生成模块还用于:
若确定所述任一数据类型的安全数据的安全级别大于等于安全级别阈值,则通过安全保护加密模块存储所述任一数据类型的安全数据;
若确定所述所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过非安全保护加密模块存储所述任一数据类型的安全数据。
基于同样的发明构思,本发明实施例三提供了一种计算机设备,其包括存储器和处理器,其中,所述存储器用于存储程序指令,所述处理器用于调用所述存储器中存储的程序指令,按照获得的程序执行上述任一种方法。
基于同样的发明构思,本发明实施例四提供了一种计算机存储介质,所述计算机可读存储介质用于储存为上述计算设备所用的计算机程序指令,其包含用于执行上述生成ic卡安全数据的方法的程序。
本发明实施例中,第一设备接收ic卡安全数据生成请求,该ic卡安全数据生成请求用于请求第一设备生成n种数据类型的安全数据;针对于n种数据类型中的任一种数据类型,第一设备可采用与生成该数据类型所需的性能消耗相匹配的生成路径,生成该数据类型的安全数据。由于第一设备可根据生成任一数据类型的安全数据所需的性能消耗,为该任一数据类型的生成选择匹配的生成路径,因而,可有效地提高ic卡安全数据的生成效率。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一中的一种生成ic卡安全数据的方法所对应的流程示意图;
图2为本发明实施例一中统一接口模块的结构示意图;
图3为本发明实施例一中第二设备的结构示意图;
图4为本发明实施例二中的一种生成ic卡安全数据的装置的结构示意图;
图5为本发明实施例三中提供的一种计算设备的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例,仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例中,所述第一设备具体用于在空中发卡的实时联机发卡系统中,为各卡片发行方或卡片应用提供方发行的虚拟ic卡生成安全数据。其可为各种类型的计算设备,比如说,可以是高性能计算机,也可以是各种类型的加密机等等,此处不做限制。
下面结合说明书附图对本发明实施例做进一步详细描述。
图1为本发明实施例一提供的一种生成ic卡安全数据的方法所对应的流程示意图,如图1所示,包括以下步骤s101至步骤s102:
步骤s101:第一设备接收ic卡安全数据生成请求;所述ic卡安全数据生成请求包括待生成的安全数据的n种数据类型;其中,n为大于等于1的整数;
步骤s102:针对于所述n种数据类型中的任一数据类型,所述第一设备根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
本发明实施例中,第一设备接收ic卡安全数据生成请求,该ic卡安全数据生成请求用于请求第一设备生成n种数据类型的安全数据;针对于n种数据类型中的任一种数据类型,第一设备可采用与生成该数据类型所需的性能消耗相匹配的生成路径,生成该数据类型的安全数据。由于第一设备可根据生成任一数据类型的安全数据所需的性能消耗,为该任一数据类型的生成选择匹配的生成路径,因而,可有效地提高ic卡安全数据的生成效率。
具体来说,在步骤s101中,第一设备接收ic卡安全数据生成请求;所述ic卡安全数据生成请求用于向第一设备生成满足一定业务需求的安全数据。其中,所述满足一定业务需求的安全数据可以包括n种数据类型的安全数据,n为大于等于1的整数。
举例来说,所述n种数据类型的安全数据具体可以包括个人信息、卡片信息、金融交易数据、签名证书、数据保护安全密钥、通信加密密钥、消耗密钥等等,或者,也可以包括其他类型的ic卡安全数据,此处不做具体限制。
本发明实施例中,第一设备可从多个业务需求方处接收ic卡安全数据生成请求。对于不同的业务需求方来说,由于其发行的虚拟ic卡的应用场景不同,或者,由于其对初始数据做的预处理不同,不同的业务需求方发送来的ic卡生成请求中所请求生成的安全数据也不同,即不同的业务需求方请求生成的n种数据类型的安全数据是不同的。
因此,第一设备可通过一个统一接口模块来接收各个业务需求方发送来的ic卡安全数据生成请求,用于为各个业务需求方提供生成安全数据的完整服务。
图2为本发明实施例中统一接口模块的结构示意图,由图2可知,所述统一接口模块200又可具体包括一个基础服务接口201和多个个性化服务接口(如图中所示的2021、2022、2023、2024)。
其中,基础服务接口用于统一接收各个业务需求方发送来的ic卡安全数据生成请求,继承自基础服务接口的多个个性化服务接口分别用于在安全数据生成请求通过基础服务接口后,接收来自不同业务需求方的安全数据生成请求,即当来自某一业务需求方的安全数据生成请求到达个性化服务接口时,可以根据其对应的业务需求,对其所请求的n种数据类型的安全数据进行个性化的初步处理,包括数据检查和响应等等。
基于此,可以看出统一接口模块的通过基础服务接口和多个个性化服务接口相结合的设计,既保证了对外发布接口的简单性,同时又简化各个业务需求方的调用实现,使得不同的业务需求方彼此之间业务接口的隔离,可以实现对不同安全数据生成请求的高效及时的数据检查、响应。
进而,在步骤s102中,所述第一设备可将各个业务需求方发送来的ic卡安全数据生成请求,根据所需生成的安全数据的数据类型,重新做进一步地拆分。如图2中所示,所述第一设备通过拆分模块203来执行安全数据生成请求的拆分。第一设备可在接收到ic卡安全数据生成请求后,可将该ic卡安全数据生成请求根据安全级别和性能消耗两个维度,进一步拆分为n个子请求,每一个子请求分别对应一种数据类型的安全数据。
由于不同类型的安全数据的计算、加密方式不同,因此,将ic卡安全数据生成请求划分为n个子请求,可使第一设备有针对性地对每一个安全数据生成子请求中所请求安全数据选择合适的生成路径。
若某一ic卡安全数据生成请求中请求了n种数据类型的安全数据,则针对于所述n种数据类型中的任一数据类型,所述第一设备可通过解析该安全数据生成子请求,根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
具体的,第一设备若确定生成所述任一数据类型的安全数据所需的性能消耗小于性能消耗阈值,则通过本地计算生成所述任一数据类型的安全数据,或者调用加密机进行实时地响应计算。
若确定通过本地计算生成所述任一数据类型的安全数据,则第一设备可对所述任一数据类型的安全数据的安全级别进行判断,若确定所述任一数据类型的安全数据的安全级别小于安全级别阈值,则可通过本地的低安全级别计算模块生成所述任一数据类型的安全数据,并通过高安全级别计算模块进行加密和保护。
反之,若确定所述任一数据类型的安全数据的安全级别大于等于安全级别阈值,则可通过本地的高安全级别计算模块生成所述任一数据类型的安全数据。本发明实施例中,安全级别较高的安全数据通常可包括ic卡的应用数据和密钥的保护密钥,如各类安全证书、通信密钥或其他应用数据的保护密钥,以及交易的一次性消耗密钥和其对应的保护密钥。
需要说明的是,本发明实施例中,所述性能消耗阈值和所述安全级别阈值可由本领域技术人员可根据实际情况进行设置,本发明对此不做具体限制。
在ic卡安全数据中,常包括一些数据类型的安全数据需要大量的计算才能生成,比如说,个人化安全证书。因此,若通过本地计算这些数据类型的安全数据,则会消耗大量的计算资源,使得安全数据的生成效率降低。
在这种情况下,第一设备若确定生成所述任一数据类型的安全数据所需的性能消耗大于等于性能消耗阈值,则可通过调用第二设备以生成所述任一数据类型的安全数据。
其中,所述第二设备具体是专门为生成性能消耗较高或高密集计算型的安全数据而部署的专用计算资源,其可以为高性能计算机、hsm加密机,或者其他类型的计算设备,本发明对此不做具体限制。
图3为本发明实施例一中所述第二设备的结构示意图。如图2所示,所述第二设备中包括数据服务接口、数据生成模块和数据缓存模块。其中,数据服务接口用于接收第一设备发送来的某种数据类型的安全数据的生成子请求,即高密集计算型的安全数据的生成子请求。
由于需要通过调用第二设备生成的安全数据,通常是对各用户都通用的安全数据,因此,第二设备中的数据生成模块可根据所述第二设备的系统状况和生成各种数据类型的安全数据所需的预设时间,持续地调用hsm加密设备来生成如个人化证书数据等高密集计算型的安全数据,然后通过数据保护和加密模块将生成的安全数据加密后存储到持久化设备中。
所述数据缓存模块可通过批量加载的方式,从持久化设备中获取所述数据生成模块预先生成的安全数据,并为提供数据服务。也就是说,当第一设备调用第二设备生成某一数据类型的安全数据时,安全数据生成子请求通过数据服务接口优先进入数据缓存服务,从数据缓存服务中获取已预先生成的安全数据。
同时,数据缓存模块还具有监控缓存数据的功能,当数据缓存模块中缓存的安全数据的数据量小于某一安全值时,数据缓存模块可自动地从持久化设备中加载安全数据。
在某些特殊情况下,如果数据缓存模块和持久化设备中的已预先生成的安全数据的数量都不能满足高并发的安全数据生成请求的需要,或在,其他异常情况下,则所述第二设备可通过数据生成模块实时地计算生成安全数据。
可见,为应对高密集计算型安全数据生成过程中存在的性能消耗要求较高、耗费时间可能较长的问题,第二设备通过数据生成模块不间断地预生成安全数据并存储,与数据缓存模块从持久化设备中动态获取安全数据相结合的机制,可以有效利用加密设备的空闲时间,将高并发性的数据生成转化为持久的、均匀的安全数据的生成过程,因此,可突破传统发卡模式中安全数据生成的性能瓶颈,使得实时联机发卡系统可以应对互联网环境下集中式、高并发性的发卡需求。
需要说明的是,本发明实施例中,所述第一设备中还可包括一个安全保护加密模块。所述第一设备在通过本地计算或调用第二设备计算生成安全数据之后,通过一个独立的安全保护加密模块来实现对生成的不同安全级别的安全数据的加密、保护和存储。
具体来说,包括所述第一设备若确定所述任一数据类型的安全数据的安全级别大于等于安全级别阈值,则通过安全保护加密模块存储所述任一数据类型的安全数据。
若确定所述所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过非安全保护加密模块存储所述任一数据类型的安全数据。
举例来说,安全认证中心根密钥、行业二级证书和用户私钥证书等安全级别较高的安全数据可以存储于安全保护加密模块中,而通讯加密密钥、消耗密钥和处于安全保护模块内的密钥保护下的密钥可以存储于非安全保护加密模块中。
此外,由于生成的安全数据要通过互联网环境传输到到用户的手机等智能终端中,所述安全保护加密模块还可为生成的安全数据的存储和传输提供安全保护。
可见,存储于不同安全设备的密钥存储机制,可以从物理层面上隔绝密钥安全渗透和安全边界蔓延的问题,并有效支持所述第一设备对不同数据类型的安全数据的请求的拆分和生成路径的选取,保证了生成、存储和传输等各阶段的安全性。
基于同样的发明构思,本发明实施例二提供了一种生成ic卡安全数据的装置,图4为本发明实施例二中提供的一种生成ic卡安全数据的装置的结构示意图,如图4所示,所述装置包括:
接收模块401,用于接收ic卡安全数据生成请求;所述ic卡安全数据生成请求包括待生成的安全数据的n种数据类型;
生成模块402,用于针对于所述n种数据类型中的任一数据类型,根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
可选地,所述生成模块402具体用于:
若确定生成所述任一数据类型的安全数据所需的性能消耗大于等于性能消耗阈值,则从第二设备中预先生成并存储的安全数据中获取所述任一数据类型的安全数据。
可选地,所述生成模块402还具体用于:
若确定生成所述任一数据类型的安全数据所需的性能消耗小于性能消耗阈值,则通过本地计算或者调用加密机生成所述任一数据类型的安全数据。
可选地,所述生成模块402还具体用于:
若确定所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过低安全级别计算模块生成所述任一数据类型的安全数据,并通过高安全级别计算模块进行加密;
若确定所述第一安全数据的安全级别大于等于安全级别阈值,则通过所述高安全级别计算模块生成并加密所述任一数据类型的安全数据。
可选地,所述生成模块402还用于:
若确定所述任一数据类型的安全数据的安全级别大于等于安全级别阈值,则通过安全保护加密模块存储所述任一数据类型的安全数据;
若确定所述所述任一数据类型的安全数据的安全级别小于安全级别阈值,则通过非安全保护加密模块存储所述任一数据类型的安全数据。
基于同样的发明构思,本发明实施例三提供了一种计算设备500,该计算设备500具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(personaldigitalassistant,pda)等。如图5所示,该计算设备可以包括中央处理器(centerprosessingunit,cpu)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(liquidcrystaldisplay,lcd)、阴极射线管(cathoderaytube,crt)等。
存储器可以包括只读存储器(rom)和随机存取存储器(ram),并向处理器提供存储器中存储的程序指令和数据。在本发明实施例中,存储器可以用于存储用于基于安全载体的配置方法的程序。
处理器通过调用存储器存储的程序指令,处理器用于按照获得的程序指令执行:接收ic卡安全数据生成请求;所述ic卡安全数据生成请求包括待生成的安全数据的n种数据类型;其中,n为大于等于1的整数;
针对于所述n种数据类型中的任一数据类型,根据生成所述任一数据类型的安全数据所需的性能消耗,采用与生成所述任一数据类型的安全数据所需的性能消耗相匹配的生成路径,生成所述任一数据类型的安全数据。
本发明实施例四提供了一种计算机存储介质,用于储存为上述计算设备所用的计算机程序指令,其包含用于执行上述安全载体的配置方法的程序。
所述计算机存储介质可以是计算机能够存取的任何可用介质或数据存储设备,包括但不限于磁性存储器(例如,软盘、硬盘、磁带、磁光盘(mo)等)、光学存储器(例如cd、dvd、bd、hvd等)、以及半导体存储器(例如rom、eprom、eeprom、非易失性存储器(nandflash)、固态硬盘(ssd))等。
由上述内容可以看出:
本发明实施例中,第一设备接收ic卡安全数据生成请求,该ic卡安全数据生成请求用于请求第一设备生成n种数据类型的安全数据;针对于n种数据类型中的任一种数据类型,第一设备可采用与生成该数据类型所需的性能消耗相匹配的生成路径,生成该数据类型的安全数据。由于第一设备可根据生成任一数据类型的安全数据所需的性能消耗,为该任一数据类型的生成选择匹配的生成路径,因而,可有效地提高ic卡安全数据的生成效率。本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或两个以上其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或两个以上流程和/或方框图一个方框或两个以上方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或两个以上流程和/或方框图一个方框或两个以上方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或两个以上流程和/或方框图一个方框或两个以上方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。