具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1为本申请实施例提供的身份验证过程,具体包括以下步骤:
S101:接收用户发送的身份验证请求,并向该用户发送验证问题信息。
本申请实施例提供的身份验证方法可用于各网站的服务器验证登录用户的身份是否合法。当用户登录网站,或在网站上重置用户密码时,可通过用户终端向服务器发送身份验证请求,则服务器接收该用户发送的身份验证请求,并向该用户发送验证问题信息。其中,该身份验证请求中携带有该用户的用户标识,如用户名,所述的用户终端包括但不限于:个人计算机(PersonalComputer,PC)、手机、平板电脑等。
在本申请实施例中,服务器可预先保存多个验证问题信息,具体的,服务器可预先为每个用户分别保存多个验证问题信息,其中,为不同的用户保存的验证问题信息可以相同,也可以不同。对于一个用户来说,服务器为该用户保存的验证问题信息是服务器根据记录的该用户的历史操作信息预先设置的,并保存在服务器的配置文件中。这种根据用户的历史操作信息而设置的验证问题信息实际上并没有一个准确的答案,可能存在多个“相对正确”的答案。如,根据记录的用户的历史操作信息,可确定该用户购买的商品大多为红色和蓝色,则可设置验证问题信息为“你喜欢的颜色?”,显然,这个验证问题信息并没有唯一的答案。
当服务器接收到该用户发送的身份验证请求时,也可从为该用户预先保存的多个验证问题信息中选择设定数量的验证问题信息发送给该用户,该设定数量可根据需要进行设置,显然,增大该设定数量,也即,增大发送给该用户的验证问题信息的数量,可增强对该用户的身份认证的可靠性。
S102:接收该用户返回的验证答案信息。
当用户接收到服务器发送的验证问题信息后,针对接收到的每个验证问题信息,向服务器返回该验证问题信息的验证答案信息,服务器接收该用户返回的该验证答案信息。
当然,当用户接收到服务器发送的验证问题信息后,也可能不向服务器返回验证答案信息,或者,很长时间后才向服务器返回验证答案信息,在这种情况下,服务器可预设向该用户发送的验证问题信息的过期时间,若服务器向该用户发送验证问题信息后,在该验证问题信息的过期时间之内未接收到该用户返回的该验证问题信息的验证答案信息,则服务器可确定对该用户的身份验证失败,从而确保了服务器向该用户发送的验证问题信息的时效性。
S103:根据该验证答案信息以及针对该用户记录的历史操作信息,确定该验证答案信息与该验证问题信息的匹配概率,并判断该匹配概率是否大于设定阈值,若是,则执行步骤S104,否则,执行步骤S105。
在本申请实施例中,服务器可根据用户返回的验证答案信息以及针对该用户记录的历史操作信息,确定该验证答案信息与该验证问题信息的匹配概率。具体的,由于本申请实施例中所述的验证问题信息并没有唯一的正确答案,因此,对于用户返回的验证答案信息,服务器可根据针对该用户记录的历史操作信息,确定用户返回的验证答案信息与该验证问题信息的匹配概率。如,假设验证问题信息为“你喜欢的颜色?”,而用户返回的验证答案信息为“红色”,则服务器可根据该用户的历史操作信息,确定该用户历史上购买的商品中红色商品所占的比例,作为该验证答案信息与该验证问题信息的匹配概率。
另外,由于服务器可能会向用户发送多个验证问题信息,而用户的记忆不一定精确,即使是身份合法的用户返回的多个验证答案信息也不一定能够全部匹配对应的验证问题信息,因此,服务器还可对用户返回的多个验证答案信息进行综合衡量以确定所述的匹配概率。
S104:确定对该用户的验证成功。
S105:确定对该用户的验证失败。
通过上述方法,由于服务器根据针对该用户记录的历史操作信息确定用户返回的验证答案信息是否与验证问题信息匹配,且服务器针对该用户记录的历史操作信息在动态变化,因此所述的匹配概率也在动态变化,而不是固定不变的,因此这种验证问题信息比用户自己预设的、且对应答案固定不变的安全保护问题更可靠,提高了用户账号的安全性。
进一步的,在上述步骤S101中,服务器为用户保存的验证问题信息是服务器根据记录的该用户的历史操作信息预先设置的,而不同的服务器为用户提供了不同的服务,例如,电商的服务器提供了购物和下单的服务、图书馆的服务器提供了图书借阅管理的服务、政府部门的服务器提供了公民信息管理的服务等,显然,每个服务器针对用户记录的历史操作信息都不全相同,则每个服务器根据历史操作信息预先设置的验证问题信息也不全相同,提高了同一个用户在不同网站上的身份安全性。
下面对服务器设置验证问题信息的过程进行说明。
在本申请实施例中,服务器记录的历史操作信息可以是用户使用特征信息。以所述的服务器为购物网站的服务器为例进行说明,该用户使用特征信息可以是用户购买的商品的相关信息,如颜色信息、品牌信息、规格信息等,也可以是用户登录的相关信息,如登录地点、登录时间、登录因特网协议(InternetProtocol,IP)地址等。
则服务器根据用户的历史操作信息设置的验证问题信息可以为“你喜欢的颜色?”、“你喜欢的品牌?”、“你喜欢的规格?”、“你上次的登录地点?”、“你常用的登录地点?”、“你最近一次的登录时间”、“你常用的登录IP?”等。
服务器在根据用户的历史操作信息设置对应的验证问题信息时,也会针对每个验证问题信息,预设该验证问题信息的属性,并设置该验证问题信息的备选答案信息。
在本申请实施例中,所述的每一个验证问题信息可对应一个或多个备选答案信息,所述的备选答案信息由服务器根据对应的验证问题信息,以及该验证问题信息对应的历史操作信息确定。具体的,服务器可根据针对为用户保存的每个验证问题信息预设的属性,在针对该用户记录的历史操作信息中,确定该属性对应的明细信息,将确定出的各明细信息作为备选答案信息。
具体的,仍假设服务器为购物网站的服务器,则服务器为用户预先保存的验证问题信息可与用户在该购物网站购买的商品相关,服务器根据针对为用户保存的每个验证问题信息预设的属性具体可包括:用户购买的商品的颜色信息、品牌信息、规格信息中的一种或几种的组合。
例如,针对验证问题信息“你喜欢的颜色?”,服务器为该验证问题信息预设的属性即为商品颜色。则服务器根据针对该用户记录的历史操作信息,确定历史操作信息中该属性(商品颜色)对应的明细信息为红色、蓝色、黄色这3种颜色的名称(表示该用户历史上购买过红色、蓝色和黄色的商品),因此确定该验证问题信息的备选答案信息为“红色”、“蓝色”、“黄色”。
当然,以上是仅以购物网站服务器为例进行说明的,对于其它类型的网站服务器,服务器为验证问题信息预设的属性可为其它类型的属性信息,例如,对于图书馆的网站,其服务器根据针对为用户保存的每个验证问题信息预设的属性可以为用户借阅的图书的类型、图书的作者、图书的出版社等,则属性“图书的类型”对应的明细信息可以为“科幻”、“惊悚”、“爱情”等,属性“图书的作者”对应的明细信息可以为具体的作者姓名“作者A”、“作者B”等,属性“图书的出版社”对应的明细信息可以为具体的出版社名称“出版社A”、“出版社B”等。
在服务器预设了验证问题信息及其对应的备选答案信息后,该服务器即已准备就绪,可对用户进行身份验证。
当服务器接收到某用户发送的身份验证请求时,服务器可选择设定数量的预先保存的验证问题信息发送给该用户。下面对该处理过程进行详细说明。
为了增强对用户身份认证的可靠性,当服务器接收到某用户发送的身份验证请求时,需要对为该用户预先保存的多个验证问题信息进行甄选,从中选出设定数量的可靠度相对较高的验证问题信息发送给该用户。具体的,服务器针对预先保存的每个验证问题信息,可根据针对该用户记录的历史操作信息,确定预先保存的该验证问题信息的备选答案信息,确定每个备选答案信息在所述历史操作信息中的出现概率,确定各出现概率的方差,根据针对预先保存的每个验证问题信息确定的方差,按照方差从大到小的顺序,依次选择设定数量的验证问题信息发送给该用户。
也就是说,在本申请实施例中,评价一个验证问题信息可靠度的高低,是根据该验证问题信息的各备选答案信息的出现概率的方差来评价的,方差越大,可靠度越高,方差越小,可靠度越低。
下面详细分析采用各备选答案信息的出现概率的方差来衡量验证问题信息可靠度的原因。
由于服务器在预先设置验证问题信息时,会确定该验证问题信息对应的若干个备选答案信息,又因为各备选答案信息均是从历史操作信息中提取的,因此,针对每一个验证问题信息,若该验证问题信息的某个备选答案信息在历史操作信息中出现的次数越多,则服务器确定该备选答案信息与该验证问题信息越匹配,或者说,如果一个备选答案信息相对于其它的备选答案信息在历史操作信息中的出现概率越高,则服务器确定该备选答案信息与该验证问题信息越匹配。
以验证问题信息“你喜欢的颜色?”为例进行详细说明。假定用户在该购物网站上购买过40件衣服,其中,有13件红色衣服、12件橙色衣服、12件黄色衣服、2件绿色衣服、1件蓝色衣服。显然,针对该验证问题信息,服务器预设的属性为“商品颜色”,由于服务器可根据该用户购买过的衣服的颜色推测用户喜欢的颜色,因此,属性“商品颜色”对应的各明细信息可为用户购买过的衣服的颜色的具体名称,服务器通过记录的该用户的历史购买信息,确定出该明细信息为“红色”、“橙色”、“黄色”、“绿色”、“蓝色”,也即为,服务器为验证问题信息“你喜欢的颜色?”确认出的5个备选答案信息。
根据该用户的历史操作信息可确定上述5个备选答案信息在该用户的历史购买信息中出现的次数分别为13次、12次、12次、2次、1次,则可确定:
备选答案信息“红色”的出现概率为13/(13+12+12+2+1)=32.5%;
备选答案信息“橙色”的出现概率为12/(13+12+12+2+1)=30%;
备选答案信息“黄色”的出现概率为12/(13+12+12+2+1)=30%;
备选答案信息“绿色”的出现概率为2/(13+12+12+2+1)=5%;
备选答案信息“蓝色”的出现概率为1/(13+12+12+2+1)=2.5%。
出现概率越高的备选答案信息与该验证问题越匹配,在本例中,红色的出现概率最大,可认为用户最喜欢红色,也即,服务器确定备选答案信息“红色”与验证问题信息“你喜欢的颜色”最匹配。
进一步的,若该验证问题信息的有多个备选答案信息相对于其它的备选答案信息在历史操作信息中的出现概率较高,且这多个备选答案信息在历史操作信息中的出现概率很接近,则服务器确定该多个备选答案信息与该验证问题信息均较为匹配,这就会造成无论用户返回的验证答案信息是这些备选答案信息中的哪个,后续确定的匹配概率都会比较高,或者说,冒充该用户的攻击者只要返回这些备选答案信息中的任何一个,都会使后续验证成功的概率增大,因此,这种验证问题信息不是一个可靠度相对较高的验证问题。
仍以上例进行详细说明,验证问题信息“你喜欢的颜色?”的其中3个备选答案“红色”、“橙色”、“黄色”的出现概率比其他备选答案的出现概率高出很多,而且这3个备选答案的出现概率也很接近,服务器会认为这三个备选答案信息都与该验证问题信息很匹配,因此,后续用户返回的验证答案信息为“红色”、“橙色”、“黄色”中的任何一个时,服务器都认为该验证答案信息与该验证问题信息匹配。显然,当与该验证问题信息匹配度较高的备选答案信息越多时,对于想要冒充该用户的攻击者来说,使用某种攻击方式,例如穷举法来猜匹配度较高的备选答案信息时更容易命中。因此,上例的验证问题信息并不是一个可靠度较高的问题。反之,若与某验证问题信息匹配度较高的备选答案信息只有一个时,攻击者不容易猜中,则该验证问题信息是一个可靠度相对较高的验证问题。
通过上述的说明,对于可靠度相对较高的验证问题信息,该验证问题信息的各个备选答案信息在历史操作信息中的出现概率应当容易区分,也即,各出现概率,特别是相对较大的各出现概率应当尽量分散。用各出现概率的方差可以衡量各出现概率的分散程度,方差越大,各出现概率越分散,则该验证问题信息的可靠度越高。因此,在本申请实施例中,服务器在预先保存的各验证问题信息中选择验证问题信息时,可选择设定数量的、且对应的各备选答案信息的出现概率的方差最大的验证问题信息,并发送给用户,即可提高验证用户身份的可靠性。
需要说明的是,上述分析是基于有多个备选答案信息的验证问题信息来说的,若验证问题信息只有一个备选答案信息,则该备选答案信息的出现概率为100%,出现概率的方差为0,但是,对于想要冒充合法用户的攻击者来说,使用某种攻击方式,例如穷举法,来猜该验证问题信息的唯一的备选答案信息,比猜有多个备选答案信息的验证问题信息的任意一个备选答案信息更不容易命中,因此,这种验证问题信息比有多个备选答案信息的验证问题信息可靠度更高,服务器还可优先选择这种验证问题信息。也即,服务器在预先保存的各验证问题信息中选择验证问题信息时,可优先选择对应的备选答案信息只有一个的验证问题信息,当对应的备选答案信息只有一个的验证问题信息的数量不足所述的设定数量时,再选择对应的各备选答案信息的出现概率的方差最大的验证问题信息,直至选择的验证问题信息的数量为所述设定数量为止。
另外,当在历史操作信息中出现次数很少的备选答案信息有多个时,由于该部分的备选答案信息对方差的值影响很小,为了减轻服务器确定方差时的负担,服务器可以剔除在历史操作信息中出现的次数很少的备选答案信息,再确定方差,也即,服务器可先剔除出现概率小于设定概率的备选答案信息,再根据剩余的备选答案信息确定方差。
或者,服务器也可将在历史操作信息中出现概率很小的备选答案信息合并为一个新的备选答案信息,再确定方差。仍以验证问题信息“你喜欢的颜色?”为例进行详细说明。假定服务器为该验证问题信息确定的备选答案信息为“红色”、“橙色”、“黄色”、“绿色”、“蓝色”、“紫色”、“灰色”、“黑色”,对应的出现概率分别为40%、30%、20%、3%、2%、2%、2%、1%。显然,相对于前3个备选答案信息,后5个备选答案信息的出现概率很小,则服务器可将后5个备选答案信息“绿色”、“蓝色”、“紫色”、“灰色”、“黑色”合并为一个新的备选答案信息“其它颜色”,且该合并后的备选答案信息的出现概率为合并前的这5个备选答案信息的出现概率之和,即为3%+2%+2%+2%+1%=10%,由于原来的8个备选答案信息合并后减少为4个备选答案信息(“红色”、“橙色”、“黄色”、“其它颜色”),因此,提高了服务器确定各出现概率的方差时的效率。
上述实施例说明了服务器如何从已保存的验证问题信息选择验证问题信息发送给用户。当用户接收到服务器发送的验证问题信息后,可针对每个验证问题信息向服务器发送验证答案信息,进而,服务器可确定接收到的验证答案信息与发送的验证问题信息的匹配概率,以判断对该用户的验证是否成功。
具体的,服务器针对发送给该用户的每个验证问题信息,根据该验证问题信息的各备选答案信息的出现概率,确定与用户返回的验证答案信息相同的备选答案信息的出现概率,确定分别针对该用户发送的每个验证问题信息确定的出现概率的平均值,作为匹配概率,从而,增强了本申请实施例提供的身份认证方法的容错性。
例如,假定服务器发送给某用户10个验证问题信息,每个验证问题信息对应的备选答案信息中,出现概率最高的备选答案信息的出现概率都为70%,其中有一个验证问题信息只有两个备选答案信息,则其出现概率较低的备选答案信息的出现概率为30%,由于用户的记忆不精确,用户针对该验证问题信息返回了与出现概率为30%的备选答案信息相同的验证答案信息,而针对其余的9个验证问题信息都返回了与出现概率最高(70%)的备选答案信息相同的验证答案信息,在这种情况下,服务器判定用户验证失败显然是不合理的,则服务器可确定与用户返回的各个验证答案信息相同的备选答案信息的出现概率的平均值作为匹配概率,以该匹配概率来衡量是否确定该用户验证成功,如预设该匹配概率的阈值为60%,当该匹配概率大于该预设阈值时,服务器确定该用户验证成功,当匹配概率不大于该预设阈值时,服务器确定该用户验证失败。可确定本例的匹配概率为66%,大于该预设阈值60%,则服务器确定该用户验证成功。
进一步的,由于服务器不会将发送给用户的验证问题信息的各个备选答案信息发送给该用户,因此,该用户不了解服务器保存的备选答案信息的描述方式,则该用户返回的验证答案信息的描述方式与该验证问题信息对应的备选答案信息的描述方式可能不同,从而可能导致虽然用户返回的验证答案信息所表达的意义与该验证问题信息对应的某个备选答案信息所表达的意义相同,但是服务器在保存的该验证问题信息的各备选答案信息中找不到与该用户返回的验证答案信息相同的备选答案信息,则服务器无法准确的确定匹配概率。针对这种情况,服务器可将该用户返回的验证答案信息与该验证问题信息的各备选答案进行模糊匹配,并确定与用户返回的验证答案信息的匹配度最高的备选答案的出现概率,从而,服务器可以执行本申请实施例的后续步骤。
例如,以验证问题信息“你喜欢的颜色”为例进行详细说明,假定该验证问题信息有四个备选答案信息,分别为“红色”、“蓝色”、“黑色”、“紫色”,其对应的出现概率分别为60%、30%、8%、2%。若用户返回的验证答案信息为“红”,显然,该验证答案信息与任何一个备选答案信息都不相同,则服务器可应用现有的中文字符串的模糊匹配算法将该验证答案信息与各备选答案进行模糊匹配,确定出与该验证答案信息“红”匹配度最高的备选答案为“红色”,从而,服务器可根据备选答案“红色”的出现概率确定匹配概率,进而确定该用户是否验证成功。
需要说明的是,由于本申请实施例中服务器为用户记录的历史操作信息是动态变化的,因此,各验证问题信息的备选答案信息、各备选答案信息的出现概率也在动态变化,因此,服务器可根据指定时间段(例如,最近三个月)内的历史操作信息确定各验证问题信息的备选答案信息以及各备选答案信息的出现概率,从而确保上述的各种信息的时效性。
另外,某些网站的服务器在用户注册时,允许用户自行设置安全保护问题信息以及对应的安全保护答案信息,以用于身份验证。在这种情况下,服务器在接收到用户的身份验证请求时,也可将该用户设置的安全保护问题信息,以及上述设定数量的验证问题信息一同发送给该用户。若该用户针对接收到的安全保护问题信息,向服务器返回了对应的安全保护答案信息,且该用户针对接收到的验证问题信息,向服务器返回的验证答案信息与该验证问题信息的匹配概率大于预设阈值,则服务器确定对该用户的身份验证成功,否则,服务器确定对该用户的身份验证失败。
结合图2至图5,以所述的服务器为购物网站的服务器(购物网站的服务器,以下简称为,服务器),服务器对用户进行身份验证为例,说明本申请实施例提供的身份验证方法。假定用户A在该购物网站上注册了账号,经过一段时间的使用后,用户A忘记了自己的账号密码,因此,在该购物网站上申请重置自己的账号密码,另外,有攻击者B冒充用户A在该购物网站上申请重置用户A的账号密码。则服务器通过本申请实施例提供的身份验证方法对用户A和攻击者B进行身份验证。
图2为本申请实施例提供的在实际应用场景下的身份验证过程,具体包括以下步骤:
S201,服务器预先记录了用户的注册信息。
用户A预先在服务器上注册账号并设置了账号密码,用户A选择了服务器提供的两个安全保护问题信息并设置了对应的安全保护答案信息,其中,这两个安全保护问题信息为:“你的姓名?”、“你的小学?”。服务器预先记录了上述注册信息,并用用户A的账号进行标识。
S202,服务器实时记录用户的历史操作信息。
用户A通过服务器进行购买操作,购买的商品为衣物,其中,该购物网站上针对衣物类商品设置的属性为:商品颜色、品牌、规格等,每一件衣物的每个属性都有对应的明细信息。服务器实时记录用户A的历史操作信息,并用用户A的账号进行标识,其中,该历史操作信息包括:用户购买的衣物的属性及对应的明细信息、用户最近一次的登录详细信息,如登录地点、登录时间等。
S203,服务器根据记录的历史操作信息预先设置并保存验证问题信息,以及对应的备选答案信息。
服务器根据记录的历史操作信息预先设置并保存的验证问题信息为:与用户购买的商品的属性相关的验证问题信息,如“你喜欢的颜色?”、“你喜欢的品牌?”、“你喜欢的规格?”等,以及与用户登录相关的验证问题信息,如“你最近一次的登录地点?”、“你最近一次的登录时间?”。服务器根据记录的历史操作信息以及上述的每个验证问题信息,确定并保存每个验证问题信息对应的备选答案信息。
S204,服务器接收用户发送的身份验证请求,并向该用户发送验证问题信息。
用户A经过一段时间后忘记了自己的账号密码,要在该购物网上重置账号密码,则向服务器发送身份验证请求,其中,该身份验证请求中携带有用户A的账号。而攻击者B也冒充用户A向服务器发送身份验证请求,攻击者B发送的身份验证请求中也携带有用户A的账号。
服务器接收到上述的身份验证请求后,在为上述用户预先保存的验证问题信息中选择设定数量的验证问题。假定该设定数量为4,服务器针对用户A预先设置的验证问题信息共有5个,这5个验证问题信息如图3所示。
则服务器首先从这5个验证问题信息中优先选择只有一个备选答案信息的验证问题信息,根据图3,选择出的只有一个备选答案信息的验证问题信息即为编号为4、5的验证问题信息,共2个。
服务器还需要从其余的3个验证问题信息中再选择出2个,因此,服务器针对其余的3个验证问题信息,分别确定每个验证问题信息对应的备选答案信息的出现概率,并确定各出现概率的方差(如图3所示),最后按照方差从大到小的顺序,选择出编号为1、3的验证问题信息。
至此,服务器已经为用户A选择出了设定数量的(4个)验证问题信息,服务器将选择出的4个验证问题信息发送给用户A。
类似的,由于攻击者B发送的身份验证请求中也携带了用户A的账号,则服务器也为攻击者B选择出了上述的4个验证问题信息,并发送给攻击者B。
另外,服务器还将两个安全保护问题信息“你的姓名?”、“你的小学?”发送给用户A和攻击者B。
S205,服务器接收该用户返回的验证答案信息。
用户A和攻击者B分别针对服务器发送的4个验证问题信息返回了验证答案信息,服务器接收用户A和攻击者B返回的验证答案信息。其中,图4示出了用户A返回的验证答案信息以及对应的验证问题信息,图5示出了攻击者B返回的验证答案信息以及对应的验证问题信息。
另外,服务器还接收了用户A和攻击者B针对安全保护问题信息返回的安全保护答案信息。
S206,服务器根据保存的验证问题信息以及针对该用户记录的历史操作信息,确定接收到的验证答案信息与该验证问题信息的匹配概率。
服务器分别针对用户A、攻击者B,确定接收到的验证答案信息与对应的验证问题信息的匹配概率。
对于用户A,服务器确定该匹配概率为:(60%+60%+100%+100%)/4=80%。
对于攻击者B,服务器确定该匹配概率为:(30%+20%+100%+100%)/4=62.5%。
另外,服务器确定用户A和攻击者B针对安全保护问题信息都返回了正确的安全保护答案信息。
S207,服务器判断匹配概率是否大于设定阈值。若是,则执行步骤S208,否则,执行步骤209。
S208,服务器确定对该用户的验证成功。
S209,服务器确定对该用户的验证失败。
在上述步骤S207~209中,假定服务器的配置文件中为匹配概率设置的设定阈值为75%。由于用户A返回的验证答案信息与对应的验证问题信息的匹配概率大于设定阈值75%,因此,服务器确定对用户A的身份验证成功。而由于攻击者B返回的验证答案信息与对应的验证问题信息的匹配概率为62.5%,不大于设定阈值75%,因此,服务器确定对攻击者B的身份验证失败。
以上为本申请实施例提供的身份验证方法,基于同样的思路,本申请实施例还提供一种身份验证装置,如图6所示。
图6为本申请实施例提供的身份验证装置结构示意图,具体包括:
问题发送模块601,用于接收用户发送的身份验证请求,并向所述用户发送验证问题信息;
接收模块602,用于接收所述用户返回的验证答案信息;
验证模块603,用于根据所述验证答案信息以及针对所述用户记录的历史操作信息,确定所述验证答案信息与所述验证问题信息的匹配概率,若所述匹配概率大于设定阈值,则确定对所述用户的验证成功,若所述匹配概率不大于所述设定阈值,则确定对所述用户的验证失败。
所述问题发送模块601具体用于,在预先保存的各验证问题信息中,选择设定数量的验证问题信息发送给所述用户;
所述接收模块602具体用于,在预先保存的各验证问题信息中,选择设定数量的验证问题信息发送给所述用户;
所述问题发送模块601具体用于,针对预先保存的每个验证问题信息,根据针对所述用户记录的历史操作信息,确定预先保存的该验证问题信息的备选答案信息,确定每个备选答案信息在所述历史操作信息中的出现概率,确定各出现概率的方差,根据针对预先保存的每个验证问题信息确定的方差,按照方差从大到小的顺序,依次选择设定数量的验证问题信息发送给所述用户。
所述问题发送模块601具体用于,根据针对预先保存的该验证问题信息预设的属性,在所述历史操作信息中,确定所述属性对应的明细信息,将确定出的各明细信息作为备选答案信息。
针对预先保存的该验证问题信息预设的属性具体包括:用户购买的商品的颜色信息、品牌信息、规格信息中的一种或几种的组合。
所述验证模块603具体用于,针对发送的每个验证问题信息,根据发送的该验证问题信息的各备选答案信息的出现概率,确定与用户针对该验证问题信息返回的验证答案信息相同的备选答案信息的出现概率,确定分别针对发送的每个验证问题信息确定的出现概率的平均值,作为匹配概率。
所述验证模块603具体用于,将用户针对该验证问题信息返回的验证答案信息与该验证问题信息的各备选答案进行模糊匹配,确定与用户针对该验证问题信息返回的验证答案信息的匹配度最高的备选答案的出现概率。
具体的上述如图6所示的装置可以位于服务器上。
本申请实施例提供一种身份验证方法及装置,该方法服务器接收用户发送的身份验证请求,并向该用户发送验证问题信息,接收该用户返回的验证答案信息,根据该验证答案信息以及针对该用户记录的历史操作信息,确定该验证答案信息与该验证问题信息的匹配概率,若匹配概率大于设定阈值,则确定对该用户的验证成功,若匹配概率不大于设定阈值,则确定对该用户的验证失败。由于服务器是根据针对该用户记录的历史操作信息确定用户返回的验证答案信息是否与验证问题信息匹配,且服务器针对该用户记录的历史操作信息在动态变化,因此所述的匹配概率也在动态变化,而不是固定不变的,因此这种验证问题信息比用户自己预设的、且对应答案固定不变的安全保护问题更可靠,提高了用户账号的安全性。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。