本技术涉及计算机,尤其涉及一种客户端的验证方法、装置、电子设备及存储介质。
背景技术:
1、相关技术中,往往只依赖安装到客户端操作系统时的本地验证签名,以及散列值和历史散列值进行对比,实现对客户端进行验证,并没有进行网络验证,当客户端的应用程序被替换后,甚至可以跳过验证,同时,当客户端的应用程序运行以后仅进行身份验证,导致客户端的安全性较低,由此,如何更加准确地对客户端进行验证,提高客户端的安全性,已成为了亟待解决的问题。
技术实现思路
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、根据本技术的一个实施例,所述发送模块,还用于:获取所述客户端的验证策略,其中,所述验证策略由所述客户端的安全验证级别确定;确定与所述验证策略对应的验证信息,通过所述服务端公钥和公钥算法对所述验证策略对应的验证信息进行加密计算。
26、根据本技术的一个实施例,所述装置,还用于:若所述验证结果指示所述客户端验证成功,接收所述服务端发送的客户端启动指令,客户端与客户端关联的业务服务器进行交互通信;或者,若所述验证结果指示所述客户端验证失败,接收服务端发送的客户端停止启动指令,所述客户端与所述客户端关联的业务服务器不进行交互通信。
27、本技术第五方面提供了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述第一方面或第二方面提供的客户端的验证方法。
28、本技术第六方面提供了一种计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面或第二方面提供的客户端的验证方法。
29、本技术提供的客户端的验证方法及装置,通过生成服务端公钥和服务端私钥,将服务端公钥发送至客户端,其中,服务端私钥用于对客户端进行签名;接收客户端发送的对客户端进行验证的加密验证信息,获取预先存储的客户端对应的原始验证信息和接收加密验证信息的时间戳,将原始验证信息和时间戳作为目标验证信息,将加密验证信息与目标验证信息进行对比,对客户端进行验证,以获取客户端的验证结果,并将验证结果发送至客户端。由此,本技术增加了客户端的加密验证信息,并基于加密验证信息和目标验证信息对客户端进行验证,可以对客户端进行完整性保护,具备防篡改、防身份顶替、防双身份加入以及防重放攻击功能,确保了客户端的安全性。
30、应当理解,本技术所描述的内容并非旨在标识本技术的实施例的关键或重要特征,也不用于限制本技术的范围。本技术的其它特征将通过以下的说明书而变得容易理解。