应用程序的登录方法及装置与流程

文档序号:14073272阅读:203来源:国知局

本发明属于通信技术领域,尤其涉及一种应用程序的登录方法及装置。



背景技术:

考虑到用户体验,现有应用程序的登录方式通常只使用密码验证,或者使用条件验证。在条件验证中,需要通过session来判断登录密码的输入情况,然后再根据登录密码输入情况弹出图片验证码;然而,每次登陆前重新获取session容易导致撞库攻击。若每次登录都使用图片验证码,则又会降低用户的体验感。因此,现有技术无法同时兼顾风险控制和用户体验。有必要提出一种新的技术方案,以解决上述技术问题。



技术实现要素:

鉴于此,本发明实施例提供了一种应用程序的登录方法及装置,以解决现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

第一方面,提供了一种应用程序的登录方法,所述登录方法包括:

设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系;

当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息;

根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端;

若所述移动终端为当前用户名对应的常用移动终端时,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

第二方面,提供了一种应用程序的登录装置,所述登录装置包括:

设置模块,用于设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系;

获取模块,用于当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息;

判断模块,用于根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端;

第一验证模块,用于若所述移动终端为当前用户名对应的常用移动终端时,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

与现有技术相比,本发明实施例通过设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系;当移动终端进行预设应用的登录操作时,通过所述移动终端获取当前用户名和所述移动终端的指纹信息;然后根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端,从而实现对撞库攻击的防控;若所述移动终端为当前用户名对应的常用移动终端时,则获取用户输入的登录密码,并根据所述登录密码进行登录验证;无需用户输入图片验证码,提升了用户体验感,从而解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他附图。

图1是本发明第一实施例提供的应用程序的登录方法的实现流程图;

图2是本发明第二实施例提供的应用程序的登录方法的实现流程图;

图3是本发明第三实施例提供的应用程序的登录方法的实现流程图;

图4是本发明第四实施例提供的应用程序的登录装置的组成结构图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例通过设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系;当移动终端进行预设应用的登录操作时,通过所述移动终端获取当前用户名和所述移动终端的指纹信息;然后根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端,从而实现对撞库攻击的防控;若所述移动终端为当前用户名对应的常用移动终端时,则获取用户输入的登录密码,并根据所述登录密码进行登录验证;无需用户输入图片验证码,提升了用户体验感,从而解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。本发明实施例还提供了相应的应用程序的登录装置,以下分别进行详细的说明。

图1是本发明第一实施例提供的应用程序的登录方法的实现流程。

在本发明实施例中,所述应用程序的登录方法应用于服务器上,所述服务器通过有线或者无线的方式与移动终端连接通信。其中,所述移动终端上安装有需登录验证的应用程序。参阅图1,所述应用程序的登录方法包括:

在步骤s101中,设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系。

在本发明实施例中,所述指纹信息是根据移动终端相关信息计算得到的识别码,具有唯一性,作为所述移动终端与其他移动终端进行区分的标识。可选地,可以使用app或js采集所述移动终端的相关信息,然后基于所述相关信息计算出所述唯一识别码,从而得到移动终端的指纹信息。在这里,所述相关信息包括但不限于移动终端的设备id(deviceid)、屏幕分辨率、网卡地址、flash、浏览器插件等。所述预设应用的用户名是指用户在所述预设应用注册的账号。

一般情况下,用户习惯使用自己的移动终端来登录应用程序,比如银行客户端app、腾讯qq、微信等。本发明实施例根据用户登录预设应用时所使用的移动终端的次数,筛选出用户登录所述预设应用时的常用移动终端,并记录所述常用移动终端的指纹信息。然后针对所述预设应用的用户名,设置所述用户名与常用移动终端的指纹信息之间的对应关系,存储所述对应关系。在这里,一个用户名的对应关系中可以包括一个或多个常用移动终端的指纹信息。

在步骤s102中,当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息。

