存储器、验证码实现方法、装置和设备与流程

文档序号:21409275发布日期:2020-07-07 14:44阅读:164来源:国知局
存储器、验证码实现方法、装置和设备与流程

本发明涉及一种互联网信息安全领域,特别是涉及存储器、验证码实现方法、装置和设备。



背景技术:

验证码,又称全自动区分计算机和人类的图灵测试(completelyautomatedpublicturingtesttotellcomputersandhumansapart,captcha),是一种区分用户是计算机还是人的公共全自动程序。

通过验证码技术对用户身份进行验证,可以滤除恶意破解密码、刷票和论坛灌水等恶意行为。

验证码作为人机识别的一项重要技术和应用,经历了多种形式和技术革新;比较普及的形式包括早期的字符识别验证码,以及,出现了采集鼠标拖动滑块时所产生的滑动轨迹来验证的方法。这种方法突破了以往静态图片验证码的方案,通过建立行为模型来判定对应的访问轨迹是属于真是用户还是机器脚本。这种验证形式的轨迹采集,是从滑块起始点位置到目标位置,大致是一条直线轨迹,整体的像素长度在220px左右。假设每一个像素点采集一个轨迹点,这样最多也就需要采集220个轨迹点。

发明人经过研究发现,现有技术中至少还存在以下缺陷:

随着计算机的图形识别技术和处理能力的不断发展,从而导致上述现有技术中的验证码实现方式被计算机破解的几率较高,从而造成用户身份认证的安全隐患。

公开于该背景技术部分的信息仅仅旨在增加对本发明的总体背景的理解,而不应当被视为承认或以任何形式暗示该信息构成已为本领域一般技术人员所公知的现有技术。



技术实现要素:

本发明的目的在于提供了存储器、验证码实现方法、装置和设备,从而克服在进行验证码时被计算机破解的几率较高的缺点。

为实现上述目的,根据本发明的第一方面,本发明提供了一种验证码实现方法,包括步骤:

在验证操作区加载包括有预设路径和可拖动滑块的验证图片;

在验证提示区生成包括提示用户对于可拖动滑块的操控方式的验证说明;

在用户操控所述可拖动滑块过程中,根据预设算法生成提示标识的加载时间和加载位置;所述提示标识用于在用户操控所述可拖动滑块过程中,实时的提示对于所述可拖动滑块的操控动作;

根据所述提示标识的加载时间和加载位置,在所述预设路径中加载所述提示标识;

获取用户对于所述可拖动滑块的操控行为,并判断所述操控行为是否符合所述操控方式;

根据判断结果生成验证结果。

进一步,上述技术方案中,所述提示标识包括设于路径范围内的拦截线;

所述操控动作包括暂停对于所述可拖动滑块的拖动。

进一步,上述技术方案中,所述预设路径包括多个路径分支;

所述提示标识用于在用户操控所述可拖动滑块过程中,实时的提示对于所述可拖动滑块的操控动作包括,所述提示标识用于提示用户进行路径分支的选择。

进一步,上述技术方案中,所述提示标识包括对设于路径范围内的拦截线赋予预设颜色。

进一步,上述技术方案中,所述提示标识包括有多个。

进一步,上述技术方案中,所述操控动作包括暂停、终止、返回和转向。

进一步,上述技术方案中,所述提示用户对于可拖动滑块的操控方式的验证说明,包括:

说明用户对于所述可拖动滑块操控时拖动路径的确定方式,以及,对于所述可拖动滑块操控时需要根据提示标识执行相应的操控动作。

根据本发明的第二方面,本发明还提供了一种验证码实现装置,包括:

图片加载单元,用于在验证操作区加载包括有预设路径和可拖动滑块的验证图片;

提示说明单元,用于在验证提示区生成包括提示用户对于可拖动滑块的操控方式的验证说明;

算法单元,用于在用户操控所述可拖动滑块过程中,根据预设算法生成提示标识的加载时间和加载位置;所述提示标识用于在用户操控所述可拖动滑块过程中,实时的提示对于所述可拖动滑块的操控动作;

标识加载单元,用于根据所述提示标识的加载时间和加载位置,在所述预设路径中加载所述提示标识;

判断单元,用于获取用户对于所述可拖动滑块的操控行为,并判断所述操控行为是否符合所述操控方式;

结果生成模块,用于根据判断结果生成验证结果。

为解决以上技术问题,本发明实施例还提供了一种存储器,所述存储器包括非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于执行以上各个方面所述的方法,并实现相同的技术效果。

为解决以上技术问题,本发明实施例还提供了一种验证码实现设备,所述验证码实现设备包括存储在存储器上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行以上各个方面所述的方法,并实现相同的技术效果。

有益效果

本发明实施例提供的存储器、验证码实现方法、装置和设备,在加载了包括了预设路径和可拖动滑块的验证图片的同时,还预设了提示信息来使用户在拖动可拖动滑块的过程中,可以进行诸如暂停或是路径选择等操控动作的变化;这样,由于用户的对于可拖动滑块的操控行为不仅仅是可拖动滑块的路径,还包括了不确定时机和位置的操控动作,从而使得恶意程序无法通过遍历的方式来模拟用户的操作行为。

现有技术中的验证码,是通过拖动滑块一定的长度来拼接图片的验证方式中,其运动轨迹为一维的直线;验证答案是具有不同长度直线轨迹,因此,恶意计算机程序可以通过遍历所有直线长度即可获得每一次的验证结果。这样,就为破解验证码带来潜在的可能性,即,现有技术中,验证码被计算机恶意程序破解的几率较高。

通过本发明实施例,使得恶意程序将无法通过遍历的方式来获得用户的操作行为;因此,通过本发明实施例,可以有效的降低恶意计算机程序通过验证的几率,进而也就提高了身份验证的安全性。

根据下面参考附图对示例性实施例的详细说明,本发明的其它特征及方面将变得清楚。

附图说明

一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。

图1为本发明实施例提供的验证码实现方法的步骤示意图;

图2为本发明实施例提供的包括预设图形的验证图片的示意图;

图3为本发明实施例提供的包括预设图形的验证图片的又一示意图;

图4为本发明实施例提供的包括预设图形的验证图片的又一示意图;

图5为本发明实施例提供的验证码实现装置的结构示意图;

图6为本发明实施例提供的验证码实现设备硬件结构示意图。

具体实施方式

下面结合附图,对本发明的具体实施方式进行详细描述,但应当理解本发明的保护范围并不受具体实施方式的限制。

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。除非另有其它明确表示,否则在整个说明书和权利要求书中,术语“包括”或其变换如“包含”或“包括有”等等将被理解为包括所陈述的元件或组成部分,而并未排除其它元件或其它组成部分。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本发明,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本发明同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件未作详细描述,以便于凸显本发明的主旨。

实施例1

图1示出本发明实施例提供的验证码实现方法的流程图,该方法可以由电子设备执行,例如网络设备、终端设备或服务端设备等。换言之,所述方法可以由安装在网络设备、终端设备或服务端设备的软件或硬件来执行。所述服务端包括但不限于:单台服务器、服务器集群等。参考图1至图4,该方法包括以下步骤。

s11、在验证操作区加载包括有预设路径和可拖动滑块101的验证图片;

本发明实施例中的验证图片中,包括有可拖动滑块101和预设路径,其中预设路径是指通过图像方式指示出的可拖动滑块101位移的位移轨迹路线,即,用户可以通过鼠标的操作来使可拖动滑块101沿预设路径进行位移。

需要说明的是,本发明实施例中的可拖动滑块101可以根据需要设置为各种形状,图2中是以圆形的可拖动滑块为例。

s12、在验证提示区生成包括提示用户对于可拖动滑块101的操控方式的验证说明;

本发明实施例中的验证说明,用于告知用户需要对可拖动滑块101进行怎样的操作,以及,操作过程中需要达到的条件;此时,验证说明可以包括两部分内容:即,用户对于可拖动滑块101操控时拖动路径的确定方式,以及,对于可拖动滑块101操控时需要根据提示标识执行相应的操控动作。

还是以图2为例,验证说明中,根据用户需要对可拖动滑块101执行的操作方式,提示用户最终的目的是将可拖动滑块101拖动到终点,需要达到的条件是避免可拖动滑块101触碰到随机出现的拦截线,此时,验证说明的具体内容就可以是:“请将滑块沿着路线安全拖动到终点,避免触碰随机出现的拦截线”。

s13、在用户操控可拖动滑块101过程中,根据预设算法生成提示标识的加载时间和加载位置;提示标识用于在用户操控可拖动滑块101过程中,实时的提示对于可拖动滑块101的操控动作;

本发明实施例中的提示标识是指用于在拖动可拖动滑块101的过程中提示用户,以使用户可以进行相应反馈操作的指示信息;该指示信息可以是文字性的提示,也可以是图形提示;还是以图2为例,图2中的提示标识为一个“拦截线”,可以用于提示用户暂停当前的拖动动作。

在实际应用中,提示标识可以出现一次,或者是多次,而且,提示标识的出现位置和时机可以根据随机算法来确定,以使其每次出现的时机和位置都有所变化,从而增加验证图片的破解难度。

s14、根据所述提示标识的加载时间和加载位置,在所述预设路径中加载所述提示标识;

每次验证的过程中,首先加载的是验证图片,当用户开始进行验证(拖动可拖动滑块101)后,可以通过预设算法来生生本次验证过程中提示标识出现的次数,每次出现的时机和位置,然后在验证图片中进行相应的加载。

s15、获取用户对于所述可拖动滑块101的操控行为,并判断所述操控行为是否符合所述操控方式;

本发明实施例中,用户的验证行为,一方面包括用户是否按照相应的轨迹(路径)对可拖动滑块101进行了拖动,另一方面还包括在拖动过程中是否对提示标识进行了正确的反馈操作;以图2为例,反馈操作是指,是否在拦截线出现时暂停了拖动(可以通过判断可拖动滑块101是否碰触了拦截线来确定)。

s16、根据判断结果生成验证结果。

当判断结果为是的时候,认为用户端的验证操作是由用户人工操作实现的,因此验证通过;当判断结果为否的时候,认为用户端的这些操作可能并非由用户人工实现,因此验证失败。

附图中的图2至图4示出了本发明实施例在验证过程中的不同环节时,验证操作区的相应具体呈现方式,其中,图2为在验证过程中,首次出现拦截线(该拦截线可定义为第一拦截线102)的情况,此时,用户需要暂停对于可拖动滑块101的拖动,当第一拦截线102消失的时候,用户需要恢复对可拖动滑块101的拖动,继续沿路径将可拖动滑块101向终点拖动;图3中,第二次出现拦截线(该拦截线可定义为第二拦截线103),此时用户需要第二次暂停拖动动作,直至第二拦截线103消失,然后将可拖动滑块101拖动至终点,从而完成验证过程(图4)。

此外,在实际应用中,用于提示用户进行反馈操作的提示标识,可以用于提示用户对所述可拖动滑块101进行包括暂停、终止、返回和转向等多种动作。而对于提示标识来说,其表现形式也可以是多种的,比如,可以是对设于路径范围内的拦截线赋予预设颜色,比如,当路径中出现红色的拦截线的时候,用户需要暂停对可拖动滑块101的拖动,而当拦截线变成无色(即消失)的时候,用户恢复对可拖动滑块101的拖动动作。

优选的,在本发明实施例中,预设路径还可以包括多个路径分支;此时,提示标识用于在用户操控可拖动滑块过程中,实时的提示对于可拖动滑块的操控动作包括,提示标识用于提示用户进行路径分支的选择。也就是说,验证过程中,根据提示标识出现的位置的不同,可拖动滑块达到终点的路径轨迹有多种可能性。根据用户在本次验证过程中的路径轨迹选,可以判断用户的操作方式是否正确。

综上所述,本发明实施例,在加载了包括了预设路径和可拖动滑块的验证图片的同时,还预设了提示信息来使用户在拖动可拖动滑块的过程中,可以进行诸如暂停或是路径选择等操控动作的变化;这样,由于用户的对于可拖动滑块的操控行为不仅仅是可拖动滑块的路径,还包括了不确定时机和位置的操控动作,从而使得恶意程序无法通过遍历的方式来模拟用户的操作行为。

现有技术中的验证码,是通过拖动滑块一定的长度来拼接图片的验证方式中,其运动轨迹为一维的直线;验证答案是具有不同长度直线轨迹,因此,恶意计算机程序可以通过遍历所有直线长度即可获得每一次的验证结果。这样,就为破解验证码带来潜在的可能性,即,现有技术中,验证码被计算机恶意程序破解的几率较高。

通过本发明实施例,使得恶意程序将无法通过遍历的方式来获得用户的操作行为;因此,通过本发明实施例,可以有效的降低恶意计算机程序通过验证的几率,进而也就提高了身份验证的安全性。

实施例2

图5示出本发明实施例提供的验证码实现装置的结构示意图,所述验证码实现装置为与实施例1中所述验证码实现方法对应的装置,即,通过虚拟装置的方式实现实施例1中所述验证码实现方法,构成所述验证码实现装置的各个虚拟模块可以由电子设备执行,例如网络设备、终端设备、或服务器。

具体来说,本发明实施例中的验证码实现装置包括:

图片加载单元01用于在验证操作区加载包括有预设路径和可拖动滑块的验证图片;

提示说明单元02用于在验证提示区生成包括提示用户对于可拖动滑块的操控方式的验证说明;

算法单元03用于在用户操控所述可拖动滑块过程中,根据预设算法生成提示标识的加载时间和加载位置;所述提示标识用于在用户操控所述可拖动滑块过程中,实时的提示对于所述可拖动滑块的操控动作;

标识加载单元04用于根据所述提示标识的加载时间和加载位置,在所述预设路径中加载所述提示标识;

判断单元05用于获取用户对于所述可拖动滑块的操控行为,并判断所述操控行为是否符合所述操控方式;

结果生成模块06用于根据判断结果生成验证结果。

由于本发明实施例中验证码实现装置的工作原理和有益效果已经在实施例1中的验证码实现方法中也进行了记载和说明,因此可以相互参照。

实施例3

本发明实施例提供了一种存储器,所述存储器可以是非暂态(非易失性)计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令可执行上述任意方法实施例中验证码实现方法的各个步骤,并实现相同的技术效果。

实施例4

本发明实施例提供了一种验证码实现设备,验证码实现设备所包括的存储器中,包括有相应的计算机程序产品,所述计算机程序产品所包括程序指令被计算机执行时,可使所述计算机执行以上各个方面所述的验证码实现方法,并实现相同的技术效果。

图6是本发明实施例作为电子设备的验证码实现设备的硬件结构示意图,如图6所示,该设备包括一个或多个处理器610以及存储器620。以一个处理器610为例。该设备还可以包括:输入装置630和输出装置640。

处理器610、存储器620、输入装置630和输出装置640可以通过总线或者其他方式连接,图6中以通过总线连接为例。

存储器620作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块。处理器610通过运行存储在存储器620中的非暂态软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述方法实施例的处理方法。

存储器620可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储数据等。此外,存储器620可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器620可选包括相对于处理器610远程设置的存储器,这些远程存储器可以通过网络连接至处理装置。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

输入装置630可接收输入的数字或字符信息,以及产生信号输入。输出装置640可包括显示屏等显示设备。

所述一个或者多个模块存储在所述存储器620中,当被所述一个或者多个处理器610执行时,执行:

在验证操作区加载包括有预设路径和可拖动滑块的验证图片;

在验证提示区生成包括提示用户对于可拖动滑块的操控方式的验证说明;

在用户操控所述可拖动滑块过程中,根据预设算法生成提示标识的加载时间和加载位置;所述提示标识用于在用户操控所述可拖动滑块过程中,实时的提示对于所述可拖动滑块的操控动作;

根据所述提示标识的加载时间和加载位置,在所述预设路径中加载所述提示标识;

获取用户对于所述可拖动滑块的操控行为,并判断所述操控行为是否符合所述操控方式;

根据判断结果生成验证结果。

上述产品可执行本发明实施例所提供的方法,具备执行方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。

本发明实施例的电子设备以多种形式存在,包括但不限于以下设备。

(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iphone)、多媒体手机、功能性手机,以及低端手机等。

(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:pda、mid和umpc设备等,例如ipad。

(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放器(例如ipod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。

(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。

(5)其他具有数据交互功能的电子装置。

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

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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