图片验证码生成方法、装置、计算机设备及存储介质制造方法及图纸

技术编号:38130296 阅读:7 留言:0更新日期:2023-07-08 09:37
本申请提供了图片验证码生成方法、装置、计算机设备及计算机可读存储介质。所述图片验证码生成方法,包括:将背景图分割成若干个小格;在每个小格内设置一个不重复的字符;在所有字符中随机选取几个字符作为验证码字符组;在验证码字符组的字符对应的小格内设置验证图标;生成显示验证图标并要求根据验证图标输入字符的验证页面。本申请实施例图片验证码生成方法只需找出验证图标对应的字符即可解码,用户容易识别,人工辨识率高。因可以选取的字符和验证图标多种多样,再加上背景图的干扰,提高了计算机程序识别的难度,可以有效地防止恶意破解密码、刷票、论坛灌水等,在便于用户识别的同时极大地提高图片验证码的可靠性。别的同时极大地提高图片验证码的可靠性。别的同时极大地提高图片验证码的可靠性。

【技术实现步骤摘要】
图片验证码生成方法、装置、计算机设备及存储介质


[0001]本申请涉及网络应用
,尤其涉及一种图片验证码生成方法、装置、计算机设备及存储介质。

技术介绍

[0002]验证码是一种区分用户是计算机还是人的公共全自动程序。可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,实际上用验证码是现在很多网站通行的方式,这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答验证码的问题,所以回答出问题的用户就可以被认为是人类。
[0003]为提高验证码的可靠性,图片验证码被广泛使用。图片验证码是一幅含有验证码的图片,会要求使用者回答在这张图片中显示了哪些验证码。为了避免被计算机程序自动识别,通常在图片验证码中将验证码进行扭曲变形,并增加噪声干扰元素来提高计算机识别难度。
[0004]目前的图片验证码增加了干扰项,加大了计算机程序识别难度的同时也提高了用户识别的难度,降低了用户对图片验证码的辨识率。
[0005]针对现存方法存在的问题,急需提供一种用户容易识别的可靠性高的图片验证码生成方法、装置、计算机设备及存储介质。

技术实现思路

[0006]本申请的目的在于提供一种用户容易识别的可靠性高的图片验证码生成方法、装置、计算机设备及存储介质,旨在解决上述技术问题之一。
[0007]第一方面,一种图片验证码生成方法,包括:将背景图分割成若干个小格;在每个所述小格内设置一个不重复的字符;在所有所述字符中随机选取几个所述字符作为验证码字符组;在所述验证码字符组的所述字符对应的所述小格内设置验证图标;生成显示所述验证图标并要求根据所述验证图标输入字符的验证页面。
[0008]优选地,上述在所述验证码字符组的所述字符对应的所述小格内设置验证图标的步骤之后还包括:在所述小格内随机设置与所述验证图标不重复、且与所述验证图标位置不重合的干扰图标。
[0009]优选地,上述将背景图分割成若干个小格的步骤的之前还包括:初始化的步骤;
[0010]所述初始化的步骤具体包括:设置背景图数据库和图标数据库;设置将每张所述背景图分割成的所述小格的数量;设置所述字符类型;设置所述验证码字符组的字符数量;接收用户终端发送的验证码请求;在所述背景图数据库内随机选取一张图作为背景图;在所述图标数据库内随机选取所述字符数量的所述验证图标;在所述图标数据库内随机选取与所述验证图标不同的所述干扰图标;所述字符类型为数字或字母或符号、或者为数字、字母、符号的任意组合。
[0011]优选地,上述将背景图分割成若干个小格的步骤具体为:将所述背景图平均分割成若干个小格。
[0012]优选地,上述在每个所述小格内设置一个不重复的字符的步骤具体为:按所述字符类型随机生成所述小格数量的不重复的字符;在每个所述小格内设置一个随机生成的不重复的所述字符。
[0013]优选地,上述生成显示所述验证图标并要求根据所述验证图标输入字符的验证页面具体为:按所述验证码字符组的顺序获取所述验证图标;在所述验证页面按顺序显示所述验证图标;设置根据所述验证图标输入所述字符的验证码区域;判断所述验证码区域输入的字符是否与所述验证码字符组的字符一致:如果一致,验证通过;如果不一致,验证不通过。
[0014]优选地,上述设置将每张所述背景图分割成的所述小格的数量具体为:将每张所述背景图分割成的所述小格的数量为9个;所述将所述背景图平均分割成若干个小格具体为:将所述背景图平均分割成9个小格;所述设置所述验证码字符组的字符数量:设置所述验证码字符组的字符数量为4个;所述字符类型为数字;所述按所述字符类型随机生成所述小格数量的不重复的字符的步骤具体为:生成由1至9的9个自然数;所述在每个所述小格内设置一个随机生成的不重复的所述字符的步骤具体为:在每个所述小格内设置1至9自然数中的一个不重复的数字;所述背景图、所述验证图标、所述干扰图标为彩色图或灰度图。
[0015]第二方面,本申请实施例提供了一种图片验证码生成装置,包括:背景分割模块,用于将背景图分割成若干个小格;字符设置模块,用于在每个所述小格内设置一个不重复的字符;验证码模块,用于在所有所述字符中随机选取几个所述字符作为验证码字符组;验证图标模块,用于在所述验证码字符组的所述字符对应的所述小格内设置验证图标;验证页面模块,用于生成显示所述验证图标并要求根据所述验证图标输入字符的验证页面。
[0016]第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的图片验证码生成方法的步骤。
[0017]第四方面,本申请实施例提供了一种计算机设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,所述处理器和所述存储器通过总线连接,其中所述一个或多个计算机程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述处理器执行所述计算机程序时实现如上所述的图片验证码生成方法的步骤。
[0018]本申请实施例的图片验证码生成方法,通过将背景图分割成若干个小格,并在每个小格内设置一个不重复的字符,接着在所有字符中随机选取几个字符作为验证码字符组,然后在验证码字符组的字符对应的所述小格内设置验证图标,最后生成显示验证图标并要求根据验证图标输入字符的验证页面,即用户可以在验证页面,根据显示的验证图标输入验证图标所在小格对应的字符,进而进行验证码验证。因验证码字符组的字符是按选取的顺序排列的,所以显示的验证图标的顺序与验证码字符组的字符顺序也是一致的。
[0019]为了用户的辨别,可以根据需要设置颜色比较浅的图作为背景图,当然也可以选取纯色图,如选取淡黄色图作为背景图。验证图标的大小应比小格小,且不遮挡字符,验证图标可以根据需要选择各种几何图形或花卉形状等等,在此不做限制。为了确保验证码的有效性,字符和验证图标应放置在小格内,不在小格之间。
[0020]本申请实施例图片验证码生成方法通过上述方法生成图片验证码,只需找出验证图标对应的字符即可解码,用户容易识别,人工辨识率高。因可以选取的字符多种多样,且设置的验证图标也可以多种多样,每个小格内设置的字符是不重复的且是随机的,而且作为验证码字符组的字符也是小格内字符中随机选取的,故验证码字符组的字符范围大,随机性大,不确定性大,不可估计性也大;而且验证图标的设置也是随机的,且验证码字符组的字符和验证图标的组合也是随机的,组合千变万化;再加上背景图的干扰,大大提高了计算机程序识别的难度,很难通过猜测等方式破解,可以有效地防止恶意破解密码、刷票、论坛灌水等,在便于用户识别的同时极大地提高图片验证码的可靠性。
附图说明
[0021]图1是本申请一实施例提供的图片验证码生成方法的流程图;图2是本申请一实施例提供的图片验证码生成的初始化方法的流程图;图3是本申请一实施例提供的图片验证码生成的在每个小格内设置一个不重复的字符方法的流本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种图片验证码生成方法,其特征在于,包括:将背景图分割成若干个小格;在每个所述小格内设置一个不重复的字符;在所有所述字符中随机选取几个所述字符作为验证码字符组;在所述验证码字符组的所述字符对应的所述小格内设置验证图标;生成显示所述验证图标并要求根据所述验证图标输入字符的验证页面。2.如权利要求1所述的图片验证码生成方法,其特征在于,所述在所述验证码字符组的所述字符对应的所述小格内设置验证图标的步骤之后还包括:在所述小格内随机设置与所述验证图标不重复、且与所述验证图标位置不重合的干扰图标。3.如权利要求2所述的图片验证码生成方法,其特征在于,所述将背景图分割成若干个小格的步骤的之前还包括:初始化的步骤;所述初始化的步骤具体包括:设置背景图数据库和图标数据库;设置将每张所述背景图分割成的所述小格的数量;设置所述字符类型;设置所述验证码字符组的字符数量;接收用户终端发送的验证码请求;在所述背景图数据库内随机选取一张图作为背景图;在所述图标数据库内随机选取所述字符数量的所述验证图标;在所述图标数据库内随机选取与所述验证图标不同的所述干扰图标;所述字符类型为数字或字母或符号、或者为数字、字母、符号的任意组合。4.如权利要求3所述的图片验证码生成方法,其特征在于,所述将背景图分割成若干个小格的步骤具体为:将所述背景图平均分割成若干个小格。5.如权利要求4所述的图片验证码生成方法,其特征在于,所述在每个所述小格内设置一个不重复的字符的步骤具体为:按所述字符类型随机生成所述小格数量的不重复的字符;在每个所述小格内设置一个随机生成的不重复的所述字符。6.如权利要求5所述的图片验证码生成方法,其特征在于,所述生成显示所述验证图标并要求根据所述验证图标输入字符的验证页面具体为:按所述验证码字符组的顺序获取所述验证图标;在所述验证页面按顺序显示所述验证图标;设置根据所述验证图标...

【专利技术属性】
技术研发人员:梁金山
申请(专利权)人:深圳依时货拉拉科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1