一种二级图片验证码的实现方法及系统的制作方法

文档序号:6353434阅读:375来源:国知局
专利名称:一种二级图片验证码的实现方法及系统的制作方法
技术领域
本发明涉及一种二级图片验证码的实现方法及系统,属于网络通信领域。
背景技术
图片验证码的主要功能是区分网络用户是机器还是人,强制人机交互来抵御机器自动化攻击。因为机器破解验证码的成功率比人低的多,所以不少网站为了防止网络用户利用机器批量注册、登录、论坛灌水、恶意破解密码、刷票等行为,都采用了图片验证码作为网站通行的方式。对于现有的图片验证码,人通过验证的概率大概在80% 90%,而机器通过验证的成功率为30%左右。但是如果机器进行大量、暴力的破解,不仅会通过验证,使安全认证的可靠性和网络公平性下降,也会造成大量数据冗余,增加网站服务器的压力。

发明内容
本发明的目的在于,提供一种二级图片验证码的实现方法及系统,它能防止机器暴力破解验证码行为,增强安全认证的可靠性和网络公平性,减小网站服务器压力。为解决上述技术问题,本发明采用如下的技术方案一种二级图片验证码的实现方法,包括以下步骤Si,后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;S2,当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;S3,客户端显示二级图片验证码。所述一级图片验证码是用户登录、发帖、评论等出现异常行为的情况下,网页自动弹出的。异常行为包括a. 一台计算机使用同一个IP地址输入用户名和密码登录时出现3次错误;b. 一台计算机使用同一个IP地址一天发帖次数超过20次;c. 一台计算机使用同一个IP地址对同一帖子连续评论超过10次。前述的一种二级图片验证码的实现方法中,所述步骤Sl中的验证码阈值是按照网页的重要程度设置的,验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。前述的一种二级图片验证码的实现方法中,所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。前述的一种二级图片验证码的实现方法中,所述步骤S2中后台服务器生成二级图片验证码包括S21,随机生成N个字符,并标识这N个字符;所述字符包括字母、数字、汉字和符号;二级图片验证码的字符数N多于一级图片验证码的字符数,增加了验证码的复杂度;
S22,从颜色库中随机选取颜色分配给图片的背景和字符;S23,将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;S24,加粗字符使相邻两个字符有重叠部分;S25,将干扰线和字符进行随机扭曲。实现前述方法的一种二级图片验证码的实现系统,它包括监测模块,用于后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;生成模块,用于当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;显示模块,用于客户端显示二级图片验证码;其中,监测模块、生成模块和显示模块顺次连接。所述一级图片验证码是用户登录、发帖、评论等出现异常行为的情况下,网页自动弹出的。异常行为包括a. 一台计算机使用同一个IP地址输入用户名和密码登录时出现3次错误;b. 一台计算机使用同一个IP地址一天发帖次数超过20次;c. 一台计算机使用同一个IP地址对同一帖子连续评论超过10次。前述的一种二级图片验证码的实现系统中,所述监测模块中的验证码阈值是按照网页的重要程度设置的,验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。前述的一种二级图片验证码的实现系统中,所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。前述的一种二级图片验证码的实现系统,所述生成模块包括生成标识模块,用于随机生成N个字符,并标识这N个字符;所述字符包括字母、数字、汉字和符号;二级图片验证码的字符数N多于一级图片验证码的字符数,增加了验证码的复杂度;颜色分配模块,用于从颜色库中随机选取颜色分配给图片的背景和字符;干扰模块,用于将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;加粗模块,用于加粗字符使相邻两个字符有重叠部分;扭曲模块,用于将干扰线和字符进行随机扭曲;其中,生成标识模块、颜色分配模块、干扰模块、加粗模块和扭曲模块顺次连接。与现有技术相比,本发明自动监测用户输入的一级图片验证码的错误次数是否达到网站服务商预设的验证码阈值,如果达到预设的验证码阈值,就会生成比一级图片验证码复杂度更高的二级图片验证码。所述验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小,更智能地限制机器破解验证码行为;二级图片验证码的字符数较之一级图片验证码更多,又对字符进行干扰扭曲,使得图片辨识度变低,使机器通过验证的概率从30%降低到20%以下,防止了机器暴力破解验证码行为,增强了安全认证的可靠性和网络公平性,使服务器对机器批量注册、登录等行为的网络和存储消耗降低了 30 %左右,减小了网站服务器压力。


