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

文档序号:9911910阅读:来源:国知局
述第四判断单元,用于判断是否识别当前持卡人验证记录的编码,判断为是时,触发所述持卡人验证模块,判断为否时,触发所述第一设置单元;
[0094]所述第一设置单元,用于设置终端验证结果为未识别持卡人验证方法,触发所述第二判断模块。
[0095]所述第二判断单元,具体用于判断当前持卡人验证记录的编码对应的持卡人验证方法是否在终端能力范围内,判断为是时,触发所述持卡人验证模块,判断为否时,触发所述第二判断模块。
[0096]所述第三判断单元,具体包括第一判断子模块和第二判断子模块;
[0097]所述第一判断子模块,用于判断当前持卡人验证记录的执行条件是否有效,判断为是时,触发所述第二判断子模块,判断为否时,触发所述第二判断模块;
[0098]所述第二判断子模块,用于判断是否满足当前持卡人验证记录的执行条件,判断为是时,触发所述第四判断单元,判断为否时,触发所述第二判断模块。
[0099]所述第一判断模块,还包括第五判断单元和第二设置单元;
[0100]所述第五判断单元,用于判断当前持卡人验证记录的编码是否为失败,判断为是时,触发所述第二设置单元,判断为否时,触发所述第四判断单元;
[0101]所述第二设置单元,用于设置终端验证结果为持卡人验证不成功,设置终端状态信息为持卡人验证已执行。
[0102]所述终端还包括第四判断模块;
[0103]所述第四判断模块,用于根据当前持卡人验证记录的编码,判断是否满足继续验证的条件,判断为是时,触发所述第二判断模块,判断为否时,持卡人验证失败。
[0104]所述第四判断模块,具体用于判断当前持卡人验证记录的编码中预设位上的值是否为预设值,判断为是时,触发所述第二判断模块,判断为否时,持卡人验证失败。
[0105]所述持卡人验证模块,具体包括第一判断单元、第二判断单元、第三判断单元、第四判断单元、设置单元、第一执行单元、第二执行单元和第三执行单元;
[0106]所述第一判断单元,用于判断是否具有完成持卡人验证的硬件和软件条件,判断为是时,触发所述第四判断单元,判断为否时,触发所述第二判断单元;
[0107]所述第二判断单元,用于判断当前持卡人验证记录的编码,判断为联机PIN验证时,触发所述设置单元,判断为脱机PIN验证时,触发所述第三判断单元;
[0?08]所述第三判断单元,用于判断是否能够支持当前持卡人验证记录对应的脱机PIN验证,判断为是时,触发所述第四判断单元,判断为否时,触发所述设置单元;
[0109]所述设置单元,用于设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障,触发所述第二判断模块;
[0110]所述第四判断单元,用于判断当前持卡人验证记录的编码的类型,判断为脱机PIN验证时,触发所述第一执行单元,判断为联机密文PIN验证时,触发所述第二执行单元,判断为否时,触发所述第三执行单元;
[0111]所述第一执行单元,用于执行脱机PIN验证;
[0112]所述第二执行单元,用于执行联机密文PIN验证;
[0113]所述第三执行单元,用于执行其他验证方法。
[0114]所述持卡人验证模块,具体包括提示子模块、第一判断子模块、生成子模块、处理子模块、发送子模块、接收子模块和第二判断子模块;
[0115]所述提示子模块,用于提示输入PIN码;
[0116]所述第一判断子模块,用于判断当前持卡人验证方法是否为脱机密文PIN验证,判断为是时,触发所述处理子模块,判断为否时,触发所述生成子模块;
[0117]所述生成子模块,用于根据用户输入的PIN码生成PIN码验证命令,触发所述发送子模块;
[0118]所述处理子模块,用于恢复PIN加密的公钥,使用所述PIN加密的公钥对用户输入的PIN码进行加密,得到PIN密文,根据PIN密文得到PIN码验证命令,触发所述发送子模块;
[0119]所述发送子模块,用于向卡片发送PIN码验证命令;
[0120]所述接收子模块,用于接收所述卡片返回的状态码;
[0121]所述第二判断子模块,用于判断所述接收子模块接收到的状态码,判断为第一预设值时,触发所述提示子模块,判断为第二预设值时,脱机PIN验证成功,判断为第三预设值时,脱机PIN验证失败。
[0122]所述持卡人验证模块,还包括第三判断子模块、第四判断子模块和第一设置子模块;
[0123]所述发送子模块,还用于向所述卡片发送取数据命令;
[0124]所述接收子模块,还用于接收所述卡片返回的取数据命令响应数据;
[0125]所述第三判断子模块,用于判断所述接收子模块接收到的所述取数据命令响应数据中是否能够获取到PIN重试计数器的值,判断为是时,触发所述第四判断子模块,判断为否时,触发所述提示子模块;
[0126]所述第四判断子模块,用于判断PIN重试计数器的值是否为阈值,判断为是时,触发所述第一设置子模块,判断为否时,触发所述提示子模块;
[0127]所述第一设置子模块,用于设置终端验证结果为PIN重试次数超限。
[0128]所述持卡人验证模块,还包括第五判断子模块、第二设置子模块、第六判断子模块和第三设置子模块;
[0129]所述第五判断子模块,用于判断密码键盘是否正常工作,判断为是时,触发所述第六判断子模块,判断为否时,触发所述第二设置子模块;
[0130]所述第二设置子模块,用于设置终端验证结果为要求输入PIN,但密码键盘不存在或出故障;
[0131]所述第六判断子模块,用于判断是否直接接收到确认键按下,判断为是时,触发所述第三设置子模块,判断为否时,触发所述第一判断子模块;
[0132]所述第三设置子模块,用于设置终端验证结果为要求输入PIN,但没有输入PIN。
[0133]所述处理子模块,具体包括发送子单元、接收子单元、生成子单元和加密子单元;
[0134]所述发送子单元,用于向所述卡片发送取随机数命令;
[0135]所述接收子单元,用于接收卡片返回的随机数;
[0136]所述生成子单元,用于生成随机数;
[0137]所述加密子单元,用于使用所述PIN加密的公钥对用户输入的PIN码、终端产生的随机数和接收到的卡片的随机数进行加密,得到PIN密文。
[0138]所述持卡人验证模块,具体包括:提示子模块、接收子模块、处理子模块、发送子模块和第一判断子模块;
[0139]所述提示子模块,用于提示输入PIN码;
[0140]所述接收子模块,用于接收用户输入的PIN码;接收后台服务器的验证结果;
[0141]所述处理子模块,用于对所述接收子模块接收到的所述PIN码进行数据格式化,与主账号数据进行按位异或,然后用密钥对异或结果进行加密,得到联机密文PIN;
[0142]所述发送子模块,用于根据所述联机密文PIN生成验证信息,并上送至后台服务器;
[0143]所述第一判断子模块,用于判断所述接收子模块接收到的所述后台服务器返回的验证结果,判断为是时,联机PIN验证成功,判断为否时,联机PIN验证失败。
[0144]所述持卡人验证模块,还包括:第二判断子模块、第一设置子模块、第三判断子模块和第二设置子模块;
[0145]所述第二判断子模块,用于判断密码键盘是否正常工作,判断为是时,触发所述第三判断子模块,判断为否时,触发所述第一设置子模块;
[0146]所述第一设置子模块,用于设置终端验证结果为要求PIN输入,但密码键盘不存在或不工作;
[0147]所述第三判断子模块,用于判断是否直接接收到确认键按下,判断为是时,触发所述第二设置子模块,判断为否时,触发所述处理子模块;
[0148]所述第二设置子模块,用于设置终端验证结果为要求输入PIN,但没有输入PIN。
[0149]所述持卡人验证模块,具体用于当前持卡人验证记录的编码对应的持卡人验证方法为签名,设置在收据上打印带有签名行的凭单,接收持卡人签名,设置持卡人验证结果为未知。
[0150]所述持卡人验证模块,具体包括第一判断子模块、第二判断子模块、第一设置子模块、第二设置子模块和第三设置子模块;
[0151]所述第一判断子模块,用于当前持卡人验证记录的编码对应的持卡人验证方法为签名与PIN验证结合验证,分别执行签名和PIN验证,判断持卡人验证是否均为成功,判断为是时,触发所述第二判断子模块,判断为否时,触发所述第一设置子模块;
[0152]所述第一设置子模块,用于设置持卡人验证结果为失败;
[0153]所述第二判断子模块,用于判断两种方法对应的持卡人验证结果中是否存在未知,判断为是时,触发所述第二设置子模块,判断为否时,触发所述第三设置子模块;
[0154]所述第二设置子模块,用于设置持卡人验证结果为未知;
[0155]所述第三设置子模块,用于设置持卡人验证结果为成功。
[0156]所述持卡人验证模块,具体用于当当前持卡人验证记录的编码对应的持卡人验证方法为无需持卡人验证时,设置持卡人验证结果为成功。
[0157]所述持卡人验证模块,具体包括发送子模块、接收子模块、显示子模块、提示子模块、第一设置子模块和第二设置子模块;
[0158]所述发送子模块,用于当当前持卡人验证记录的编码对应的持卡人验证方法为持卡人证件出示时,向卡片发送读应用数据命令;
[0159]所述接收子模块,用于接收所述卡片返回的响应数据;
[0160]所述显示子模块,用于从所述接收子模块接收到的响应数据中获取持卡人证件类型及号码并显示在屏幕上;
[0161]所述提示子模块,用于提示服务人员要求持卡人出示相应证件;
[0162]所述第一设置子模块,用于当接收到服务人员设置成功信息时,设置持卡人验证结果为成功;
[0163]所述第二设置子模块,用于当接收到服务人员设置失败信息时,设置持卡人验证结果为失败。
[0164]所述持卡人验证模块,具体用于当当前持卡人验证记录的编码对应的持卡人验证方法为无需持卡人证件出示时,设置持卡人验证结果为成功。
[0165]本发明与现有技术相比,具有以下优点:本发明在一种终端中采用多种验证持卡人身份的方法,避免了持卡验证的单一性,当遇到某一验证出现问题时,可通过其他方式进行交易,极大的提高了交易的安全性和便捷性。
【附图说明】
[0166]为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0167]图1是本发明实施例1提供的一种检查持卡人身份的终端工作方法流程图;
[0168]图2是本发明实施例2提供的一种检查持卡人身份的终端工作方法流程图;
[0169]图3是本发明实施例3提供的终端执行当前持卡人验证方法中的代码对应的持卡人验证的具体操作流程图;
[0170]图4是本发明实施例4提供的执行脱机PIN验证处理的具体操作流程图;
[0171]图5是本发明实施例5提供的执行联机密文PIN验证处理的具体操作流程图;
[0172]图6是本发明实施例7提供的一种检查持卡人身份的终端装置图。
【具体实施方式】
[0173]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0174]实施例1
[0175]本发明实施例1提供了一种检查持卡人身份的终端工作方法,如图1所示,包括:
[0176]步骤S1:终端从卡片中获取持卡人验证方法列表,从持卡人验证方法列表中获取未处理的持卡人验证记录,作为当前持卡人验证记录;
[0177]本步骤之前,还包括:终端判断是否支持持卡人验证,如果是,则执行步骤SI,否则将持卡人验证结果设置为不能执行持卡人验证,结束持卡人验证;
[0178]具体为:终端向卡片发送应用初始化命令,接收卡片返回的应用初始化响应数据,从响应数据中获取应用交互特征,判断应用交互特征是否支持持卡人验证,如果是,则支持持卡人验证,否则不支持持卡人验证;
[0179]其中,从卡片中获取持卡人验证方法列表,具体为:终端向卡片发送读取应用数据命令,接收卡片返回的命令响应数据,从响应数据中获取持卡人验证方法列表。
[0180]步骤S2:终端判断是否满足当前持卡人验证记录的执行条件,并判断是否支持当前持卡人验证记录的编码对应的持卡人验证方法,如果均为是,则执行步骤S3,否则执行步骤S4;
[0181]本步骤具体为:
[0182]步骤al:终端判断当前持卡人验证记录的执行条件,如果是第一预设条件,则执行步骤a4,如果是第二预设条件,则执行步骤a2,如果是其他预设条件,则执行步骤a3,否则执行步骤S4;
[0183]步骤a2:终端判断是否支持当前持卡人验证记录的编码,如果是,则执行步骤S3,否则执行步骤S4;
[0184]具体为:终端判断当前持卡人验证记录的编码对应的持卡人验证方法是否在终端能力范围内,如果是,则支持当前持卡人验证记录的编码,否则不支持当前持卡人验证记录的编码;
[0185]步骤a3:终端判断是否能够执行当前持卡人验证记录的执行条件,如果是,则执行步骤a4,否则执行步骤S4;
[0186]本步骤具体为:
[0187]步骤a3_l:终端判断当前持卡人验证记录的执行条件是否有效,如果是,则执行步骤a3_2,否则执行步骤S4;
[0188]步骤a3-2:终端判断是否满足当前持卡人验证记录的执行条件,如果是,则执行步骤a4,否则执行步骤S4;
[0189]步骤a4:终端判断是否识别当前持卡人验证记录的编码,如果是,则执行步骤S3,否则设置终端验证结果为未识别持卡人验证方法,执行步骤S4;
[0190]本步骤之前还包括:
[0191]步骤bl:终端判断当前持卡人验证记录的编码是否为失败,如果是,则执行步骤b2,否则执行步骤a4;
[0192]步骤b2:终端设置终端验证结果为持卡人验证不成功,设置终端状态信息为持卡人验证已执行,结束持卡人验证。
[019 3 ]步骤S 3:终端执行当前持卡人验证记录的编码对应的持卡人验证方法,判断持卡人验证是否成功,如果是,则持卡人验证成功,结束持卡人验证,否则执行步骤S4;
[0194]本实施例中,当判断持卡人验证失败时,还包括:
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1