一种终端工作的方法及装置制造方法及图纸

技术编号:17468360 阅读:31 留言:0更新日期:2018-03-15 05:35
本发明专利技术公开一种终端工作的方法及装置,涉及信息安全领域。所述方法包括:终端根据认证中心公钥和IC卡数据中的发卡行公钥证书得到第一恢复数据,从第一恢复数据中获取发卡行公钥;根据发卡行公钥和IC卡公钥证书得到第二恢复数据,并计算第一哈希值,判断第一哈希值是否与第二恢复数据中包含的哈希值相同,否则终端拒绝交易,是则从第二恢复数据中获取IC卡公钥,并根据IC卡公钥得到第三恢复数据,终端获取终端动态数据后计算第二哈希值,判断第二哈希值是否与第三恢复数据中包含的哈希值相同,是则动态数据认证成功,终端批准交易;否则终端拒绝交易;本发明专利技术中的技术方案,可以做到防止IC卡数据被篡改及IC卡被复制,提高终端交易的安全性。

【技术实现步骤摘要】
一种终端工作的方法及装置
本专利技术涉及信息安全领域,尤其涉及一种终端工作的方法及装置。
技术介绍
静态数据,是指在IC卡制定后不会改变的数据,如卡号,卡的有效期,卡的应用限制等。静态数据认证的目的主要是用于终端验证IC卡中的重要静态应用数据(如卡号)是否被非法修改,从而保证IC卡中的发卡行数据在个人化以后没有被非法篡改。在现有技术中,静态数据认证虽然可以确认存放在IC卡中关键的静态数据的合法性,能有效地检测IC卡内关键静态数据的真实性,但是如果不法分子将IC卡复制,但不修改IC卡里面的数据,单独用静态数据认证终端无法发现是复制的卡还是发卡行发行的卡,不能防止信息被盗取、IC卡被复制,终端交易安全性大大降低。
技术实现思路
本专利技术的目的是为了解决现有技术中存在的问题,提供了一种终端工作的方法及装置。本专利技术采用的技术方案是:一方面,本专利技术提供一种终端工作的方法,包括:步骤S1:终端获取授权金额后,向IC卡发送选择应用命令,待接收到IC卡返回的选择应用命令的响应数据后,根据选择应用指令的响应数据生成获取处理选项命令;步骤S2:终端向IC卡发送获取处理选项命令,并从IC卡返回的获取处理选项命令响应中获取签名的动态应用数据和IC卡动态数据;获取处理选项命令包含授权金额;步骤S3:终端根据获取处理选项命令响应确定要读取的IC卡记录的位置信息,并根据位置信息读取IC卡记录获得IC卡数据;步骤S4:终端根据IC卡数据中的认证中心公钥索引获取认证中心公钥,根据认证中心公钥和IC卡数据中的发卡行公钥证书得到第一恢复数据,从第一恢复数据中获取发卡行公钥;步骤S5:终端根据发卡行公钥和IC卡数据中的IC卡公钥证书得到第二恢复数据,根据第二恢复数据和IC卡数据中包含的IC卡静态数据计算第一哈希值,判断第一哈希值是否与第二恢复数据中包含的哈希值相同,是则从第二恢复数据中获取IC卡公钥,执行步骤S6,否则终端拒绝交易;步骤S6:终端根据IC卡公钥和签名的动态应用数据得到第三恢复数据,终端获取终端动态数据后,根据终端动态数据、第三恢复数据、IC卡动态数据和IC卡数据中的IC卡认证相关数据计算第二哈希值,判断第二哈希值是否与第三恢复数据中包含的哈希值相同,是则动态数据认证成功,终端批准交易;否则终端拒绝交易。另一方面,本专利技术提供一种终端工作的装置,包括:第一获取模块,用于获取授权金额;发送模块,用于第一获取模块获取授权金额后,向IC卡发送选择应用命令;接收模块,用于接收IC卡返回的选择应用命令的响应数据;生成模块,用于根据接收模块接收到的选择应用命令的响应数据生成获取处理选项命令;发送模块,还用于向IC卡发送生成模块生成的获取处理选项命令;接收模块,还用于接收IC卡返回的获取处理选项命令响应;第二获取模块,用于获取接收模块接收到的获取处理选项命令响应中签名的动态应用数据和IC卡动态数据;获取处理选项命令包含授权金额;定位模块,用于根据接收模块接收到的获取处理选项命令响应确定要读取的IC卡记录的位置信息;读取模块,用于根据定位模块定位的要读取的IC卡记录的位置信息,读取IC卡记录获得IC卡数据;第三获取模块,用于根据读取模块读取的IC卡数据中的认证中心公钥索引获取认证中心公钥;恢复模块,用于根据第三获取模块获取到的认证中心公钥和读取模块读取到的IC卡数据中的发卡行公钥证书恢复得到第一恢复数据;第三获取模块,还用于从第一恢复数据中获取发卡行公钥;恢复模块,还用于根据第三获取模块获取的发卡行公钥和读取模块读取的IC卡数据中的IC卡公钥证书恢复得到第二恢复数据;第一计算模块,用于根据恢复模块恢复的第二恢复数据和读取模块读取的IC卡数据中包含的IC卡静态数据计算第一哈希值;第一判断模块,用于判断第一计算模块计算得到的第一哈希值是否与恢复模块恢复的第二恢复数据中包含的哈希值相同;第三获取模块,还用于当第一判断模块判断第一哈希值与第二恢复数据中包含的哈希值相同时,从第二恢复数据中获取IC卡公钥,触发恢复模块;拒绝模块,用于当第一判断模块判断第一哈希值与第二恢复数据中包含的哈希值不相同时,拒绝交易;恢复模块,还用于根据第三获取模块获取的IC卡公钥和第二获取模块获取的签名的动态应用数据恢复得到第三恢复数据;第三获取模块,还用于获取终端动态数据;第二计算模块,用于根据终端动态数据、第三恢复数据、IC卡动态数据和IC卡数据中的IC卡认证相关数据计算第二哈希值;第二判断模块,用于判断第二计算模块计算的第二哈希值是否与恢复模块恢复得到的第三恢复数据中包含的哈希值相同;批准模块,用于当第二判断模块判断第二哈希值与第三恢复数据中包含的哈希值相同时,动态数据认证成功,终端批准交易;拒绝模块,还用于当第二判断模块判断第二哈希值与第三恢复数据中包含的哈希值不相同时,拒绝交易。本专利技术取得的有益效果是:采用本专利技术的技术方法,终端不仅对静态数据进行认证,还对动态数据进行认证,既防止IC卡数据被篡改,又防止IC卡被复制,提高终端交易的安全性。附图说明为了更清楚的说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1-图2为本专利技术实施例一中提供的一种终端工作的方法的流程图;图3为本专利技术实施例二中提供的一种终端工作的方法的流程图;图4为本专利技术实施例四中提供的一种终端工作的装置的方框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例一在本实施例中,提供了一种终端工作的方法,如图1-2所示,所述方法,步骤如下:步骤101、IC卡上电初始化;在本步骤之前,还包括:终端进行交易预处理,获取授权金额。步骤102、终端向IC卡发送选择近距离支付系统环境指令;在本实施例中,近距离支付系统环境是由IC卡支持的应用标识、应用标签和应用优先指示器组成的一个列表,即非接触应用列表,可以通过非接触界面访问。该列表包括所有目录的入口,由IC卡在选择近距离支付系统环境响应的文件控制信息中返回。步骤103、IC卡向终端返回IC卡支持的非接触应用列表;步骤104、终端从非接触应用列表中选择一个应用作为当前应用,根据当前应用的应用标识符生成选择应用命令,并向IC卡发送选择应用命令;具体地,终端自动从应用候选列表中选择应用作为当前应用,或终端将应用候选列表中应用信息显示给用户,接收用户输入,根据用户输入的选择信息或确认信息选择应用作为当前应用。步骤105、IC卡接收选择应用命令后,在非接触应用列表内选择应用,并向终端返回选择响应;在本实施例中,选择响应包括应用选择成功响应和应用选择失败响应;具体地,IC卡接收到终端发送的选择应用命令后,判断是否允许执行选择应用命令中的应用标识符对应的应用,是则向终端返回包含文件控制信息的应用选择成功响应,文件控制信息中包含处理选项数据对象列表,IC卡通过处理本文档来自技高网...
一种终端工作的方法及装置

【技术保护点】
一种终端工作的方法,其特征在于,包括:步骤S1:终端获取授权金额后,向IC卡发送选择应用命令,待接收到所述IC卡返回的选择应用命令的响应数据后,根据所述选择应用指令的响应数据生成获取处理选项命令;步骤S2:所述终端向所述IC卡发送所述获取处理选项命令,并从所述IC卡返回的获取处理选项命令响应中获取签名的动态应用数据和IC卡动态数据;所述获取处理选项命令包含所述授权金额;步骤S3:所述终端根据所述获取处理选项命令响应确定要读取的IC卡记录的位置信息,并根据所述位置信息读取所述IC卡记录获得IC卡数据;步骤S4:所述终端根据所述IC卡数据中的认证中心公钥索引获取认证中心公钥,根据所述认证中心公钥和所述IC卡数据中的发卡行公钥证书得到第一恢复数据,从所述第一恢复数据中获取发卡行公钥;步骤S5:所述终端根据所述发卡行公钥和所述IC卡数据中的IC卡公钥证书得到第二恢复数据,根据所述第二恢复数据和所述IC卡数据中包含的IC卡静态数据计算第一哈希值,判断所述第一哈希值是否与所述第二恢复数据中包含的哈希值相同,是则从所述第二恢复数据中获取IC卡公钥,执行步骤S6,否则所述终端拒绝交易;步骤S6:所述终端根据所述IC卡公钥和所述签名的动态应用数据得到第三恢复数据,所述终端获取终端动态数据后,根据所述终端动态数据、所述第三恢复数据、所述IC卡动态数据和所述IC卡数据中的IC卡认证相关数据计算第二哈希值,判断所述第二哈希值是否与所述第三恢复数据中包含的哈希值相同,是则动态数据认证成功,所述终端批准交易;否则所述终端拒绝交易。...