图1是本发明的一种实施例的结构示意图;图2是本发明的一种实施例的工作流程图。附图标记1-监测模块,2-生成模块,3-显示模块,4-字符生成模块,5-颜色分配模块,6-干扰模块,7-加粗模块,8-扭曲模块。下面结合附图和具体实施方式
对本发明作进一步的说明。
具体实施例方式
具体实施例方式一种二级图片验证码的实现方法,包括以下步骤Si,后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;S2,当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;S3,客户端显示二级图片验证码。所述一级图片验证码是用户登录、发帖、评论等出现异常行为的情况下,网页自动弹出的。异常行为包括a. 一台计算机使用同一个IP地址输入用户名和密码登录时出现3次错误;b. 一台计算机使用同一个IP地址一天发帖次数超过20次;c. 一台计算机使用同一个IP地址对同一帖子连续评论超过10次。所述步骤Sl中的验证码阈值是按照网页的重要程度设置的,验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。所述步骤S2中后台服务器生成二级图片验证码包括S21,随机生成N个字符,并标识这N个字符;所述字符包括字母、数字、汉字和符号;二级图片验证码的字符数N多于一级图片验证码的字符数,增加了验证码的复杂度;S22,从颜色库中随机选取颜色分配给图片的背景和字符;S23,将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;S24,加粗字符使相邻两个字符有重叠部分;S25,将干扰线和字符进行随机扭曲。实现前述方法的一种二级图片验证码的实现系统,结构如图1所示,它包括监测模块1,用于后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;生成模块2,用于当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;显示模块3,用于客户端显示二级图片验证码;其中,监测模块1、生成模块2和显示模块3顺次连接。所述一级图片验证码是用户登录、发帖、评论等出现异常行为的情况下,网页自动弹出的。异常行为包括
a. 一台计算机使用同一个IP地址输入用户名和密码登录时出现3次错误;b. 一台计算机使用同一个IP地址一天发帖次数超过20次;c. 一台计算机使用同一个IP地址对同一帖子连续评论超过10次。所述验证码阈值是按照网页的重要程度设置的,它的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。所述生成模块2包括生成标识模块4,用于随机生成N个字符,并标识这N个字符;所述字符包括字母、 数字、汉字和符号;二级图片验证码的字符数N多于一级图片验证码的字符数,增加了验证码的复杂度;颜色分配模块5,用于从颜色库中随机选取颜色分配给图片的背景和字符;干扰模块6,用于将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;加粗模块7,用于加粗字符使相邻两个字符有重叠部分;扭曲模块8,用于将干扰线和字符进行随机扭曲;其中,生成标识模块4、颜色分配模块5、干扰模块6、加粗模块7和扭曲模块8顺次连接。本发明的一种实施例的工作流程(如图2所示)Si,后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;S2,当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;S3,客户端显示二级图片验证码。本发明的一种实施例的二级图片验证码生成的工作流程S21,随机生成N个字符,并标识这N个字符;S22,从颜色库中随机选取颜色分配给图片的背景和字符;S23,将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;S24,加粗字符使相邻两个字符有重叠部分;S25,将干扰线和字符进行随机扭曲。实例说明当后台服务器上的监测模块1监测到用户输入一级图片验证码的错误次数达到网站服务商预设的验证码阈值,后台服务器上的生成模块2会生成二级图片验证码。所述验证码阈值是按照网页的重要程度设置的,它的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小,例如a.对于用户注册页面,同一台计算机每天使用同一个IP地址被允许输入一级图片验证码的次数最大值,即验证码阈值为3次;b.对于用户登录页面,同一台计算机每天使用同一个IP地址被允许输入一级图片验证码的次数最大值,即验证码阈值为5次;c.对于加入群或者空间页面,同一台计算机每天使用同一个IP地址被允许输入一级图片验证码的次数最大值,即验证码阈值为5 6次。
d.对于论坛回帖页面,同一台计算机每天使用同一个IP地址被允许输入一级图片验证码的次数最大值,即验证码阈值为6次。生成模块2上的生成标识模块4随机生成N个字符,并标识这N个字符;生成模块 2上的颜色分配模块5从颜色库中随机选取颜色分配给图片的背景和字符;生成模块2上的干扰模块6将图片分成若干区域,从每个区域中抽取一个点,连接所有点形成干扰线;生成模块2上的加粗模块7加粗字符,使相邻两个字符有重叠部分;生成模块2上的扭曲模块 8将干扰线和字符进行随机扭曲。通过上述模块生成的二级图片验证码的图片比一级图片验证码的图片复杂度高,辨识度也比一级图片验证码的图片辨识度低,使得机器通过验证的概率降低。最后用户通过客户端上的显示模块3显示的二级图片验证码进行二级验证。
权利要求
1.一种二级图片验证码的实现方法,其特征在于,包括以下步骤Si,后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;S2,当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;S3,客户端显示二级图片验证码。
2.根据权利要求1所述的一种二级图片验证码的实现方法,其特征在于所述步骤Sl 中的验证码阈值是按照网页的重要程度设置的,验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。
3.根据权利要求1所述的一种二级图片验证码的实现方法,其特征在于所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。
4.实现权利要求1 3所述方法的一种二级图片验证码的实现系统,其特征在于,包括监测模块(1),用于后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;生成模块O),用于当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;显示模块(3),用于客户端显示二级图片验证码; 其中,监测模块(1)、生成模块( 和显示模块C3)顺次连接。
5.根据权利要求4所述的一种二级图片验证码的实现系统,其特征在于所述监测模块(1)中的验证码阈值是按照网页的重要程度设置的,验证码阈值的大小与网页的重要程度成反比,网页的重要程度越高,验证码阈值越小。
6.根据权利要求4所述的一种二级图片验证码的实现系统,其特征在于所述二级图片验证码的图片辨识度低于一级图片验证码的图片辨识度。
全文摘要
本发明公开了一种二级图片验证码的实现方法及系统,所述方法包括以下步骤S1,后台服务器监测用户输入一级图片验证码的错误次数是否达到预设的验证码阈值;S2,当用户输入验证码的错误次数达到预设的验证码阈值,后台服务器生成二级图片验证码;S3,客户端显示二级图片验证码。本发明能防止机器暴力破解验证码行为,增强安全认证的可靠性和网络公平性,减小网站服务器压力。
文档编号G06T1/00GK102255880SQ20111002252
公开日2011年11月23日 申请日期2011年1月20日 优先权日2011年1月20日
发明者叶剑峰, 闫洁 申请人:北京开心人信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1