当用户使用移动终端登录预设应用时,所述移动终端首先加载用户名界面,以提示当前用户输入用户名。在获取到当前用户名之后,所述移动终端将所述当前用户名及自身的指纹信息一同发送至服务器;服务器获取当前用户名和所述移动终端的指纹信息。

在步骤s103中,根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端。

在获取到当前用户名和移动终端的指纹信息之后,所述服务器从预先设置的对应关系中获取所述当前用户名的对应关系;然后判断获取到的所述对应关系中是否存在所述移动终端的指纹信息,以判断所述移动终端是否为当前用户名对应的常用移动终端,从而实现对撞库攻击的防控。

在步骤s104中,若所述移动终端为当前用户名对应的常用移动终端时,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

在本发明实施例中,当所述对应关系中存在所述移动终端的指纹信息,判定所述移动终端为当前用户名对应的常用移动终端,则控制移动终端加载登录密码输入界面,以提示当前用户输入登录密码。所述移动终端获取所述用户输入的登录密码并将其发送至服务器,服务器获取所述登录密码并根据所述登录密码进行登录验证,从而无需用户输入图片验证码,提升了用户体验感;并且通过结合预设应用的用户名与移动终端的指纹信息来筛选出常用移动终端,以对撞库攻击进行预防,有效地增强了密码验证的安全性,解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

作为本发明的另一个优选示例,当所述对应关系中不存在所述移动终端的指纹信息,判定所述移动终端为不常用移动终端。对于不常用移动终端,本发明实施例要求当前用户在所述不常用移动终端上输入验证码来进行登录操作。在图1实施例提供的应用程序的登录方法的基础上,所述登录方法还可以包括:

若所述移动终端不为当前用户名对应的常用移动终端时,通过所述移动终端输出图片验证码及其输入框,以提示用户输入验证码。

进一步地,所述应用程序的登录方法还可以包括:

获取用户输入的登录密码及验证码,根据所述登录密码及验证码进行登录验证。

在这里,撞库攻击是指不法分子通过自己的设备大批量地使用已泄露的用户名和登录密码尝试登录应用程序。本发明实施例通过预设应用的用户名和移动终端的指纹信息是否存在对应关系,来判断当前移动终端是否为所述用户名登录所述预设应用的常用移动终端。如果不是常用移动终端(即不常用移动终端)则需要当前用户输入图片验证码,由于图片验证码的识别难度较高,不法分子难以使用程序自动批量地尝试登录应用程序,从而避免了撞库攻击。在这里所述图片验证码包括但不限于数字验证码、字母验证码、字母数字混合验证码以及图像验证码。

示例性地,图2示出了本发明第二实施例提供的应用程序的登录方法的实现流程。

参阅图2,所述应用程序的登录方法包括:

在步骤s201中,设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系。

在步骤s202中,当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息。

在步骤s203中,根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端。

若所述移动终端为当前用户名对应的常用移动终端时,则执行步骤s204;否则,若所述移动终端不为当前用户名对应的常用移动终端时,则执行步骤s205。

在步骤s204中,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

在步骤s205中,通过所述移动终端输出图片验证码及其输入框,以提示用户输入验证码。

在步骤s206中,获取用户输入的登录密码及验证码,根据所述登录密码及验证码进行登录验证。

本发明实施例通过预设应用的用户名和移动终端的指纹信息来判断当前移动终端是否为所述用户名登录所述预设应用的常用移动终端,如果是常用移动终端,则直接获取登录密码来进行验证,无需用户输入验证码,提升了用户的体验感;如果不是常用移动终端则需要当前用户输入图片验证码,使得不法分子难以在自身设备上使用程序自动批量地尝试登录所述预设应用,从而避免了撞库攻击,解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

作为本发明的另一个优选示例,若当前移动终端为常用移动终端时,在获取当前用户输入的登录密码并根据所述登录密码进行登录验证之后,可以通过记录登录密码的错误次数来进行进一步的风险防控。在图1实施例提供的应用程序的登录方法的基础上,所述登录方法还可以包括:

