用于验证用户身份的方法及装置与流程

文档序号:11842708阅读:255来源:国知局
用于验证用户身份的方法及装置与流程

本发明涉及安全验证技术领域,尤其涉及一种用于验证用户身份的方法及装置。



背景技术:

随着互联网技术的迅速发展,网络安全方面存在着越来越多的隐患,例如,由于很多网民喜欢用相同的账号密码注册多个网站,甚至作为支付平台账号,所以黑客通过直接入侵网站服务器窃取用户账号密码等数据,并利用所窃取的账号密码通刷大量网站(俗称刷库),给用户利益带来损失。还有一种恶意注册行为,用以实现炒信(利用各种途径和手法进行涉嫌虚假交易、炒作信用等行为)、恶意评价或发布非法信息等目的。该刷库及恶意注册行为均是通过特定的软件实现的一种自动登录或注册的行为。

为避免所述的刷库及恶意注册等行为的发生,一种已有技术提出了图片验证方法,在验证页面利用图片展示验证码,在进行身份验证时除需要输入账号和密码外,还需输入所述图片中的验证码才可通过验证,此种方法的不足在于:非法软件很容易使用图片识别技术识别出图片中的验证码,从而通过验证,因此该方法无法有效避免刷库及恶意注册等行为的发生。

另一种已有技术通过将验证码以手机短消息的形式发送给用户,该方式很容易被使用猫池(就是将相当数量的Modem使用特殊的拨号请求接入设备连接在一起,可以同时接受多个用户拨号连接的设备)进行恶意注册的用户获取验证码,并通过相关软件发送该验证码到验证窗口,从而通过验证,该方法虽然可达到阻止刷库的目的,但无法有效避免恶意注册行为的发生。

因此,需要一种技术可以有效避免刷库及恶意注册等行为的发生,以 保证网络环境的安全可靠。



技术实现要素:

本发明解决的技术问题之一是提供一种用于验证用户身份的方法及装置,可有效避免刷库及恶意注册等行为的发生,以保证网络环境的安全可靠。

根据本发明一方面的一个实施例,提供了一种用于验证用户身份的方法,包括:

响应于接收到用户的身份验证触发请求,通过第一途径提供第一验证因子给所述用户;

响应于接收到用户获取第二验证因子的请求,通过区别于所述第一途径的第二途径提供第二验证因子给所述用户;

接收用户输入的验证码;

通过将所述用户输入的验证码与基于所述第一验证因子和所述第二验证因子产生的标准结合结果进行比对来验证用户身份。

可选地,所述第一验证因子是包含变量的验证表达式,所述第二验证因子是所述变量的赋值。

可选地,所述第二验证因子是包含变量的验证表达式,所述第一验证因子是所述变量的赋值。

可选地,所述第二验证因子为多个第二验证因子,所述通过区别于所述第一途径的第二途径提供第二验证因子给所述用户包括:

为多个第二验证因子中的不同第二验证因子选择区别于所述第一途径的、不同的第二途径提供给所述用户。

可选地,所述验证表达式是数学表达式或逻辑表达式。

可选地,所述结合结果包括:

数学运算产生的结果或逻辑运算产生的结果。

可选地,所述通过第一途径提供第一验证因子给所述用户包括:

通过验证页面显示所述第一验证因子给所述用户。

可选地,所述通过验证页面显示所述第一验证因子包括:

通过验证页面显示变形和/或加扰后的第一验证因子。

可选地,所述第二途径包括以下中的至少之一:

发送应用上的即时消息的方式、发送短消息的方式、发送电子邮件的方式。

可选地,所述通过区别于所述第一途径的第二途径提供第二验证因子给所述用户的步骤是响应于接收到用户获取第二验证因子的请求进行的。

根据本发明另一方面的一个实施例,提供了一种用于验证用户身份的装置,包括:

第一验证因子提供单元,用于响应于接收到用户的身份验证触发请求,通过第一途径提供第一验证因子给所述用户;

第二验证因子提供单元,用于响应于接收到用户获取第二验证因子的请求,通过区别于所述第一途径的第二途径提供第二验证因子给所述用户;

接收单元,用于接收用户输入的验证码;

验证单元,用于通过将所述用户输入的验证码与基于所述第一验证因子和所述第二验证因子产生的标准结合结果进行比对来验证用户身份。

