CN109726543B - 一种应用程序的登录方法、装置、终端设备和存储介质 - Google Patents
一种应用程序的登录方法、装置、终端设备和存储介质 Download PDFInfo
- Publication number
- CN109726543B CN109726543B CN201811648914.3A CN201811648914A CN109726543B CN 109726543 B CN109726543 B CN 109726543B CN 201811648914 A CN201811648914 A CN 201811648914A CN 109726543 B CN109726543 B CN 109726543B
- Authority
- CN
- China
- Prior art keywords
- verification
- curve
- application program
- verification curve
- login
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- User Interface Of Digital Computer (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种应用程序的登录方法、装置、终端设备和存储介质。该方法包括:获取应用程序的登录界面,登录界面显示验证曲线,验证曲线用于对应用程序进行登录验证;获取用户在验证曲线上的滑动轨迹;如果滑动轨迹与验证曲线一致,则进入应用程序的主界面。本发明实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,进而极大地提升了验证曲线的安全性。
Description
技术领域
本发明实施例涉及网络技术,尤其涉及一种应用程序的登录方法、装置、终端设备和存储介质。
背景技术
随着应用程序的不断增加,为了提升应用程序使用的安全性,越来越多的应用程序都支持验证码功能。
在现有技术中,由于采用各种背景干扰、噪点像素、字体形变和字体粘连,字符位置随机以及个数不定,反色等技术而生成的图片验证码的安全性过低,为了提高验证码的安全性,提出了字符型图形验证码、滑动拼图验证码和点选汉字验证码等验证码。
虽然,上述验证码与图片验证码相比,提升了验证码的安全性。但随着打码平台的出现,上述验证码仍存在一些缺陷:字符型图形验证码只是由不同的字符构成,从而很容易被通过打码平台识别出来;由于每次生成的滑动拼图验证码中的滑块大小和形状基本上变化不大,并且,滑动拼图验证码的滑动轨迹只能在水平方向上滑动,易于模拟,从而很容易被机器识别出来;虽然点选验证码安全性防护上有一定的优势,但是用户需按照汉字顺序依次点击点选汉字验证码,由于需进行多次点击,导致用户使用体验差,并且通过点选汉字验证码只能收集用户在点选汉字验证码上的点击行为,不便于对用户行为进行分析,导致点选汉字验证码在接入打码平台之后,很容易被打码平台识别出来。
发明内容
有鉴于此,本发明提供一种应用程序的登录方法、装置、终端设备和存储介质,用于解决现有技术中验证码安全性低的问题。
第一方面,本发明实施例提供了一种应用程序的登录方法,包括:
获取应用程序的登录界面,所述登录界面显示验证曲线,所述验证曲线用于对应用程序进行登录验证;
获取用户在所述验证曲线上的滑动轨迹;
如果所述滑动轨迹与所述验证曲线一致,则进入应用程序的主界面。
进一步的,所述方法,还包括:
如果所述滑动轨迹与所述验证曲线不一致,且验证次数小于等于次数阈值,则在所述登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
进一步的,所述获取用户在所述验证曲线上的滑动轨迹,包括:
获取用户在所述验证曲线上滑动点的位置参数和时间戳;
根据所述位置参数得到所述滑动轨迹。
进一步的,所述滑动轨迹与所述验证曲线一致,包括:
所述滑动轨迹与所述验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
进一步的,在所述获取应用程序的登录界面之前,还包括:
获取背景图片;
划分所述背景图片,得到N个矩形块,所述N大于3;
选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
进一步的,在所述获取应用程序的登录界面之前,还包括:
获取用户随机绘制的平滑曲线作为验证曲线。
进一步的,在所述获取应用程序的登录界面之前,还包括:
发送验证曲线获取请求;
接收与所述验证曲线获取请求对应的验证曲线。
第二方面,本发明实施例还提供了一种应用程序的登录装置,包括:
第一获取模块,用于获取应用程序的登录界面,所述登录界面显示验证曲线,所述验证曲线用于对应用程序进行登录验证;
第二获取模块,用于获取用户在所述验证曲线上的滑动轨迹;
第一判断模块,用于如果所述滑动轨迹与所述验证曲线一致,则进入应用程序的主界面。
进一步的,所述装置,还包括:
第二判断模块,用于如果所述滑动轨迹与所述验证曲线不一致,且验证次数小于等于次数阈值,则在所述登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
进一步的,所述第二获取模块,包括:
获取单元,用于获取用户在所述验证曲线上滑动点的位置参数和时间戳;
确定单元,用于根据所述位置参数得到所述滑动轨迹。
进一步的,所述滑动轨迹与所述验证曲线一致,具体用于:
所述滑动轨迹与所述验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
进一步的,所述装置还包括:
第三获取模块,用于在所述获取应用程序的登录界面之前,获取背景图片;
划分模块,用于划分所述背景图片,得到N个矩形块,所述N大于3;
绘制模块,用于选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
进一步的,所述装置还包括:
第四获取模块,用于所述获取应用程序的登录界面之前,获取用户随机绘制的平滑曲线作为验证曲线。
进一步的,所述装置还包括:
发送模块,用于在所述获取应用程序的登录界面之前,发送验证曲线获取请求;
接收模块,用于接收与所述验证曲线获取请求对应的验证曲线。
第三方面,本发明实施例还提供了一种终端设备,包括:存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的应用程序的登录方法。
第四方面,本发明实施例还提供了一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行如第一方面所述的应用程序的登录方法。
本发明通过获取应用程序的登录界面,然后获取用户在验证曲线上的滑动轨迹,如果滑动轨迹与所述验证曲线一致,则进入应用程序的主界面。本发明实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,进而极大地提升了验证曲线的安全性。
附图说明
图1是本发明实施例提供的一种应用程序的登录方法的流程图;
图2是本发明实施例提供的一种由应用程序的登录界面切换到主界面的显示示意图;
图3是本发明实施例提供的另一种应用程序的登录方法的流程图;
图4是本发明实施例提供的一种生成验证曲线的显示示意图;
图5是本发明实施例提供的一种验证曲线请求处理的交互流程图;
图6是本发明实施例提供的一种验证码请求处理系统的结构示意图;
图7是本发明实施例提供的一种应用程序的登录装置的结构框图。;
图8是本发明实施例提供的一种终端设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
图1是本发明实施例提供的一种应用程序的登录方法的流程图,本实施例中提供的应用程序的登录方法可以由终端设备执行,该终端设备可以通过软件和/或硬件的方式实现,该终端设备可以是两个或多个物理实体构成,也可以是一个物理实体构成。本实施例中终端设备为智能手机、iPad、个人计算机(PersonalComputer,PC)等,并且,在该终端设备上可安装有应用程序。
参考图1,该应用程序的登录方法具体包括如下步骤:
S110、获取应用程序的登录界面。
其中,登录界面显示验证曲线,验证曲线用于对应用程序进行登录验证。
在此需要说明的是,应用程序既可以为安装在终端设备上的一个应用程序,也可以为一个网页链接。
当应用程序为安装在终端设备上的一个应用程序时,在获取应用程序的登录界面之前,可先获取应用程序图标的触发操作。其中,应用程序图标可以理解为在终端设备的显示界面上所显示的应用程序的图标,其具有任意性。在实施例中,对应用程序图标的具体类型实施例不作限定,其可以是任意类型的图标,比如,应用程序图标可以为微信、抢票助手等。在此需要说明的是,应用程序可安装在移动终端,比如,移动终端可以为智能手机、ipad等。当然,也可安装在PC机上。其中,当应用程序安装在移动终端上,用户可以通过触控的方式,利用手指或触控笔点击应用程序图标,以使终端设备接收到图标的触发操作。当然,当终端设备为PC机时,用户还可以通过与终端设备连接的外设设备,利用键控的方式点击应用程序图标,以使终端设备接收到应用程序图标的触发操作。其中,外设设备包括但不限定于鼠标等。在实施例中,以手指触控的方式为例进行说明。当然,当终端设备为移动终端,并且该移动终端具备触控操作方式时,用户可直接通过单击触发应用程序图标,以启动应用程序;当终端设备为PC机时,由于PC机不具备触控操作方式,则用户需通过外设设备(比如,鼠标)双击触发应用程序图标,以启动应用程序。
当应用程序为一个链接时,在获取应用程序的登录界面之前,可先输入网页链接。具体地,可借助终端设备登录网页界面,并将该网页链接输入至网页界面的网址输入框,以跳转到应用程序的登录界面。
在实施例中,验证曲线是一条示例轨迹,即显示在应用程序的登录界面上事先生成的一种移动轨迹,用来指示用户通过鼠标、手指或触控笔描摹的移动方向。可以理解为,验证曲线为一种验证码的表示形式,其不同于现有技术中的滑动拼图验证码或点选汉字验证码。该验证曲线是一条连续的平滑曲线,比如,该验证曲线可以为一个对号构成的曲线,也可以为一条S型曲线等等。在此需要说明的是,验证曲线可通过机器自动生成,也可通过人工绘制。其中,验证曲线具体生成的过程见下述内容的具体描述。
S120、获取用户在验证曲线上的滑动轨迹。
其中,滑动轨迹可以理解为仿照验证曲线的轨迹,用户通过手指在移动终端或通过鼠标在PC机上所模仿的轨迹。在实施例中,当在终端设备的显示界面上显示验证曲线时,在进入应用程序之前,首先需要进行验证,以保证对应用程序所进行的操作时人为操作,即是用户行为。具体来说,当终端设备的显示界面显示验证曲线时,用户可按照验证曲线的轨迹,通过手指在终端设备的显示界面上从验证曲线的起点滑动至验证曲线的终点,并在验证通过之后,进入应用程序。
S130、如果滑动轨迹与验证曲线一致,则进入应用程序的主界面。
在实施例中,当滑动轨迹与验证曲线一致时,表明该滑动轨迹的操作是人为操作,并且滑动轨迹与验证曲线的相似度也达到相似度阈值,则进入应用程序的主界面。其中,应用程序的主界面,可以理解为在用户输入登录账号和登录密码之后所进入的界面。
本发明实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,进而极大地提升了验证曲线的安全性。
图2是本发明实施例提供的一种由应用程序的登录界面切换到主界面的显示示意图。如图2中的左侧图所示,在触发应用程序图标之后,弹出应用程序的登录界面,在该登录界面显示有登录账号、登录密码和验证码,该验证码为一条类似于对号的连续的平滑曲线,该平滑曲线即为验证曲线。在用户通过手指从验证曲线的起点滑动至终点,并且满足预先设置条件,即可进入到如图2的右图所示的应用程序的主界面。
本实施例的技术方案,通过获取应用程序的登录界面,然后获取用户在验证曲线上的滑动轨迹,如果滑动轨迹与验证曲线一致,则进入应用程序的主界面。本实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,从而极大地提升了验证曲线的安全性。
在上述实施例的基础上,考虑到滑动轨迹与验证曲线不一致的情况,对应用程序的登录方法作进一步的具体化。图3是本发明实施例提供的另一种应用程序的登录方法的流程图。如图3所示,该应用程序的登录方法具体包括如下步骤:
S210、获取应用程序的登录界面。
其中,登录界面显示验证曲线,该验证曲线用于对应用程序进行登录验证。
S220、获取用户在验证曲线上的滑动轨迹。
S230、滑动轨迹与验证曲线是否一致,若滑动轨迹与验证曲线一致,则执行步骤S240,若滑动轨迹与验证曲线不一致,执行步骤S250。
S240、进入应用程序的主界面。
S250、验证次数是否小于等于次数阈值,若验证次数小于等于次数阈值,则执行步骤S260;若验证次数大于次数阈值,则执行步骤S270。
其中,验证次数可以理解为验证曲线在当前登录界面已经被更新的次数。次数阈值可以理解为在应用程序的登录界面上验证曲线所能被更新的总次数。在实施例中,当用户在验证曲线上输入滑动轨迹时,也会存在验证无法通过的情况。具体来说,在用户完成从验证曲线的起点到终点的滑动轨迹时,仍无法进入应用程序的主界面,则对用户在验证曲线上输入滑动轨迹的验证次数进行判断,以判断验证次数是否小于等于次数阈值,若验证次数小于等于次数阈值,则执行步骤S260;若验证次数大于次数阈值,则执行步骤S270。
S260、在登录界面更新验证曲线,并返回步骤S220,以继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面。
在实施例中,当用户在验证曲线上的滑动轨迹无法进入应用程序的主界面时,并且验证次数小于等于预先设置的次数阈值,则应用程序的登录界面上更新验证曲线,以使用户在验证曲线上重新输入滑动轨迹,直至滑动轨迹与验证曲线一致,以进入应用程序的主界面。
S270、登录失败。
在实施例中,若验证次数大于次数阈值,为了保证验证码系统的安全性,验证码系统不再为该应用程序重新分配验证曲线。
本实施例的技术方案,在上述实施例的基础上,通过获取应用程序的登录界面,然后获取用户在验证曲线上的滑动轨迹,如果滑动轨迹与验证曲线一致,则进入应用程序的主界面;如果滑动轨迹与验证曲线不一致,且验证次数小于等于次数阈值,则在登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。本实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,从而极大地提升了验证曲线的安全性。
在上述实施例的基础上,考虑到实际应用中登录界面显示验证曲线。因此,实施例中在获取应用程序的登录界面之前,还包括步骤S140-S150:
S140、发送验证曲线获取请求。
在实施例中,当用户需要查看应用程序客户端的某个页面时,首先需要进行验证,此时需触发应用程序向验证码系统发送验证曲线获取请求,该请求用于请求验证码系统为应用程序分配一个验证曲线。其中,验证码系统可以理解为一个服务器。当然,应用程序可包括客户端,也可包括服务器。可以理解为,应用程序所安装的终端设备也可以为一个服务器。
S150、接收与验证曲线获取请求对应的验证曲线。
在此需要说明的是,验证码系统可支持验证曲线。具体来说,在验证码系统接收到验证曲线获取请求之后,验证码系统可以根据验证曲线获取请求给应用程序分配一个对应的验证曲线。
在上述实施例的基础上,在实际应用中在验证码系统接收到验证曲线获取请求之后,需为应用程序分配对应的验证曲线,即需生成验证曲线。在实施例中,可通过机器自动生成,也可通过人工绘制。因此,生成验证曲线分为两种情况:
当通过机器自动生成验证曲线时,在获取应用程序的登录界面之前,还包括步骤S160-S180:
S160、获取背景图片。
其中,背景图片可以理解为绘制生成的验证曲线所嵌入的图片。在实施例中,对背景图片的具体类型不作限定,其可以为任意类型,比如,背景图片可为风景图片,也可为人物图片等等。当然,背景图片可以直接从本地数据库中获取,也可通过服务器搜索以得到背景图片。
S170、划分背景图片,得到N个矩形块。
其中,N大于3。
在实施例中,背景图片的大小是固定的,可将背景图片划分为大小固定的矩形块。在此需要说明的是,背景图片划分的形状优选为矩形块,当然,也可为其他形状,比如,正方形块,圆形块,等等,对此并不进行限定。将背景图片划分为若干个矩形块,只是为了确定验证曲线的各个关键点。比如,若验证曲线为一个对号,则该验证曲线的关键点可以为对号的起点、终点以及对号的最低点(即拐点)。
S180、选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
在实施例中,在将背景图片划分为多个矩形块之后,可随机选择其中一块作为起点,然后在其不相邻的矩形块里选择一个作为本线条的终点和下一条线条的起点,以此类推,生成至少两条线即可。图4是本发明实施例提供的一种生成验证曲线的显示示意图。如图4所示,假设背景图片为一个矩形的图片,并对该背景图片进行划分,将其划分为4*10的小块,即该背景图片被划分为40个矩形块,并且分别用A1、A2……A10,B1、B2……B10,C1、C2……C10,D1、D2……D10来表示不同的矩形块。假设从该背景图片中随机选择矩形块B2作为验证曲线的起点,然后选择与矩形块B2不相邻的矩形块D4作为本线条的终点,以及下一线条的起点,然后选择与矩形块D4不相邻的矩形块C7作为本线条的终点,以及再下一线条的起点,然后选择与矩形块C7不相邻的矩形块A9作为验证曲线的终点。其中,在选择与矩形块B2构成同一线条的终点时,不能将矩形块A1,A2,A3,B1,B3,C1,C2,C3作为该线条的终点,以此类推,生成三条线条,并通过该三条线条生成验证曲线。
当通过人工绘制,以生成验证曲线时,在获取应用程序的登录界面之前,还包括步骤S190:
S190、获取用户随机绘制的平滑曲线作为验证曲线。
在此需要说明的是,由于通过机器自动生成的验证曲线更偏向于机械化,会更容易被机器识别出来,为了提高验证曲线的不规则性,以提高机器识别的难度,可通过人工绘制得到验证曲线。具体的,通过绘图软件随机绘制一条连续的平滑曲线,该平滑曲线是一条符合人工随意滑动的轨迹,为了满足不同用户的滑动习惯,可通过绘图软件绘制大量的平滑曲线。当然,为了提高机器识别的难度,可将绘制生成的验证曲线合成在一张背景图片上,然后在验证码系统接收到验证曲线获取请求时,可将覆盖有背景图片的验证曲线发送至应用程序,并在应用程序的登录界面进行显示。
在上述实施例的基础上,对获取用户在验证曲线上的滑动轨迹作进一步的具体化,步骤S120包括步骤S1201-S1202:
S1201、获取用户在验证曲线上滑动点的位置参数和时间戳。
其中,位置参数可以理解为构成滑动轨迹的各个滑动点的坐标值;而时间戳可以理解为滑动轨迹上各个滑动点的生成时间。在实施例中,为了防止恶意的机器模拟行为所造成的安全隐患,需根据用户行为轨迹数据判断本次验证结构是否为用户正常的人为操作结果。其中,用户行为轨迹数据可以为各个滑动点的位置参数和时间戳。具体来说,当用户在验证曲线上输入滑动轨迹的过程中,终端设备收集每个滑动点的坐标值和该滑动点的生成时间,并在将滑动轨迹发送给验证码系统进行验证的同时,也将用户行为轨迹数据发送给验证码系统,以判断该行为是否为用户正常的人为操作行为。
S1202、根据位置参数得到滑动轨迹。
在实施例中,在得到每个滑动点的坐标值之后,可根据各个滑动点的坐标值生成对应的滑动轨迹。
在上述实施例的基础上,在对滑动轨迹与验证曲线进行判断时,所依据的条件可以为相似度和时间戳的差值。具体的,滑动轨迹与验证曲线一致,包括:滑动轨迹与验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
其中,相似度阈值可以理解为预先设置的滑动轨迹与验证曲线之间所要达到的相似度。在实施例中,相似度阈值可根据不同的使用场景进行不同的设置。具体来说,在安全性要求比较高的使用场景时,可设置比较严格的相似度阈值;相对注重用户体验的使用场景,可设置比较宽松的相似度阈值。其中,比较宽松的相似度阈值与比较严格的相似度阈值相比,比较宽松的相似度阈值小于比较严格的相似度阈值。
在实施例中,为了防止恶意的机器模拟行为所造成的安全隐患,需确定在验证曲线上的滑动轨迹是人为操作,可根据滑动轨迹的拖拽速度来确定是否为人为操作,即获取滑动轨迹上的起点滑动点与结束滑动点之间的时间戳的差值,并将该差值与预先设置的差值阈值进行比较分析,以确定是人为操作。
在此需要说明的是,在验证码系统对滑动轨迹进行校验时,需同时对滑动轨迹与验证曲线之间的相速度,以及用户行为进行识别,并且两者均满足预设条件,才通过滑动轨迹的检验;否则,只有其中一个检验通过,也会提示用户重试。
在上述实施例的基础上,作为一个优选实施例,对验证曲线请求处理过程进行说明。图5是本发明实施例提供的一种验证曲线请求处理的交互流程图。
如图5所示,验证码系统中可以设置一个独立的人机识别服务,由该人机识别服务来进行滑动轨迹的识别,可预先通过人机识别服务收集大量的特征数据提取特征或者完成训练样本,从而确定上述特定的位置参数和时间戳的相关信息,以保证人机识别的准确性。
如图5所示,该验证曲线请求处理的过程具体包括如下步骤:
S310、应用程序向验证码系统发送验证曲线请求。
在此需要说明的是,在应用程序获取到应用程序图标的触发操作时,会对该应用程序图标对应的应用程序进行验证,以确定该应用程序对应有验证曲线。
S320、验证码系统根据验证曲线请求分配通信标识。
其中,通信标识用于控制验证曲线请求可获取的验证曲线数量。在实施例中,对每个通信标识设置对应的可获取的验证曲线数量,是为了防止恶意获取验证曲线的行为,以保证验证码系统的安全性。
S330、验证码系统将通信标识反馈至应用程序。
S340、应用程序向验证码系统发送验证曲线获取请求。
其中,验证曲线获取请求包含有通信标识。
S350、验证码系统根据验证曲线获取请求分配验证曲线。
S360、验证码系统将验证曲线发送至应用程序。
其中,验证曲线的信息中包括验证曲线标识。在实施例中,对每个验证曲线分配一个对应的验证曲线标识,可以理解为,为该验证曲线设置一个校验失败次数。
S370、应用程序获取用户在验证曲线上的滑动轨迹。
S380、验证码系统对滑动轨迹和验证曲线标识进行校验,并根据检验结果生成对应的校验标识。
在实施例中,在应用程序将滑动轨迹发送至验证码系统的同时,也会将验证曲线标识发送给验证码系统,验证码系统可根据验证曲线标识判断该应用程序针对该验证曲线的校验失败次数是否已经超过预先设置的该验证曲线标识对应的校验失败次数,若已经超过,则验证码系统可以重新为该应用程序分配一个新的验证曲线,若没有超过,用户可继续在验证曲线上输入滑动轨迹,以使验证码系统对重新输入的滑动轨迹和验证曲线标识进行校验。当然,为了避免网络流程的消耗,可对校验失败次数设置较大的数值。
S390、验证码系统将校验标识发送至应用程序。
S3100、应用程序对校验标识进行验证。
其中,校验标识可以理解为验证码系统对验证曲线校验通过的标识。在实施例中,在验证码系统对验证曲线校验通过之后,发送一个校验标识至应用程序,并通过应用程序对该校验标识进行验证,是为了保证验证码系统发送的校验标识是该应用程序所对应的验证曲线,以防止出现验证码系统将另一个应用程序的校验表示发送至该应用程序中,造成对验证曲线的误判断,进而保证了验证曲线的校验准确性。
S3110、应用程序根据不同的校验标识执行对应的操作。
在实施例中,在用户点击应用程序图标之后,应用程序向验证码系统发送验证曲线请求,在验证码系统接收到验证曲线请求之后,首先为应用程序分配一个通信标识,该通信标识首先用于标识应用程序的本次验证曲线请求。同时,验证码系统会为该通信标识设置一个应用程序可获取的验证曲线数量。然后,在步骤S340中,应用程序发送验证曲线获取请求时,携带该通信标识。进而,在验证码系统为应用程序分配验证曲线时,会根据该通信标识判断为应用程序分配的验证曲线数量是否已经超过该通信标识预先设置的可获取的验证曲线数量,如果超过,验证码系统不再为应用程序分配验证曲线,以保证验证码系统的安全性,如果没有超过,验证码系统继续为应用程序分配验证曲线。
图6是本发明实施例提供的一种验证码请求处理系统的结构示意图。如图6所示,该验证码请求处理系统包括:接入方410、验证码系统420和外围系统430。
其中,接入方410以及外围系统420均与验证码系统430连接。接入方410可以理解为安装有应用程序的终端设备;验证码系统420可以理解为生成验证曲线,并对验证曲线上的滑动轨迹进行校验的服务器;外围系统430可以理解为对数据统计,并实时监控异常的服务器。当然,接入方410可包括客户端,也可包括服务器。
在实施例中,接入方410可进行用户登录、用户注册以及发布应用程序对应组件的参数信息。其中,组件可以为JS组件和SDK组件。具体的,可以在各个应用程序的客户端部署JS组件和SDK组件,该JS组件和SDK组件上封装了获取验证曲线以及校验的交互过程,应用程序不需要增加额外的操作,因此使得验证曲线的处理流程简单高效,并且能够减少用户与应用程序的客户端之间的交互次数。其中,应用程序的客户端可以为移动终端,也可为PC机。
在此需要说明的是,由于不同应用程序的页面风格不同,因此,应用程序在向验证码系统发送验证曲线请求之前或者在发送验证曲线请求时,可以向验证码系统发送该应用程序所需要的组件的参数信息,以使验证码系统对其进行记录。由于验证码系统所生成的验证曲线的尺寸是固定的,在验证码系统对其进行校验时,需要按照与应用程序的尺寸比例,对验证曲线的参数信息进行调整,以调整到与验证码系统相匹配的尺寸。
图7是本发明实施例提供的一种应用程序的登录装置的结构框图。本实施例的应用程序的登录装置可配置于终端设备中,参考图7,该应用程序的登录装置包括:第一获取模块510、第二获取模块520、和第一判断模块530。
其中,第一获取模块510,用于获取应用程序的登录界面,所述登录界面显示验证曲线,该验证曲线用于对应用程序进行登录验证;
第二获取模块520,用于获取用户在所述验证曲线上的滑动轨迹;
第一判断模块530,用于如果所述滑动轨迹与所述验证曲线一致,则进入应用程序的主界面;如果所述滑动轨迹与所述验证曲线不一致,且验证次数小于等于次数阈值,则在所述登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
本实施例提供的技术方案,通过获取应用程序的登录界面,然后获取用户在验证曲线上的滑动轨迹,如果滑动轨迹与验证曲线一致,则进入应用程序的主界面。本发明实施例将验证曲线作为启动应用程序的验证码,由于验证曲线自身具备的连续平滑的特点,使得用户更容易模拟验证曲线的轨迹,同时,由于验证曲线自身具备的不规则性,提高了机器识别的难度,从而使得验证曲线被机器识别的几率大幅度下降,进而极大地提升了验证曲线的安全性。
在上述实施例的基础上,该应用程序的登录装置,还包括:
第二判断模块,用于如果滑动轨迹与验证曲线不一致,且验证次数小于等于次数阈值,则在登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
在上述实施例的基础上,第二获取模块520,包括:
获取单元,用于获取用户在验证曲线上滑动点的位置参数和时间戳;
确定单元,用于根据位置参数得到滑动轨迹。
在上述实施例的基础上,滑动轨迹与验证曲线一致,具体用于:
滑动轨迹与验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
在上述实施例的基础上,该应用程序的登录装置还包括:
第三获取模块,用于在获取应用程序的登录界面之前,获取背景图片;
划分模块,用于划分背景图片,得到N个矩形块,N大于3;
绘制模块,用于选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
在上述实施例的基础上,该应用程序的登录装置还包括:
第四获取模块,用于获取应用程序的登录界面之前,获取用户随机绘制的平滑曲线作为验证曲线。
在上述实施例的基础上,该应用程序的登录装置还包括:
发送模块,用于在获取应用程序的登录界面之前,发送验证曲线获取请求;
接收模块,用于接收与验证曲线获取请求对应的验证曲线。
上述应用程序的登录装置可执行本发明任意实施例所提供的应用程序的登录方法,具备执行方法相应的功能模块和有益效果。
图8是本发明实施例提供的一种终端设备的结构示意图。参考图8,该终端设备包括:处理器610、存储器620、输入装置630以及输出装置640。该终端设备中处理器610的数量可以是一个或者多个,图8中以一个处理器610为例。该终端设备中存储器620的数量可以是一个或者多个,图8中以一个存储器620为例。该终端设备的处理器610、存储器620、输入装置630以及输出装置640可以通过总线或者其他方式连接,图8中以通过总线连接为例。实施例中,该终端设备为智能手机、iPad、PC机等。
存储器620作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明任意实施例所述的终端设备对应的程序指令/模块(例如,应用程序的登录装置中的第一获取模块510第二获取模块520、和第一判断模块530)。存储器620可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据设备的使用所创建的数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器620可进一步包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置630可用于接收输入的数字或者字符信息,以及产生与设备的用户设置以及功能控制有关的键信号输入,还可以是用于获取图像的摄像头以及获取音频数据的拾音设备。输出装置640可以包括扬声器等音频设备。需要说明的是,输入装置630和输出装置640的具体组成可以根据实际情况设定。
处理器610通过运行存储在存储器620中的软件程序、指令以及模块,从而执行设备的各种功能应用以及数据处理,即实现上述的应用程序的登录方法。
上述提供的终端设备可用于执行上述任意实施例提供的应用程序的登录方法,具备相应的功能和有益效果。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种应用程序的登录方法,包括:
获取应用程序的登录界面,该登录界面显示验证曲线,该验证曲线用于对应用程序进行登录验证;
获取用户在验证曲线上的滑动轨迹;
如果滑动轨迹与验证曲线一致,则进入应用程序的主界面。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的应用程序的登录方法操作,还可以执行本发明任意实施例所提供的应用程序的登录方法中的相关操作,且具备相应的功能和有益效果。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是机器人,个人计算机,服务器,或者网络设备等)执行本发明任意实施例所述的应用程序的登录方法。
值得注意的是,上述应用程序的登录装置中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (14)
1.一种应用程序的登录方法,其特征在于,包括:
获取应用程序的登录界面,所述登录界面显示验证曲线,所述验证曲线用于对应用程序进行登录验证;
获取用户在所述验证曲线上的滑动轨迹;
如果所述滑动轨迹与所述验证曲线一致,则进入应用程序的主界面;
在所述获取应用程序的登录界面之前,还包括:
获取背景图片;
划分所述背景图片,得到N个矩形块,其中,N大于等于5,且所述矩形块用于确定验证曲线上的关键点,所述关键点包括起点、终点以及拐点;
选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
2.根据权利要求1所述的方法,其特征在于,还包括:如果所述滑动轨迹与所述验证曲线不一致,且验证次数小于等于次数阈值,则在所述登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
3.根据权利要求1所述的方法,其特征在于,所述获取用户在所述验证曲线上的滑动轨迹,包括:
获取用户在所述验证曲线上滑动点的位置参数和时间戳;
根据所述位置参数得到所述滑动轨迹。
4.根据权利要求3所述的方法,其特征在于,所述滑动轨迹与所述验证曲线一致,包括:
所述滑动轨迹与所述验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
5.根据权利要求1所述的方法,其特征在于,在所述获取应用程序的登录界面之前,还包括:
获取用户随机绘制的平滑曲线作为验证曲线。
6.根据权利要求1所述的方法,其特征在于,在所述获取应用程序的登录界面之前,还包括:
发送验证曲线获取请求;
接收与所述验证曲线获取请求对应的验证曲线。
7.一种应用程序的登录装置,其特征在于,包括:
第一获取模块,用于获取应用程序的登录界面,所述登录界面显示验证曲线,所述验证曲线用于对应用程序进行登录验证;
第二获取模块,用于获取用户在所述验证曲线上的滑动轨迹;
第一判断模块,用于如果所述滑动轨迹与所述验证曲线一致,则进入应用程序的主界面;
所述装置还包括:
第三获取模块,用于在所述获取应用程序的登录界面之前,获取背景图片;
划分模块,用于划分所述背景图片,得到N个矩形块,其中,N大于等于5,且所述矩形块用于确定验证曲线上的关键点,所述关键点包括起点、终点以及拐点;
绘制模块,用于选取不相邻的三个或三个以上矩形块作为验证曲线上的点,绘制得到验证曲线。
8.根据权利要求7所述的装置,其特征在于,还包括:
第二判断模块,用于如果所述滑动轨迹与所述验证曲线不一致,且验证次数小于等于次数阈值,则在所述登录界面更新验证曲线,继续获取用户在验证曲线上的滑动轨迹,直至滑动轨迹与验证曲线一致,则进入应用程序的主界面,或者,直至验证次数大于次数阈值,则登录失败。
9.根据权利要求7所述的装置,其特征在于,所述第二获取模块,包括:
获取单元,用于获取用户在所述验证曲线上滑动点的位置参数和时间戳;
确定单元,用于根据所述位置参数得到所述滑动轨迹。
10.根据权利要求9所述的装置,其特征在于,所述滑动轨迹与所述验证曲线一致,具体用于:
所述滑动轨迹与所述验证曲线的相似度大于等于相似度阈值;且,起始滑动点与结束滑动点时间戳的差值小于等于差值阈值。
11.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第四获取模块,用于所述获取应用程序的登录界面之前,获取用户随机绘制的平滑曲线作为验证曲线。
12.根据权利要求7所述的装置,其特征在于,所述装置还包括:
发送模块,用于在所述获取应用程序的登录界面之前,发送验证曲线获取请求;
接收模块,用于接收与所述验证曲线获取请求对应的验证曲线。
13.一种终端设备,其特征在于,包括:存储器以及一个或多个处理器;
所述存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-6中任一所述的应用程序的登录方法。
14.一种包含计算机可执行指令的存储介质,其特征在于,所述计算机可执行指令在由计算机处理器执行时用于执行如权利要求1-6中任一所述的应用程序的登录方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811648914.3A CN109726543B (zh) | 2018-12-30 | 2018-12-30 | 一种应用程序的登录方法、装置、终端设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811648914.3A CN109726543B (zh) | 2018-12-30 | 2018-12-30 | 一种应用程序的登录方法、装置、终端设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109726543A CN109726543A (zh) | 2019-05-07 |
CN109726543B true CN109726543B (zh) | 2021-10-08 |
Family
ID=66298624
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811648914.3A Active CN109726543B (zh) | 2018-12-30 | 2018-12-30 | 一种应用程序的登录方法、装置、终端设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109726543B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110443022A (zh) * | 2019-07-05 | 2019-11-12 | 深圳壹账通智能科技有限公司 | 打码验证方法、电子装置及存储介质 |
CN110868327A (zh) * | 2019-11-28 | 2020-03-06 | 武汉极意网络科技有限公司 | 行为验证控制方法、装置、设备及存储介质 |
CN112613005B (zh) * | 2020-12-17 | 2024-08-16 | 中国工商银行股份有限公司 | 身份验证方法及装置 |
CN112785311A (zh) * | 2021-01-12 | 2021-05-11 | 北京首汽智行科技有限公司 | 一种校验请求验证方法及系统 |
CN116776313A (zh) * | 2023-06-25 | 2023-09-19 | 赛力斯汽车有限公司 | 登录界面的验证方法、装置及计算机可读存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7215776B1 (en) * | 1999-11-09 | 2007-05-08 | University Of New Hampshire | Method and apparatus for the compression and decompression of audio files using a chaotic system |
CN102509044A (zh) * | 2011-10-17 | 2012-06-20 | 镇江金钛软件有限公司 | 一种基于鼠标行为特征的密码认证方法 |
CN102890761A (zh) * | 2011-08-24 | 2013-01-23 | 北京文海思创科技有限公司 | 一种通过图形验证码验证的方法 |
CN103646199A (zh) * | 2013-12-26 | 2014-03-19 | 中国电子科技集团公司第三研究所 | 一种基于九宫格密码和人脸图像的身份验证方法 |
AU2013273768A1 (en) * | 2013-12-20 | 2015-07-09 | Canon Kabushiki Kaisha | Parallel rendering of region-based graphics representations |
CN108537028A (zh) * | 2018-04-17 | 2018-09-14 | 西安电子科技大学 | 一种计算机身份识别系统及方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103488934B (zh) * | 2013-09-24 | 2016-04-20 | 刘雪英 | 一种验证码输入方法、装置及系统 |
CN106803027A (zh) * | 2016-12-16 | 2017-06-06 | 北京奇虎科技有限公司 | 应用功能入口启动方法、装置及移动终端 |
CN107508992A (zh) * | 2017-09-12 | 2017-12-22 | 深圳天珑无线科技有限公司 | 一种移动终端及其启动应用程序快捷方式的方法和系统 |
CN107679391A (zh) * | 2017-10-11 | 2018-02-09 | 世纪龙信息网络有限责任公司 | 用于验证码的数据处理方法和系统 |
CN108287989B (zh) * | 2018-01-18 | 2021-05-28 | 北京科技大学 | 一种基于轨迹的滑动验证码人机识别方法 |
-
2018
- 2018-12-30 CN CN201811648914.3A patent/CN109726543B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7215776B1 (en) * | 1999-11-09 | 2007-05-08 | University Of New Hampshire | Method and apparatus for the compression and decompression of audio files using a chaotic system |
CN102890761A (zh) * | 2011-08-24 | 2013-01-23 | 北京文海思创科技有限公司 | 一种通过图形验证码验证的方法 |
CN102509044A (zh) * | 2011-10-17 | 2012-06-20 | 镇江金钛软件有限公司 | 一种基于鼠标行为特征的密码认证方法 |
AU2013273768A1 (en) * | 2013-12-20 | 2015-07-09 | Canon Kabushiki Kaisha | Parallel rendering of region-based graphics representations |
CN103646199A (zh) * | 2013-12-26 | 2014-03-19 | 中国电子科技集团公司第三研究所 | 一种基于九宫格密码和人脸图像的身份验证方法 |
CN108537028A (zh) * | 2018-04-17 | 2018-09-14 | 西安电子科技大学 | 一种计算机身份识别系统及方法 |
Non-Patent Citations (2)
Title |
---|
BIOMETRIC RETINAL SECURITY SYSTEM FOR USER IDENTIFICATION AND AUTHENTICATION IN SMARTPHONES;B.M.S.Rani;《International Journal of Pure and Applied Mathematics》;20180220;第119卷(第14期);第187-202页 * |
基于不规则区域分割的数字图像认证与恢复算法;杨柳;《中国优秀博硕士学位论文全文数据库(硕士)信息科技辑》;20110915;文章第2-4章 * |
Also Published As
Publication number | Publication date |
---|---|
CN109726543A (zh) | 2019-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109726543B (zh) | 一种应用程序的登录方法、装置、终端设备和存储介质 | |
CN107657156B (zh) | 基于用户操作习惯和触压面积的用户身份验证方法及装置 | |
CN111880927B (zh) | 一种资源分配方法、装置及设备 | |
CN105471808B (zh) | 生成验证码的方法以及安全验证的方法、装置及系统 | |
CN110688598B (zh) | 业务参数采集方法、装置、计算机设备和存储介质 | |
CN107682368B (zh) | 基于交互操作的验证方法、客户端、服务器及系统 | |
CN103157281B (zh) | 一种二维游戏场景显示的方法和设备 | |
CN109803152A (zh) | 违规审核方法、装置、电子设备以及存储介质 | |
CN112019820A (zh) | 界面生成方法和装置 | |
CN109600336A (zh) | 存储设备、验证码应用方法和装置 | |
CN104660555B (zh) | 一种确认处理方法、相关装置及系统 | |
CN109814801A (zh) | 应用登录方法、装置、终端及存储介质 | |
CN112487871B (zh) | 笔迹数据处理方法、装置及电子设备 | |
CN111813700B (zh) | 监控数据展示方法和装置 | |
CN112486338B (zh) | 医疗信息处理方法、装置及电子设备 | |
CN106227483B (zh) | 一种显示控制方法及移动终端 | |
CN103544150A (zh) | 为移动终端浏览器提供推荐信息的方法及系统 | |
CN107516218B (zh) | 一种基于多特征的用户身份验证方法及装置 | |
CN111090849A (zh) | 存储器、验证码实现方法、装置和设备 | |
CN112487897B (zh) | 笔迹内容评价方法、装置及电子设备 | |
CN110007842A (zh) | 网页内容选取方法及装置 | |
CN111859322A (zh) | 身份验证方法、装置和电子设备 | |
CN111953647A (zh) | 安全校验方法、装置、电子设备和存储介质 | |
CN109002293B (zh) | 一种ui元素展示方法、装置、电子设备及存储介质 | |
WO2020124454A1 (zh) | 字体切换方法及相关产品 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |