本申请涉及计算机,尤其涉及一种安全验证方法、系统、电子设备及存储介质。
背景技术:
1、随着移动互联网技术的广泛应用,对个人信息的保护需求越来越迫切。对于业务系统而言,一般需要对用户的身份信息进行安全验证,在验证成功之后为用户提供相应的业务服务。那么,如何保障用户的个人信息安全,是研究的重点问题。
2、现有进行对用户的身份进行安全验证的方案,一般是通过客户端将获得的用户标识和用户口令发送至服务端,以在服务端对用户口令进行验证实现的。在该种方式下,若服务端存储的个人信息发生泄漏,攻击者容易通过常规攻击技术手段(如,字典表攻击或彩虹表攻击等)解析出用户口令,进而存在通过用户口令冒充合法用户登录业务系统的风险。
技术实现思路
1、本申请提供一种安全验证方法、系统、电子设备及存储介质,在对用户的个人信息进行验证时,能够提高验证安全性,有效保护用户的个人信息。
2、第一方面,本申请提供一种安全验证方法,应用于服务端,所述方法包括:
3、在接收到客户端发送的安全验证请求时,获取所述安全验证请求包括的用户标识,并基于所述用户标识获取对应的随机数解密白盒,所述解密白盒是通过对用户口令进行置乱编码获得的;生成随机数,将所述随机数发送至所述客户端;接收所述客户端对所述随机数进行加密处理后反馈的加密数据;基于所述随机数解密白盒对所述加密数据进行解密,获得解密数据,根据所述解密数据和所述随机数对所述客户端发送的安全验证请求进行验证。
4、第二方面,本申请提供一种安全验证方法,应用于客户端,包括:向服务端发送安全验证请求,所述安全验证请求包括用户标识,以使得所述服务端根据所述用户标识获取对应的随机数解密白盒,所述随机数解密白盒是通过对用户口令进行置乱编码获得的;接收所述服务端发送的随机数;对所述随机数进行加密处理获得加密数据;向所述服务端发送所述加密数据,以使得所述服务端基于所述随机数解密白盒对所述加密数据进行解密,获得解密数据,所述解密数据和所述随机数由所述服务端用于对所述客户端发送的安全验证请求进行验证。
5、第三方面,本申请提供一种安全验证装置,集成在服务端,所述装置包括:
6、请求接收模块,用于在接收到客户端发送的安全验证请求时,获取所述安全验证请求包括的用户标识,并基于所述用户标识获取对应的随机数解密白盒,所述随机数解密白盒是通过对用户口令进行置乱编码获得的;
7、随机数生成模块,用于生成随机数,将所述随机数发送至所述客户端;
8、数据接收模块,用于接收所述客户端对所述随机数进行加密处理后反馈的加密数据;
9、安全验证模块,用于基于所述随机数解密白盒对所述加密数据进行解密,获得解密数据,根据所述解密数据和所述随机数对所述客户端发送的安全验证请求进行验证。
10、第四方面,本申请还提供一种安全验证装置,集成在客户端,所述装置包括:
11、请求发送模块,用于向服务端发送安全验证请求,所述安全验证请求包括用户标识,以使得所述服务端根据所述用户标识获取对应的随机数解密白盒,所述随机数解密白盒是通过对用户口令进行置乱编码获得的;
12、随机数接收模块,用于接收所述服务端发送的随机数;
13、数据处理模块,用于对所述随机数进行加密处理获得加密数据;
14、数据发送模块,用于向所述服务端发送所述加密数据,以使得所述服务端基于所述随机数解密白盒对所述加密数据进行解密,获得解密数据,所述解密数据和所述随机数由所述服务端用于对所述客户端发送的安全验证请求进行验证。
15、第五方面,本申请还提供了一种电子设备,所述电子设备包括:
16、至少一个处理器;以及
17、与所述至少一个处理器通信连接的存储器;其中,
18、所述存储器存储有可被所述至少一个处理器执行的计算机程序,所述计算机程序被所述至少一个处理器执行,以使所述至少一个处理器能够执行本申请任一实施例所述的安全验证方法。
19、第六方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,所述计算机指令用于使处理器执行时实现本申请任一实施例所述的安全验证方法。
20、第七方面,本申请还提供了一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现本申请任一实施例所述的安全验证方法。
21、本申请实施例提供的安全验证方案,在服务端接收到客户端发送的安全验证请求时,服务端只存储了用户标识和对应的随机数解密白盒,由于随机数解密白盒中包含的用户口令被置乱编码,加入了较多干扰信息,那么,即使攻击者在服务端获取了用户的随机数解密白盒,也难以从随机数解密白盒中恢复出用户口令,能够有效避免出现攻击者冒充合法用户登录业务系统的现象;进一步地,在进行安全验证时,本实施例使用随机数解密白盒对客户端基于随机数反馈的加密数据进行解密,以通过解密数据和随机数实现安全验证,该验证过程无需使用用户的个人信息,起到了提高验证安全性,有效保护用户的信息安全的有益效果。
22、需要说明的是,上述计算机指令可以全部或者部分存储在计算机可读存储介质上。其中,计算机可读存储介质可以与安全验证装置的处理器封装在一起,也可以与安全验证装置的处理器单独封装,本申请对此不做限定。
23、本申请中第二方面、第三方面、第四方面、第五方面、第六方面以及第七方面的描述,可以参考第一方面的详细描述;并且,第二方面、第三方面、第四方面、第五方面、第六方面以及第七方面的描述的有益效果,可以参考第一方面的有益效果分析,此处不再赘述。
24、应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其他特征将通过以下的说明书而变得容易理解。
25、可以理解的是,在使用本申请各实施例公开的技术方案之前,均应当依据相关法律法规通过恰当的方式对本申请所涉及个人信息的类型、使用范围以及使用场景等告知用户并获得用户的授权。
1.一种安全验证方法,其特征在于,应用于服务端,所述方法包括:
2.根据权利要求1所述的安全验证方法,其特征在于,所述基于所述随机数解密白盒对所述加密数据进行解密,获得解密数据,包括:
3.根据权利要求1所述的安全验证方法,其特征在于,所述根据所述解密数据和所述随机数对所述客户端发送的安全验证请求进行验证,包括:
4.根据权利要求1所述的安全验证方法,其特征在于,在接收所述客户端发送的安全验证请求之前,还包括:
5.一种安全验证方法,其特征在于,应用于客户端,所述方法包括:
6.根据权利要求5所述的安全验证方法,其特征在于,所述对所述随机数进行加密处理获得加密数据,包括:
7.根据权利要求5所述的安全验证方法,其特征在于,所述随机数解密白盒通过如下方式产生:
8.根据权利要求7所述的安全验证方法,其特征在于,所述口令加密白盒通过如下方式产生:
9.一种安全验证系统,其特征在于,包括如权利要求1-4任一项所述服务端,和如权利要求5-8任一项所述的客户端。
10.一种电子设备,其特征在于,所述电子设备包括:
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-4任一项所述的安全验证方法,或如权利要求5-8任一项所述的安全验证方法。