可选地,所述第一验证因子是包含变量的验证表达式,所述第二验证因子是所述变量的赋值。

可选地,所述第二验证因子是包含变量的验证表达式,所述第一验证因子是所述变量的赋值。

可选地,所述第二验证因子为多个第二验证因子,所述第二验证因子提供单元用于:

为多个第二验证因子中的不同第二验证因子选择区别于所述第一途径的、不同的第二途径提供给所述用户。

可选地,所述验证表达式是数学表达式或逻辑表达式。

可选地,所述结合结果包括:

数学运算产生的结果或逻辑运算产生的结果。

可选地,所述第一验证因子提供单元通过第一途径提供第一验证因子给所述用户包括:

通过验证页面显示所述第一验证因子给所述用户。

可选地,所述通过验证页面显示所述第一验证因子包括:

通过验证页面显示变形和/或加扰后的第一验证因子。

可选地,所述第二途径包括以下中的至少之一:

发送应用上的即时消息的方式、发送短消息的方式、发送电子邮件的方式。

可选地,所述第二验证因子提供单元是响应于接收到用户获取第二验证因子的请求,通过区别于所述第一途径的第二途径提供第二验证因子给所述用户。

本实施例中将验证码拆分为第一验证因子和第二验证因子,并通过不同途径将第一验证因子和第二验证因子提供给用户,且利用基于所述第一验证因子和第二验证因子产生的标准结合结果来验证用户身份,降低了验证码被窃取的风险,可有效防止刷库及恶意注册等行为的发生。

本领域普通技术人员将了解,虽然下面的详细说明将参考图示实施例、附图进行,但本发明并不仅限于这些实施例。而是,本发明的范围是广泛的,且意在仅通过后附的权利要求限定本发明的范围。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:

图1是根据本发明一个实施例的用于验证用户身份的方法的流程图。

图2是根据本发明一个实施例的登录场景验证用户身份的方法的流程图。

图3是根据本发明一个实施例的用于验证用户身份的装置的结构示意图。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施 例被描述成作为流程图描绘的处理或方法。虽然流程图将各项操作描述成顺序的处理,但是其中的许多操作可以被并行地、并发地或者同时实施。此外,各项操作的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。

所述计算机设备包括用户设备与网络设备。其中,所述用户设备包括但不限于电脑、智能手机、PDA等;所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Computing)的由大量计算机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。其中,所述计算机设备可单独运行来实现本发明,也可接入网络并通过与网络中的其他计算机设备的交互操作来实现本发明。其中,所述计算机设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。

需要说明的是,所述用户设备、网络设备和网络等仅为举例,其他现有的或今后可能出现的计算机设备或网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。

后面所讨论的方法(其中一些通过流程图示出)可以通过硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实施。当用软件、固件、中间件或微代码来实施时,用以实施必要任务的程序代码或代码段可以被存储在机器或计算机可读介质(比如存储介质)中。(一个或多个)处理器可以实施必要的任务。

这里所公开的具体结构和功能细节仅仅是代表性的,并且是用于描述本发明的示例性实施例的目的。但是本发明可以通过许多替换形式来具体实现,并且不应当被解释成仅仅受限于这里所阐述的实施例。

应当理解的是,虽然在这里可能使用了术语“第一”、“第二”等等来描述各个单元,但是这些单元不应当受这些术语限制。使用这些术语仅仅是为了将一个单元与另一个单元进行区分。举例来说,在不背离示例性实施例的范围的情况下,第一单元可以被称为第二单元,并且类似地第二单元可以被称为第一单元。这里所使用的术语“和/或”包括其中一个或更多所列 出的相关联项目的任意和所有组合。

应当理解的是,当一个单元被称为“连接”或“耦合”到另一单元时,其可以直接连接或耦合到所述另一单元,或者可以存在中间单元。与此相对,当一个单元被称为“直接连接”或“直接耦合”到另一单元时,则不存在中间单元。应当按照类似的方式来解释被用于描述单元之间的关系的其他词语(例如“处于...之间”相比于“直接处于...之间”,“与...邻近”相比于“与...直接邻近”等等)。

这里所使用的术语仅仅是为了描述具体实施例而不意图限制示例性实施例。除非上下文明确地另有所指,否则这里所使用的单数形式“一个”、“一项”还意图包括复数。还应当理解的是,这里所使用的术语“包括”和/或“包含”规定所陈述的特征、整数、步骤、操作、单元和/或组件的存在,而不排除存在或添加一个或更多其他特征、整数、步骤、操作、单元、组件和/或其组合。

还应当提到的是,在一些替换实现方式中,所提到的功能/动作可以按照不同于附图中标示的顺序发生。举例来说,取决于所涉及的功能/动作,相继示出的两幅图实际上可以基本上同时执行或者有时可以按照相反的顺序来执行。

本发明人发现,现有技术由于将整个验证码通过同一途径提供给单一设备,很容易被非法者窃取或利用,从而进行非法行为。本申请实施例为避免该问题,采用将验证码分离的思想,将单一途径可获取的验证码进行拆分,使用固定信息加动态信息组合的方式完成验证,以有效避免刷库及恶意注册等行为的发生,并降低验证码被窃取的风险。

下面结合附图对本发明的技术方案作进一步详细描述。

图1是根据本发明一个实施例的用于验证用户身份的方法的流程图,该方法可用于登录或注册场景中对用户身份进行验证。该方法主要包括如下步骤:

S10、响应于接收到用户的身份验证触发请求,通过第一途径提供第一验证因子给所述用户;

S11、响应于接收到用户获取第二验证因子的请求,通过区别于所述 第一途径的第二途径提供第二验证因子给所述用户;

S12、接收用户输入的验证码;

S13、通过将所述用户输入的验证码与基于所述第一验证因子和所述第二验证因子产生的标准结合结果进行比对来验证用户身份。

下面对上述各步骤做进一步详细介绍。

首先对第一验证因子及第二验证因子进行说明。其中一种实施例所述的第一验证因子可以是包含变量的验证表达式,所述第二验证因子可以是所述变量的赋值。另一实施例所述第二验证因子可以是包含变量的验证表达式,所述第一验证因子可以是所述变量的赋值。所述验证表达式中至少包含一个变量。所述变量可以由任意符号表示,如图形符号、字母或其他字符等等。所述验证表达式可以是数学表达式或逻辑表达式,或者也可以是字符串。

针对数学表达式,所述变量可以用来表示数学表达式中的数学运算符号(包括括号等数字分组符号)和数字中的至少一个。

例如,所述验证表达式可以为:24×a=?,该验证表达式中包括:数字、数学运算符号和用字母表示的变量。

所述验证表达式还可以为:□+△=?,其中,该验证表达式中包括:用不同图形表示的变量和数学运算符号。

所述验证表达式还可以为:x□y=?,该验证表达式中包括:用字母和图形表示的变量。

所述验证表达式还可以为:24×ax+yb=?,其中a、b可分别表示左括号和右括号,x、y可分别表示数字,也就是该验证表达式包括用字母表示的变量,且该变量的赋值包括数字和数字分组符号。

所述的逻辑表达式可以为包含逻辑运算符号的表达式,例如,10>x是否正确等等;也可以为使用文字描述的表达式,例如,属牛后的第a个属相是什么等等。

所述验证表达式若为字符串,其可以是英文单词,例如,b?□d,,对应的变量的赋值可以为?=i,□=r,当然也可以为其他形式的字符串。

上述所列举的第一验证因子和第二验证因子的表达形式仅为发明人 所列举的几种实例,本申请并不局限于此。

由于本实施例所述的方法可用于登录或注册场景,则步骤S10中所述的身份验证触发请求包括但不限于:用户发送的进入注册页面的请求,或用户发送的进入登录页面的请求等等。

其中,通过第一途径提供第一验证因子给所述用户包括:通过验证页面显示所述第一验证因子给所述用户,例如,可以以图片形式在验证页面显示所述第一验证因子。其中,针对用户发送的进入注册页面的请求,则对应的验证页面即为注册页面;针对用户发送的进入登录页面的请求,对应的验证页面即为登录页面。当然,所述第一途径还包括以下至少一种:发送电子邮件、发送短消息、发送应用上的即时消息等等。

可选地,可以对该第一验证因子进行变形和/或加扰,则在验证页面中显示变形和/或加扰后的第一验证因子。所述变形包括但不限于:扭曲、旋转、拉伸、压缩等等处理。所述加扰包括但不限于:增加背景、干扰线等等。

可以理解的是,还可以通过音频展现所述第一验证因子。

步骤S11中所述的第二途径包括如下至少一种:

发送应用上的即时消息的方式、发送短消息的方式、发送电子邮件的方式。

本申请实施例可在用户注册时由用户选择所述第二途径,例如,若用户选择发送短消息的方式,则用户提供接收短消息的手机号;若用户选择发送应用上的即时消息的方式,则用户提供接收即时消息的账号;若用户选择发送电子邮件的方式,则用户提供接收电子邮件的地址等等。

需要说明的是,发送第二验证因子的第二途径是区别于发送第一验证因子的第一途径,也就是,若第一途径为发送短消息,则第二途径为区别于发送短消息的其他途径,如发送电子邮件,或发送应用上的即时消息。且第二算法因子同样可以以图形或音频形式展现给用户。步骤S11中,用户发送获取第二验证因子的请求的方法可以为:在验证页面中提供获取第二验证因子的按钮,用户通过点击该按钮发送获取第二验证因子的请求。

针对步骤S10及S11还需要说明的是,其中一种实施例,所述第一验 证因子及第二验证因子可以是响应于用户的身份验证触发请求随机产生的,并基于随机产生的第一验证因子及第二验证因子产生所述验证表达式的标准结合结果,例如,响应于用户的身份验证触发请求,为用户随机生成的第一验证因子为一个包含变量的验证表达式为:x-y=?,此验证表达式中用字母x和y代表两个变量。随机生成的第二验证因子为两变量的赋值,x=45,y=20,以及根据两变量的赋值确定该验证表达式的标准数学运算结果为25(即表达式45-20的结果)。将第二验证因子保存,在接收到用户获取第二验证因子的请求情况下通过第二途径发送给用户。并将所述标准结合结果保存,具体的,可保存该标准结合结果与该用户标识的对应关系,例如,用户ID<标准结合结果=25>。

另一种实施例,所述第一验证因子是响应于用户的身份验证触发请求随机产生。所述第二验证因子是响应于接收到用户获取第二验证因子的请求随机产生。并在随机产生第二验证因子后,基于随机产生的第一验证因子及第二验证因子产生所述验证表达式的标准结合结果,并将所述标准结合结果保存,具体的,可保存该标准结合结果与该用户标识的对应关系。

前面所述的标准结合结果是将所述变量的赋值代入所述包含变量的验证表达式后得到的结果。例如,将变量代入数学表达式或逻辑表达式或得到的结果,或将变量代入字符串后的结果。

步骤S12可通过在验证页面提供验证码输入窗口接收用户输入的验证码。

步骤S13用于验证用户输入的验证码是否正确,从而验证用户身份的合法性,具体的,可以以该用户标识为索引,查找基于所述第一验证因子和所述第二验证因子产生的标准结合结果,通过将所述用户输入的验证码与所述标准结合结果进行比对,若一致,则验证通过,表示该用户身份合法;若不一致,则验证失败,表示该用户有可能为非法用户。

可以理解的是,本申请实施例所述的验证因子并不局限于两个,上面实施例中包含第一验证因子和第二验证因子仅为一种举例。实际应用中可以包含多个验证因子,也可理解为包含多个第二验证因子,则通过区别于所述第一途径的第二途径提供第二验证因子给所述用户时,为多个第二验 证因子中的不同第二验证因子选择区别于所述第一途径的、不同的第二途径提供给所述用户。此时,所述的标准结合结果为所有验证因子结合的结果。

本实施例中将验证码拆分为第一验证因子和第二验证因子,并通过不同途径将第一验证因子和第二验证因子提供给用户,且利用基于所述第一验证因子和第二验证因子产生的标准结合结果来验证用户身份,有效降低了验证码被窃取的风险。对于使用猫池进行恶意注册的行为,其即使获取其中一个验证因子,也无法获得正确的验证码,因此,可有效防止刷库及恶意注册等行为的发生。

为便于理解上述技术方案,下面以登录场景对用户身份进行验证为例进行说明。如图2中所示为该方法具体流程图,该方法主要包括如下步骤:

S20响应于接收到用户的进入登录页面的请求,提供显示有验证表达式的登录页面。

具体的,接收到用户的进入登录页面的请求后,为该用户随机产生一验证表达式为:12×a=?,该验证表达式中包含一个变量a。可同时确定该变量a的赋值,a=3;并将变量的赋值代入所述验证表达式中以确定该验证表达式的标准数学运算结果为:36(即12×3=36)。将随机产生的该验证表达式以图片形式显示在登录页面中,并保存a的赋值以及基于该赋值计算的该验证表达式的标准运算结果,例如,保存该a的赋值与该用户的用户标识的对应关系以及所述标准运算结果与该用户的用户标识的对应关系。

S21、响应于接收到用户获取变量赋值的请求,将变量的赋值通过短消息发送给用户。

例如,在登陆页面中提供一获取变量赋值的按钮,在识别到用户点击该按钮时,则即接收到用户获取变量赋值的请求,则以该用户的用户标识为索引查找保存的变量的赋值为a=3,同时获取到该用户选择的第二途径为发送短消息,以及接收短消息到手机号,则向该用户提供的手机号发送短消息以提供变量a的赋值。

S22、接收用户输入的验证码;

通过在登录页面提供一验证码输入框来接收用户输入的验证码。

S23、验证用户输入的验证码与基于所述验证表达式以及表达式中变量的赋值确定的标准运算结果是否一致,来验证用户身份。

具体的,以该用户的用户标识为索引,查找基于所述验证表达式以及a的赋值确定的标准运算结果,得到该标准运算结果为36,通过比对用户输入的验证码是否为36来确定用户身份验证是否成功。

本申请实施例还提供一种与上述用于验证用户身份的方法对应的装置,所述装置用于实现注册或登录时对用户身份的验证。如图3中所示为所述装置的结构示意图,该装置主要包括:第一验证因子提供单元30、第二验证因子提供单元31、接收单元32及验证单元33。

其中的第一验证因子提供单元30,主要用于响应于接收到用户的身份验证触发请求,通过第一途径提供第一验证因子给所述用户。

第二验证因子提供单元31,主要用于响应于接收到用户获取第二验证因子的请求,通过区别于所述第一途径的第二途径提供第二验证因子给所述用户。

接收单元32,主要用于接收用户输入的验证码。

验证单元33,主要用于通过将所述用户输入的验证码与基于所述第一验证因子和所述第二验证因子产生的标准结合结果进行比对来验证用户身份。

下面对上述各单元做进一步详细介绍。

首先对第一验证因子及第二验证因子进行下说明。其中一种实施例所述的第一验证因子可以是包含变量的验证表达式,所述第二验证因子可以是所述变量的赋值。另一实施例所述第二验证因子可以是包含变量的验证表达式,所述第一验证因子可以是所述变量的赋值。所述验证表达式中至少包含一个变量。所述变量可以由任意符号表示,如图形符号、字母或其他字符等等。所述验证表达式可以是数学表达式或逻辑表达式,或者也可以是字符串。

针对数学表达式,所述变量可以用来表示数学表达式中的数学运算符 号(包括括号等数字分组符号)和数字中的至少一个。

例如,所述验证表达式可以为:24×a=?,该验证表达式中包括:数字、数学运算符号和用字母表示的变量。

所述验证表达式还可以为:□+△=??,其中,该验证表达式中包括:用不同图形表示的变量和数学运算符号。

所述验证表达式还可以为:x□y=?,该验证表达式中包括:用字母和图形表示的变量。

所述验证表达式还可以为:24×ax+yb=?,其中a、b可分别表示左括号和右括号,x、y可分别表示数字,也就是该验证表达式包括用字母表示的变量,且该变量的赋值包括数字和数字分组符号。

所述的逻辑表达式可以为包含逻辑运算符号的表达式,例如,10>x是否正确等等;也可以为使用文字描述的表达式,例如,属牛后的第a个属相是什么等等。

所述验证表达式若为字符串,其可以是英文单词,例如,b?□d,对应的变量的赋值可以为?=i,□=r,当然也可以为其他形式的字符串。

上述所列举的第一验证因子和第二验证因子的表达形式仅为发明人所列举的几种实例,本申请并不局限于此。

所述的身份验证触发请求包括但不限于:用户发送的进入注册页面的请求,或用户发送的进入登录页面的请求等等。

其中,第一验证因子提供单元30通过第一途径提供第一验证因子给所述用户包括:通过验证页面显示所述第一验证因子给所述用户,例如,可以以图片形式在验证页面显示所述第一验证因子。其中,针对用户发送的进入注册页面的请求,则对应的验证页面即为注册页面;针对用户发送的进入登录页面的请求,对应的验证页面即为登录页面。当然,所述第一途径还包括以下至少一种:发送电子邮件、发送短消息、发送应用上的即时消息等等。

可选地,可以对该第一验证因子进行变形和/或加扰,则第一验证因子提供单元30在验证页面中显示变形和/或加扰后的第一验证因子。所述变形包括但不限于:扭曲、旋转、拉伸、压缩等等处理。所述加扰包括但不 限于:增加背景、干扰线等等。可以理解的是,还可以通过音频展现所述第一验证因子。

所述第二验证因子提供单元31是响应于接收到用户获取第二验证因子的请求,通过区别于第一途径的第二途径提供第二验证因子给用户,所述的第二途径包括如下至少一种:

发送应用上的即时消息的方式、发送短消息的方式、发送电子邮件的方式。

本申请实施例可在用户注册时由用户选择所述第二途径,例如,若用户选择发送短消息的方式,则用户提供接收短消息的手机号;若用户选择发送应用上的即时消息的方式,则用户提供接收即时消息的账号;若用户选择发送电子邮件的方式,则用户提供接收电子邮件的地址等等。需要说明的是,发送第二验证因子的第二途径是区别于发送第一验证因子的第一途径,也就是,若第一途径为发送短消息,则第二途径为区别于发送短消息的其他途径,如发送电子邮件,或发送应用上的即时消息。且第二算法因子同样可以以图形或音频形式展现给用户。

具体实施中可以在验证页面中提供获取第二验证因子的按钮,用户通过点击该按钮发送获取第二验证因子的请求。

对于第一验证因子和第二验证因子的产生时机包括如下任一种情况:

其中一种实施例,所述第一验证因子及第二验证因子可以是响应于用户的身份验证触发请求随机产生的,并基于随机产生的第一验证因子及第二验证因子产生所述验证表达式的标准结合结果,例如,响应于用户的身份验证触发请求,为用户随机生成的第一验证因子为一个包含变量的验证表达式为:x-y=?,此验证表达式中用字母x和y代表两个变量。随机生成的第二验证因子为两变量的赋值,x=45,y=20,以及根据两变量的赋值确定该验证表达式的标准数学运算结果为25(即表达式45-20的结果)。将第一验证因子通过第一途径提供给用户,以及将第二验证因子保存,在接收到用户的第二验证因子获取请求情况下通过第二途径发送给用户,并将所述标准结合结果保存,具体的,可保存该标准结合结果与该用户标识的对应关系,例如,用户ID<标准结合结果=25>。

另一种实施例,所述第一验证因子是响应于用户的身份验证触发请求随机产生。所述第二验证因子是响应于接收到第二验证因子获取请求随机产生。并在随机产生第二验证因子后,基于随机产生的第一验证因子及第二验证因子产生所述验证表达式的标准结合结果,并将所述标准结合结果保存,具体的,可保存该标准结合结果与该用户标识的对应关系。

前面所述的标准结合结果是将所述变量的赋值代入所述包含变量的验证表达式得到的结果。例如,将变量代入数学表达式或逻辑表达式或得到的结果,或将变量代入字符串后的结果。

接收单元32可通过在验证页面提供验证码输入窗口接收用户输入的验证码。

验证单元33用于验证用户输入的验证码是否正确,从而验证用户身份的合法性,具体的,可以以该用户标识为索引,查找基于所述第一验证因子和所述第二验证因子产生的标准结合结果,通过将所述用户输入的验证码与所述标准结合结果进行比对,若一致,则验证通过,表示该用户身份合法;若不一致,则验证失败,表示该用户有可能为非法用户。

可以理解的是,本申请实施例所述的验证因子并不局限于两个,上面实施例中包含第一验证因子和第二验证因子仅为一种举例。实际应用中可以包含多个验证因子,也可理解为包含多个第二验证因子,则通过区别于所述第一途径的第二途径提供第二验证因子给所述用户时,为多个第二验证因子中的不同第二验证因子选择区别于所述第一途径的、不同的第二途径提供给所述用户。此时,所述的标准结合结果为所有验证因子结合的结果。

本实施例中将验证码拆分为第一验证因子和第二验证因子,并通过不同途径将第一验证因子和第二验证因子提供给用户,且利用基于所述第一验证因子和第二验证因子产生的标准结合结果来验证用户身份,有效降低了验证码被窃取的风险,可有效防止刷库及恶意注册等行为的发生。

需要注意的是,本发明可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本发明的软件程序可以通过处理器执行 以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。

对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1