【技术实现步骤摘要】
一种终端工作的方法及装置
本专利技术涉及信息安全领域,尤其涉及一种终端工作的方法及装置。
技术介绍
静态数据,是指在IC卡制定后不会改变的数据,如卡号,卡的有效期,卡的应用限制等。静态数据认证的目的主要是用于终端验证IC卡中的重要静态应用数据(如卡号)是否被非法修改,从而保证IC卡中的发卡行数据在个人化以后没有被非法篡改。在现有技术中,静态数据认证虽然可以确认存放在IC卡中关键的静态数据的合法性,能有效地检测IC卡内关键静态数据的真实性,但是如果不法分子将IC卡复制,但不修改IC卡里面的数据,单独用静态数据认证终端无法发现是复制的卡还是发卡行发行的卡,不能防止信息被盗取、IC卡被复制,终端交易安全性大大降低。
技术实现思路
本专利技术的目的是为了解决现有技术中存在的问题,提供了一种终端工作的方法及装置。本专利技术采用的技术方案是:一方面,本专利技术提供一种终端工作的方法,包括:步骤S1:终端获取授权金额后,向IC卡发送选择应用命令,待接收到IC卡返回的选择应用命令的响应数据后,根据选择应用指令的响应数据生成获取处理选项命令;步骤S2:终端向IC卡发送获取处理选项命令,并从IC卡返回的获取处理选项命令响应中获取签名的动态应用数据和IC卡动态数据;获取处理选项命令包含授权金额;步骤S3:终端根据获取处理选项命令响应确定要读取的IC卡记录的位置信息,并根据位置信息读取IC卡记录获得IC卡数据;步骤S4:终端根据IC卡数据中的认证中心公钥索引获取认证中心公钥,根据认证中心公钥和IC卡数据中的发卡行公钥证书得到第一恢复数据,从第一恢复数据中获取发卡行公钥;步骤S5:终端 ...
【技术保护点】
一种终端工作的方法,其特征在于,包括:步骤S1:终端获取授权金额后,向IC卡发送选择应用命令,待接收到所述IC卡返回的选择应用命令的响应数据后,根据所述选择应用指令的响应数据生成获取处理选项命令;步骤S2:所述终端向所述IC卡发送所述获取处理选项命令,并从所述IC卡返回的获取处理选项命令响应中获取签名的动态应用数据和IC卡动态数据;所述获取处理选项命令包含所述授权金额;步骤S3:所述终端根据所述获取处理选项命令响应确定要读取的IC卡记录的位置信息,并根据所述位置信息读取所述IC卡记录获得IC卡数据;步骤S4:所述终端根据所述IC卡数据中的认证中心公钥索引获取认证中心公钥,根据所述认证中心公钥和所述IC卡数据中的发卡行公钥证书得到第一恢复数据,从所述第一恢复数据中获取发卡行公钥;步骤S5:所述终端根据所述发卡行公钥和所述IC卡数据中的IC卡公钥证书得到第二恢复数据,根据所述第二恢复数据和所述IC卡数据中包含的IC卡静态数据计算第一哈希值,判断所述第一哈希值是否与所述第二恢复数据中包含的哈希值相同,是则从所述第二恢复数据中获取IC卡公钥,执行步骤S6,否则所述终端拒绝交易;步骤S6:所述终 ...
【技术特征摘要】
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
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。