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

文档序号:9911910阅读:来源:国知局
试计数器的值为I时,还包括:终端提示“最后一次机会”。
[0278]步骤306:终端判断密码键盘是否正常工作,如果是,则执行步骤308,否则执行步骤307;
[0279]步骤307:终端设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障,脱机PIN验证失败,结束持卡人验证,进入交易流程;
[0280]具体为:终端设置终端验证结果的“要求输入PIN,但密码键盘不存在或出故障”位为I。
[0281 ]步骤308:终端判断是否直接接收到确认键按下,如果是,则执行步骤309,否则执行步骤310;
[0282]步骤309:终端设置终端验证结果为要求输入PIN,但没有输入PIN,脱机PIN验证失败,结束持卡人验证,进入交易流程;
[0283]具体为:终端设置终端验证结果的“要求输入PIN,但没有输入PIN”位为I。
[0284]步骤310:终端判断当前持卡人验证记录的编码对应的持卡人验证方法是否为脱机密文PIN验证,如果是,则执行步骤311,否则根据用户输入的PIN码生成PIN码验证命令,执行步骤314;
[0285]步骤311:终端恢复PIN加密的公钥,判断是否恢复成功,如果是,则执行步骤312,否则脱机PIN验证失败,结束持卡人验证,进入交易流程;
[0286]步骤312:终端向卡片发送取随机数命令,接收卡片返回的随机数;
[0287]步骤313:终端生成随机数,使用恢复的PIN加密的公钥对用户输入的PIN码、终端产生的随机数和接收到的卡片的随机数进行加密,得到PIN密文,根据PIN密文得到PIN码验证命令,执行步骤314;
[0288]步骤314:终端向卡片发送PIN码验证命令,接收卡片返回的状态码;
[0289]本实施例中,如果终端与密码键盘集成在一个安全的防篡改设备中,且脱机明文PIN是直接从密码键盘传到终端,则当当前持卡人验证方法为脱机明文PIN验证时,不要求对PIN加密,明文PIN可直接从密码键盘传送至终端;
[0290]如果终端与密码键盘是分离的两个设备,或者明文PIN不是直接从密码键盘传到终端,则密码键盘要求用密钥对PIN加密后传给终端,终端再采用同样的密钥解密,将得到的明文PIN传给卡片。
[0291]步骤315:终端判断接收到的状态码,如果是第一预设值,则返回步骤306,如果是第二预设值,则执行步骤317,如果是第三预设值,则执行步骤316,否则结束持卡人验证,不进入交易流程;
[0292]本实施例中,优选的,第一预设值为0x63cx且X大于O,其中,x为剩余PIN输入次数,表示PIN码错误,第二预设值为0x9000,表示PIN码正确,第三预设值为0x63c0或0x6983或0x6984,其中,0x63c0表示超过PIN码输入上限,0x6983或0x6984表示前一次验证的PIN次数超过上限;
[0293]进一步的,当状态码为第一预设值时,还包括:显示密码错误,然后返回步骤306显示输入PIN码。
[0294]步骤316:终端设置终端验证结果为PIN重试次数超限,脱机PIN验证失败,结束持卡人验证,进入交易流程;
[0295]具体为:终端设置终端验证结果的PIN重试次数超限位为I;
[0296]本实施例中,当脱机PIN验证失败时,还包括显示密码错误。
[0297]步骤317:终端设置持卡人验证结果为成功,脱机PIN验证成功,结束持卡人验证,进入交易流程;
[0298]本实施例中,当脱机PIN验证成功时,还包括显示密码正确。
[0299]实施例5
[0300]本发明实施例5提供的是执行联机密文PIN验证处理的具体操作,如图5所示,包括:
[0301 ] 步骤401:终端提示输入PIN码;
[0302]步骤402:终端判断密码键盘是否正常工作,如果是,则执行步骤404,否则执行步骤403;
[0303]步骤403:终端设置终端验证结果为要求PIN输入,但密码键盘不存在或不工作,联机PIN验证失败,结束持卡人验证,进入交易流程;
[0304]具体为:终端设置终端验证结果的“要求PIN输入,但密码键盘不存在或不工作”位为I。
[0305]步骤404:终端判断是否直接接收到确认键按下,如果是,则执行步骤405,否则执行步骤406;
[0306]步骤405:终端设置终端验证结果为要求输入PIN,但没有输入PIN,联机PIN验证失败,结束持卡人验证,进入交易流程;
[0307]具体为:终端设置终端验证结果中的“要求输入PIN,但没有输入PIN”位为I。
[0308]步骤406:终端接收用户输入的PIN码,对输入的PIN码进行数据格式化,与主账号数据进行按位异或,然后用密钥对异或结果进行加密,得到联机密文PIN;
[0309]步骤407:终端设置持卡人验证结果为未知,设置终端验证结果为联机PIN输入;
[0310]具体为:终端设置持卡人验证结果为未知,设置终端验证结果的“联机PIN输入”位为I。
[0311 ]步骤408:终端根据联机密文PIN生成验证信息,并上送至后台服务器,等待接收后台服务器的验证结果;
[0312]具体的,终端根据联机密文PIN、持卡人验证结果和终端验证结果生成验证结果;
[0313]本实施例中,后台服务器接收到验证信息后,根据验证信息获知持卡人验证方法为联机密文PIN验证,使用密钥对验证信息中的联机密文PIN进行解密,得到明文PIN,判断得到的明文PIN与服务器中保存的PIN是否相同,如果是,则验证成功,向终端返回验证成功的验证结果,否则验证失败,向终端返回验证失败的验证结果;
[0314]步骤409:终端判断接收到的后台服务器返回的验证结果,如果验证成功,则联机PIN验证成功,如果验证失败,则联机PIN验证失败。
[0315]实施例6
[0316]本发明实施例6提供的是执行其他验证方法的具体操作,具体包括:
[0317](I)当前持卡人验证方法为签名时:
[0318]终端设置在收据上打印带有签名行的凭单,接收持卡人签名,设置持卡人验证结果为未知,持卡人验证成功,进入交易流程。
[0319](2)当前持卡人验证方法为签名与PIN验证结合验证时:
[0320]步骤1:终端分别执行签名的具体操作和PIN验证的具体操作,判断两种操作是否均为成功,如果是,则执行步骤2,否则设置持卡人验证结果为失败,结束持卡人验证,进入交易流程;
[0321 ]步骤2:终端判断两种方法对应的持卡人验证结果中是否存在未知,如果是,则设置持卡人验证结果为未知,结束,否则设置持卡人验证结果为成功,结束持卡人验证,进入交易流程。
[0322](3)当前持卡人验证方法为无需持卡人验证时,终端设置持卡人验证结果为成功,结束持卡人验证,进入交易流程。
[0323](4)当前持卡人验证方法为持卡人证件出示时,
[0324]终端向卡片发送读应用数据命令,接收卡片返回的响应数据,从响应数据中获取持卡人证件类型及号码并显示在屏幕上,并提示服务人员要求持卡人出示相应证件,比较证件号码与终端屏幕显示的号码是否一致,以及检查证件与持卡人本人是否一致,如果均是,则设置持卡人验证结果为成功,进入交易流程,否则设置持卡人验证结果为失败,进入交易流程。
[0325](5)当前持卡人验证方法为无需持卡人证件出示时,设置持卡人验证结果为成功,进入交易流程。
[0326]实施例7
[0327]本发明实施例7提供了一种检查持卡人身份的终端,如图6所示,包括:
[0328]读卡模块101,用于从卡片中获取持卡人验证方法列表;
[0329]第一获取模块102,用于从读卡模块101中读取到的持卡人验证方法列表中获取未处理的持卡人验证记录,作为当前持卡人验证记录;
[0330]第一判断模块103,用于判断是否满足第一获取模块102获取到的当前持卡人验证记录的执行条件,并判断是否支持当前持卡人验证记录的编码对应的持卡人验证方法;
[0331]持卡人验证模块104,用于当第一判断模块103判断为是时,执行当前持卡人验证记录的编码对应的持卡人验证方法,判断持卡人验证是否成功;
[0332]第二判断模块105,用于当第一判断模块103判断为否时,判断持卡人验证方法列表中是否还有其他未处理的持卡人验证记录;
[0333]第二获取模块106,用于当第二判断模块105判断为是时,从持卡人验证方法列表中获取未处理的持卡人验证记录,作为更新后的当前持卡人验证记录,触发第一判断模块103。
[0334]本实施例中,该终端还包括第三判断模块和设置模块;
[0335]第三判断模块,用于判断是否支持持卡人验证,判断为是时,触发第一获取模块102,判断为否时,触发设置模块;
[0336]设置模块,用于将持卡人验证结果设置为不能执行持卡人验证。
[0337]具体的,第三判断模块,具体包括发送单元、接收单元、获取单元、判断单元和设置单元;
[0338]发送单元,用于向卡片发送应用初始化命令;
[0339]接收单元,用于接收卡片返回的应用初始化响应数据;
[0340]获取单元,用于从接收单元接收到的应用初始化响应数据中获取应用交互特征;
[0341]判断单元,用于判断获取单元获取到的应用交互特征是否支持持卡人验证,判断为是时,触发读卡模块,判断为否时,触发设置单元;
[0342]设置单元,用于将持卡人验证结果设置为不能执行持卡人验证。
[0343]进一步的,第一获取单元,具体包括发送单元、接收单元和获取单元;
[0344]发送单元,用于向卡片发送读取应用数据命令;
[0345]接收单元,用于接收卡片返回的响应数据;
[0346]获取单元,用于从接收单元接收到的命令响应数据中获取持卡人验证方法列表,从持卡人验证方法列表中获取当前持卡人验证记录。
[0347]其中,第一判断模块103,具体包括第一判断单元、第二判断单元、第三判断单元、第四判断单元和第一设置单元;
[0348]第一判断单元,用于判断当前持卡人验证记录的执行条件,当判断为第一预设条件时,触发第四判断单元,当判断为第二预设条件时,触发第二判断单元,当判断为其他预设条件时,触发第三判断单元,判断为否时,触发第二判断模块105;
[0349]第二判断单元,用于判断是否支持当前持卡人验证记录的编码,判断为是时,触发持卡人验证模块104,判断为否时,触发第二判断模块105;
[0350]第三判断单元,用于判断是否能够执行当前持卡人验证记录的执行条件,判断为是时,触发第四判断单元,判断为否时,触发第二判断模块105;
[0351]第四判断单元,用于判断是否识别当前持卡人验证记录的编码,判断为是时,触发持卡人验证模块104,判断为否时,触发第一设置单元;
[0352]第一设置单元,用于设置终端验证结果为未识别持卡人验证方法,触发第二判断模块105。
[0353]进一步的,
[0354]第二判断单元,具体用于判断当前持卡人验证记录的编码对应的持卡人验证方法是否在终端能力范围内,判断为是时,触发持卡人验证模块104,判断为否时,触发第二判断模块105。
[0355]第三判断单元,具体包括第一判断子模块和第二判断子模块;
[0356]第一判断子模块,用于判断当前持卡人验证记录的执行条件是否有效,判断为是时,触发第二判断子模块,判断为否时,触发第二判断模块105;
[0357]第二判断子模块,用于判断是否满足当前持卡人验证记录的执行条件,判断为是时,触发第四判断单元,判断为否时,触发第二判断模块105。
[0358]其中,第一判断模块103,还包括第五判断单元和第二设置单元;
[0359]第五判断单元,用于判断当前持卡人验证记录的编码是否为失败,判断为是时,触发第二设置单元,判断为否时,触发第四判断单元;
[0360]第二设置单元,用于设置终端验证结果为持卡人验证不成功,设置终端状态信息为持卡人验证已执行。
[0361 ]本实施例中,终端还包括第四判断模块;
[0362]第四判断模块,用于根据当前持卡人验证记录的编码,判断是否满足继续验证的条件,判断为是时,触发第二判断模块105,判断为否时,持卡人验证失败。
[0363]其中,第四判断模块,具体用于判断当前持卡人验证记录的编码中预设位上的值是否为预设值,判断为是时,触发第二判断模块105,判断为否时,持卡人验证失败。
[0364]本实施例中,持卡人验证模块104,具体包括第一判断单元、第二判断单元、第三判断单元、第四判断单元、设置单元、第一执行单元、第二执行单元和第三执行单元;
[0365]第一判断单元,用于判断是否具有完成持卡人验证的硬件和软件条件,判断为是时,触发第四判断单元,判断为否时,触发第二判断单元;
[0366]第二判断单元,用于判断当前持卡人验证记录的编码,判断为联机PIN验证时,触发设置单元,判断为脱机PIN验证时,触发第三判断单元;
[0367]第三判断单元,用于判断是否能够支持当前持卡人验证记录的编码对应的脱机PIN验证,判断为是时,触发第四判断单元,判断为否时,触发设置单元;
[0368]设置单元,用于设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障,触发第二判断模块105;
[0369]第四判断单元,用于判断当前持卡人验证记录的编码的类型,判断为脱机PIN验证时,触发第一执行单元,判断为联机密文PIN验证时,触发第二执行单元,判断为否时,触发第三执行单元;
[0370]第一执行单元,用于执行脱机PIN验证;
[0371 ]第二执行单元,用于执行联机密文PIN验证;
[0372]第三执行单元,用于执行其他验证方法。
[0373]本实施例中,持卡人验证模块104,具体包括提示子模块、第一判断子模块、生成子模块、处理子模块、发送子模块、接收子模块和第二判断子模块;
[0374]提示子模块,用于提示输入PIN码;
[0375]第一判断子模块,用于判断当前持卡人验证方法是否为脱机密文PIN验证,判断为是时,触发处理子模块,判断为否时,触发生成子模块;
[0376]生成子模块,用于根据用户输入的PIN码生成PIN码验证命令,触发发送子模块;
[0377]处理子模块,用于恢复PIN加密的公钥,使用PIN加密的公钥对用户输入的PIN码进行加密,得到PIN密文,根据PIN密文得到PIN码验证命令,触发发送子模块;
[0378]发送子模块,用于向卡片发送PIN码验证命令;
[0379]接收子模块,用于
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1