【技术特征摘要】
1.一种终端工作的方法,其特征在于,包括:步骤S1:终端获取授权金额后,向IC卡发送选择应用命令,待接收到所述IC卡返回的选择应用命令的响应数据后,根据所述选择应用指令的响应数据生成获取处理选项命令;步骤S2:所述终端向所述IC卡发送所述获取处理选项命令,并从所述IC卡返回的获取处理选项命令响应中获取签名的动态应用数据和IC卡动态数据;所述获取处理选项命令包含所述授权金额;步骤S3:所述终端根据所述获取处理选项命令响应确定要读取的IC卡记录的位置信息,并根据所述位置信息读取所述IC卡记录获得IC卡数据;步骤S4:所述终端根据所述IC卡数据中的认证中心公钥索引获取认证中心公钥,根据所述认证中心公钥和所述IC卡数据中的发卡行公钥证书得到第一恢复数据,从所述第一恢复数据中获取发卡行公钥;步骤S5:所述终端根据所述发卡行公钥和所述IC卡数据中的IC卡公钥证书得到第二恢复数据,根据所述第二恢复数据和所述IC卡数据中包含的IC卡静态数据计算第一哈希值,判断所述第一哈希值是否与所述第二恢复数据中包含的哈希值相同,是则从所述第二恢复数据中获取IC卡公钥,执行步骤S6,否则所述终端拒绝交易;步骤S6:所述终端根据所述IC卡公钥和所述签名的动态应用数据得到第三恢复数据,所述终端获取终端动态数据后,根据所述终端动态数据、所述第三恢复数据、所述IC卡动态数据和所述IC卡数据中的IC卡认证相关数据计算第二哈希值,判断所述第二哈希值是否与所述第三恢复数据中包含的哈希值相同,是则动态数据认证成功,所述终端批准交易;否则所述终端拒绝交易。2.根据权利要求1所述的方法,其特征在于,所述步骤S1具体包括:步骤C1:所述终端向所述IC卡发送选择近距离支付系统环境的指令;步骤C2:所述终端从所述IC卡返回的非接触应用列表中选择一个应用作为当前应用,根据所述当前应用的应用标示符生成所述选择应用命令,并向所述IC卡发送所述选择应用命令;步骤C3:待所述终端接收到所述IC卡返回的所述选择应用命令的响应数据后,根据所述选择应用命令的响应数据判断所述当前应用是否选择成功,是则根据所述选择应用指令的响应数据生成获取处理选项命令,否则执行步骤C2。3.根据权利要求2所述的方法,其特征在于,所述终端根据所述IC卡数据中的认证中心公钥索引获取认证中心公钥具体为:所述终端根据IC卡数据中的认证中心公钥索引和所述应用标识符检索存储在所述终端中的认证中心公钥,并判断是否有与所述终端匹配的认证中心公钥,是则根据所述认证中心公钥和所述IC卡数据中的发卡行公钥证书得到第一恢复数据,否则所述终端拒绝交易。4.根据权利要求3所述的方法,其特征在于,所述终端根据IC卡数据中的认证中心公钥索引和所述应用标识符检索存储在所述终端中的认证中心公钥,具体为:所述终端根据IC卡数据中的认证中心公钥索引和所述应用标识符的前五个字节检索存储在所述终端中的认证中心公钥。5.根据权利要求1所述的方法,其特征在于,所述步骤S1中所述根据所述选择应用指令的响应数据生成获取处理选项命令,具体为:所述终端从所述选择应用指令的响应数据中获取处理选项数据对象列表,并从所述处理选项数据对象列表中获取IC卡请求终端数据的指令,所述终端根据所述指令获取终端数据并根据所述终端数据生成所述获取处理选项命令。6.根据权利要求1所述的方法,其特征在于,所述步骤S4中所述终端根据IC卡数据中的认证中心公钥索引获取认证中心公钥后,还包括:所述终端根据所述IC卡数据中的认证中心公钥索引获取认证中心公钥相关的信息;所述终端根据IC卡数据中的认证中心公钥索引获取认证中心公钥相关的信息后,还包括:所述终端根据所述IC卡数据中包含的发卡行公钥证书确定所述发卡行公钥证书的长度值,判断所述发卡行公钥证书的长度值与所述认证中心公钥相关的信息中包含的认证中心公钥模长度值是否相同,是则所述终端根据所述认证中心公钥和所述IC卡数据中包含的发卡行公钥证书得到所述第一恢复数据,否则所述终端拒绝交易。7.根据权利要求1所述的方法,其特征在于,所述步骤S4中所述从所述第一恢复数据中获取发卡行公钥之前,还包括:所述终端判断所述第一恢复数据是否正确,是则从所述第一恢复数据中获取发卡行公钥,否则所述终端拒绝交易。8.根据权利要求7所述的方法,其特征在于,所述终端判断所述第一恢复数据是否正确,具体包括:步骤A1:所述终端判断所述第一恢复数据的数据格式是否正确,是则执行步骤A2,否则所述终端拒绝交易;步骤A2:所述终端根据所述第一恢复数据和所述IC卡数据中的发卡行公钥余项、发卡行公钥指数计算第三哈希值,判断所述第三哈希值是否与所述第一恢复数据中包含的哈希值相同,是则执行步骤A3,否则所述终端拒绝交易;步骤A3:所述终端判断所述第一恢复数据中的发卡行识别号是否与所述IC卡数据中包含的应用主账号的最左边的三到八字节相同,是则执行步骤A4,否则所述终端拒绝交易;步骤A4:所述终端判断所述第一恢复数据中的发卡行公钥证书是否失效,是则所述终端拒绝交易,否则执行步骤A5;步骤A5:所述终端判断所述应用标识符的前五个字节与所述认证中心公钥索引和所述第一恢复数据中的证书序列号连接起来后的数据是否有效,是则执行步骤A6,否则所述终端拒绝交易;步骤A6:所述终端判断所述第一恢复数据中的发卡行公钥算法标识能否被识别,是则从所述第一恢复数据中获取发卡行公钥,否则所述终端拒绝交易。9.根据权利要求8所述的方法,其特征在于,所述步骤A1具体包括:步骤A1-1:所述终端判断所述第一恢复数据的数据结尾是否正确,是则执行步骤A1-2,否则所述终端拒绝交易;步骤A1-2:所述终端判断所述第一恢复数据的数据头是否正确,是则执行步骤A1-3,否则所述终端拒绝交易;步骤A1-3:所述终端判断所述第一恢复数据中的发卡行公钥证书的格式是否正确,是则执行步骤A2,否则所述终端拒绝交易。10.根据权利要求8所述的方法,其特征在于,所述步骤A4,具体为:所述终端判断所述第一恢复数据中的发卡行公钥证书的证书失效日期中指定的最后日期是否等于或迟于今天的日期,是则所述发卡行公钥证书未过期,执行步骤A5,否则所述发卡行公钥证书已过期,所述终端拒绝交易。11.根据权利要求1所述的方法,其特征在于,所述步骤S5中,所述根据所述第二恢复数据和所述IC卡数据中的IC卡静态数据计算第一哈希值之前还包括:所述终端判断所述第二恢复数据的数据格式是否正确,是则根据所述第二恢复数据和所述IC卡数据中的IC卡静态数据计算第一哈希值,否则所述终端拒绝交易。12.根据权利要求1所述的方法,其特征在于,所述步骤S5中,所述从所述第二恢复数据中获取IC卡公钥之前,还包括:步骤B1:所述终端判断所述第二恢复数据中的应用主账号是否与所述IC卡数据中包含的应用主账号相同,是则执行步骤B2,否则所述终端拒绝交易;步骤B2:所述终端判断所述第二恢复数据中的IC卡公钥证书是否失效,是则所述终端拒绝交易,否则执行步骤B3;步骤B3:所述终端判断IC卡公钥算法标识能否被识别,是则从所述第二恢复数据中获取IC卡公钥,否则所述终端拒绝交易。13.根据权利要求1所述的方法,其特征在于,所述步骤S6中所述终端使用所述IC卡公钥和所述签名的动态应用数据得到第三恢复数据后,还包括:所述终端判断所述第三恢复数据的数据格式是否正确,是则根据所述终端动态数据、所述第三恢复数据、所述IC卡动态数据和所述IC卡数据中的IC卡认证相关数据计算第二哈希值,否则所述终端拒绝交易。14.根据权利要求1所述的方法,其特征在于,所述步骤S5之前还包括:所述终端从所述第一恢复数据中获取发卡行公钥相关的信息;所述步骤S5之前还包括:所述终端根据所述IC卡数据中的IC卡公钥证书确定IC卡公钥证书的长度值,判断所述IC卡公钥证书的长度值是否与所述发卡行公钥相关的信息中包含的发卡行公钥模长度值相同,是则执行步骤S5,否则所述终端拒绝交易。15.根据权利要求1所述的方法,其特征在于,所述IC卡动态数据具体为:交易计数器。16.根据权利要求1所述的方法,其特征在于,所述终端动态数据具体包括:终端不可预知数、授权金额、交易货币代码和所述IC卡数据中包含的IC卡认证相关数据。17.一种终端工作的装置,其特征在于,包括:第一获取模块,用于获取授权金额;发送模块,用于第一获取模块获取授权金额后,向IC卡发送选择应用命令;接收模块,用于接收所述IC卡返回的选择应用命令的响应数据;生成模块,用于根据所述接收模块接收到的选择应用命令的响应数据生成获取处理选项命令;所述发送模块,还用于向所述IC卡发送所述生成模块生成的获取处理选项命令;所述接收模块,还用于接收所述IC卡返回的获取处理选项命令响应;第二获取模块,用于获取所述接收模块接收到的获取处理选项命令响应中签名的动态应用数据和IC卡动态数据;所述获取处理选项命令包含所述授权金额;定位模块,用于根据所述接收模块接收到的所述获取处理选项命令响应确定要读取的IC卡记录的位置信息;读取模块,用于根据所述定位模块定位的要读取的IC卡记录的位置信息,读取所述IC卡记录获得IC卡数据;第三获取模块,用于根据所述读取模块读取的所述IC卡数据中的认证中心公钥索引获取认证中心公钥;恢复模块,用于根据所述第三获取模块获取到的所述认证中心公钥和所述读取模块读取到的所述IC卡数据中的发卡行公钥证书恢复得到第一恢复数据;所述第三获取模块,还用于从所述第一恢复数据中获取发卡行公钥;所述恢复模块,还用于根据所述第三获取模块获取的所述发卡行公钥和所述读取模块读取的IC卡数据中的IC卡公钥证书恢复得到第二恢复数据;第一计算模块,用于根据所述恢复模块恢复的第二恢复数据和所述读取模块读取的IC卡数据中包含的IC卡静态数据计算第一哈希值;第一判断模块,用于判断所述第一计算模块计算得到的第一哈希值是否与所述恢复模块恢复的所述第二恢复数据中包含的哈希值相同;所述第三获取模块,还用于当所述第一判断模块判断所述第一哈希值与所述第二恢复数据中包含的哈希值相同时,从所述第二恢复数据中获取IC卡公钥,触发所述恢复模块;拒绝模块,用于当所述第一判断模块判断所述第一哈希值与所述第二恢复数据中包含的哈希值不相同时,拒绝交易;所述恢复模块,还用于根据所述第三获取模块获取的所述IC卡公钥和所述第二获取模块获取的所述签名的动态应用数据恢复得到第三恢复数据;所述第三获取模块,还用于获取终端动态数据;第二计算模块,用于根据所述终端动态数据、所述第三恢复数据、所述IC卡动态数据和所述IC卡数据中的IC卡认证相关数据计算第二哈希值;第二判断模块,用于判断所述第二计算模块计算的第二哈希值是否与所述恢复模块恢复得到的所述第三恢复数据中包含的哈希值相同;批准模块,用于当所述第二判断模块判断所述第二哈希值与所述第三恢复数据中包含的哈希值相同时,动态数据认证成功,所述终端批准交易;所述拒绝模块,还用于当所述第二判断模块判断所述第二哈希值与所述第三恢复数据中包含的哈希值不相同时,拒绝交易。18.根据权利要求17所述的装置,其特征在于,所述装置还包括:选择模块和第三判断模块;所述发送模块,还用于向所述IC卡发送选择近距离支付系统环境的指令;所述接收模块,还用于接收所述IC卡返...

【专利技术属性】
技术研发人员:陆舟于华章
申请(专利权)人:飞天诚信科技股份有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1