一种检查持卡人身份的终端及其工作方法

文档序号:9911910阅读:361来源:国知局
一种检查持卡人身份的终端及其工作方法
【技术领域】
[0001]本发明涉及信息安全领域,尤其涉及一种检查持卡人身份的终端及其工作方法。
【背景技术】
[0002]在日常的金融交易中,个人交易越来越多的使用终端插卡的方式来实现消费的,因此,终端插卡的安全性日益得到人们的重视。
[0003]在现有技术中,终端检验持卡人验证的方法很单一,当验证方法出现交易问题而不能验证时,导致交易失败,方便性和快捷性降低,而且验证方式单一导致交易时用户信息容易被窃取,因此终端插卡的安全性及便捷性是当前亟待解决的问题。

【发明内容】

[0004]本发明的目的是为了克服现有技术的不足,提供一种检查持卡人身份的终端及其工作方法。
[0005]本发明采用的技术方案是:一种检查持卡人身份的工作方法,包括:
[0006]步骤SI:终端从卡片中获取持卡人验证方法列表,从所述持卡人验证方法列表中获取未处理的持卡人验证记录,作为当前持卡人验证记录;
[0007]步骤S2:所述终端判断是否满足当前持卡人验证记录的执行条件,并判断是否支持当前持卡人验证记录的编码对应的持卡人验证方法,如果均为是,则执行步骤S3,否则执行步骤S4;
[0008]步骤S3:所述终端执行当前持卡人验证记录的编码对应的持卡人验证方法,判断持卡人验证是否成功,如果是,则持卡人验证成功,结束持卡人验证,否则执行步骤S4;
[0009]步骤S4:所述终端判断所述持卡人验证方法列表中是否还有其他未处理的持卡人验证记录,如果是,则执行步骤S5,否则持卡人验证失败,结束持卡人验证;
[0010]步骤S5:所述终端从所述持卡人验证方法列表中获取未处理的持卡人验证记录,作为更新后的当前持卡人验证记录,返回步骤S2。
[0011]所述步骤SI之前,还包括:所述终端判断是否支持持卡人验证,如果是,则执行步骤SI,否则将持卡人验证结果设置为不能执行持卡人验证,结束持卡人验证。
[0012]所述判断是否支持持卡人验证,具体为:所述终端向卡片发送应用初始化命令,接收所述卡片返回的应用初始化响应数据,从所述应用初始化响应数据中获取应用交互特征,判断所述应用交互特征是否支持持卡人验证,如果是,则执行步骤SI,否则将持卡人验证结果设置为不能执行持卡人验证,结束持卡人验证。
[0013]所述步骤SI具体为:所述终端向卡片发送读取应用数据命令,接收所述卡片返回的命令响应数据,从所述命令响应数据中获取持卡人验证方法列表,从所述持卡人验证方法列表中获取未处理的持卡人验证记录,作为当前持卡人验证记录。
[0014]所述步骤S2具体为:
[0015]步骤al:所述终端判断当前持卡人验证记录的执行条件,如果是第一预设条件,则执行步骤a4,如果是第二预设条件,则执行步骤a2,如果是其他预设条件,则执行步骤a3,否则执行步骤S4;
[0016]步骤a2:所述终端判断是否支持当前持卡人验证记录的编码,如果是,则执行步骤S3,否则执行步骤S4;
[0017]步骤a3:所述终端判断是否能够执行当前持卡人验证记录的执行条件,如果是,则执行步骤a4,否则执行步骤S4;
[0018]步骤a4:所述终端判断是否识别当前持卡人验证记录的编码,如果是,则执行步骤S3,否则设置终端验证结果为未识别持卡人验证方法,执行步骤S4。
[0019]所述步骤a2具体为:所述终端判断当前持卡人验证记录的编码对应的持卡人验证方法是否在终端能力范围内,如果是,则执行步骤S3,否则执行步骤S4。
[0020]所述步骤a3具体包括:
[0021]步骤a3_l:所述终端判断当前持卡人验证记录的执行条件是否有效,如果是,则执行步骤a3_2,否则执行步骤S4;
[0022]步骤a3_2:所述终端判断是否满足当前持卡人验证记录的执行条件,如果是,则执行步骤a4,否则执行步骤S4。
[0023]所述步骤a4之前还包括:
[0024]步骤bl:所述终端判断当前持卡人验证记录的编码是否为失败,如果是,则执行步骤b2,否则执行步骤a4;
[0025]步骤b2:所述终端设置终端验证结果为持卡人验证不成功,设置终端状态信息为持卡人验证已执行,结束持卡人验证。
[0026]所述步骤S3与所述步骤S4之间还包括:所述终端根据当前持卡人验证记录的编码,判断是否满足继续验证的条件,如果是,则执行步骤S4,否则持卡人验证失败,结束持卡人验证。
[0027]所述根据当前持卡人验证记录的编码,判断是否满足继续验证的条件,具体为:所述终端判断当前持卡人验证记录的编码中预设位上的值是否为预设值,如果是,则执行步骤S4,否则持卡人验证失败,结束持卡人验证。
[0028]所述步骤S3中,所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0029]步骤S3-0:所述终端判断是否具有完成持卡人验证的硬件和软件条件,如果是,则执行步骤S3-4,否则执行步骤S3-1;
[0030]步骤S3-1:所述终端判断当前持卡人验证记录的编码对应的持卡人验证方法,如果是联机PIN验证,则执彳丁步骤S3-3,如果是脱机PIN验证,则执彳丁步骤S3-2 ;
[0031]步骤S3-2:所述终端判断是否能够支持当前持卡人验证记录的编码对应的脱机PIN验证,如果是,则执彳丁步骤S3-4,否则执彳丁步骤S3_3 ;
[0032]步骤S3-3:所述终端设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障,执行步骤S4;
[0033]步骤S3-4:所述终端判断当前持卡人验证记录的编码的类型,如果是脱机PIN验证,则执行脱机PIN验证,如果是联机密文PIN验证,则执行联机密文PIN验证,否则执行其他验证方法。
[0034]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:当前持卡人验证记录的编码对应的持卡人验证方法为脱机PIN验证,执行以下操作:
[0035]步骤Cl:所述终端提示输入PIN码;
[0036]步骤c2:所述终端判断当前持卡人验证方法是否为脱机密文PIN验证,如果是,则执行步骤c3,否则根据用户输入的PIN码生成PIN码验证命令,执行步骤c4;
[0037]步骤c3:所述终端恢复PIN加密的公钥,使用所述PIN加密的公钥对用户输入的PIN码进行加密,得到PIN密文,根据PIN密文得到PIN码验证命令,执行步骤c4;
[0038]步骤c4:所述终端向卡片发送PIN码验证命令,接收卡片返回的状态码,判断接收到的状态码,如果是第一预设值,则返回步骤Cl,如果是第二预设值,则脱机PIN验证成功,结束持卡人验证,如果是第三预设值,则脱机PIN验证失败,结束持卡人验证。
[0039]所述步骤Cl之前,还包括:
[0040]步骤dl:所述终端向所述卡片发送取数据命令,接收所述卡片返回的取数据命令响应数据,判断从所述取数据命令响应数据中是否能够获取到PIN重试计数器的值,如果是,则执行步骤d2,否则执行步骤Cl;
[0041]步骤d2:终端判断PIN重试计数器的值是否为阈值,如果是,则执行步骤d3,否则执行步骤cI ;
[0042]步骤d3:终端设置终端验证结果为PIN重试次数超限,脱机PIN验证失败,结束持卡人验证。
[0043]所述步骤Cl与所述步骤c2之间还包括:
[0044]步骤el:所述终端判断密码键盘是否正常工作,如果是,则执行步骤e2,否则设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障,脱机PIN验证失败,结束持卡人验证;
[0045]步骤e2:所述终端判断是否直接接收到确认键按下,如果是,则设置终端验证结果为要求输入PIN,但没有输入PIN,脱机PIN验证失败,结束持卡人验证,否则执行步骤c2。
[0046]所述步骤c3中,所述使用所述PIN加密的公钥对用户输入的PIN码进行加密,得到PIN密文,具体为:
[0047]步骤fl:所述终端向所述卡片发送取随机数命令,接收卡片返回的随机数;
[0048]步骤f2:所述终端生成随机数,使用所述PIN加密的公钥对用户输入的PIN码、终端产生的随机数和接收到的卡片的随机数进行加密,得到PIN密文。
[0049]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:当前持卡人验证记录的编码对应的持卡人验证方法为联机密文PIN验证,执行以下操作:
[0050]步骤gl:所述终端提示输入PIN码;
[0051 ]步骤g2:所述终端接收用户输入的PIN码,对所述PIN码进行数据格式化,与主账号数据进行按位异或,然后用密钥对异或结果进行加密,得到联机密文PIN;
[0052]步骤g3:所述终端根据所述联机密文PIN生成验证信息,并上送至后台服务器,等待接收所述后台服务器的验证结果;
[0053]步骤g4:所述终端判断所述后台服务器返回的验证结果,如果验证成功,则联机PIN验证成功,如果验证失败,则联机PIN验证失败。
[0054]所述步骤gl与所述步骤g2之间还包括:
[0055]步骤hi:所述终端判断密码键盘是否正常工作,如果是,则执行步骤h2,否则设置终端验证结果为要求PIN输入,但密码键盘不存在或不工作,联机PIN验证失败,结束持卡人验证;
[0056]步骤h2:所述终端判断是否直接接收到确认键按下,如果是,则设置终端验证结果为要求输入PIN,但没有输入PIN,联机PIN验证失败,结束持卡人验证,否则执行步骤g2。
[0057]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0058]当前持卡人验证记录的编码对应的持卡人验证方法为签名,所述终端设置在收据上打印带有签名行的凭单,接收持卡人签名,设置持卡人验证结果为未知,持卡人验证成功。
[0059]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0060]当前持卡人验证记录的编码对应的持卡人验证方法为签名与PIN验证结合验证,执行步骤il至步骤i2;
[0061]步骤il:所述终端分别执行签名和PIN验证,判断持卡人验证是否均为成功,如果是,则执行步骤i2,否则设置持卡人验证结果为失败,结束持卡人验证;
[0062]步骤i2:所述终端判断两种方法对应的持卡人验证结果中是否存在未知,如果是,则设置持卡人验证结果为未知,结束,否则设置持卡人验证结果为成功,结束持卡人验证。
[0063]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0064]当前持卡人验证记录的编码对应的持卡人验证方法为无需持卡人验证,所述终端设置持卡人验证结果为成功,结束持卡人验证。
[0065]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0066]当前持卡人验证记录的编码对应的持卡人验证方法为持卡人证件出示,所述终端向卡片发送读应用数据命令,接收所述卡片返回的响应数据,从响应数据中获取持卡人证件类型及号码并显示在屏幕上,并提示服务人员要求持卡人出示相应证件,当接收到服务人员设置成功信息时,设置持卡人验证结果为成功,当接收到服务人员设置失败信息时,设置持卡人验证结果为失败。
[0067]所述执行当前持卡人验证记录的编码对应的持卡人验证方法,具体为:
[0068]当前持卡人验证记录的编码对应的持卡人验证方法为无需持卡人证件出示,终端设置持卡人验证结果为成功。
[0069]一种检查持卡人身份的终端,包括:
[0070]读卡模块,用于从卡片中获取持卡人验证方法列表;
[0071]第一获取模块,用于从所述读卡模块中读取到的持卡人验证方法列表中获取未处理的持卡人验证记录,作为当前持卡人验证记录;
[0072]第一判断模块,用于判断是否满足所述第一获取模块获取到的当前持卡人验证记录的执行条件,并判断是否支持当前持卡人验证记录的编码对应的持卡人验证方法;
[0073]持卡人验证模块,用于当所述第一判断模块判断为是时,执行当前持卡人验证记录的编码对应的持卡人验证方法,判断持卡人验证是否成功;
[0074]第二判断模块,用于当所述第一判断模块判断为否时,判断所述持卡人验证方法列表中是否还有其他未处理的持卡人验证记录;
[0075]第二获取模块,用于当所述第二判断模块判断为是时,从所述持卡人验证方法列表中获取未处理的持卡人验证记录,作为更新后的当前持卡人验证记录,触发所述第一判断模块。
[0076]所述终端还包括第三判断模块和设置模块;
[0077]所述第三判断模块,用于判断是否支持持卡人验证,判断为是时,触发所述第一获取模块,判断为否时,触发所述设置模块;
[0078]所述设置模块,用于将持卡人验证结果设置为不能执行持卡人验证。
[0079]所述第三判断模块,具体包括发送单元、接收单元、获取单元、判断单元和设置单元;
[0080]所述发送单元,用于向卡片发送应用初始化命令;
[0081]所述接收单元,用于接收所述卡片返回的应用初始化响应数据;
[0082]所述获取单元,用于从所述接收单元接收到的所述应用初始化响应数据中获取应用交互特征;
[0083]所述判断单元,用于判断所述获取单元获取到的所述应用交互特征是否支持持卡人验证,判断为是时,触发所述读卡模块,判断为否时,触发所述设置单元;
[0084]所述设置单元,用于将持卡人验证结果设置为不能执行持卡人验证。
[0085]所述第一获取模块,具体包括发送单元、接收单元和获取单元;
[0086]所述发送单元,用于向卡片发送读取应用数据命令;
[0087]所述接收单元,用于接收所述卡片返回的命令响应数据;
[0088]所述获取单元,用于从所述接收单元接收到的所述命令响应数据中获取持卡人验证方法列表,从所述持卡人验证方法列表中获取当前持卡人验证记录。
[0089]所述第一判断模块,具体包括第一判断单元、第二判断单元、第三判断单元、第四判断单元和第一设置单元;
[0090]所述第一判断单元,用于判断当前持卡人验证记录的执行条件,当判断为第一预设条件时,触发所述第四判断单元,当判断为第二预设条件时,触发所述第二判断单元,当判断为其他预设条件时,触发所述第三判断单元,判断为否时,触发所述第二判断模块;
[0091]所述第二判断单元,用于判断是否支持当前持卡人验证记录的编码,判断为是时,触发所述持卡人验证模块,判断为否时,触发所述第二判断模块;
[0092]所述第三判断单元,用于判断是否能够执行当前持卡人验证记录的执行条件,判断为是时,触发所述第四判断单元,判断为否时,触发所述第二判断模块;
[0093]所
当前第1页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1