一种金融ic卡制卡数据生成方法
【技术领域】
[0001]本发明涉及金融IC卡个人化技术领域,具体涉及一种基于Velocity技术的数据格式化方法,用于金融IC卡数据准备系统中卡片数据的快速生成。
【背景技术】
[0002]随着金融IC卡推广工作的积极开展,中国人民银行加速推动国密算法金融安全领域落地,并正式发布了《中国金融集成电路(IC)卡规范(V3.0)》(PB0C3.0)。PB0C3.0定义了我国自主研制的SM2 (非对称算法)、SM3 (杂凑算法)、SM4 (对称算法)在金融IC卡安全领域的应用。
[0003]金融IC卡数据准备系统是金融IC卡安全领域个人化体系中重要的组成部分。该系统接收金融IC卡卡片管理系统提供的原始卡片数据,按照中国银联金融IC卡规范和要求,通过金融IC卡密钥管理系统获取卡证书与密钥文件,生成个人化系统所需的制卡数据。制卡数据由符合TLV(TAG、LENGTH、VALUE)格式的多个DGI (数据分组标识符)数据分组构成。基于行业特殊性和安全性的需要,金融IC卡数据准备系统需要高效、稳定、安全的生成制卡数据,是金融IC卡个人化体系的重要支柱。
[0004]由于制卡数据的多样性和复杂性,当前传统的金融IC卡数据准备系统构建制卡数据存在多个弊端。例如:配置复杂、灵活性差,需要面对越来越复杂的卡片应用需求,不同算法IC卡和支持双算法卡的应用场景日益增多,原有的系统无法快速创建多样的制卡数据,而繁杂晦涩的配置项增加了管理员出错的风险。同时,在卡片数量较多的情况下,制卡速度存在较大瓶颈。此外,批量制卡出错时,由于原始制卡数据加工方法和格式化方法的耦合性较高,日志分析存在困难。
【发明内容】
[0005]为了克服现有技术的上述缺点,本发明提供了一种金融IC卡制卡数据生成方法,弓I入基于JAVA的Velocity模板引擎,并在模板中加入自定义的数据加解密和格式化引擎。利用Velocity引擎,将金融IC卡数据准备系统耦合性降低,屏蔽原始TAG (标签)数据和卡片算法的差异性。同时,通过在引擎模板中提供的JAVA对象,完成不同算法的数据加解密,并统一输出为具有标准TLV格式的数据,提高数据处理效率。此外,通过Velocity引擎的日志可完整准确记录处理过程,为快速定位制卡数据出错原因提供有力保障。
[0006]本发明解决其技术问题所采用的技术方案是:一种金融IC卡制卡数据生成方法,包括如下内容:
[0007]一、Velocity模板引擎基本数据准备阶段:
[0008](I)系统启动并进行初始化操作,将中国银联规范定义的标准借记/贷记应用个人化模板、TAG项写入数据库;
[0009](2)录入算法模板、TAG值,定义金融IC卡支持的算法和标准借记/贷记应用类型;
[0010](3)系统向金融IC卡密钥管理系统申请金融IC卡卡片证书和密钥;
[0011]二、Velocity模板引擎原始制卡数据准备阶段:
[0012](I)系统以离线方式导入原始制卡数据文件;
[0013](2)系统扫描并解析原始制卡数据文件,获取原始制卡数据内容,完成Velocity模板引擎的原始制卡数据准备;
[0014]三、制卡任务执行阶段:
[0015](I)调用Velocity模板引擎完成基于不同算法的数据加解密操作;
[0016](2)通过Velocity模板引擎的自定义功能方法,将中间处理数据封装为符合TLV格式的标准数据;
[0017](3)输出具有标准TLV格式的数据,完成Velocity模板引擎的输出;
[0018](4)结合中国银联规范定义的DGI数据分组,产生目标制卡数据;
[0019](5)按照目标制卡数据格式形成目标制卡数据文件。
[0020]与现有技术相比,本发明的积极效果是:解决了现有技术中金融IC卡数据准备系统在制卡数据生成过程中存在的弊端,通过Velocity模板的简单配置和自定义引擎的方法实现制卡数据的快速生成,可高效、灵活地产生不同算法的制卡数据,提高金融IC卡数据准备系统制卡数据的生成效率、提升系统可操作性和可维护性。Velocity技术成熟,运行效率高,具有完备的日志记录方法,结合自定义引擎,屏蔽不同算法和不同数据类型的差异,可简化金融IC卡数据准备系统的配置,提高运行效率,降低维护成本。具体表现如下:
[0021]1、基于Velocity技术的金融IC卡制卡数据生成方法引入Velocity引擎技术。通过Velocity模板引擎,输入原始制卡数据中的TAG项、个人化模板中的TAG项及向金融IC卡密钥管理系统获取的卡证书及密钥,输出经过加解密处理后符合标准TLV格式的数据。Velocity引擎作为金融IC卡数据准备系统的中间层,将系统前期数据准备、分析原始制卡数据、获取个人化模板数据和请求金融IC卡密钥管理系统获取数据与TAG数据处理解耦和,使金融IC卡数据准备系统更具有健壮性和可维护性;
[0022]2、基于Velocity技术的金融IC卡制卡数据生成方法在Velocity模板中引入自定义引擎。Velocity支持引入自定义引擎来处理数据,通过自定义引擎的加解密方法,完成制卡数据的加解密处理。对于国际算法、国密算法和双算法卡的制卡任务,用户仅需定义不同的算法模板,而完全不需关心制卡任务执行过程中不同算法的处理过程;
[0023]3、通过Velocity模板中自定义引擎的数据格式化方法,完成数据的TLV标准输出。格式化方法屏蔽了 TAG数据类型的差异,提供针对不同数据类型的TLV计算方法,输出规范要求的TLV内容,同时,针对需要特殊处理的TAG值,格式化方法提供相应的特殊处理方法,仅需在模板中简单定义即可完成。通过自定义引擎的数据格式化方法,使业务处理与数据格式输出处理隔离,提高系统的可维护性和扩展性;
[0024]4、Velocity引擎作为系统的关键节点,可通过Velocity引擎的日志功能,完整记录制卡任务执行的所有输入TAG数据和输出信息,对于系统调试和运行中的错误,可快速定位,降低系统的开发和维护成本。
【附图说明】
[0025]本发明将通过例子并参照附图的方式说明,其中:
[0026]图1是本发明方法的流程图ο
【具体实施方式】
[0027]—种金融IC卡制卡数据生成方法,如图1所示,具体包括如下内容:
[0028]一、Velocity模板引擎基本数据准备阶段:
[0029]1、系统启动并进行初始化操作,将中国银联规范定义的标准借记/贷记应用个人化模板、TAG项(TAG项为标签项,用于标识目标制卡数据中各项不同类型的数据)写入数据库;
[0030]2、录入算法模板、TAG值(TAG项与TAG值是——对应关系,TAG值是TAG项对应的数据内容,TAG项可唯一标识TAG值),定义金融IC卡支持的算法和标准借记/贷记应用类型;
[0031]3、系统向金融IC卡密钥管理系统申请金融IC卡卡片证书和密钥(包括非对称密钥和对称密钥)。
[0032]二、Velocity模板引擎原始制卡数据准备阶段:
[0033]1、系统以离线方式导入原始制卡数据文件;
[0034]2、系统扫描并解析原始制卡数据文件,获取原始制卡数据相关内容,完成Velocity模板引擎的原始制卡数据准备。
[0035]三、制卡任务执行阶段:
[0036]1、调用Velocity模板引擎完成基于不同算法的数据加解密操作:
[0037]调用Velocity模板引擎的自定义功能方法,实现国际算法和国密算法的调用支持,完成卡片数据加解密运算处理。
[0038]密码运算服务由专用的密码设备提供,用户完全不用关心不同密码算法的差异和与密钥运算设备的接口,Velocity模板引擎自动根据算法模板完成对应算法的密码数据运笪弁O
[0039]2、通过Velocity模板引擎的自定义功能方法,将中间处理数据封装为符合TLV格式的标准数据;
[0040]3、输出具有标准TLV格式的数据,完成Velocity模板引擎的输出。
[0041]4、结合中国银联规范定义的DGI数据分组,产生目标制卡数据;
[0042]5、按照目标制卡数据格式形成目标制卡数据文件,目标制卡数据文件可采用压缩包形式提供,一个目标制卡文件中可包含多条目标制卡数据;
[0043]四、制卡任务日志记录阶段
[0044]1、通过Velocity引擎的日志功能,完整记录模板引擎运算的中间数据,便于事后日志审计和系统维护。
[0045]2、作为制卡任务执行的关键节点,可通过该日志记录,快速分析系统运行信息,提高系统运维效率,对异常情况快速定位并处置,降低系统维护成本,提升系统管理效率。
【主权项】
1.一种金融IC卡制卡数据生成方法,其特征在于:包括如下内容: 一、Velocity模板引擎基本数据准备阶段: (1)系统启动并进行初始化操作,将中国银联规范定义的标准借记/贷记应用个人化模板、TAG项写入数据库; (2)录入算法模板、TAG值,定义金融IC卡支持的算法和标准借记/贷记应用类型; (3)系统向金融IC卡密钥管理系统申请金融IC卡卡片证书和密钥; 二、Velocity模板引擎原始制卡数据准备阶段: (1)系统以离线方式导入原始制卡数据文件; (2)系统扫描并解析原始制卡数据文件,获取原始制卡数据内容,完成Velocity模板引擎的原始制卡数据准备; 二、制卡任务执行阶段: (1)调用Velocity模板引擎完成基于不同算法的数据加解密操作; (2)通过Velocity模板引擎的自定义功能方法,将中间处理数据封装为符合TLV格式的标准数据; (3)输出具有标准TLV格式的数据,完成Velocity模板引擎的输出; (4)结合中国银联规范定义的DGI数据分组,产生目标制卡数据; (5)按照目标制卡数据格式形成目标制卡数据文件。2.根据权利要求1所述的一种金融IC卡制卡数据生成方法,其特征在于:在制卡任务执行阶段,通过Velocity引擎的日志功能,完整记录模板引擎运算的中间数据,便于事后日志审计和系统维护。3.根据权利要求1所述的一种金融IC卡制卡数据生成方法,其特征在于:所述密钥包括非对称密钥和对称密钥。4.根据权利要求1所述的一种金融IC卡制卡数据生成方法,其特征在于:在制卡任务执行阶段,通过调用Velocity模板引擎的自定义功能方法,完成基于不同算法的数据加解密操作。5.根据权利要求1所述的一种金融IC卡制卡数据生成方法,其特征在于:所述目标制卡数据文件采用压缩包形式提供。6.根据权利要求5所述的一种金融IC卡制卡数据生成方法,其特征在于:所述目标制卡数据文件中包含I条或多条目标制卡数据。
【专利摘要】本发明公开了一种金融IC卡制卡数据生成方法,包括Velocity模板引擎基本数据准备阶段;Velocity模板引擎原始制卡数据准备阶段;制卡任务执行阶段等。本发明解决了现有技术中金融IC卡数据准备系统在制卡数据生成过程中存在的弊端,通过Velocity模板的简单配置和自定义引擎的方法实现制卡数据的快速生成,可高效、灵活地产生不同算法的制卡数据,提高金融IC卡数据准备系统制卡数据的生成效率、提升系统可操作性和可维护性。Velocity具有完备的日志记录方法,结合自定义引擎,屏蔽不同算法和不同数据类型的差异,可简化金融IC卡数据准备系统的配置,提高运行效率,降低维护成本。
【IPC分类】G06K1/12
【公开号】CN105205423
【申请号】CN201510706219
【发明人】廖成军, 帅军军, 姬长伟
【申请人】成都卫士通信息产业股份有限公司
【公开日】2015年12月30日
【申请日】2015年10月27日