生成随机验证码的设置方法与流程

文档序号:17158032发布日期:2019-03-20 00:15阅读:2564来源:国知局
生成随机验证码的设置方法与流程

本发明涉及计算机安全技术领域,尤其涉及一种生成随机验证码的设置方法。



背景技术:

随着互联网的不断发展,用户使用端与服务器的交互越来越频繁。为了保护某些交互操作的安全性,防止黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆,抵御机器自动化攻击,会采用验证码的形式来进行审核。

传统方法采用纯文本验证码,这种方式一般都是从题库里选择出来的,数量有限,破解方式也很简单,多刷新几次,建立题库和对应的答案,就可破解。

目前常见的验证码多为图片验证码,即数字、字母、文字、图片物体等形式的字符验证码。这类验证码简单易操作,随着ocr技术和打码平台的利用,图片很容易破解。验证码作为一种辅助安全手段在web安全中有着特殊的地位,因此需要一种操作简单,同时能起到保卫着网站的安全以及我们的信息安全的验证码。

中国专利公开号:cn104346557a公开了一种验证码的生成方法,包括:侦测到验证码生成指令时,随机生成由多个字符组成的验证码文字信息;随机生成验证码文字信息中字符的显示顺序;按照预设的分配规则,分配每次显示,以使所述验证码文字信息中的字符按照显示顺序依次进行显示,且每次显示仅在其相应的显示时间内动态显示。由此可见,所述生成方法存在以下问题:

第一,所述方法中在生成验证码时仅使用单一种类的字符,在生成后易被破解。

第二,所述方法在生成验证码内容后,仅使用随机顺序对验证码内容进行打乱,识别难度低,降低了系统的安全性。



技术实现要素:

为此,本发明提供一种生成随机验证码的设置方法,用以克服现有技术中由于破解难度低导致系统安全级别低的问题。

为实现上述目的,本发明提供一种生成随机验证码的设置方法,其通过对验证码的长度、内容、形状以及颜色分别进行设置,同时添加干扰图案并对其进行设定以增加破解难度,提升安全级别,包括:

步骤1:对验证码的字符个数,即验证码长度进行设置;

步骤2:设置验证码内容的范围,对验证码的字符进行选取;

步骤3:设置验证码干扰图案,以增加验证码的破解难度;

步骤4:对验证码的背景颜色进行设置,以提升验证码的识别难度;

步骤5:对验证码的字符样式进行设置;

步骤6:配置完成后页面上生成验证码,生成后根据验证码输入内容,输入完成后系统将输入内容与验证码内容进行对比并判断二者的内容是否一致,以决定直接进入系统或重新输入验证码。

进一步地,所述步骤2中验证码的内容为中文、英文和数字中的一种或多种。

进一步地,所述步骤3中的干扰图案为干扰线、干扰点、纹理背景和噪点中的一种或多种。

进一步地,所述步骤3中干扰图案与所述步骤4中背景色的对比度要低于所述字符与背景色的对比度,以提高验证码的识别难度。

进一步地,所述步骤5中的字符样式为字符扭曲、字符旋转、粘连字符和空心字符中的一种或多种。

进一步地,所述字符扭曲的样式为水纹式扭曲、鱼眼式扭曲和阴影式扭曲中的一种或多种。

进一步地,所述步骤6中的验证码会根据所述步骤1-步骤5中的设定值进行随机生成,以增加破解的难度并提升系统的安全级别。

进一步地,所述生成的验证码为jpg格式。

与现有技术相比,本发明的有益效果在于,本发明通过在生成验证码时,对验证码的长度、内容、形状以及颜色分别进行设置,同时添加干扰图案并对其进行设定,在增加了机械对验证码破解难度的同时,提升了系统的安全级别。本发明简单易操作,人机交互性较好,这种验证方法不仅提高了系统的安全性,同时也带了很好的用户体验感。

进一步地,在对生成的验证码进行设置时,可以自行设置验证码的字符长度,同时针对验证码内容可以选用中文、英文和数字中的一种或多种,通过将不同数目及不同种类的字符有机结合在一起,提升了机械对验证码的特征提取难度,能有效防止恶意攻击。

尤其,在生成验证码时,验证码中的字符种类及排列顺序是完全随机的,通过使用随机结合的方法,以提升机械对验证码的分割提取难度。

尤其,所述方法在生成验证码内容后,还会在其周围随机生成干扰图案,所述干扰图案包括高绕线、干扰点、纹理背景、噪点以及其他种类的图案,通过干扰图案与字符的相结合,进一步增加了生成验证码的破解难度,提高了系统的安全级别。

尤其,所述干扰图案与所述验证码背景色的对比度要低于所述字符与验证码背景色的对比度,这样,字符与背景对比比较弱不容易被人眼所捕捉,识别性比较难,可进一步提高了系统安全性。

尤其,所述验证码的字符还会经过字符扭曲、字符旋转、粘连字符、空心字符以及其他种类的变换,通过对字体的随机改变,进一步提高了所述系统验证码的破解难度。

进一步地,所述字符扭曲的样式还包括水纹式扭曲、鱼眼式扭曲、阴影式扭曲以及其他种类的扭曲,通过对字体形状的随机变化以及多种变化相结合,进一步提升了验证码的分割及特征提取难度,并有效防止恶意攻击。

尤其,所述验证码的所有特征均为随机生成,通过不使用单一输入顺序的方式进行生成能够有效增加系统的破解难度。

附图说明

图1位本发明所述随机验证码生成的设置方法的总体流程图;

图2为本发明所述总体流程图中对验证码特征的约束过程;

图3为本发明所述总体流程图中生成验证码的流程图。

具体实施方式

为了使本发明的目的和优点更加清楚明白,下面结合实施例对本发明作进一步描述;应当理解,此处所描述的具体实施例仅仅用于解释本发明,并不用于限定本发明。

以下结合附图,对本发明上述的和另外的技术特征和优点作更详细的说明。

下面参照附图来描述本发明的优选实施方式。本领域技术人员应当理解的是,这些实施方式仅仅用于解释本发明的技术原理,并非在限制本发明的保护范围。

请参阅图1所示,其为本发明所述随机验证码生成的设置方法的总体流程图,包括:

步骤1:开始对验证码中的各项特征进行选择、限定和约束;

步骤2:约束完成后,系统会在约束的范围对验证码进行随机生成;

步骤3:生成后,系统会在指定位置产生输入框,以根据生成的验证码输入文本。

步骤4:输入完成后,系统会将输入内容与验证码中的内容进行比对,根据比对结果以选择下一步骤。

步骤5:在比对后,输入内容与验证码内容匹配,则直接进入系统;输入内容与验证码内容不匹配,则回到步骤2,并重复步骤2-步骤4,重新生成验证码并进行输入及比对。

请参阅图2所示,其为本发明所述总体流程图中对验证码特征的约束方法,包括:

步骤1:对验证码的字符个数,即验证码长度进行设置;

步骤2:设置验证码内容的范围,对验证码的字符进行选取;

步骤3:选取验证码干扰图案,以增加验证码的破解难度;

步骤4:对验证码的背景颜色进行设置,以提升验证码的识别难度;

步骤5:对验证码的字符样式进行设置;

步骤6:配置完成后页面上会根据设定的范围随机生成验证码。

其中,在所述步骤2中设置验证码字符时,可以选用中文、英文和数字中的一种或多种;在所述步骤3中选取的干扰图案可以为干扰线、干扰点、纹理背景和噪点中的一种或多种;在所述步骤4中背景颜色的选取中,所述步骤3中干扰图案与背景色的对比度要低于所述步骤2中字符与背景色的对比度;所述步骤5中的字符样式为字符扭曲、字符旋转、粘连字符和空心字符中的一种或多种,其中字符扭曲的样式为水纹式扭曲、鱼眼式扭曲和阴影式扭曲中的一种或多种。

请参阅图3所示,其为本发明为本发明所述总体流程图中生成验证码的流程图,包括:

步骤1:根据所述约束方法中对验证码字数的限定,确定生成验证码的字符个数;

步骤2:确定字符个数后,根据约束的字符内容,从中文、英文和数字中随机选取字符,选取完成后对字符进行随机排列,以得到验证码内容;

步骤3:验证码字符选取完成后,根据约束对验证码字符的位置和角度进行改变和调整;

步骤4:调整完成后,对各字符进行扭曲,针对单一字符从水纹式扭曲、鱼眼式扭曲、阴影式扭曲及其他扭曲方式中随机选取一种进行扭曲直至验证码中全部字符分别完成扭曲;

步骤5:扭曲后,在约束的范围内对验证码添加背景颜色;

步骤6:背景颜色添加完成后,在验证码字符上添加干扰图案,选取干扰线、干扰点、纹理背景和噪点中的一种或多种进行添加,其中干扰图案与背景色的对比度要低于验证码字符与背景色的对比度,添加完成后,验证码生成完成,将其转换成jpg格式并输出。

至此,已经结合附图所示的优选实施方式描述了本发明的技术方案,但是,本领域技术人员容易理解的是,本发明的保护范围显然不局限于这些具体实施方式。在不偏离本发明的原理的前提下,本领域技术人员可以对相关技术特征做出等同的更改或替换,这些更改或替换之后的技术方案都将落入本发明的保护范围之内。

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

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