本公开涉及计算机,尤其涉及一种验证方法、装置、系统、电子设备及存储介质。
背景技术:
1、目前,很多设备都提供有指纹验证模块和面容验证模块。相应地,很多应用程序(app,application)可以采用指纹、面容的方式进行鉴权。
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、获取终端发送的、用于所述服务端对所述终端进行验证的第一验证数据、所述终端关联的用户标识和所述时间戳;以及
26、所述基于所述第一验证数据,对所述终端进行验证,包括:
27、从所述服务端存储的密钥集合中,确定所述用户标识关联的第二目标密钥;
28、采用所述预设加密算法对所述时间戳、所述第二目标密钥和所述服务端关联的第二预设字符串进行加密,得到第二验证数据;
29、基于所述第一验证数据和所述第二验证数据,对所述终端进行验证。
30、在一个可能的实施方式中,所述基于所述第一验证数据和所述第二验证数据,对所述终端进行验证,包括:
31、确定所述第一验证数据和所述第二验证数据是否相同;
32、确定所述服务端是否首次接收到所述终端发送的所述时间戳;
33、确定所述开始时刻距离当前时刻是否超过预设时长;
34、在所述第一验证数据和所述第二验证数据相同,并且,所述服务端首次接收到所述时间戳,并且,所述开始时刻距离所述当前时刻未超过所述预设时长的情况下,确定所述终端通过验证。
35、第三方面,本公开实施例提供一种验证装置,所述装置设置于终端,所述装置包括:
36、检测单元,用于检测目标验证操作,其中,所述目标验证操作为指纹验证操作或面部验证操作;
37、生成单元,用于在检测到所述目标验证操作的情况下,基于所述终端关联的第一目标密钥,生成用于服务端对所述终端进行验证的第一验证数据,其中,所述服务端和所述终端通信连接;
38、发送单元,用于向所述服务端发送所述第一验证数据,其中,所述服务端用于基于所述第一验证数据,对所述终端进行验证。
39、在一个可能的实施方式中,所述基于所述终端关联的第一目标密钥,生成用于服务端对所述终端进行验证的第一验证数据,包括:
40、采用预设加密算法,对时间戳、所述终端关联的第一目标密钥和所述终端关联的第一预设字符串进行加密,得到用于服务端对所述终端进行验证的第一验证数据,其中,所述时间戳表示采用所述预设加密算法进行加密的开始时刻。
41、在一个可能的实施方式中,所述向所述服务端发送所述第一验证数据,包括:
42、向所述服务端发送所述第一验证数据、所述终端关联的用户标识和所述时间戳;以及
43、所述服务端采用如下方式基于所述第一验证数据对所述终端进行验证:
44、从所述服务端存储的密钥集合中,确定所述用户标识关联的第二目标密钥;
45、采用所述预设加密算法对所述时间戳、所述第二目标密钥和所述服务端关联的第二预设字符串进行加密,得到第二验证数据;
46、基于所述第一验证数据和所述第二验证数据,对所述终端进行验证。
47、在一个可能的实施方式中,所述基于所述第一验证数据和所述第二验证数据,对所述终端进行验证,包括:
48、确定所述第一验证数据和所述第二验证数据是否相同;
49、确定所述服务端是否首次接收到所述终端发送的所述时间戳;
50、确定所述开始时刻距离当前时刻是否超过预设时长;
51、在所述第一验证数据和所述第二验证数据相同,并且,所述服务端首次接收到所述时间戳,并且,所述开始时刻距离所述当前时刻未超过所述预设时长的情况下,确定所述终端通过验证。
52、第四方面,本公开实施例提供一种验证装置,所述装置设置于服务端,所述装置包括:
53、获取单元,用于获取终端发送的、用于所述服务端对所述终端进行验证的第一验证数据;其中,所述第一验证数据在所述终端检测到目标验证操作的情况下,基于所述终端关联的第一目标密钥生成;所述终端与所述服务端通信连接;所述目标验证操作为指纹验证操作或面部验证操作;
54、验证单元,用于基于所述第一验证数据,对所述终端进行验证。
55、在一个可能的实施方式中,所述终端采用如下方式生成所述第一验证数据:
56、采用预设加密算法,对时间戳、所述终端关联的第一目标密钥和所述终端关联的第一预设字符串进行加密,得到用于所述服务端对所述终端进行验证的第一验证数据,其中,所述时间戳表示采用所述预设加密算法进行加密的开始时刻。
57、在一个可能的实施方式中,所述获取终端发送的、用于所述服务端对所述终端进行验证的第一验证数据,包括:
58、获取终端发送的、用于所述服务端对所述终端进行验证的第一验证数据、所述终端关联的用户标识和所述时间戳;以及
59、所述基于所述第一验证数据,对所述终端进行验证,包括:
60、从所述服务端存储的密钥集合中,确定所述用户标识关联的第二目标密钥;
61、采用所述预设加密算法对所述时间戳、所述第二目标密钥和所述服务端关联的第二预设字符串进行加密,得到第二验证数据;
62、基于所述第一验证数据和所述第二验证数据,对所述终端进行验证。
63、在一个可能的实施方式中,所述基于所述第一验证数据和所述第二验证数据,对所述终端进行验证,包括:
64、确定所述第一验证数据和所述第二验证数据是否相同;
65、确定所述服务端是否首次接收到所述终端发送的所述时间戳;
66、确定所述开始时刻距离当前时刻是否超过预设时长;
67、在所述第一验证数据和所述第二验证数据相同,并且,所述服务端首次接收到所述时间戳,并且,所述开始时刻距离所述当前时刻未超过所述预设时长的情况下,确定所述终端通过验证。
68、第五方面,本公开实施例提供一种验证系统,所述系统包括终端和服务端,所述终端和所述服务端通信连接,其中:
69、所述终端被配置成:检测目标验证操作,其中,所述目标验证操作为指纹验证操作或面部验证操作;在检测到所述目标验证操作的情况下,基于所述终端关联的第一目标密钥,生成用于所述服务端对所述终端进行验证的第一验证数据;向所述服务端发送所述第一验证数据;
70、所述服务端被配置成:基于所述第一验证数据,对所述终端进行验证。
71、在一个可能的实施方式中,所述基于所述终端关联的第一目标密钥,生成用于所述服务端对所述终端进行验证的第一验证数据,包括:
72、采用预设加密算法,对时间戳、所述终端关联的第一目标密钥和所述终端关联的第一预设字符串进行加密,得到用于所述服务端对所述终端进行验证的第一验证数据,其中,所述时间戳表示采用所述预设加密算法进行加密的开始时刻。
73、在一个可能的实施方式中,所述向所述服务端发送所述第一验证数据,包括:
74、向所述服务端发送所述第一验证数据、所述终端关联的用户标识和所述时间戳;以及
75、所述基于所述第一验证数据,对所述终端进行验证,包括:
76、从所述服务端存储的密钥集合中,确定所述用户标识关联的第二目标密钥;
77、采用所述预设加密算法对所述时间戳、所述第二目标密钥和所述服务端关联的第二预设字符串进行加密,得到第二验证数据;
78、基于所述第一验证数据和所述第二验证数据,对所述终端进行验证。
79、在一个可能的实施方式中,所述基于所述第一验证数据和所述第二验证数据,对所述终端进行验证,包括:
80、确定所述第一验证数据和所述第二验证数据是否相同;
81、确定所述服务端是否首次接收到所述终端发送的所述时间戳;
82、确定所述开始时刻距离当前时刻是否超过预设时长;
83、在所述第一验证数据和所述第二验证数据相同,并且,所述服务端首次接收到所述时间戳,并且,所述开始时刻距离所述当前时刻未超过所述预设时长的情况下,确定所述终端通过验证。
84、第六方面,本公开实施例提供一种电子设备,包括:
85、存储器,用于存储计算机程序;
86、处理器,用于执行上述存储器中存储的计算机程序,且上述计算机程序被执行时,实现本公开上述第一方面或第二方面的验证方法中任一实施例的方法。
87、第七方面,本公开实施例提供一种计算机可读存储介质,该计算机程序被处理器执行时,实现如上述第一方面或第二方面的验证方法中任一实施例的方法。
88、第八方面,本公开实施例提供一种计算机程序,该计算机程序包括计算机可读代码,当该计算机可读代码在设备上运行时,使得该设备中的处理器执行用于实现如上述第一方面或第二方面的验证方法中任一实施例的方法中各步骤的指令。
89、本公开实施例提供的应用于终端的验证方法,可以检测目标验证操作,其中,所述目标验证操作为指纹验证操作或面部验证操作,之后,在检测到所述目标验证操作的情况下,基于所述终端关联的第一目标密钥,生成用于服务端对所述终端进行验证的第一验证数据,其中,所述服务端和所述终端通信连接,随后,向所述服务端发送所述第一验证数据,其中,所述服务端用于基于所述第一验证数据,对所述终端进行验证。由此方法,服务端可以基于终端关联的第一目标密钥生成的第一验证数据,对终端进行验证,因而可以通过后端服务端来确定当前提供的指纹或面容,是否可以通过后端提供支持的特定应用程序的验证,由此提高了验证的安全性。
90、本公开实施例提供的应用于服务端的验证方法,可以获取终端发送的、用于所述服务端对所述终端进行验证的第一验证数据;其中,所述第一验证数据在所述终端检测到目标验证操作的情况下,基于所述终端关联的第一目标密钥生成;所述终端与所述服务端通信连接;所述目标验证操作为指纹验证操作或面部验证操作,之后,基于所述第一验证数据,对所述终端进行验证。由此方法,服务端可以基于终端关联的第一目标密钥生成的第一验证数据,对终端进行验证,因而可以通过后端服务端来确定当前提供的指纹或面容,是否可以通过后端提供支持的特定应用程序的验证,由此提高了验证的安全性。
91、本公开实施例提供的验证系统包括终端和服务端,所述终端和所述服务端通信连接,其中:所述终端被配置成:检测目标验证操作,其中,所述目标验证操作为指纹验证操作或面部验证操作;在检测到所述目标验证操作的情况下,基于所述终端关联的第一目标密钥,生成用于所述服务端对所述终端进行验证的第一验证数据;向所述服务端发送所述第一验证数据;所述服务端被配置成:基于所述第一验证数据,对所述终端进行验证。由此,服务端可以基于终端关联的第一目标密钥生成的第一验证数据,对终端进行验证,因而可以通过后端服务端来确定当前提供的指纹或面容,是否可以通过后端提供支持的特定应用程序的验证,由此提高了验证的安全性。