当所述登录密码错误时,更新错误次数;

判断更新后的错误次数是否小于预设阈值;若是,则控制所述移动终端加载登录界面,以提示用户重新输入登录密码。

进一步地,所述登录方法还可以包括:

若更新后的错误次数大于或等于所述预设阈值时,锁定与所述用户名对应的用户账户。

在这里,所述预设阈值作为锁定用户名的判定标准。本发明实施例通过预设阈值来进行重输入操作。可选地,所述预设阈值可以为5次。在预设时间段内,比如24小时,所述用户名首次登录时,首先初始化所述错误次数为0,在其输入的登录密码错误时,则将错误次数加1以更新所述错误次数;然后将所述更新后的错误次数与所述预设阈值进行比对。若更新后的错误次数小于预设阈值,则控制所述常用移动终端重新加载登录界面,以提示用户重新输入登录密码。依次循环,直至所述更新后的错误次数大于或等于所述预设阈值,判定当前进行登录操作的用户可能并非是用户名本人,则锁定与所述用户名对应的用户账户,比如禁止所述用户名在24小时内登录所述应用程序,以阻止当前用户进行登录操作;从而进一步降低了在常用移动终端上通过密码验证登录的风险。可选地,当错误次数在所述预设阈值范围内时,若登录密码验证通过,则登录所述预设应用并重新初始化所述错误次数为0。在预设时间段结束后,比如24小时结束后,则重新初始化所述错误次数为0,以进行下一轮的统计。

图3示出了本发明第三实施例提供的应用程序的登录方法的实现流程。

参阅图3,所述应用程序的登录方法包括:

在步骤s301中,设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系。

在步骤s302中,当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息。

在步骤s303中,根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端。

在步骤s304中,若所述移动终端为当前用户名对应的常用移动终端时,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

在步骤s305中,当所述登录密码错误时,更新错误次数。

在步骤s306中,判断更新后的错误次数是否小于预设阈值。

若是,则执行步骤s307,否则,当更新后的错误次数大于或等于预设阈值,执行步骤s308。

在步骤s307中,控制所述移动终端加载登录界面,以提示用户重新输入登录密码。

在步骤s308中,锁定与所述用户名对应的用户账户。

本发明实施例通过移动终端的指纹信息来进行撞库攻击的防控,在预设应用的用户名与移动终端的指纹信息对应,即所述移动终端为常用移动终端时,直接获取登录密码进行登录验证,无需用户输入验证码,进而提升了用户的体验感。若所述登录密码错误,则通过比对错误次数和预设阈值来决定进行重输入还是锁定所述用户名,进一步降低了通过密码验证登录的风险,增强了密码验证的安全性,解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

图4示出了本发明第四实施例提供的应用程序的登录装置的组成结构,为了便于说明,仅示出了与本发明实施例相关的部分。

在本发明实施例中,所述应用程序的登录装置用于实现上述图1至图3任一实施例中所述的应用程序的登录方法,可以是内置于服务器的软件单元、硬件单元或者软硬件结合的单元。所述服务器通过有线或者无线的方式与移动终端连接通信。其中,所述移动终端上安装有需登录验证的应用程序。

参阅图4,所述应用程序的登录装置包括:

设置模块41,用于设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系。

获取模块42,用于当移动终端进行预设应用的登录操作时,获取当前用户名和所述移动终端的指纹信息。

判断模块43,用于根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端。

第一验证模块44,用于若所述移动终端为当前用户名对应的常用移动终端时,获取用户输入的登录密码,并根据所述登录密码进行登录验证。

在本发明实施例中,所述指纹信息是根据移动终端相关信息计算得到的识别码,具有唯一性,作为与其他移动终端进行区分的标识。可选地,可以使用app或js采集所述移动终端的相关信息,然后基于所述相关信息计算出所述唯一识别码,从而得到移动终端的指纹信息,在这里,所述相关信息包括但不限于移动终端的设备id(deviceid)、屏幕分辨率、网卡地址、flash、浏览器插件等。所述预设应用的用户名是指用户在所述预设应用注册的账号。

