CN104104687A - 一种安全登录的方法和系统 - Google Patents
一种安全登录的方法和系统 Download PDFInfo
- Publication number
- CN104104687A CN104104687A CN201410362690.5A CN201410362690A CN104104687A CN 104104687 A CN104104687 A CN 104104687A CN 201410362690 A CN201410362690 A CN 201410362690A CN 104104687 A CN104104687 A CN 104104687A
- Authority
- CN
- China
- Prior art keywords
- authenticating device
- module
- sensitive information
- dynamic password
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本发明公开一种安全登录的方法和系统,该方法包括:客户端向认证中心发送敏感信息下发请求;认证中心查找第二敏感信息,生成随机数、第一应答数据和应答报文,向客户端发送应答报文;客户端得到第一应答数据和第二敏感信息,将第一应答数据发送到认证设备;认证设备得到第二敏感信息和随机数,向客户端返回第二敏感信息;若客户端判断接收到的第二敏感信息与根据应答报文得到的第二敏感信息一致,则认证设备根据时间因子、预设算法以及随机数生成第一动态口令,通过客户端向认证中心发送所述第一动态口令;认证中心根据随机数、时间因子和预设算法,生成第二动态口令,判断第一动态口令与第二动态口令是否一致,是则认证成功,否则失败。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种安全登录的方法和系统。
背景技术
动态口令作为身份认证技术之一,目前已经被越来越多的行业所应用。由于它使用便捷,且与平台无关性,随着移动互联网的发展,动态口令技术已成为用户登录时的身份认证技术的主流,被广泛应用于企业、电子商务等领域,目前用于生成动态口令终端有硬件令牌、短信密码和手机令牌。现有的基于动态口令的身份认证技术虽然方便快捷,但是在传输动态口令的过程中,动态口令易被他人截获、篡改,因此现有的基于动态口令的登录方法安全性差。
发明内容
本发明的目的是为了克服现有技术的不足,提供一种安全登录的方法和系统,实现安全登录。
本发明提供的一种安全登录的方法,应用于包括客户端、认证中心和认证设备的系统中,所述方法包括:
步骤S1:当所述客户端检测到触发信息后,所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,根据所述认证设备序列号和所述第一敏感信息标识生成敏感信息下发请求,向所述认证中心发送所述敏感信息下发请求;
步骤S2:所述认证中心根据所述敏感信息下发请求中的所述第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息,生成随机数,将所述随机数与所述敏感信息下发请求中的所述认证设备序列号对应存储,根据所述第一敏感信息、所述第二敏感信息和所述随机数生成第一应答数据,根据所述第一应答数据和所述第二敏感信息生成应答报文,向所述客户端发送所述应答报文;
步骤S3:所述客户端根据所述应答报文,得到第一应答数据和第二敏感信息,将得到的第一应答数据发送到所述认证设备;
步骤S4:所述认证设备根据接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数,对得到的第一敏感信息进行显示;
步骤S5:当所述认证设备检测到按键被触发后,所述认证设备判断所述按键的类型,若是第一按键则向所述客户端返回从所述第一应答数据中得到的第二敏感信息,执行步骤S7,若是第二按键则向所述客户端返回错误码,执行步骤S6;
步骤S6:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束;
步骤S7:所述客户端判断接收到的第二敏感信息与根据所述应答报文得到的第二敏感信息是否一致,是则向所述认证设备发送登录指令,执行步骤S8,否则显示登录失败信息,结束;
步骤S8:所述认证设备根据所述认证设备中的时间因子、预设算法以及从第一应答数据中得到的随机数,生成第一动态口令,向所述客户端发送所述第一动态口令和所述认证设备序列号;
步骤S9:所述客户端向所述认证中心发送所述第一动态口令和所述认证设备序列号;
步骤S10:所述认证中心根据所述认证设备序列号查找对应的随机数,根据查找到的随机数、所述认证中心中的时间因子和预设算法,生成第二动态口令,判断所述第一动态口令与所述第二动态口令是否一致,是则向所述客户端发送认证成功信息,结束,否则向所述客户端返回错误码,执行步骤S11;
步骤S11:所述客户端接收所述认证中心发送的错误码,根据所述错误码显示登录失败信息,结束。
所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,具体为:所述客户端向所述认证设备发送获取指令,接收所述认证设备返回的认证设备序列号和第一敏感信息标识。
所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,具体为:所述客户端接收用户输入的用户信息,根据所述用户信息在所述客户端内部查找对应的认证设备序列号和第一敏感信息标识。
所述步骤S2之前包括:
步骤A1:所述认证中心根据所述敏感信息下发请求,判断所述认证设备是否合法,是则执行步骤S2,否则向所述客户端返回错误码,执行步骤A2;
步骤A2:所述客户端接收所述认证中心发送的错误码,根据所述错误码显示登录失败信息,结束。
所述步骤A1具体为:
所述认证中心根据所述敏感信息下发请求中的所述认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的所述认证设备的状态,判断所述认证设备可用并且所述认证设备公钥存在时,则执行步骤S2,否则向所述客户端返回错误码,执行步骤A2。
所述根据所述第一敏感信息、所述第二敏感信息和所述随机数生成第一应答数据,具体为:
所述认证中心根据所述敏感信息下发请求中的所述认证设备序列号,在所述认证中心查找对应的认证设备公钥,所述认证中心对所述第一敏感信息、所述第二敏感信息和所述随机数进行拼接组合,得到第一数据,根据查找到的所述认证设备公钥对所述第一数据进行加密,得到第一加密数据,使用认证中心私钥对所述第一加密数据进行签名,得到第一签名值,根据所述第一加密数据和所述第一签名值得到所述第一应答数据;
所述步骤S4之前还包括:
步骤B1:所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,判断是否验签成功,是则执行步骤S4,否则向所述客户端返回错误码,执行步骤B2;
步骤B2:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束;
所述认证设备根据接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数,具体为:
所述认证设备根据认证设备私钥对接收到的第一应答数据中的第一加密数据进行解密,得到第一数据,对得到的第一数据进行拆分,得到第一敏感信息、第二敏感信息和随机数。
所述根据所述第一加密数据和所述第一签名值得到所述第一应答数据,具体为:
所述认证中心对所述第一加密数据进行base64编码,得到第一字符数据,对所述第一签名值进行base64编码,得到第二字符数据,对所述第一字符数据和所述第二字符数据进行组合拼接,生成所述第一应答数据;
所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,具体为:
所述认证设备对接收到的第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签。
所述根据所述第一加密数据和所述第一签名值得到所述第一应答数据,具体为:
所述认证中心对所述第一加密数据和所述第一签名值进行组合拼接,得到第二数据,对所述第二数据进行base64编码,得到所述第一应答数据;
所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,具体为:
所述认证设备对接收到的第一应答数据进行base64解码,得到第二数据,根据base64解码得到的第二数据中的第一加密数据和第一签名值对第一应答数据进行验签。
所述对第一应答数据进行验签,具体为:
所述认证设备根据认证中心公钥对第一签名值进行运算,得到第一验证数据,判断运算得到的所述第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败。
所述根据所述第一应答数据和所述第二敏感信息生成应答报文,具体为:
所述认证中心将所述第一应答数据和所述第二敏感信息进行组合拼接,生成应答报文;
所述根据所述应答报文,得到第一应答数据和第二敏感信息,具体为:
所述客户端对所述应答报文进行拆分,得到第一应答数据和第二敏感信息。
所述步骤S3还包括:所述客户端显示所述第二敏感信息;
所述步骤S5中当所述认证设备检测到所述第一按键被触发后,还包括:所述认证设备显示从第一应答数据中得到的第二敏感信息。
所述步骤S7中向所述认证设备发送登录指令之前还包括:
步骤C1:所述客户端根据所述认证设备序列号判断所述认证设备是否已与用户绑定,是则执行步骤C3,否则执行步骤C2;
步骤C2:所述客户端提示所述用户进行注册,接收所述用户输入的用户信息,根据接收到的所述用户信息将所述用户与所述认证设备进行绑定,执行步骤C3;
步骤C3:所述客户端向所述认证设备发送所述登录指令。
所述客户端根据所述认证设备序列号判断所述认证设备是否已与用户绑定,具体为:
所述客户端判断是否能够在所述客户端内部查找到与所述认证设备序列号对应的用户信息,是则确定所述认证设备已与所述用户绑定,否则确定所述认证设备未与所述用户绑定。
所述根据接收到的所述用户信息将所述用户与所述认证设备进行绑定,具体为:所述客户端将接收到的所述用户信息与所述认证设备序列号对应进行存储,完成绑定。
所述步骤S7中所述客户端判断接收到的所述第二敏感信息与根据所述应答报文得到的所述第二敏感信息一致之后,还包括:
所述客户端获取与所述认证设备对应的用户信息;
所述步骤S9之前包括:所述客户端根据所述用户信息判断所述用户是否合法,是则执行步骤S9,否则显示登录失败信息,结束。
所述客户端根据所述用户信息判断所述用户是否合法,具体为:
所述客户端根据所述用户信息查找对应的用户状态,判断所述用户状态是否异常,是则确定所述用户不合法,否则确定所述用户合法。
所述步骤S8之前还包括:
步骤D1:所述认证设备接收到所述登录指令后,提示用户是否登录;
步骤D2:当所述认证设备检测到按键被触发后,所述认证设备判断按键的类型,若是第一按键则执行步骤S8,若是第二按键则向所述客户端返回错误码,执行步骤D3;
步骤D3:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束。
所述认证设备根据所述认证设备中的时间因子、所述预设算法以及从第一应答数据中得到的随机数,生成第一动态口令,具体为:
步骤E1:所述认证设备根据所述认证设备中的时间因子、所述预设算法以及从第一应答数据中得到的随机数,生成第一明文动态口令;
步骤E2:所述认证设备根据认证中心公钥对所述第一明文动态口令进行加密,得到第一密文动态口令;
步骤E3:所述认证设备使用认证设备私钥对所述第一密文动态口令进行签名,得到第二签名值;
步骤E4:所述认证设备根据所述第一密文动态口令和所述第二签名值,得到所述第一动态口令;
所述步骤S10具体为:
步骤F1:所述认证中心根据所述认证设备公钥对接收到的所述第一动态口令进行验签,判断是否验签成功,是则执行步骤F2,否则向所述客户端返回错误码,执行步骤S11;
步骤F2:所述认证中心根据所述认证设备序列号查找对应的随机数,根据所述随机数、所述认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对所述第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
步骤F3:所述认证中心判断所述第一明文动态口令和所述第二明文动态口令是否一致,是则向客户端发送认证成功信息,结束,否则向客户端返回错误码,执行步骤S11。
所述认证设备根据所述第一密文动态口令和所述第二签名值,得到所述第一动态口令,包括:
所述认证设备对所述第一密文动态口令进行base64编码,得到第三字符数据,对所述第二签名值进行base64编码,得到第四字符数据,对所述第三字符数据和所述第四字符数据进行组合拼接,得到所述第一动态口令;
所述认证中心根据所述认证设备公钥对所述第一动态口令进行验签,具体为:
所述认证中心对所述第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的所述第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
所述认证中心判断接收到的所述第一动态口令与生成的所述第二动态口令一致之后,还包括:清除所述随机数;
所述步骤S10中生成第二动态口令之前包括:
所述认证中心判断是否查找到随机数,是则继续,否则向所述客户端返回错误码,执行步骤S11。
本发明提供的一种安全登录的系统,所述系统包括客户端、认证中心和认证设备;
所述客户端包括:第一检测模块、第一获取模块、第一生成模块、第一发送模块、第一接收模块、第一处理模块、第一显示模块和第一判断模块;
所述第一检测模块,用于检测是否有触发信息;
所述第一获取模块,用于当所述第一检测模块检测到触发信息后,获取所述认证设备的认证设备序列号和第一敏感信息标识;
所述第一生成模块,用于根据所述第一获取模块获取到的所述认证设备序列号和所述第一敏感信息标识生成敏感信息下发请求;
所述第一发送模块,用于向所述认证中心发送所述第一生成模块生成的所述敏感信息下发请求;向所述认证设备发送所述第一处理模块得到的第一应答数据;当所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,向所述认证设备发送登录指令;当所述第一接收模块接收到所述认证设备发送的第一动态口令和认证设备序列号后,向所述认证中心发送所述第一动态口令和所述认证设备序列号;
所述第一接收模块,用于接收所述认证中心发送的应答报文,接收所述认证设备发送的错误码,接收所述认证设备发送的第二敏感信息,接收所述认证设备发送的第一动态口令和认证设备序列号,接收所述认证中心发送的认证成功信息,接收所述认证中心发送的错误码;
所述第一处理模块,用于根据所述第一接收模块接收到的所述应答报文,得到第一应答数据和第二敏感信息;
所述第一显示模块,用于根据所述第一接收模块接收到的错误码显示登录失败信息,当所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息不一致时,显示登录失败信息;
所述第一判断模块,用于判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息是否一致;
所述认证中心包括:第二接收模块、第一查找模块、第二生成模块、第三生成模块、第四生成模块、第二发送模块、第二查找模块、第五生成模块和第二判断模块;
所述第二接收模块,用于接收所述客户端发送的所述敏感信息下发请求,接收所述客户端发送的所述第一动态口令和所述认证设备序列号;
所述第一查找模块,用于根据所述第二接收模块接收到的所述敏感信息下发请求中的所述第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息;
所述第二生成模块,用于生成随机数,将所述随机数与所述第二接收模块接收到的所述敏感信息下发请求中的所述认证设备序列号对应存储;
所述第三生成模块,用于根据所述第一查找模块查找到的所述第一敏感信息、所述第二敏感信息和所述第二生成模块生成的所述随机数,生成第一应答数据;
所述第四生成模块,用于根据所述第三生成模块生成的所述第一应答数据和所述第一查找模块查找到的所述第二敏感信息,生成应答报文;
所述第二发送模块,用于向所述客户端发送所述第四生成模块生成的所述应答报文,当所述第二判断模块判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的第二动态口令一致时,向所述客户端发送认证成功信息,当所述第二判断模块判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的第二动态口令不一致时,向所述客户端返回错误码;
所述第二查找模块,用于根据所述第二接收模块接收到的所述认证设备序列号查找对应的随机数;
所述第五生成模块,用于根据所述第二查找模块查找到的所述随机数、所述认证中心中的时间因子和预设算法,生成第二动态口令;
所述第二判断模块,用于判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的所述第二动态口令是否一致;
所述认证设备包括:第三接收模块、第二处理模块、第二显示模块、第二检测模块、第三判断模块、第三发送模块和第六生成模块;
所述第三接收模块,用于接收所述客户端发送的第一应答数据,接收所述客户端发送的所述登录指令;
所述第二处理模块,用于根据所述第三接收模块接收到的所述第一应答数据,得到第一敏感信息、第二敏感信息和随机数;
所述第二显示模块,用于对所述第二处理模块得到的所述第一敏感信息进行显示;
所述第二检测模块,用于当所述第二显示模块对第一敏感信息进行显示时,检测按键是否被触发;
所述第三判断模块,用于当所述第二检测模块检测到按键被触发后,判断所述按键的类型;
所述第三发送模块,用于向所述客户端发送所述第六生成模块生成的第一动态口令,当所述第三判断模块判断所述按键为第一按键时,向所述客户端返回所述第二处理模块得到的第二敏感信息,当所述第三判断模块判断所述按键为第二按键时,向所述客户端返回错误码;
所述第六生成模块,用于当所述第三接收模块接收到所述登录指令后,根据所述认证设备中的时间因子、预设算法以及所述第二处理模块得到的随机数,生成第一动态口令。
所述第一发送模块还用于向所述认证设备发送获取指令;
所述第一接收模块还用于接收所述认证设备返回的认证设备序列号和第一敏感信息标识。
所述第一接收模块还用于接收用户输入的用户信息;
所述第一获取模块具体用于根据所述第一接收模块接收到的所述用户信息,在所述客户端内部查找对应的认证设备序列号和第一敏感信息标识。
所述认证中心还包括:第四判断模块,用于根据所述第二接收模块接收到的所述敏感信息下发请求,判断所述认证设备是否合法;
所述第一查找模块,还用于当所述第四判断模块判断所述认证设备合法后,进行工作;
所述第二发送模块,还用于当所述第四判断模块判断所述认证设备不合法后,向所述客户端返回错误码。
所述第四判断模块具体用于根据所述第二接收模块接收到的所述敏感信息下发请求中的所述认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的所述认证设备的状态,判断所述认证设备可用并且所述认证设备公钥存在,则确定所述认证设备合法,否则确定所述认证设备不合法。
所述第三生成模块,包括:第一查找单元、第一组合单元、第一加密单元、第一签名单元和第一处理单元;
所述第一查找单元,用于根据所述敏感信息下发请求中的所述认证设备序列号,在所述认证中心查找对应的认证设备公钥;
所述第一组合单元,用于对所述第一敏感信息、所述第二敏感信息和所述随机数进行拼接组合,得到第一数据;
所述第一加密单元,用于根据所述第一查找单元查找到的所述认证设备公钥对所述第一数据进行加密,得到第一加密数据;
所述第一签名单元,用于使用认证中心私钥对所述第一加密数据进行签名,得到第一签名值;
所述第一处理单元,用于根据所述第一加密数据和所述第一签名值得到所述第一应答数据;
所述认证设备还包括第一验签模块;所述第一验签模块,用于根据存储的认证中心公钥,对所述第三接收模块接收到的第一应答数据进行验签,判断是否验签成功;
所述第二处理模块还用于当所述第一验签模块判断验签成功后,进行工作;
所述第三发送模块还用于当所述第一验签模块判断验签失败后,向所述客户端返回错误码;
所述第二处理模块,具体用于根据认证设备私钥对所述第三接收模块接收到的第一应答数据中的第一加密数据进行解密,得到第一数据,对得到的第一数据进行拆分,得到第一敏感信息、第二敏感信息和随机数。
所述第一处理单元具体用于对所述第一加密数据进行base64编码,得到第一字符数据,对所述第一加密数据进行base64编码,得到第二字符数据,对所述第一字符数据和所述第二字符数据进行组合拼接,生成所述第一应答数据;
所述第一验签模块具体用于对所述第三接收模块接收到的第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签。
所述第一处理单元具体用于对所述第一加密数据和所述第一签名值进行组合拼接,得到第二数据,对所述第二数据进行base64编码,得到所述第一应答数据;
所述第一验签模块具体用于对所述第三接收模块接收到的第一应答数据进行base64解码,得到第二数据,根据base64解码得到的第二数据中的第一加密数据和第一签名值对第一应答数据进行验签。
所述第一验签模块,具体用于根据认证中心公钥对第一签名值进行运算,得到第一验证数据,判断运算得到的所述第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败。
所述第四生成模块,具体用于将所述第一应答数据和所述第二敏感信息进行组合拼接,生成应答报文;
所述第一处理模块,具体用于对所述应答报文进行拆分,得到第一应答数据和第二敏感信息。
所述第一显示模块还用于显示所述第一处理模块处理得到的第二敏感信息;
所述第二显示模块还用于显示所述第二处理模块得到的第二敏感信息。
所述客户端还包括:第五判断模块和注册模块;
所述第五判断模块,用于在所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,根据所述认证设备序列号判断所述认证设备是否已与用户绑定;
所述注册模块,用于在所述第五判断模块判断所述认证设备未与用户绑定后,提示所述用户进行注册,接收所述用户输入的用户信息,根据接收到的所述用户信息将所述用户与所述认证设备进行绑定;
所述第一发送模块,具体用于所述注册模块工作完成后,向所述认证设备发送所述登录指令,当所述第五判断模块判断所述认证设备已与用户绑定后,向所述认证设备发送所述登录指令。
所述第五判断模块具体用于判断是否能够在所述客户端内部查找到与所述认证设备序列号对应的用户信息,是则确定所述认证设备已与所述用户绑定,否则确定所述认证设备未与所述用户绑定。
所述注册模块具体用于提示所述用户进行注册,接收所述用户输入的用户信息,将接收到的所述用户信息与所述认证设备序列号对应进行存储,完成绑定。
所述客户端还包括:第二获取模块和第六判断模块;
所述第二获取模块,用于所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,获取与所述认证设备对应的用户信息;
所述第六判断模块,用于根据所述第二获取模块获取到的所述用户信息判断所述用户是否合法;
所述第一发送模块还用于在所述第六判断模块判断所述用户合法后,向所述认证中心发送所述第一动态口令和所述认证设备序列号;
所述第一显示模块还用于在所述第六判断模块判断所述用户不合法后,显示登录失败信息。
所述第六判断模块具体用于根据所述用户信息查找对应的用户状态,判断所述用户状态是否异常,是则确定所述用户不合法,否则确定所述用户合法。
所述第二显示模块,还用于在所述第三接收模块接收到所述登录指令后,提示用户是否登录;
所述第二检测模块,还用于所述第二显示模块提示用户是否登录后,检测按键是否被触发;
所述第三判断模块,还用于所述第二检测模块检测到按键被触发后,判断按键的类型;
所述第六生成模块还用于所述第三判断模块判断出第一按键被触发后,进行工作;
所述第三发送模块还用于所述第三判断模块判断出第二按键被触发后,向所述客户端返回错误码。
所述第六生成模块包括:第一生成单元、第二加密单元、第二签名单元和第二处理单元;
所述第一生成单元,用于根据所述认证设备中的时间因子、所述预设算法以及随机数,生成第一明文动态口令;
所述第二加密单元,用于根据认证中心公钥对所述第一生成单元生成的所述第一明文动态口令进行加密,得到第一密文动态口令;
所述第二签名单元,用于使用认证设备私钥对所述第二加密单元加密得到的所述第一密文动态口令进行签名,得到第二签名值;
所述第二处理单元,用于根据所述第二加密单元加密得到的所述第一密文动态口令和所述第二签名单元得到的所述第二签名值,得到所述第一动态口令;
所述认证中心还包括:第二验签模块、第七生成模块和第七判断模块;
所述第二验签模块,用于根据所述认证设备公钥对所述第二接收模块接收到的所述第一动态口令进行验签,判断是否验签成功;
所述第七生成模块,用于在所述第二验签模块判断验签成功后,根据所述认证设备序列号查找对应的随机数,根据所述随机数、所述认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对所述第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
所述第二发送模块还用于在所述第二验签模块判断验签失败后,向所述客户端返回错误码;
所述第七判断模块,用于判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令是否一致;
所述第二发送模块还用于在所述第七判断模块判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令一致后,向客户端发送认证成功信息,在所述第七判断模块判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令不一致后,向所述客户端返回错误码。
所述第二处理单元具体用于对所述第一密文动态口令进行base64编码,得到第三字符数据,对所述第二签名值进行base64编码,得到第四字符数据,对所述第三字符数据和所述第四字符数据进行组合拼接,得到所述第一动态口令;
所述第二验签模块,具体用于对所述第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的所述第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
所述认证中心还包括清除模块和第八判断模块;
所述清除模块,用于在所述第二判断模块判断所述第一动态口令与所述第二动态口令一致后,清除所述随机数;
所述第八判断模块,用于判断是否查找到随机数;
所述第五生成模块,用于所述第八判断模块判断查找到随机数后,进行工作;
所述第二发送模块还用于所述第八判断模块判断未查找到随机数后,向所述客户端返回错误码。
本发明与现有技术相比,具有以下优点:
本发明提供的一种安全登录的方法和系统,认证中心向客户端下发明文形式的敏感信息,向认证设备发送加密签名后的敏感信息,客户端和认证设备分别显示敏感信息,用户确认后认证设备产生动态口令,向认证中心返回动态口令,认证中心根据接收到的动态口令对用户的身份进行认证,从而实现安全登录。
附图说明
图1是本发明实施例1提供的一种安全登录的方法的流程图;
图2和图3是本发明实施例2提供的一种安全登录的方法的流程图;
图4是本发明实施例3提供的一种安全登录的系统的模块图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本方法应用于包括认证设备、客户端与认证中心的系统中。
实施例1
本发明的实施例1提供了一种安全登录的方法,如图1所示,包括:
步骤S1:当客户端检测到触发信息后,客户端获取认证设备的认证设备序列号和第一敏感信息标识,根据认证设备序列号和第一敏感信息标识生成敏感信息下发请求,向认证中心发送敏感信息下发请求;
步骤S2:认证中心根据敏感信息下发请求中的第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息,生成随机数,将随机数与敏感信息下发请求中的认证设备序列号对应存储,根据第一敏感信息、第二敏感信息和随机数生成第一应答数据,根据第一应答数据和第二敏感信息生成应答报文,向客户端发送应答报文;
步骤S3:客户端根据应答报文,得到第一应答数据和第二敏感信息,将得到的第一应答数据发送到认证设备;
步骤S4:认证设备根据接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数,对得到的第一敏感信息进行显示;
步骤S5:当认证设备检测到按键被触发后,认证设备判断按键的类型,若是第一按键则向客户端返回从第一应答数据中得到的第二敏感信息,执行步骤S7,若是第二按键则向客户端返回错误码,执行步骤S6;
步骤S6:客户端接收认证设备发送的错误码,根据错误码显示登录失败信息,结束;
步骤S7:客户端判断接收到的第二敏感信息与根据应答报文得到的第二敏感信息是否一致,是则向认证设备发送登录指令,执行步骤S8,否则显示登录失败信息,结束;
步骤S8:认证设备根据认证设备中的时间因子、预设算法以及从第一应答数据中得到的随机数,生成第一动态口令,向客户端发送第一动态口令和认证设备序列号;
步骤S9:客户端向认证中心发送第一动态口令和认证设备序列号;
步骤S10:认证中心根据认证设备序列号查找对应的随机数,根据查找到的随机数、认证中心中的时间因子和预设算法,生成第二动态口令,判断第一动态口令与第二动态口令是否一致,是则向客户端发送认证成功信息,结束,否则向客户端返回错误码,执行步骤S11;
步骤S11:客户端接收认证中心发送的错误码,根据错误码显示登录失败信息,结束。
实施例2
本发明的实施例2提供了一种安全登录的方法,如图2和图3所示,包括:
步骤101:当客户端检测到触发信息后,客户端获取认证设备的认证设备序列号和第一敏感信息标识,根据认证设备序列号和第一敏感信息标识生成敏感信息下发请求,向认证中心发送敏感信息下发请求;
具体地,获取认证设备的认证设备序列号和第一敏感信息标识的方法可以为:客户端向认证设备发送获取指令,接收认证设备返回的认证设备序列号和第一敏感信息标识;除此之外,还可以为:客户端接收用户输入的用户信息,根据用户信息在客户端内部查找对应的认证设备序列号和第一敏感信息标识;
例如,认证设备序列号为“1000313600001”,第一敏感信息标识为“icbc”;
步骤102:认证中心接收敏感信息下发请求,根据接收到的敏感信息下发请求,判断认证设备是否合法,是则执行步骤104,否则向客户端返回错误码,执行步骤103;
具体地,认证中心根据敏感信息下发请求中的认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的认证设备的状态,判断该认证设备可用并且认证设备公钥存在时,则确定认证设备合法,否则确定认证设备不合法;
步骤103:客户端接收认证中心发送的错误码,根据错误码显示登录失败信息,结束;
步骤104:认证中心根据敏感信息下发请求中的第一敏感信息标识,查找对应的第一敏感信息,并在认证中心查找第二敏感信息;
例如,查找到的第一敏感信息为“icbc95585”,查找到的第二敏感信息为“unionpay”;
步骤105:认证中心生成随机数,将生成的随机数与认证设备序列号对应存储,根据第一敏感信息、第二敏感信息和随机数生成第一应答数据;
具体地,认证中心根据敏感信息下发请求中的认证设备序列号,在认证中心查找对应的认证设备公钥,认证中心对第一敏感信息、第二敏感信息和随机数进行拼接组合,得到第一数据,根据查找到的认证设备公钥对第一数据进行加密,得到第一加密数据,使用认证中心私钥对第一加密数据进行签名,得到第一签名值,根据第一加密数据和第一签名值得到第一应答数据;其中,根据第一加密数据和第一签名值得到第一应答数据,具体为:认证中心对第一加密数据进行base64编码,得到第一字符数据,对第一签名值进行base64编码,得到第二字符数据,对得到的第一字符数据和第二字符数据进行组合拼接,生成第一应答数据;
例如,认证中心生成的随机数为“12345678”,认证设备序列号“1000313600001”;
认证中心生成第一应答数据具体包括:
认证中心对第一敏感信息、第二敏感信息和随机数进行拼接组合,得到第一数据为:
icbc95585[#*#]unionpay[#*#]12345678
认证中心先根据认证设备公钥对第一数据进行加密,得到第一加密数据为:
[22,-85,7,21,-114,69,-34,-89,68,-117,-110,-22,-71,99,79,114,18,-21,7,-73,78,116,-82,109,-56,-50,-87,-57,-111,-118,-52,-84,77,-116,71,60,-23,-47,42,-88,81,2,63,-66,-109,86,79,38,26,69,9,38,-43,-45,-40,-73,-15,2,87,-50,-7,33,102,-12,80,67,13,-7,96,23,-103,1,-121,71,8,96,65,31,-71,58,43,-92,83,-28,123,72,-29,80,-113,14,92,-88,40,109,108,-85,-96,19,-27,-65,30,-73,118,-122,-32,18,3,-101,-66,-58,-43,-6,-124,111,-109,-30,-49,9,-27,-94,41,122,-99,-73,-18,115,31,-35]
认证中心对第一加密数据进行base64编码,得到第一字符数据为:
FqsHFY5F3qdEi5LquWNPchLrB7dOdK5tyM6px5GKzKxNjEc86dEqqFECP76TVk8mGkUJJtXT2LfxAlfO+SFm9FBDDflgF5kBh0cIYEEfuTorpFPke0jjUI8OXKgobWyroBPlvx63dobgEgObvsbV+oRvk+LPCeWiKXqdt+5zH90=
认证中心使用认证中心私钥对第一加密数据进行签名,得到第一签名值为:
[80,-14,105,46,-110,-89,-93,40,-75,67,-119,119,103,-49,-28,-2,-7,-112,25,-85,-118,99,3,87,8,-96,58,-74,-127,-15,8,-92,83,-127,72,0,-121,88,-110,101,-4,-13,63,24,119,74,-105,-110,-68,-1,69,-110,-16,-59,124,-45,67,21,-72,78,21,-56,-5,126,97,-3,-55,92,62,81,31,3,-83,-54,64,35,-100,-101,71,-126,-105,30,-82,-72,-103,102,56,2,29,35,-82,-104,-118,78,-77,-50,122,32,-72,52,50,38,34,-106,6,-57,53,-11,70,76,-12,22,-109,-66,-93,68,-76,4,-30,98,-48,4,-2,28,12,43,-55,36]
认证中心对第一签名值进行base64编码,得到第二字符数据为:
UPJpLpKnoyi1Q4l3Z8/k/vmQGauKYwNXCKA6toHxCKRTgUgAh1iSZfzzPxh3SpeSvP9FkvDFfNNDFbhOFcj7fmH9yVw+UR8DrcpAI5ybR4KXHq64mWY4Ah0jrpiKTrPOeiC4NDImIpYGxzX1Rkz0FpO+o0S0BOJi0AT+HAwrySQ=
认证中心对第一字符数据和第二字符数据进行组合拼接,生成第一应答数据为:
FqsHFY5F3qdEi5LquWNPchLrB7dOdK5tyM6px5GKzKxNjEc86dEqqFECP76TVk8mGkUJJtXT2LfxAlfO+SFm9FBDDflgF5kBh0cIYEEfuTorpFPke0jjUI8OXKgobWyroBPlvx63dobgEgObvsbV+oRvk+LPCeWiKXqdt+5zH90=[#*#]UPJpLpKnoyi1Q4l3Z8/k/vmQGauKYwNXCKA6toHxCKRTgUgAh1iSZfzzPxh3SpeSvP9FkvDFfNNDFbhOFcj7fmH9yVw+UR8DrcpAI5ybR4KXHq64mWY4Ah0jrpiKTrPOeiC4NDImIpYGxzX1Rkz0FpO+o0S0BOJi0AT+HAwrySQ=
除此之外,认证中心根据第一加密数据和第一签名值得到第一应答数据,也可以为:先根据认证设备公钥对第一数据进行加密,得到第一加密数据,使用认证中心私钥对第一加密数据进行签名,得到第一签名值,对第一加密数据和第一签名值进行组合拼接,得到第二数据,认证中心再对第二数据进行base64编码,得到第一应答数据;
步骤106:认证中心根据第一应答数据和第二敏感信息生成应答报文,向客户端发送应答报文;
具体地,认证中心将第一应答数据和第二敏感信息进行组合拼接,生成应答报文;
例如,认证中心根据第一应答数据和第二敏感信息生成的应答报文为:
FqsHFY5F3qdEi5LquWNPchLrB7dOdK5tyM6px5GKzKxNjEc86dEqqFECP76TVk8mGkUJJtXT2LfxAlfO+SFm9FBDDflgF5kBh0cIYEEfuTorpFPke0jjUI8OXKgobWyroBPlvx63dobgEgObvsbV+oRvk+LPCeWiKXqdt+5zH90=[#*#]UPJpLpKnoyi1Q4l3Z8/k/vmQGauKYwNXCKA6toHxCKRTgUgAh1iSZfzzPxh3SpeSvP9FkvDFfNNDFbhOFcj7fmH9yVw+UR8DrcpAI5ybR4KXHq64mWY4Ah0jrpiKTrPOeiC4NDImIpYGxzX1Rkz0FpO+o0S0BOJi0AT+HAwrySQ=[#*#]unionpay
步骤107:客户端接收应答报文,根据接收到的应答报文得到第一应答数据和第二敏感信息,显示第二敏感信息,向认证设备发送第一应答数据;
具体地,客户端对接收到的应答报文进行拆分,得到第一应答数据和第二敏感信息;
例如,客户端接收到的应答报文为:
FqsHFY5F3qdEi5LquWNPchLrB7dOdK5tyM6px5GKzKxNjEc86dEqqFECP76TVk8mGkUJJtXT2LfxAlfO+SFm9FBDDflgF5kBh0cIYEEfuTorpFPke0jjUI8OXKgobWyroBPlvx63dobgEgObvsbV+oRvk+LPCeWiKXqdt+5zH90=[#*#]UPJpLpKnoyi1Q4l3Z8/k/vmQGauKYwNXCKA6toHxCKRTgUgAh1iSZfzzPxh3SpeSvP9FkvDFfNNDFbhOFcj7fmH9yVw+UR8DrcpAI5ybR4KXHq64mWY4Ah0jrpiKTrPOeiC4NDImIpYGxzX1Rkz0FpO+o0S0BOJi0AT+HAwrySQ=[#*#]unionpay
拆分得到的第一应答数据为:
FqsHFY5F3qdEi5LquWNPchLrB7dOdK5tyM6px5GKzKxNjEc86dEqqFECP76TVk8mGkUJJtXT2LfxAlfO+SFm9FBDDflgF5kBh0cIYEEfuTorpFPke0jjUI8OXKgobWyroBPlvx63dobgEgObvsbV+oRvk+LPCeWiKXqdt+5zH90=[#*#]UPJpLpKnoyi1Q4l3Z8/k/vmQGauKYwNXCKA6toHxCKRTgUgAh1iSZfzzPxh3SpeSvP9FkvDFfNNDFbhOFcj7fmH9yVw+UR8DrcpAI5ybR4KXHq64mWY4Ah0jrpiKTrPOeiC4NDImIpYGxzX1Rkz0FpO+o0S0BOJi0AT+HAwrySQ=
拆分得到的第二敏感信息为:unionpay;客户端显示第二敏感信息“unionpay”;
步骤108:认证设备接收第一应答数据,根据预设的认证中心公钥对第一应答数据进行验签,判断是否验签成功,是则执行步骤110,否则向客户端返回错误码,执行步骤109;
具体地,认证设备获取第一应答数据中的第一加密数据和第一签名值,根据第一加密数据和第一签名值对第一应答数据进行验签;
例如,认证设备对第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,认证设备对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,认证设备根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签;
认证设备对第一应答数据中的第一字符数据进行base64解码,得到第一加密数据为:
[22,-85,7,21,-114,69,-34,-89,68,-117,-110,-22,-71,99,79,114,18,-21,7,-73,78,116,-82,109,-56,-50,-87,-57,-111,-118,-52,-84,77,-116,71,60,-23,-47,42,-88,81,2,63,-66,-109,86,79,38,26,69,9,38,-43,-45,-40,-73,-15,2,87,-50,-7,33,102,-12,80,67,13,-7,96,23,-103,1,-121,71,8,96,65,31,-71,58,43,-92,83,-28,123,72,-29,80,-113,14,92,-88,40,109,108,-85,-96,19,-27,-65,30,-73,118,-122,-32,18,3,-101,-66,-58,-43,-6,-124,111,-109,-30,-49,9,-27,-94,41,122,-99,-73,-18,115,31,-35]
认证设备对第一应答数据中的第二字符数据进行base64解码,得到第一签名值为:
[80,-14,105,46,-110,-89,-93,40,-75,67,-119,119,103,-49,-28,-2,-7,-112,25,-85,-118,99,3,87,8,-96,58,-74,-127,-15,8,-92,83,-127,72,0,-121,88,-110,101,-4,-13,63,24,119,74,-105,-110,-68,-1,69,-110,-16,-59,124,-45,67,21,-72,78,21,-56,-5,126,97,-3,-55,92,62,81,31,3,-83,-54,64,35,-100,-101,71,-126,-105,30,-82,-72,-103,102,56,2,29,35,-82,-104,-118,78,-77,-50,122,32,-72,52,50,38,34,-106,6,-57,53,-11,70,76,-12,22,-109,-66,-93,68,-76,4,-30,98,-48,4,-2,28,12,43,-55,36]
认证设备根据认证中心公钥对base64解码得到的第一签名值进行运算,得到第一验证数据,判断运算得到的第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败;
除此之外,认证设备也可以:对第一应答数据进行base64解码,得到第二数据,认证设备根据解密得到的第二数据中的第一加密数据和第二数据中的第一签名值对第一应答数据进行验签;
步骤109:客户端接收认证设备发送的错误码,根据错误码显示登录失败信息,结束;
步骤110:认证设备根据第一应答数据得到第一敏感信息、第二敏感信息和随机数;
具体地,认证设备根据认证设备私钥对第一应答数据中的第一加密数据进行解密,得到第一敏感信息、第二敏感信息和随机数;
例如,认证设备根据认证设备私钥对第一应答数据中的第一加密数据进行解密,得到第一数据为:
icbc95585[#*#]unionpay[#*#]12345678
认证设备对第一数据进行拆分,得到的第一敏感信息为“icbc95585”,第二敏感信息为“unionpay”,随机数为“12345678”;
步骤111:认证设备显示第一敏感信息;
例如,认证设备显示第一敏感信息“icbc95585”;
步骤112:当认证设备检测到按键被触发后,认证设备判断按键的类型,若是第一按键则执行步骤114,若是第二按键则向客户端返回错误码,执行步骤113;
优选地,本实施例中,第一按键为确认键,第二按键为取消键;
步骤113:客户端接收认证设备发送的错误码,根据错误码显示登录失败信息,结束;
步骤114:认证设备显示第二敏感信息,向客户端返回第二敏感信息;
例如,认证设备显示第二敏感信息“unionpay”;
步骤115:客户端接收认证设备发送的第二敏感信息,判断接收到的第二敏感信息与根据应答报文得到的第二敏感信息是否一致,是则执行步骤116,否则显示登录失败信息,结束;
例如,本实施中,客户端根据应答报文得到的第二敏感信息为“unionpay”,客户端接收到的第二敏感信息也为“unionpay”,则接收到的第二敏感信息与根据应答报文得到的第二敏感信息一致;
步骤116:客户端根据认证设备序列号判断认证设备是否已与用户绑定,是则执行步骤118,否则执行步骤117;
具体地,客户端判断是否能够在客户端内部查找到与认证设备序列号对应的用户信息,是则确定认证设备已与用户绑定,否则确定认证设备未与用户绑定;该步骤判断认证设备已与用户绑定后,还包括客户端获取与认证设备对应的用户信息;
步骤117:客户端提示用户进行注册,接收用户输入的用户信息,根据接收到的用户信息将用户与认证设备进行绑定,执行步骤118;
具体地,客户端将接收到的用户信息与认证设备序列号对应进行存储,完成绑定;
步骤118:客户端向认证设备发送登录指令;
步骤119:认证设备接收登录指令,提示用户是否登录;
步骤120:当认证设备检测到按键被触发后,认证设备判断按键的类型,若是第一按键则执行步骤122,若是第二按键则向客户端返回错误码,执行步骤121;
优选地,本实施例中,第一按键为确认键,第二按键为取消键;
步骤121:客户端接收认证设备发送的错误码,根据错误码显示登录失败信息,结束;
步骤122:认证设备根据从第一应答数据中得到的随机数、认证设备中的时间因子和预设算法,生成第一动态口令,向客户端发送第一动态口令和认证设备序列号;
例如,从第一应答数据中得到的随机数为“12345678”,根据从第一应答数据中得到的随机数、认证设备中的时间因子和预设算法产生的第一动态口令为“654321”;
本实施例中,认证设备根据随机数和预设算法产生第一动态口令的过程可以放在步骤110、步骤111、步骤114、步骤119和步骤122中的任意一个步骤中;
除此之外,认证设备产生第一动态口令的方法还可以为:
步骤122-1:认证设备根据从第一应答数据中得到的随机数、认证设备中的时间因子和预设算法,生成第一明文动态口令;
例如,从第一应答数据中得到的随机数为12345678,生成的第一明文动态口令为:654321;
步骤122-2:认证设备使用认证中心公钥对第一明文动态口令进行加密,得到第一密文动态口令;
例如,第一密文动态口令为:
[38,-90,-125,-5,111,-113,87,-48,-104,120,105,30,23,70,-9,93,-128,55,25,91,-53,-93,-83,-1,89,107,-12,69,-61,-100,-61,-22,35,49,79,-66,79,-125,19,57,63,95,-44,61,127,19,-4,91,103,-32,-86,62,78,48,56,-10,126,-34,114,-49,-63,4,-107,26,-38,-116,51,113,-117,48,61,38,109,-101,26,-25,62,14,-102,115,105,22,-25,-20,50,-2,16,-35,-34,82,66,67,127,-59,62,-89,97,62,54,24,88,2,-47,22,97,-87,-103,-32,-82,-126,60,-116,-125,-120,125,125,74,85,-44,-52,-52,102,102,-12,-106,-30,25,-23]
步骤122-3:认证设备根据认证设备私钥对第一密文动态口令进行签名,得到第二签名值;
例如,第二签名值为:
[64,105,108,61,68,-80,64,-1,-12,-7,10,73,93,-67,29,85,112,-54,-50,107,-101,-125,70,-48,-64,-123,-45,45,35,-53,-34,112,-67,-128,-127,67,49,47,51,84,114,-83,-72,-68,-6,-34,-97,-83,-108,39,74,55,-66,66,59,-77,-27,-118,42,-56,95,-86,47,95,49,-45,-45,24,-117,74,13,-91,119,67,-107,-114,-60,-34,-1,20,94,-115,113,-124,82,40,-111,50,-71,62,-95,-36,19,111,-125,83,-64,-38,50,20,36,20,-120,-127,58,2,16,-128,48,-3,-113,64,-81,113,-115,75,-77,-68,-40,-109,126,84,26,11,37,58,110,127]
步骤122-4:认证设备根据第一密文动态口令和第二签名值,得到第一动态口令;
具体地,认证设备对第一密文动态口令进行base64编码,得到第三字符数据,对第二签名值进行base64编码,得到第四字符数据,对第三字符数据和第四字符数据进行组合拼接,得到第一动态口令;
例如,认证设备根据第一密文动态口令和第二签名值,得到第一动态口令,包括:
认证设备对第一密文动态口令进行base64编码,得到第三字符数据为:
fPhTri05/nXaJ4z3B7vzdGGoZ//+1nrddNXVHmTtAyPSmb/9z+P24CTUc3JygoHQucd6AfUqz8m+zK0Z9BpzKACnJ/OhPj4J9yX8oKDFW5pjuPt8kdEuq8IZyzrsnc0gPyOS+1HBQXL0j++V504MPI11GGf1fsaV8D9JfVd/wgNu=
认证设备对第二签名值进行base64编码,得到第四字符数据为:
QGlsPUSwQP/0+QpJXb0dVXDKzmubg0bQwIXTLSPL3nC9gIFDMS8zVHKtuLz63p+tlCdKN75CO7PliirIX6ovXzHT0xiLSg2ld0OVjsTe/xRejXGEUiiRMrk+odwTb4NTwNoyFCQUiIE6AhCAMP2PQK9xjUuzvNiTflQaCyU6bn8=
认证设备对第三字符数据和第四字符数据进行组合拼接,得到第一动态口令为:
fPhTri05/nXaJ4z3B7vzdGGoZ//+1nrddNXVHmTtAyPSmb/9z+P24CTUc3JygoHQucd6AfUqz8m+zK0Z9BpzKACnJ/OhPj4J9yX8oKDFW5pjuPt8kdEuq8IZyzrsnc0gPyOS+1HBQXL0j++V504MPI11GGf1fsaV8D9JfVd/wgNu=[#*#]QGlsPUSwQP/0+QpJXb0dVXDKzmubg0bQwIXTLSPL3nC9gIFDMS8zVHKtuLz63p+tlCdKN75CO7PliirIX6ovXzHT0xiLSg2ld0OVjsTe/xRejXGEUiiRMrk+odwTb4NTwNoyFCQUiIE6AhCAMP2PQK9xjUuzvNiTflQaCyU6bn8=
步骤123:客户端接收第一动态口令和认证设备序列号,根据用户信息判断用户是否合法,是则执行步骤124,否则显示登录失败信息,结束;
具体为,客户端根据用户信息查找对应的用户状态,判断用户状态是否异常,是则确定用户不合法,否则用户合法;
步骤124:客户端向认证中心发送第一动态口令和认证设备序列号;
例如,第一动态口令为“654321”,认证设备序列号为“1000313600001”;
步骤125:认证中心接收第一动态口令和认证设备序列号,根据认证设备序列号查找对应的随机数,判断是否查找到随机数,是则执行步骤126,否则向客户端返回错误码,执行步骤127;
本实施例中,该步骤之前,还包括:
认证中心接收第一动态口令和认证设备序列号,根据认证设备公钥对第一动态口令进行验签,判断是否验签成功,是则执行步骤125,否则向客户端返回错误码,执行步骤127;
具体地,认证中心对第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
例如,认证中心接收到的第一动态口令为:
fPhTri05/nXaJ4z3B7vzdGGoZ//+1nrddNXVHmTtAyPSmb/9z+P24CTUc3JygoHQucd6AfUqz8m+zK0Z9BpzKACnJ/OhPj4J9yX8oKDFW5pjuPt8kdEuq8IZyzrsnc0gPyOS+1HBQXL0j++V504MPI11GGf1fsaV8D9JfVd/wgNu=[#*#]QGlsPUSwQP/0+QpJXb0dVXDKzmubg0bQwIXTLSPL3nC9gIFDMS8zVHKtuLz63p+tlCdKN75CO7PliirIX6ovXzHT0xiLSg2ld0OVjsTe/xRejXGEUiiRMrk+odwTb4NTwNoyFCQUiIE6AhCAMP2PQK9xjUuzvNiTflQaCyU6bn8=
认证中心对第一动态口令进行拆分,得到第三字符数据和第四字符数据,分别为:第三字符数据为:
fPhTri05/nXaJ4z3B7vzdGGoZ//+1nrddNXVHmTtAyPSmb/9z+P24CTUc3JygoHQucd6AfUqz8m+zK0Z9BpzKACnJ/OhPj4J9yX8oKDFW5pjuPt8kdEuq8IZyzrsnc0gPyOS+1HBQXL0j++V504MPI11GGf1fsaV8D9JfVd/wgNu=
第四字符数据为:
QGlsPUSwQP/0+QpJXb0dVXDKzmubg0bQwIXTLSPL3nC9gIFDMS8zVHKtuLz63p+tlCdKN75CO7PliirIX6ovXzHT0xiLSg2ld0OVjsTe/xRejXGEUiiRMrk+odwTb4NTwNoyFCQUiIE6AhCAMP2PQK9xjUuzvNiTflQaCyU6bn8=
认证中心对第三字符数据进行base64解码,得到第一密文动态口令为:
[38,-90,-125,-5,111,-113,87,-48,-104,120,105,30,23,70,-9,93,-128,55,25,91,-53,-93,-83,-1,89,107,-12,69,-61,-100,-61,-22,35,49,79,-66,79,-125,19,57,63,95,-44,61,127,19,-4,91,103,-32,-86,62,78,48,56,-10,126,-34,114,-49,-63,4,-107,26,-38,-116,51,113,-117,48,61,38,109,-101,26,-25,62,14,-102,115,105,22,-25,-20,50,-2,16,-35,-34,82,66,67,127,-59,62,-89,97,62,54,24,88,2,-47,22,97,-87,-103,-32,-82,-126,60,-116,-125,-120,125,125,74,85,-44,-52,-52,102,102,-12,-106,-30,25,-23]
认证中心对第四字符数据进行base64解码,得到第二签名值为:
[64,105,108,61,68,-80,64,-1,-12,-7,10,73,93,-67,29,85,112,-54,-50,107,-101,-125,70,-48,-64,-123,-45,45,35,-53,-34,112,-67,-128,-127,67,49,47,51,84,114,-83,-72,-68,-6,-34,-97,-83,-108,39,74,55,-66,66,59,-77,-27,-118,42,-56,95,-86,47,95,49,-45,-45,24,-117,74,13,-91,119,67,-107,-114,-60,-34,-1,20,94,-115,113,-124,82,40,-111,50,-71,62,-95,-36,19,111,-125,83,-64,-38,50,20,36,20,-120,-127,58,2,16,-128,48,-3,-113,64,-81,113,-115,75,-77,-68,-40,-109,126,84,26,11,37,58,110,127]
认证中心根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败;
步骤126:认证中心根据查找到的随机数、认证中心中的时间因子和预设算法,生成第二动态口令,判断接收到的第一动态口令与生成的第二动态口令是否一致,是则向客户端发送认证成功信息,结束,否则向客户端返回错误码,执行步骤127;
具体地,该步骤判断接收到的第一动态口令与生成的第二动态口令一致后,还包括:认证中心清除生成的随机数;
例如,认证中心根据认证设备序列号“1000313600001”查找到的对应的随机数为“12345678”,根据查找到的随机数、认证中心中的时间因子和预设算法产生的第二动态口令为“654321”,由于生成的第二动态口令与接收到的第一动态口令一致,则认证成功;
除此之外,步骤126包括:
步骤126-1:认证中心根据查找到的随机数、认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
例如,认证中心根据认证设备序列号查找对应的随机数为12345678,根据随机数、认证中心中的时间因子和预设算法生成第二明文动态口令为:654321;使用认证中心私钥对第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令为:654321;
步骤126-2:认证中心判断解密得到的第一明文动态口令和生成的第二明文动态口令是否一致,是则向客户端发送认证成功信息,结束,否则向客户端返回错误码,执行步骤127;
具体地,该步骤判断判断解密得到的第一明文动态口令和生成的第二明文动态口令一致后,还包括:认证中心清除生成的随机数;
步骤127:客户端接收认证中心发送的错误码,根据错误码显示登录失败信息,结束;
本实施例中提供的一种安全登录的方法,认证中心向客户端下发明文形式的敏感信息,向认证设备发送加密签名后的敏感信息,客户端和认证设备分别显示敏感信息,用户确认后认证设备产生动态口令,向认证中心返回动态口令,认证中心根据接收到的动态口令对用户的身份进行认证,从而实现安全登录。
实施例3
本发明的实施例3提供了一种安全登录的系统,如图4所示,包括:客户端、认证中心和认证设备;
客户端包括:第一检测模块201、第一获取模块202、第一生成模块203、第一发送模块204、第一接收模块205、第一处理模块206、第一显示模块207和第一判断模块208;
第一检测模块201,用于检测是否有触发信息;
第一获取模块202,用于当第一检测模块201检测到触发信息后,获取认证设备的认证设备序列号和第一敏感信息标识;
第一生成模块203,用于根据第一获取模块202获取到的认证设备序列号和第一敏感信息标识生成敏感信息下发请求;
第一发送模块204,用于向认证中心发送第一生成模块203生成的敏感信息下发请求;向认证设备发送第一处理模块206得到的第一应答数据;当第一判断模块208判断第一接收模块205接收到的第二敏感信息与第一处理模块206得到的第二敏感信息一致时,向认证设备发送登录指令;当第一接收模块205接收到认证设备发送的第一动态口令和认证设备序列号后,向认证中心发送第一动态口令和认证设备序列号;
第一接收模块205,用于接收认证中心发送的应答报文,接收认证设备发送的错误码,接收认证设备发送的第二敏感信息,接收认证设备发送的第一动态口令和认证设备序列号,接收认证中心发送的认证成功信息,接收认证中心发送的错误码;
第一处理模块206,用于根据第一接收模块205接收到的应答报文,得到第一应答数据和第二敏感信息;
第一显示模块207,用于根据第一接收模块205接收到的错误码显示登录失败信息,当第一判断模块208判断第一接收模块205接收到的第二敏感信息与第一处理模块206得到的第二敏感信息不一致时,显示登录失败信息;
第一判断模块208,用于判断第一接收模块205接收到的第二敏感信息与第一处理模块206得到的第二敏感信息是否一致;
认证中心包括:第二接收模块301、第一查找模块302、第二生成模块303、第三生成模块304、第四生成模块305、第二发送模块306、第二查找模块307、第五生成模块308和第二判断模块309;
第二接收模块301,用于接收客户端发送的敏感信息下发请求,接收客户端发送的第一动态口令和认证设备序列号;
第一查找模块302,用于根据第二接收模块301接收到的敏感信息下发请求中的第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息;
第二生成模块303,用于生成随机数,将随机数与第二接收模块301接收到的敏感信息下发请求中的认证设备序列号对应存储;
第三生成模块304,用于根据第一查找模块302查找到的第一敏感信息、第二敏感信息和第二生成模块303生成的随机数,生成第一应答数据;
第四生成模块305,用于根据第三生成模块304生成的第一应答数据和第一查找模块302查找到的第二敏感信息,生成应答报文;
第二发送模块306,用于向客户端发送第四生成模块305生成的应答报文,当第二判断模块309判断第二接收模块301接收到的第一动态口令与第五生成模块308生成的第二动态口令一致时,向客户端发送认证成功信息,当第二判断模块309判断第二接收模块301接收到的第一动态口令与第五生成模块308生成的第二动态口令不一致时,向客户端返回错误码;
第二查找模块307,用于根据第二接收模块301接收到的认证设备序列号查找对应的随机数;
第五生成模块308,用于根据第二查找模块307查找到的随机数、认证中心中的时间因子和预设算法,生成第二动态口令;
第二判断模块309,用于判断第二接收模块301接收到的第一动态口令与第五生成模块308生成的第二动态口令是否一致;
认证设备包括:第三接收模块401、第二处理模块402、第二显示模块403、第二检测模块404、第三判断模块405、第三发送模块406和第六生成模块407;
第三接收模块401,用于接收客户端发送的第一应答数据,接收客户端发送的登录指令;
第二处理模块402,用于根据第三接收模块401接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数;
第二显示模块403,用于对第二处理模块402得到的第一敏感信息进行显示;
第二检测模块404,用于当第二显示模块403对第一敏感信息进行显示时,检测按键是否被触发;
第三判断模块405,用于当第二检测模块404检测到按键被触发后,判断按键的类型;
第三发送模块406,用于向客户端发送第六生成模块407生成的第一动态口令,当第三判断模块405判断按键为第一按键时,向客户端返回第二处理模块402得到的第二敏感信息,当第三判断模块405判断按键为第二按键时,向客户端返回错误码;
第六生成模块407,用于当第三接收模块401接收到登录指令后,根据认证设备中的时间因子、预设算法以及第二处理模块402得到的随机数,生成第一动态口令。
第一发送模块204还用于向认证设备发送获取指令;
第一接收模块205还用于接收认证设备返回的认证设备序列号和第一敏感信息标识。
第一接收模块205还用于接收用户输入的用户信息;
第一获取模块202具体用于根据第一接收模块205接收到的用户信息,在客户端内部查找对应的认证设备序列号和第一敏感信息标识。
认证中心还包括:第四判断模块,用于根据第二接收模块301接收到的敏感信息下发请求,判断认证设备是否合法;
第一查找模块302,还用于当第四判断模块判断认证设备合法后,进行工作;
第二发送模块306,还用于当第四判断模块判断认证设备不合法后,向客户端返回错误码。
第四判断模块具体用于根据第二接收模块301接收到的敏感信息下发请求中的认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的认证设备的状态,判断认证设备可用并且认证设备公钥存在,则确定认证设备合法,否则确定认证设备不合法。
第三生成模块304,包括:第一查找单元、第一组合单元、第一加密单元、第一签名单元和第一处理单元;
第一查找单元,用于根据敏感信息下发请求中的认证设备序列号,在认证中心查找对应的认证设备公钥;
第一组合单元,用于对第一敏感信息、第二敏感信息和随机数进行拼接组合,得到第一数据;
第一加密单元,用于根据第一查找单元查找到的认证设备公钥对第一数据进行加密,得到第一加密数据;
第一签名单元,用于使用认证中心私钥对第一加密数据进行签名,得到第一签名值;
第一处理单元,用于根据第一加密数据和第一签名值得到第一应答数据;
认证设备还包括第一验签模块;第一验签模块,用于根据存储的认证中心公钥,对第三接收模块401接收到的第一应答数据进行验签,判断是否验签成功;
第二处理模块402还用于当第一验签模块判断验签成功后,进行工作;
第三发送模块406还用于当第一验签模块判断验签失败后,向客户端返回错误码;
第二处理模块402,具体用于根据认证设备私钥对第三接收模块401接收到的第一应答数据中的第一加密数据进行解密,得到第一数据,对得到的第一数据进行拆分,得到第一敏感信息、第二敏感信息和随机数。
第一处理单元具体用于对第一加密数据进行base64编码,得到第一字符数据,对第一加密数据进行base64编码,得到第二字符数据,对第一字符数据和第二字符数据进行组合拼接,生成第一应答数据;
第一验签模块具体用于对第三接收模块401接收到的第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签。
第一处理单元具体用于对第一加密数据和第一签名值进行组合拼接,得到第二数据,对第二数据进行base64编码,得到第一应答数据;
第一验签模块具体用于对第三接收模块401接收到的第一应答数据进行base64解码,得到第二数据,根据base64解码得到的第二数据中的第一加密数据和第一签名值对第一应答数据进行验签。
第一验签模块,具体用于根据认证中心公钥对第一签名值进行运算,得到第一验证数据,判断运算得到的第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败。
第四生成模块305,具体用于将第一应答数据和第二敏感信息进行组合拼接,生成应答报文;
第一处理模块206,具体用于对应答报文进行拆分,得到第一应答数据和第二敏感信息。
第一显示模块207还用于显示第一处理模块206处理得到的第二敏感信息;
第二显示模块403还用于显示第二处理模块402得到的第二敏感信息。
客户端还包括:第五判断模块和注册模块;
第五判断模块,用于在第一判断模块208判断第一接收模块205接收到的第二敏感信息与第一处理模块206得到的第二敏感信息一致时,根据认证设备序列号判断认证设备是否已与用户绑定;
注册模块,用于当第五判断模块判断认证设备未与用户绑定后,提示用户进行注册,接收用户输入的用户信息,根据接收到的用户信息将用户与认证设备进行绑定;
第一发送模块204,具体用于注册模块工作完成后,向认证设备发送登录指令,当第五判断模块判断认证设备已与用户绑定后,向认证设备发送登录指令。
第五判断模块具体用于判断是否能够在客户端内部查找到与认证设备序列号对应的用户信息,是则确定认证设备已与用户绑定,否则确定认证设备未与用户绑定。
注册模块具体用于提示用户进行注册,接收用户输入的用户信息,将接收到的用户信息与认证设备序列号对应进行存储,完成绑定。
客户端还包括:第二获取模块和第六判断模块;
第二获取模块,用于第一判断模块208判断第一接收模块205接收到的第二敏感信息与第一处理模块206得到的第二敏感信息一致时,获取与认证设备对应的用户信息;
第六判断模块,用于根据第二获取模块获取到的用户信息判断用户是否合法;
第一发送模块204还用于在第六判断模块判断用户合法后,向认证中心发送第一动态口令和认证设备序列号;
第一显示模块207还用于在第六判断模块判断用户不合法后,显示登录失败信息。
第六判断模块具体用于根据用户信息查找对应的用户状态,判断用户状态是否异常,是则确定用户不合法,否则确定用户合法。
第二显示模块403,还用于在第三接收模块401接收到登录指令后,提示用户是否登录;
第二检测模块404,还用于在第二显示模块403提示用户是否登录后,检测按键是否被触发;
第三判断模块405,用于第二检测模块404检测到按键被触发后,判断按键的类型;
第六生成模块407还用于第三判断模块405判断出第一按键被触发后,进行工作;
第三发送模块406还用于第三判断模块405判断出第二按键被触发后,向客户端返回错误码。
第六生成模块407包括:第一生成单元、第二加密单元、第二签名单元和第二处理单元;
第一生成单元,用于根据认证设备中的时间因子、预设算法以及随机数,生成第一明文动态口令;
第二加密单元,用于根据认证中心公钥对第一生成单元生成的第一明文动态口令进行加密,得到第一密文动态口令;
第二签名单元,用于使用认证设备私钥对第二加密单元加密得到的第一密文动态口令进行签名,得到第二签名值;
第二处理单元,用于根据第二加密单元加密得到的第一密文动态口令和第二签名单元得到的第二签名值,得到第一动态口令;
认证中心还包括:第二验签模块、第七生成模块和第七判断模块;
第二验签模块,用于根据认证设备公钥对第二接收模块301接收到的第一动态口令进行验签,判断是否验签成功;
第七生成模块,用于在第二验签模块判断验签成功后,根据认证设备序列号查找对应的随机数,根据随机数、认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
第二发送模块306还用于在第二验签模块判断验签失败后,向客户端返回错误码;
第七判断模块,用于判断第七生成模块得到的第一明文动态口令和第二明文动态口令是否一致;
第二发送模块306还用于在第七判断模块判断第七生成模块得到的第一明文动态口令和第二明文动态口令一致后,向客户端发送认证成功信息,在第七判断模块判断第七生成模块得到的第一明文动态口令和第二明文动态口令不一致后,向客户端返回错误码。
第二处理单元具体用于对第一密文动态口令进行base64编码,得到第三字符数据,对第二签名值进行base64编码,得到第四字符数据,对第三字符数据和第四字符数据进行组合拼接,得到第一动态口令;
第二验签模块,具体用于对第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
认证中心还包括清除模块和第八判断模块;
清除模块,用于在第二判断模块309判断第一动态口令与第二动态口令一致后,清除随机数;
第八判断模块,用于判断是否查找到随机数;
第五生成模块308,用于第八判断模块判断查找到随机数后,进行工作;
第二发送模块306还用于第八判断模块判断未查找到随机数后,向客户端返回错误码。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明公开的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (40)
1.一种安全登录的方法,应用于包括客户端、认证中心和认证设备的系统中,其特征在于,所述方法包括:
步骤S1:当所述客户端检测到触发信息后,所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,根据所述认证设备序列号和所述第一敏感信息标识生成敏感信息下发请求,向所述认证中心发送所述敏感信息下发请求;
步骤S2:所述认证中心根据所述敏感信息下发请求中的所述第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息,生成随机数,将所述随机数与所述敏感信息下发请求中的所述认证设备序列号对应存储,根据所述第一敏感信息、所述第二敏感信息和所述随机数生成第一应答数据,根据所述第一应答数据和所述第二敏感信息生成应答报文,向所述客户端发送所述应答报文;
步骤S3:所述客户端根据所述应答报文,得到第一应答数据和第二敏感信息,将得到的第一应答数据发送到所述认证设备;
步骤S4:所述认证设备根据接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数,对得到的第一敏感信息进行显示;
步骤S5:当所述认证设备检测到按键被触发后,所述认证设备判断所述按键的类型,若是第一按键则向所述客户端返回从所述第一应答数据中得到的第二敏感信息,执行步骤S7,若是第二按键则向所述客户端返回错误码,执行步骤S6;
步骤S6:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束;
步骤S7:所述客户端判断接收到的第二敏感信息与根据所述应答报文得到的第二敏感信息是否一致,是则向所述认证设备发送登录指令,执行步骤S8,否则显示登录失败信息,结束;
步骤S8:所述认证设备根据所述认证设备中的时间因子、预设算法以及从第一应答数据中得到的随机数,生成第一动态口令,向所述客户端发送所述第一动态口令和所述认证设备序列号;
步骤S9:所述客户端向所述认证中心发送所述第一动态口令和所述认证设备序列号;
步骤S10:所述认证中心根据所述认证设备序列号查找对应的随机数,根据查找到的随机数、所述认证中心中的时间因子和预设算法,生成第二动态口令,判断所述第一动态口令与所述第二动态口令是否一致,是则向所述客户端发送认证成功信息,结束,否则向所述客户端返回错误码,执行步骤S11;
步骤S11:所述客户端接收所述认证中心发送的错误码,根据所述错误码显示登录失败信息,结束。
2.根据权利要求1所述的方法,其特征在于,所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,具体为:所述客户端向所述认证设备发送获取指令,接收所述认证设备返回的认证设备序列号和第一敏感信息标识。
3.根据权利要求1所述的方法,其特征在于,所述客户端获取所述认证设备的认证设备序列号和第一敏感信息标识,具体为:所述客户端接收用户输入的用户信息,根据所述用户信息在所述客户端内部查找对应的认证设备序列号和第一敏感信息标识。
4.根据权利要求1所述的方法,其特征在于,所述步骤S2之前包括:
步骤A1:所述认证中心根据所述敏感信息下发请求,判断所述认证设备是否合法,是则执行步骤S2,否则向所述客户端返回错误码,执行步骤A2;
步骤A2:所述客户端接收所述认证中心发送的错误码,根据所述错误码显示登录失败信息,结束。
5.根据权利要求4所述的方法,其特征在于,所述步骤A1具体为:
所述认证中心根据所述敏感信息下发请求中的所述认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的所述认证设备的状态,判断所述认证设备可用并且所述认证设备公钥存在时,则执行步骤S2,否则向所述客户端返回错误码,执行步骤A2。
6.根据权利要求1所述的方法,其特征在于,所述根据所述第一敏感信息、所述第二敏感信息和所述随机数生成第一应答数据,具体为:
所述认证中心根据所述敏感信息下发请求中的所述认证设备序列号,在所述认证中心查找对应的认证设备公钥,所述认证中心对所述第一敏感信息、所述第二敏感信息和所述随机数进行拼接组合,得到第一数据,根据查找到的所述认证设备公钥对所述第一数据进行加密,得到第一加密数据,使用认证中心私钥对所述第一加密数据进行签名,得到第一签名值,根据所述第一加密数据和所述第一签名值得到所述第一应答数据;
所述步骤S4之前还包括:
步骤B1:所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,判断是否验签成功,是则执行步骤S4,否则向所述客户端返回错误码,执行步骤B2;
步骤B2:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束;
所述认证设备根据接收到的第一应答数据,得到第一敏感信息、第二敏感信息和随机数,具体为:
所述认证设备根据认证设备私钥对接收到的第一应答数据中的第一加密数据进行解密,得到第一数据,对得到的第一数据进行拆分,得到第一敏感信息、第二敏感信息和随机数。
7.根据权利要求6所述的方法,其特征在于,所述根据所述第一加密数据和所述第一签名值得到所述第一应答数据,具体为:
所述认证中心对所述第一加密数据进行base64编码,得到第一字符数据,对所述第一签名值进行base64编码,得到第二字符数据,对所述第一字符数据和所述第二字符数据进行组合拼接,生成所述第一应答数据;
所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,具体为:
所述认证设备对接收到的第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签。
8.根据权利要求6所述的方法,其特征在于,所述根据所述第一加密数据和所述第一签名值得到所述第一应答数据,具体为:
所述认证中心对所述第一加密数据和所述第一签名值进行组合拼接,得到第二数据,对所述第二数据进行base64编码,得到所述第一应答数据;
所述认证设备根据存储的认证中心公钥,对接收到的第一应答数据进行验签,具体为:
所述认证设备对接收到的第一应答数据进行base64解码,得到第二数据,根据base64解码得到的第二数据中的第一加密数据和第一签名值对第一应答数据进行验签。
9.根据权利要求7或8所述的方法,其特征在于,所述对第一应答数据进行验签,具体为:
所述认证设备根据认证中心公钥对第一签名值进行运算,得到第一验证数据,判断运算得到的所述第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败。
10.根据权利要求1所述的方法,其特征在于,所述根据所述第一应答数据和所述第二敏感信息生成应答报文,具体为:
所述认证中心将所述第一应答数据和所述第二敏感信息进行组合拼接,生成应答报文;
所述根据所述应答报文,得到第一应答数据和第二敏感信息,具体为:
所述客户端对所述应答报文进行拆分,得到第一应答数据和第二敏感信息。
11.根据权利要求1所述的方法,其特征在于,所述步骤S3还包括:所述客户端显示所述第二敏感信息;
所述步骤S5中当所述认证设备检测到所述第一按键被触发后,还包括:所述认证设备显示从第一应答数据中得到的第二敏感信息。
12.根据权利要求1所述的方法,其特征在于,所述步骤S7中向所述认证设备发送登录指令之前还包括:
步骤C1:所述客户端根据所述认证设备序列号判断所述认证设备是否已与用户绑定,是则执行步骤C3,否则执行步骤C2;
步骤C2:所述客户端提示所述用户进行注册,接收所述用户输入的用户信息,根据接收到的所述用户信息将所述用户与所述认证设备进行绑定,执行步骤C3;
步骤C3:所述客户端向所述认证设备发送所述登录指令。
13.根据权利要求12所述的方法,其特征在于,所述客户端根据所述认证设备序列号判断所述认证设备是否已与用户绑定,具体为:
所述客户端判断是否能够在所述客户端内部查找到与所述认证设备序列号对应的用户信息,是则确定所述认证设备已与所述用户绑定,否则确定所述认证设备未与所述用户绑定。
14.根据权利要求12所述的方法,其特征在于,所述根据接收到的所述用户信息将所述用户与所述认证设备进行绑定,具体为:所述客户端将接收到的所述用户信息与所述认证设备序列号对应进行存储,完成绑定。
15.根据权利要求1所述的方法,其特征在于,所述步骤S7中所述客户端判断接收到的所述第二敏感信息与根据所述应答报文得到的所述第二敏感信息一致之后,还包括:
所述客户端获取与所述认证设备对应的用户信息;
所述步骤S9之前包括:所述客户端根据所述用户信息判断所述用户是否合法,是则执行步骤S9,否则显示登录失败信息,结束。
16.根据权利要求15所述的方法,其特征在于,所述客户端根据所述用户信息判断所述用户是否合法,具体为:
所述客户端根据所述用户信息查找对应的用户状态,判断所述用户状态是否异常,是则确定所述用户不合法,否则确定所述用户合法。
17.根据权利要求1所述的方法,其特征在于,所述步骤S8之前还包括:
步骤D1:所述认证设备接收到所述登录指令后,提示用户是否登录;
步骤D2:当所述认证设备检测到按键被触发后,所述认证设备判断按键的类型,若是第一按键则执行步骤S8,若是第二按键则向所述客户端返回错误码,执行步骤D3;
步骤D3:所述客户端接收所述认证设备发送的错误码,根据所述错误码显示登录失败信息,结束。
18.根据权利要求1所述的方法,其特征在于,所述认证设备根据所述认证设备中的时间因子、所述预设算法以及从第一应答数据中得到的随机数,生成第一动态口令,具体为:
步骤E1:所述认证设备根据所述认证设备中的时间因子、所述预设算法以及从第一应答数据中得到的随机数,生成第一明文动态口令;
步骤E2:所述认证设备根据认证中心公钥对所述第一明文动态口令进行加密,得到第一密文动态口令;
步骤E3:所述认证设备使用认证设备私钥对所述第一密文动态口令进行签名,得到第二签名值;
步骤E4:所述认证设备根据所述第一密文动态口令和所述第二签名值,得到所述第一动态口令;
所述步骤S10具体为:
步骤F1:所述认证中心根据所述认证设备公钥对接收到的所述第一动态口令进行验签,判断是否验签成功,是则执行步骤F2,否则向所述客户端返回错误码,执行步骤S11;
步骤F2:所述认证中心根据所述认证设备序列号查找对应的随机数,根据所述随机数、所述认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对所述第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
步骤F3:所述认证中心判断所述第一明文动态口令和所述第二明文动态口令是否一致,是则向客户端发送认证成功信息,结束,否则向客户端返回错误码,执行步骤S11。
19.根据权利要求18所述的方法,其特征在于,所述认证设备根据所述第一密文动态口令和所述第二签名值,得到所述第一动态口令,包括:
所述认证设备对所述第一密文动态口令进行base64编码,得到第三字符数据,对所述第二签名值进行base64编码,得到第四字符数据,对所述第三字符数据和所述第四字符数据进行组合拼接,得到所述第一动态口令;
所述认证中心根据所述认证设备公钥对所述第一动态口令进行验签,具体为:
所述认证中心对所述第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的所述第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
20.根据权利要求1所述的方法,其特征在于,所述认证中心判断接收到的所述第一动态口令与生成的所述第二动态口令一致之后,还包括:清除所述随机数;
所述步骤S10中生成第二动态口令之前包括:
所述认证中心判断是否查找到随机数,是则继续,否则向所述客户端返回错误码,执行步骤S11。
21.一种安全登录的系统,其特征在于,所述系统包括客户端、认证中心和认证设备;
所述客户端包括:第一检测模块、第一获取模块、第一生成模块、第一发送模块、第一接收模块、第一处理模块、第一显示模块和第一判断模块;
所述第一检测模块,用于检测是否有触发信息;
所述第一获取模块,用于当所述第一检测模块检测到触发信息后,获取所述认证设备的认证设备序列号和第一敏感信息标识;
所述第一生成模块,用于根据所述第一获取模块获取到的所述认证设备序列号和所述第一敏感信息标识生成敏感信息下发请求;
所述第一发送模块,用于向所述认证中心发送所述第一生成模块生成的所述敏感信息下发请求;向所述认证设备发送所述第一处理模块得到的第一应答数据;当所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,向所述认证设备发送登录指令;当所述第一接收模块接收到所述认证设备发送的第一动态口令和认证设备序列号后,向所述认证中心发送所述第一动态口令和所述认证设备序列号;
所述第一接收模块,用于接收所述认证中心发送的应答报文,接收所述认证设备发送的错误码,接收所述认证设备发送的第二敏感信息,接收所述认证设备发送的第一动态口令和认证设备序列号,接收所述认证中心发送的认证成功信息,接收所述认证中心发送的错误码;
所述第一处理模块,用于根据所述第一接收模块接收到的所述应答报文,得到第一应答数据和第二敏感信息;
所述第一显示模块,用于根据所述第一接收模块接收到的错误码显示登录失败信息,当所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息不一致时,显示登录失败信息;
所述第一判断模块,用于判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息是否一致;
所述认证中心包括:第二接收模块、第一查找模块、第二生成模块、第三生成模块、第四生成模块、第二发送模块、第二查找模块、第五生成模块和第二判断模块;
所述第二接收模块,用于接收所述客户端发送的所述敏感信息下发请求,接收所述客户端发送的所述第一动态口令和所述认证设备序列号;
所述第一查找模块,用于根据所述第二接收模块接收到的所述敏感信息下发请求中的所述第一敏感信息标识,查找对应的第一敏感信息,并在所述认证中心查找第二敏感信息;
所述第二生成模块,用于生成随机数,将所述随机数与所述第二接收模块接收到的所述敏感信息下发请求中的所述认证设备序列号对应存储;
所述第三生成模块,用于根据所述第一查找模块查找到的所述第一敏感信息、所述第二敏感信息和所述第二生成模块生成的所述随机数,生成第一应答数据;
所述第四生成模块,用于根据所述第三生成模块生成的所述第一应答数据和所述第一查找模块查找到的所述第二敏感信息,生成应答报文;
所述第二发送模块,用于向所述客户端发送所述第四生成模块生成的所述应答报文,当所述第二判断模块判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的第二动态口令一致时,向所述客户端发送认证成功信息,当所述第二判断模块判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的第二动态口令不一致时,向所述客户端返回错误码;
所述第二查找模块,用于根据所述第二接收模块接收到的所述认证设备序列号查找对应的随机数;
所述第五生成模块,用于根据所述第二查找模块查找到的所述随机数、所述认证中心中的时间因子和预设算法,生成第二动态口令;
所述第二判断模块,用于判断所述第二接收模块接收到的所述第一动态口令与所述第五生成模块生成的所述第二动态口令是否一致;
所述认证设备包括:第三接收模块、第二处理模块、第二显示模块、第二检测模块、第三判断模块、第三发送模块和第六生成模块;
所述第三接收模块,用于接收所述客户端发送的第一应答数据,接收所述客户端发送的所述登录指令;
所述第二处理模块,用于根据所述第三接收模块接收到的所述第一应答数据,得到第一敏感信息、第二敏感信息和随机数;
所述第二显示模块,用于对所述第二处理模块得到的所述第一敏感信息进行显示;
所述第二检测模块,用于当所述第二显示模块对第一敏感信息进行显示时,检测按键是否被触发;
所述第三判断模块,用于当所述第二检测模块检测到按键被触发后,判断所述按键的类型;
所述第三发送模块,用于向所述客户端发送所述第六生成模块生成的第一动态口令,当所述第三判断模块判断所述按键为第一按键时,向所述客户端返回所述第二处理模块得到的第二敏感信息,当所述第三判断模块判断所述按键为第二按键时,向所述客户端返回错误码;
所述第六生成模块,用于当所述第三接收模块接收到所述登录指令后,根据所述认证设备中的时间因子、预设算法以及所述第二处理模块得到的随机数,生成第一动态口令。
22.根据权利要求21所述的系统,其特征在于,所述第一发送模块还用于向所述认证设备发送获取指令;
所述第一接收模块还用于接收所述认证设备返回的认证设备序列号和第一敏感信息标识。
23.根据权利要求21所述的系统,其特征在于,所述第一接收模块还用于接收用户输入的用户信息;
所述第一获取模块具体用于根据所述第一接收模块接收到的所述用户信息,在所述客户端内部查找对应的认证设备序列号和第一敏感信息标识。
24.根据权利要求21所述的系统,其特征在于,所述认证中心还包括:第四判断模块,用于根据所述第二接收模块接收到的所述敏感信息下发请求,判断所述认证设备是否合法;
所述第一查找模块,还用于当所述第四判断模块判断所述认证设备合法后,进行工作;
所述第二发送模块,还用于当所述第四判断模块判断所述认证设备不合法后,向所述客户端返回错误码。
25.根据权利要求24所述的系统,其特征在于,所述第四判断模块具体用于根据所述第二接收模块接收到的所述敏感信息下发请求中的所述认证设备序列号,查找对应的认证设备的状态和认证设备公钥,若根据查找到的所述认证设备的状态,判断所述认证设备可用并且所述认证设备公钥存在,则确定所述认证设备合法,否则确定所述认证设备不合法。
26.根据权利要求21所述的系统,其特征在于,所述第三生成模块,包括:第一查找单元、第一组合单元、第一加密单元、第一签名单元和第一处理单元;
所述第一查找单元,用于根据所述敏感信息下发请求中的所述认证设备序列号,在所述认证中心查找对应的认证设备公钥;
所述第一组合单元,用于对所述第一敏感信息、所述第二敏感信息和所述随机数进行拼接组合,得到第一数据;
所述第一加密单元,用于根据所述第一查找单元查找到的所述认证设备公钥对所述第一数据进行加密,得到第一加密数据;
所述第一签名单元,用于使用认证中心私钥对所述第一加密数据进行签名,得到第一签名值;
所述第一处理单元,用于根据所述第一加密数据和所述第一签名值得到所述第一应答数据;
所述认证设备还包括第一验签模块;所述第一验签模块,用于根据存储的认证中心公钥,对所述第三接收模块接收到的第一应答数据进行验签,判断是否验签成功;
所述第二处理模块还用于当所述第一验签模块判断验签成功后,进行工作;
所述第三发送模块还用于当所述第一验签模块判断验签失败后,向所述客户端返回错误码;
所述第二处理模块,具体用于根据认证设备私钥对所述第三接收模块接收到的第一应答数据中的第一加密数据进行解密,得到第一数据,对得到的第一数据进行拆分,得到第一敏感信息、第二敏感信息和随机数。
27.根据权利要求26所述的系统,其特征在于,所述第一处理单元具体用于对所述第一加密数据进行base64编码,得到第一字符数据,对所述第一加密数据进行base64编码,得到第二字符数据,对所述第一字符数据和所述第二字符数据进行组合拼接,生成所述第一应答数据;
所述第一验签模块具体用于对所述第三接收模块接收到的第一应答数据中的第一字符数据进行base64解码,得到第一加密数据,对第一应答数据中的第二字符数据进行base64解码,得到第一签名值,根据base64解码得到的第一加密数据和第一签名值对第一应答数据进行验签。
28.根据权利要求26所述的系统,其特征在于,所述第一处理单元具体用于对所述第一加密数据和所述第一签名值进行组合拼接,得到第二数据,对所述第二数据进行base64编码,得到所述第一应答数据;
所述第一验签模块具体用于对所述第三接收模块接收到的第一应答数据进行base64解码,得到第二数据,根据base64解码得到的第二数据中的第一加密数据和第一签名值对第一应答数据进行验签。
29.根据权利要求27或28所述的系统,其特征在于,所述第一验签模块,具体用于根据认证中心公钥对第一签名值进行运算,得到第一验证数据,判断运算得到的所述第一验证数据与base64解码得到的第一加密数据是否一致,是则确定验签成功,否则确定验签失败。
30.根据权利要求21所述的系统,其特征在于,所述第四生成模块,具体用于将所述第一应答数据和所述第二敏感信息进行组合拼接,生成应答报文;
所述第一处理模块,具体用于对所述应答报文进行拆分,得到第一应答数据和第二敏感信息。
31.根据权利要求21所述的系统,其特征在于,所述第一显示模块还用于显示所述第一处理模块处理得到的第二敏感信息;
所述第二显示模块还用于显示所述第二处理模块得到的第二敏感信息。
32.根据权利要求21所述的系统,其特征在于,所述客户端还包括:第五判断模块和注册模块;
所述第五判断模块,用于在所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,根据所述认证设备序列号判断所述认证设备是否已与用户绑定;
所述注册模块,用于当所述第五判断模块判断所述认证设备未与用户绑定后,提示所述用户进行注册,接收所述用户输入的用户信息,根据接收到的所述用户信息将所述用户与所述认证设备进行绑定;
所述第一发送模块,具体用于所述注册模块工作完成后,向所述认证设备发送所述登录指令,当所述第五判断模块判断所述认证设备已与用户绑定后,向所述认证设备发送所述登录指令。
33.根据权利要求32所述的系统,其特征在于,所述第五判断模块具体用于判断是否能够在所述客户端内部查找到与所述认证设备序列号对应的用户信息,是则确定所述认证设备已与所述用户绑定,否则确定所述认证设备未与所述用户绑定。
34.根据权利要求32所述的系统,其特征在于,所述注册模块具体用于提示所述用户进行注册,接收所述用户输入的用户信息,将接收到的所述用户信息与所述认证设备序列号对应进行存储,完成绑定。
35.根据权利要求21所述的系统,其特征在于,所述客户端还包括:第二获取模块和第六判断模块;
所述第二获取模块,用于所述第一判断模块判断所述第一接收模块接收到的第二敏感信息与所述第一处理模块得到的第二敏感信息一致时,获取与所述认证设备对应的用户信息;
所述第六判断模块,用于根据所述第二获取模块获取到的所述用户信息判断所述用户是否合法;
所述第一发送模块还用于在所述第六判断模块判断所述用户合法后,向所述认证中心发送所述第一动态口令和所述认证设备序列号;
所述第一显示模块还用于在所述第六判断模块判断所述用户不合法后,显示登录失败信息。
36.根据权利要求35所述的系统,其特征在于,所述第六判断模块具体用于根据所述用户信息查找对应的用户状态,判断所述用户状态是否异常,是则确定所述用户不合法,否则确定所述用户合法。
37.根据权利要求21所述的系统,其特征在于,所述第二显示模块,还用于在所述第三接收模块接收到所述登录指令后,提示用户是否登录;
所述第二检测模块,还用于在所述第二显示模块提示用户是否登录后,检测按键是否被触发;
所述第三判断模块,还用于所述第二检测模块检测到按键被触发后,判断按键的类型;
所述第六生成模块还用于所述第三判断模块判断出第一按键被触发后,进行工作;
所述第三发送模块还用于所述第三判断模块判断出第二按键被触发后,向所述客户端返回错误码。
38.根据权利要求21所述的系统,其特征在于,所述第六生成模块包括:第一生成单元、第二加密单元、第二签名单元和第二处理单元;
所述第一生成单元,用于根据所述认证设备中的时间因子、所述预设算法以及随机数,生成第一明文动态口令;
所述第二加密单元,用于根据认证中心公钥对所述第一生成单元生成的所述第一明文动态口令进行加密,得到第一密文动态口令;
所述第二签名单元,用于使用认证设备私钥对所述第二加密单元加密得到的所述第一密文动态口令进行签名,得到第二签名值;
所述第二处理单元,用于根据所述第二加密单元加密得到的所述第一密文动态口令和所述第二签名单元得到的所述第二签名值,得到所述第一动态口令;
所述认证中心还包括:第二验签模块、第七生成模块和第七判断模块;
所述第二验签模块,用于根据所述认证设备公钥对所述第二接收模块接收到的所述第一动态口令进行验签,判断是否验签成功;
所述第七生成模块,用于在所述第二验签模块判断验签成功后,根据所述认证设备序列号查找对应的随机数,根据所述随机数、所述认证中心中的时间因子和预设算法生成第二明文动态口令,根据认证中心私钥对所述第一动态口令中的第一密文动态口令进行解密,得到第一明文动态口令;
所述第二发送模块还用于在所述第二验签模块判断验签失败后,向所述客户端返回错误码;
所述第七判断模块,用于判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令是否一致;
所述第二发送模块还用于在所述第七判断模块判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令一致后,向客户端发送认证成功信息,在所述第七判断模块判断所述第七生成模块得到的第一明文动态口令和所述第二明文动态口令不一致后,向所述客户端返回错误码。
39.根据权利要求38所述的系统,其特征在于,所述第二处理单元具体用于对所述第一密文动态口令进行base64编码,得到第三字符数据,对所述第二签名值进行base64编码,得到第四字符数据,对所述第三字符数据和所述第四字符数据进行组合拼接,得到所述第一动态口令;
所述第二验签模块,具体用于对所述第一动态口令进行拆分,得到第三字符数据和第四字符数据,对得到的第三字符数据进行base64解码,得到第一密文动态口令,对得到的第四字符数据进行base64解码,得到第二签名值,根据认证设备公钥对base64解码得到的第二签名值进行运算,得到第二验证数据,判断运算得到的所述第二验证数据与base64解码得到的第一密文动态口令是否一致,是则确定验签成功,否则确定验签失败。
40.根据权利要求21所述的系统,其特征在于,所述认证中心还包括清除模块和第八判断模块;
所述清除模块,用于在所述第二判断模块判断所述第一动态口令与所述第二动态口令一致后,清除所述随机数;
所述第八判断模块,用于判断是否查找到随机数;
所述第五生成模块,用于所述第八判断模块判断查找到随机数后,进行工作;
所述第二发送模块还用于所述第八判断模块判断未查找到随机数后,向所述客户端返回错误码。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410362690.5A CN104104687B (zh) | 2014-07-28 | 2014-07-28 | 一种安全登录的方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410362690.5A CN104104687B (zh) | 2014-07-28 | 2014-07-28 | 一种安全登录的方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104104687A true CN104104687A (zh) | 2014-10-15 |
CN104104687B CN104104687B (zh) | 2017-02-22 |
Family
ID=51672488
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410362690.5A Active CN104104687B (zh) | 2014-07-28 | 2014-07-28 | 一种安全登录的方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104104687B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069619A (zh) * | 2015-07-17 | 2015-11-18 | 上海众人网络安全技术有限公司 | 一种在线快捷支付系统及其支付方法 |
CN105847247A (zh) * | 2016-03-21 | 2016-08-10 | 飞天诚信科技股份有限公司 | 一种认证系统及其工作方法 |
CN106330432A (zh) * | 2016-08-31 | 2017-01-11 | 北京盛世光明软件股份有限公司 | 一种基于des加密算法的加密方法 |
WO2017059741A1 (zh) * | 2015-10-08 | 2017-04-13 | 飞天诚信科技股份有限公司 | 基于认证设备进行认证的方法和设备 |
CN106686004A (zh) * | 2017-02-28 | 2017-05-17 | 飞天诚信科技股份有限公司 | 一种登录认证方法及系统 |
CN108256309A (zh) * | 2018-01-10 | 2018-07-06 | 飞天诚信科技股份有限公司 | 硬件登录windows10以上系统的实现方法及装置 |
CN108965278A (zh) * | 2018-07-04 | 2018-12-07 | 中国银行股份有限公司 | 交易请求处理方法及装置 |
CN109729055A (zh) * | 2017-10-30 | 2019-05-07 | 北京三快在线科技有限公司 | 通信方法、通信装置、电子设备及存储介质 |
CN111541775A (zh) * | 2020-05-09 | 2020-08-14 | 飞天诚信科技股份有限公司 | 一种认证报文的安全转换方法及系统 |
CN112039677A (zh) * | 2020-11-05 | 2020-12-04 | 飞天诚信科技股份有限公司 | 基于服务器进行扫码操作处理的方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040098585A1 (en) * | 2002-11-05 | 2004-05-20 | Rainbow Technologies, Inc. | Secure authentication using hardware token and computer fingerprint |
US20080098469A1 (en) * | 2005-07-07 | 2008-04-24 | Tomoaki Morijiri | Authentication entity device, verification device and authentication request device |
CN101420297A (zh) * | 2008-09-08 | 2009-04-29 | 北京飞天诚信科技有限公司 | 协商密钥的方法和系统 |
CN103731272A (zh) * | 2014-01-06 | 2014-04-16 | 飞天诚信科技股份有限公司 | 一种身份认证方法、系统及设备 |
CN103888470A (zh) * | 2014-04-02 | 2014-06-25 | 飞天诚信科技股份有限公司 | 一种动态令牌的同步方法和系统 |
-
2014
- 2014-07-28 CN CN201410362690.5A patent/CN104104687B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040098585A1 (en) * | 2002-11-05 | 2004-05-20 | Rainbow Technologies, Inc. | Secure authentication using hardware token and computer fingerprint |
US20080098469A1 (en) * | 2005-07-07 | 2008-04-24 | Tomoaki Morijiri | Authentication entity device, verification device and authentication request device |
CN101420297A (zh) * | 2008-09-08 | 2009-04-29 | 北京飞天诚信科技有限公司 | 协商密钥的方法和系统 |
CN103731272A (zh) * | 2014-01-06 | 2014-04-16 | 飞天诚信科技股份有限公司 | 一种身份认证方法、系统及设备 |
CN103888470A (zh) * | 2014-04-02 | 2014-06-25 | 飞天诚信科技股份有限公司 | 一种动态令牌的同步方法和系统 |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105069619A (zh) * | 2015-07-17 | 2015-11-18 | 上海众人网络安全技术有限公司 | 一种在线快捷支付系统及其支付方法 |
WO2017059741A1 (zh) * | 2015-10-08 | 2017-04-13 | 飞天诚信科技股份有限公司 | 基于认证设备进行认证的方法和设备 |
US10979427B2 (en) | 2015-10-08 | 2021-04-13 | Fie Han Technologies Co., Ltd. | Method and device for authenticating based on authenticating device |
CN105847247A (zh) * | 2016-03-21 | 2016-08-10 | 飞天诚信科技股份有限公司 | 一种认证系统及其工作方法 |
CN105847247B (zh) * | 2016-03-21 | 2020-04-10 | 飞天诚信科技股份有限公司 | 一种认证系统及其工作方法 |
CN106330432A (zh) * | 2016-08-31 | 2017-01-11 | 北京盛世光明软件股份有限公司 | 一种基于des加密算法的加密方法 |
CN106686004B (zh) * | 2017-02-28 | 2019-07-12 | 飞天诚信科技股份有限公司 | 一种登录认证方法及系统 |
CN106686004A (zh) * | 2017-02-28 | 2017-05-17 | 飞天诚信科技股份有限公司 | 一种登录认证方法及系统 |
CN109729055A (zh) * | 2017-10-30 | 2019-05-07 | 北京三快在线科技有限公司 | 通信方法、通信装置、电子设备及存储介质 |
CN109729055B (zh) * | 2017-10-30 | 2021-08-20 | 北京三快在线科技有限公司 | 通信方法、通信装置、电子设备及存储介质 |
WO2019137193A1 (zh) * | 2018-01-10 | 2019-07-18 | 飞天诚信科技股份有限公司 | 硬件登录windows10以上系统的实现方法及装置 |
CN108256309B (zh) * | 2018-01-10 | 2020-01-03 | 飞天诚信科技股份有限公司 | 硬件登录windows10以上系统的实现方法及装置 |
CN108256309A (zh) * | 2018-01-10 | 2018-07-06 | 飞天诚信科技股份有限公司 | 硬件登录windows10以上系统的实现方法及装置 |
US11314853B2 (en) | 2018-01-10 | 2022-04-26 | Feitian Technologies Co., Ltd. | Method and apparatus for implementing logging-on of hardware to windows system with version 10 or higher |
CN108965278A (zh) * | 2018-07-04 | 2018-12-07 | 中国银行股份有限公司 | 交易请求处理方法及装置 |
CN108965278B (zh) * | 2018-07-04 | 2021-05-18 | 中国银行股份有限公司 | 交易请求处理方法及装置 |
CN111541775A (zh) * | 2020-05-09 | 2020-08-14 | 飞天诚信科技股份有限公司 | 一种认证报文的安全转换方法及系统 |
CN111541775B (zh) * | 2020-05-09 | 2023-06-16 | 飞天诚信科技股份有限公司 | 一种认证报文的安全转换方法及系统 |
CN112039677A (zh) * | 2020-11-05 | 2020-12-04 | 飞天诚信科技股份有限公司 | 基于服务器进行扫码操作处理的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104104687B (zh) | 2017-02-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104104687A (zh) | 一种安全登录的方法和系统 | |
KR102307665B1 (ko) | 신원 인증 | |
EP3780543A1 (en) | Blockchain cross-chain authentication method and system, and server and readable storage medium | |
EP3661120A1 (en) | Method and apparatus for security authentication | |
US9578004B2 (en) | Authentication of API-based endpoints | |
CN107770159B (zh) | 车辆事故数据记录方法及相关装置、可读存储介质 | |
US10212151B2 (en) | Method for operating a designated service, service unlocking method, and terminal | |
US9225728B2 (en) | Method and device for anonymous entity identification | |
US8752156B1 (en) | Detecting soft token copies | |
EP3206329B1 (en) | Security check method, device, terminal and server | |
EP2875606A1 (en) | Method and system of login authentication | |
CN104735065A (zh) | 一种数据处理方法、电子设备及服务器 | |
WO2015184812A1 (zh) | 登录云终端的方法、云终端、云服务器及云系统 | |
CN111865889B (zh) | 登录请求处理方法、系统、装置、电子设备及存储介质 | |
CN101964789A (zh) | 安全访问受保护资源的方法及系统 | |
CN104717224A (zh) | 一种登录方法及装置 | |
CN103812651A (zh) | 密码验证方法、装置及系统 | |
CN104935548B (zh) | 基于智能纹身设备的身份验证方法、装置及系统 | |
KR102103179B1 (ko) | 블록체인 오라클에서의 프라이버시 보호를 위한 영지식 증명 시스템 및 그 방법 | |
CN106034122A (zh) | 一种信息处理方法、电子设备及服务器 | |
GB2501069A (en) | Authentication using coded images to derive an encrypted passcode | |
CN110505185A (zh) | 身份验证方法、设备和系统 | |
CN109698806A (zh) | 一种用户数据校验方法及系统 | |
JP2020017928A5 (zh) | ||
CN112769789A (zh) | 一种加密通信方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |