基于时钟的验证方法和系统与流程

文档序号:12947118阅读:1143来源:国知局
基于时钟的验证方法和系统与流程

本发明涉及网络安全技术领域,尤其涉及一种基于时钟的验证方法和系统。



背景技术:

随着计算机和网络科技的发展,互联网技术日益广泛的应用到生产生活的各个领域。但是,网络在带给人类方便的同时,也不可避免地带来挑战,例如,如何有效防止恶意破解密码、论坛恶意灌水等问题。诸如验证码技术这样的验证方法和系统作为一种能够区别当前用户是计算机或人(captcha)的公共自动程序在解决上述问题中起到重要作用。

作为优良的验证系统,需要同时满足:“易用性”和“安全性”这两个条件,即,人类用户容易识别和输入,以及机器不能识别这两个条件。现有的验证码技术包括将数字/字母转化为图形的简单图形验证技术、在上述简单图形基础上对图形进行变形或增加干扰的图形验证技术、通过解答问题等实现验证码验证的技术。近年来,又进一步研发了例如,要求用户对图片内容进行分类、要求用户滑动操作至预定位置等验证码技术。相比于传统的数字或文字识别,这些操作需要用户完全手动操作,而无法通过计算机等机器自动识别,从而尽可能地防止了不良用户利用机器对网站的恶意攻击等。

然而,例如12306购票系统中的验证码、九宫格验证码这样的基于图片的验证码,为了确保安全性,问题设置难度高并且验证系统的交互操作比较复杂,对一些教育程度不高的用户来说,验证的理解成本过高,导致用户回答出正确验证码答案的难度较大,从而使得用户浪费较多时间对验证码进行验证,用户体验较差。另一方面,诸如基于简单图片的验证系统,其虽然确保用户能够简单地操作从而识别出验证码,但是其安全性不能得到保障,被机器破解的风险更高。



技术实现要素:

鉴于以上问题,本发明提供了一种基于时钟的验证方法和系统,其具有图片验证和交互验证双重门槛,保证安全性,使得该验证系统能够被应用到防抓取、防破解、解锁系统等中。并且本发明的验证方法和系统兼顾安全性和易用性,使得在确保安全的同时,利用时钟这一常识使用户易于理解,容易操作,总体降低验证成本。

根据本发明的一方面,提供一种基于时钟的验证方法,其特征在于,所述验证方法包括:

生成验证码图片的步骤,生成验证码图片,所述验证码图片与一随机生成的时间信息对应;

进行输入操作的步骤,根据所述验证码图片,输入与所述时间信息对应的输入结果;以及

验证输入结果的步骤,将所述输入结果与所述时间信息进行比较,以检验是否通过验证。

进一步地,在所述生成验证码图片的步骤与所述进行输入操作的步骤之间,所述验证方法还包括:

处理验证码图片,对所述验证码图片进行处理,以提高图片识别难度。

进一步地,在所述处理验证码图片的步骤中,对所述验证码图片进行的处理包括扭曲处理、虚化处理、动态化处理。

进一步地,所述验证码图片具有与所述时间信息对应的时钟信息或字符信息。

进一步地,当所述验证码图片具有时钟信息时,在所述生成验证码图片的步骤中,计算与所述时间信息对应的时钟指针角度,从而生成具有该指针角度的时钟的验证码。

进一步地,当所述验证码图片具有时钟信息时,在所述进行输入操作的步骤中,输入与所述时钟信息对应的表示时间的信息表示。

进一步地,当所述信息表示与所述时间信息相同时,验证通过;并且

当所述信息表示与所述时间信息不同时,验证失败。

进一步地,当所述信息表示与所述时间信息的差小于或等于阈值时,验证通过;并且

当所述信息表示与所述时间信息的差大于所述阈值时,验证失败。

进一步地,当所述验证码图片具有字符信息时,在所述进行输入操作的步骤中,利用动态时钟模型进行输入操作。

进一步地,通过改变所述动态时钟模型中的指针而输入期望指针位置。

进一步地,在所述验证输入结果的步骤中,根据计算而得出与所述期望指针位置对应的时间表示,从而将所述时间表示与所述时间信息进行比较以进行验证。

进一步地,当所述时间表示与所述时间信息相同时,验证通过;并且

当所述时间表示与所述时间信息不同时,验证失败。

进一步地,当所述时间表示与所述时间信息的差小于或等于阈值时,验证通过;并且

当所述时间表示与所述时间信息的差大于所述阈值时,验证失败。

根据本发明的第二方面,提供了一种基于时钟的验证系统,其特征在于,所述验证系统包括:

验证码生成模块,用于生成验证码图片,所述验证码图片与一随机生成的时间信息对应;

输入模块,用于根据所述验证码图片,输入与所述时间信息对应的输入结果;以及

验证模块,用于将所述输入结果与所述时间信息进行比较,以检验是否通过验证。

进一步地,所述验证系统还包括:

验证码处理模块,用于对所述验证码图片进行处理,以提高图片识别难度。

进一步地,所述验证码处理模块进行的处理包括扭曲处理、虚化处理、动态化处理。

进一步地,所述验证码图片具有与所述时间信息对应的时钟信息或字符信息。

进一步地,当所述验证码图片具有所述时钟信息时,在所述生成验证码图片的步骤中,计算与所述时间信息对应的时钟指针角度,从而生成具有该指针角度的时钟的验证码。

进一步地,当所述验证码图片具有所述时钟信息时,在所述进行输入操作的步骤中,输入与所述时钟对应的表示时间的时间表示。

进一步地,当所述时间表示与所述时间信息相同时,验证通过;并且

当所述时间表示与所述时间信息不同时,验证失败。

进一步地,当所述时间表示与所述时间信息的差小于或等于阈值时,验证通过;并且

当所述时间表示与所述时间信息的差大于所述阈值时,验证失败。

进一步地,当所述验证码图片具有字符信息时,在所述进行输入操作的步骤中,利用动态时钟模型进行输入操作。

进一步地,通过改变所述动态时钟模型中的指针而输入期望指针位置。

进一步地,在所述验证输入结果的步骤中,根据计算而得出与所述期望指针位置对应的时间表示,从而将所述时间表示与所述时间信息进行比较以进行验证。

进一步地,当所述时间表示与所述时间信息相同时,验证通过;并且

当所述时间表示与所述时间信息不同时,验证失败。

进一步地,当所述时间表示与所述时间信息的差小于或等于阈值时,验证通过;并且

当所述时间表示与所述时间信息的差大于所述阈值时,验证失败。

以下结合本发明的附图及优选实施方式对本发明的技术方案做进一步详细地描述,本发明的有益效果将进一步明确。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,但其说明仅用于解释本发明,并不构成对本发明的不当限定。

图1是根据本发明的基于时钟的验证方法的流程图。

图2是根据本发明的第一实施例的基于时钟的验证方法所生成的验证码图片的示意图。

图3是根据本发明的第一实施例的基于时钟的验证方法所生成的验证码图片在经过扭曲处理之后的示意图。

图4是根据本发明的第一实施例的基于时钟的验证方法所生成的验证码图片在经过虚化处理之后的示意图。

图5是根据本发明的第一实施例的基于时钟的验证方法中用户输入时使用的键盘的示意图。

图6是根据本发明的第一实施例的基于时钟的验证方法中用户输入时使用的键盘的另一个实例的示意图。

图7是根据本发明的第二实施例的基于时钟的验证方法中生成的验证码图片的示意图。

图8是根据本发明的第二实施例的基于时钟的验证方法中用户输入时使用的动态时钟模型的示意图。

图9示出了根据本发明的基于时钟的验证系统的结构框图。

具体实施方式

下面将结合本发明的具体实施例及相应的附图对本发明技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本发明一部分优选实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是根据本发明的基于时钟的验证方法的流程图。如图1所示,根据本发明的基于时钟的验证方法包括:步骤s1,生成验证码图片;步骤s3,进行输入操作;以及步骤s4,验证输入结果。优选地,根据本发明的基于时钟的验证方法,在步骤s1和步骤s3之间还包括步骤s2,处理所述验证码图片。

其中,步骤s1中,生成基于时间的验证码图片包括:随机生成一个时间信息,并且根据该时间信息生成基于时间的验证码图片,所述验证码图片具有与所述时间信息对应的时钟或字符信息。

步骤s3中,进行输入操作包括:根据所述验证码图片,输入与所述时钟对应的时间表示,或输入与所述字符信息对应的时钟的期望指针位置。

步骤s4中,验证输入结果包括:将所述时间表示或所述期望指针位置与所述时间信息进行比较,以检验是否通过验证。

优选地,所述步骤s2中,处理验证码图片包括:对所述验证码图片进行处理,以提高图片识别难度。

具体地,下文将具体图2至6、7和8以及9描述根据本发明的基于时钟的验证方法和系统的具体实施方式,本发明包含且不限于以下实施例。首先结合图2至图6对本发明的第一实施例的基于时钟的验证方法具体实施方式进行描述。

[第一实施例]

首先,结合图2至6对本发明的第一实施例的验证方法的上述各步骤逐一进行说明。

s1:生成验证码图片的步骤

随机生成一个时间信息,并且通过计算,例如,根据该时间信息与预先存储的表格的比对结果,得出该时间信息对应的指针角度,并且根据指针角度生成包含处于该指针角度的时钟的验证码图片。所述预先存储的表格表明时间与指针角度之间关系,所述指针角度为指针相对于特定位置(例如,12点位置)的角度。

例如,首先随机生成一个时间信息(10,11,30),其对应的时间为10点11分30秒。随后将该随机生成的时间信息代入预先存储的表格,得出指针角度分别a、b、c,并且生成如附图2所示的验证码图片。如图2所示,其指示的时间为10点11分30秒。上述时间信息只是一个实例,其可以不包含秒,即,仅包含小时和分钟,例如,10点11分,从而生成的验证码图案中的时钟指针只具有时针和分针,以进一步简化验证难度。

s2:处理验证码图片的步骤

由于生成的时钟图片相对容易被机器识别,因此根据本发明的基于时钟的验证方法对已经生成的基于时间的验证码图片进行处理。可以采用现有技术中的公知获已知的图片处理方式,以增大图片被识别出的难度。

例如,处理方式包括且不限于扭曲处理(参见图3)、虚化处理(参见图4)以及动态化处理等。所述动态化处理可以为使得图片以指定频率闪烁或小距离改变位置,或者使得图片的某一部分随机显现并且保证在预定时间内使得图片的所有部分均显现过等。此外,可以将图片拆分为若干部分,用户通过观看这些分离的部分识别出指针所指位置。本发明不限于上述处理方式,并且可以采用多种处理方式的组合对验证码图片进行处理。

s3:进行输入操作的步骤

用户在识别出处理后的验证码图片中的时钟所指示的时间之后,输入对应的时间表示。例如,用户在识别出图3或图4所示的时钟所指示的时间之后,在如图5所示的键盘上,依次通过鼠标点击101130,则对应地生成一组时间表示(10,11,30)。根据本发明的基于时钟验证系统和方法中所使用的键盘不限于图5中所使用的键盘,还可以是如附图6中所示的键盘。在图6所示的键盘中,用户点击键盘,随后通过识别用户的点击位置在图6所示的x-y坐标系下的位置,进而识别出用户所点击的时间表示。例如,用户在图6所示的坐标系中点击坐标为(x1,y1),则通过计算得出(x1,y1)坐标在图6所示的键盘中对应的数字,例如,为5,则可识别用户当前点击数字,进而识别出用户连续点击的数字组合,生成一组时间表示。上述图5和图6仅为两个实例,本发明的输入方式不限于此,还可以是用户在验证码输入对话框处直接通过移动终端的键盘而输入上述一串数字101130,生成一组时间表示(10,11,30)从而完成输入操作等。只要是能够实现时间表示的输入的键盘,则都可以在本发明中使用。

s4:验证输入结果的步骤

最后,将用户输入的时间表示与最初随机生成的时间信息进行比较,以检验是否通过验证。当上述两者相同时,则验证通过,当上述两者不同时,则验证失败。

对于例如仅包含小时和分钟的时间信息,在验证过程中,由于图片的处理导致时间信息不能够完全准确地表达,因此在进行比较以验证是否通过的过程中,可以根据一定阈值来判断验证是否通过。即,当用户输入的时间表示与最初随机生成的时间信息之间的差小于或等于阈值时,验证通过;当用户输入的时间表示与最初随机生成的时间信息之间的差大于阈值时,验证失败。阈值例如可以为1分钟。

以上为根据本发明的第一实施例的基于时钟的验证方法的具体步骤。根据本发明的第二实施例的基于时钟的验证方法与上述第一实施例中大致相同。因此,下文中,将仅参考图7和8描述第二实施例与第一实施例的区别之处。

[第二实施例]

s1:生成验证码图片

随机生成一个时间信息,直接生成表示该时间信息的字符信息的验证码图片。

例如,在随机生成一个时间信息(10,11,30)之后,直接生成表示该时间信息的字符信息的验证码图片,如图7所示为10:11:30,其为常用的时间表示方式,还可以采用其它表示方式,同样地,该时间信息可以仅包含小时和分钟,例如,10:11。

s2:处理验证码图片

接着,对包含表示该时间信息的字符信息的验证码图片进行处理,该处理步骤与上述第一实施例中的处理步骤相同。

s3:进行输入操作

用户在识别出验证码图片中的字符信息所指示的时间之后,通过操作如图7所示的可视化动态时钟模型使得时钟模型中的指针指向与该字符信息相对应的期望指针位置处。

例如,用户可以通过鼠标分别点击位于图8中的初始位置处的时针、分针和秒针。在点击某一指针并选中该指针的情况下,移动鼠标从而实现对指针的拖动,当指针被拖动至期望指针位置处,停止移动鼠标并结束选定该指针从而结束拖动。通过对时针、分钟、秒针分别进行上述操作,使得上述指针指向图2所对应的各自的位置。本发明不限于上述用户改变指针位置的操作方式。

s4:验证输入结果

根据用户进行的输入操作的结果,假定可视化动态时钟模型的时钟的初始位置为x,得出处于期望指针位置处的各个指针相对于初始位置x的偏移角度α、β、γ,并通过计算,例如将该角度信息与表明时间与指针角度之间关系的表格进行比较,得到该偏移角度α、β、γ所对应的时间。并将偏移角度所对应的时间与最初随机生成时间信息进行比较。以检验是否通过验证。当两者相同时,则验证通过,当两者不同时,则验证失败。

同样地,可以根据一定阈值来判断验证是否通过。即,当偏移角度所对应的时间与最初随机生成的时间信息之间的差小于或等于阈值时,验证通过;当偏移角度所对应的时间与最初随机生成的时间信息之间的差大于阈值时,验证失败。阈值例如可以为1分钟。

以上描述了根据本发明的基于时钟的验证方法的优选实施例。下文结合图8描述根据本发明的基于时钟的验证系统。图9示出了根据本发明的基于时钟的验证系统的结构框图。如图9所示,所述基于时钟的验证系统100包括:验证码生成模块101、用户输入模块103和验证模块104。优选的,所述基于时钟的验证系统100还包括验证码处理模块102。下面具体描述各个模块。

验证码生成模块101

验证码生成模块101用于随机生成一个时间信息,并且根据该时间信息生成基于时间的验证码图片。所述基于时间的验证码图片具有表示该时间信息的时钟或者字符信息。

当生成具有表示该时间信息的时钟时,所述验证码生成模块101根据该时间信息与预先存储的表格的比对结果,得出该时间信息对应的指针角度,并且根据指针角度生成包含处于该指针角度的时钟的验证码图片。

当生成具有表示该时间信息的字符信息时,所述验证码生成模块101直接生成具有与该时间信息对应的字符信息的验证码。

验证码处理模块102

验证码处理模块102用于通过扭曲处理(参见图3)、虚化处理(参见图4)以及动态化处理等对所述基于时间的验证码图片进行处理,以增大其被识别的难度。

输入模块103

输入模块103用于使得用户根据所述基于时间的验证码图片,进行输入操作,以输入与所述时钟对应的时间表示或者与所述字符信息对应的时钟的期望指针位置。

当利用输入模块103输入与所述时钟对应的时间表示时,直接输入时钟指针所指示的时间的时间表示。

当利用输入模块103输入与所述字符信息对应的时钟指示位置时,利用该用户输入模块中的动态时钟模型进行操作,使得所述时钟模型中的时钟改变指针位置,以指向与所述字符信息对应的期望指针位置。

验证模块104

验证模块104用于将与所述时钟对应的所述时间表示或与所述字符信息对应的时钟的期望指针位置,与随机生成的所述一个时间信息进行比较,以检验是否通过验证。

当利用验证模块104将与所述时钟对应的所述时间表示与所述一个时间信息进行比较时,当上述两者相同时,则验证通过,当上述两者不同时,则验证失败。此外,还可以根据阈值计较,当上述两者差值小于或等于阈值时,则验证通过,当上述两者差值大于阈值时,则验证失败。阈值例如可以为1分钟。

当利用验证模块104将与所述字符信息对应的时钟的期望指针位置与所述一个时间信息进行比较时,在此之前,所述验证模块104首先根据所述指针的期望的指针位置与预先存储的表格的比对结果,得出所述期望的指针位置对应的时间,并将该对应的时间与所述一个时间信息进行比较,以验证是否通过。

当两者相同时,则验证通过,当两者不同时,则验证失败。此外,还可以根据阈值计较,当两者差值小于或等于阈值时,则验证通过,当两者差值大于阈值时,则验证失败。阈值例如可以为1分钟。

如上所述,描述了根据本发明的基于时钟的验证方法和系统,其具有图片验证和交互验证双重门槛,保证了安全性,使得该验证系统能够被应用到防抓取、防破解、解锁系统等中。并且本发明的验证方法和系统兼顾安全性和易用性,使得在确保安全的同时,通过时钟这一常识而使用户易于理解,容易操作,总体降低验证成本。

以上所述仅为本申请的实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。

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