本发明实施例根据用户登录预设应用时所使用的移动终端的次数,筛选出用户登录所述预设应用时的常用用户移动终端,并记录所述常用移动终端的指纹信息。然后针对所述预设应用的用户名,设置所述用户名与常用移动终端的指纹信息之间的对应关系,存储所述对应关系。在这里,一个用户名的对应关系中可以包括一个或多个常用移动终端的指纹信息。

在进行预设应用的登录操作时,所述服务器从预先设置的对应关系中获取当前用户名的对应关系;然后判断获取到的所述对应关系中是否存在所述移动终端的指纹信息,以判断所述移动终端是否为当前用户名对应的常用移动终端,从而实现对撞库攻击的防控。当所述对应关系中存在所述移动终端的指纹信息,则判定当前移动终端为常用移动终端,获取用户输入的登录密码进行登录验证;从而无需用户输入图片验证码,提升了用户体验感,且增强了密码验证的安全性,解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

作为本发明的另一个优选示例,所述登录装置还可以包括:

提示模块45,用于若所述移动终端不为当前用户名对应的常用移动终端时,通过所述移动终端输出图片验证码及其输入框,以提示用户输入验证码。

进一步地,所述登录装置还可以包括:

第二验证模块46,用于获取用户输入的登录密码及验证码,根据所述登录密码及验证码进行登录验证。

在这里,本发明实施例通过判断用户名的对应关系预中是否存在所述移动终端来确定当前移动终端是否为所述用户名登录所述预设应用的常用移动终端。如果不是常用移动终端则需要当前用户输入图片验证码,由于图片验证码的识别难度较高,不法分子难以使用程序自动批量地尝试登录应用程序,从而避免了撞库攻击。

作为本发明的另一个优选示例,所述登录装置还可以包括:

更新模块47,用于在根据所述登录密码进行登录验证之后,当所述登录密码错误时,更新错误次数。

判断模块48,用于判断更新后的错误次数是否小于预设阈值。

加载模块49,用于若更新后的错误次数小于所述预设阈值时,则控制所述移动终端加载登录界面,以提示用户重新输入登录密码。

进一步地,所述登录装置还包括:

锁定模块410,用于若更新后的错误次数大于或等于所述预设阈值时,锁定与所述用户名对应的用户账户。

在这里,本发明实施例通过预设阈值来进行重输入操作;若所述更新后的错误次数大于或等于所述预设阈值,则判定当前进行登录操作的用户可能并非是用户名本人,锁定与所述用户名对应的用户账号,比如禁止所述用户名在24小时内登录所述应用程序,以阻止当前用户进行登录操作,从而进一步降低了在常用移动终端上通过密码验证登录的风险,增强了密码验证的安全性。

需要说明的是,本发明实施例中的装置可以用于实现上述方法实施例中的全部技术方案,其各个功能模块的功能可以根据上述方法实施例中的方法具体实现,其具体实现过程可参照上述实例中的相关描述,此处不再赘述。

综上所述,本发明实施例通过设置预设应用的用户名与常用移动终端的指纹信息之间的对应关系;当移动终端进行预设应用的登录操作时,通过所述移动终端获取当前用户名和所述移动终端的指纹信息;然后根据所述对应关系、移动终端的指纹信息,判断所述移动终端是否为当前用户名对应的常用移动终端,从而实现对撞库攻击的防控;若所述移动终端为当前用户名对应的常用移动终端时,则获取用户输入的登录密码,并根据所述登录密码进行登录验证;无需用户输入图片验证码,提升了用户体验感,从而解决了现有的应用程序登录方式无法同时兼顾风险控制和用户体验的问题。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的应用程序的登录方法及装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块、单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元、模块单独物理存在,也可以两个或两个以上单元、模块集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。

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