CN107844696A - 一种验证码干扰方法及服务器 - Google Patents
一种验证码干扰方法及服务器 Download PDFInfo
- Publication number
- CN107844696A CN107844696A CN201610835528.XA CN201610835528A CN107844696A CN 107844696 A CN107844696 A CN 107844696A CN 201610835528 A CN201610835528 A CN 201610835528A CN 107844696 A CN107844696 A CN 107844696A
- Authority
- CN
- China
- Prior art keywords
- picture
- identifying code
- pixel
- webserver
- code
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/36—User authentication by graphic or iconic representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/60—Editing figures and text; Combining figures or text
Abstract
本发明实施例公开了一种验证码干扰方法,包括:将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;接收网络服务器发送的验证码获取请求;向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。本发明实施例还公开了一种验证码生成服务器。采用本发明实施例,可以提高验证码的抗破解能力。
Description
技术领域
本发明涉及电子技术领域,尤其涉及一种验证码干扰方法及服务器。
背景技术
验证码(CAPTCHA)是“Completely Automated Public Turing test to tellComputers and Humans Apart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机和人的公共全自动程序。验证码可以防止恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登陆尝试,因此必须提高验证码的抗破解能力来保护系统安全。
在现有技术方案中,一般采用的是纯色背景和前景加干扰线的验证码,但是,这种验证码字符与背景颜色相差较大,很容易得到做二值化处理的阈值,进而获取到字符区域,并且通过颜色直方图很容易找到单个字符的位置并分割出干扰线,且效果很好,加干扰线起到的作用很小,导致加干扰线的验证码的破解很高。
发明内容
本发明提供一种验证码干扰方法及服务器。可以解决现有技术方案中验证码抗破解能力差的问题。
本发明实第一方面提供了一种验证码干扰方法,包括:
将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;
对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;
接收网络服务器发送的验证码获取请求;
向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
相应地,本发明第二方面提供了一种验证码生成服务器,包括:
图片处理模块,用于将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;
验证码生成模块,用于对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;
信息接收模块,用于接收网络服务器发送的验证码获取请求;
信息发送模块,用于向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
实施本发明实施例,首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;其次对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;然后接收网络服务器发送的验证码获取请求;最后向网络服务器发送验证码图片,网络服务器将验证码图片转发到用户终端,用户终端显示验证码图片以提示用户输入校验码提交到网络服务器进行校验,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因而提高了验证码的抗破解能力。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种验证码干扰系统的架构示意图;
图2是本发明第一实施例提出的一种验证码干扰方法的流程示意图;
图3是本发明实施例提供的一种模糊图片处理的示意图;
图4是本发明实施例提供的一种验证码图片生成的示意图;
图5是本发明第二实施例提出的一种验证码干扰方法的流程示意图;
图6是本发明实施例提供的一种验证码生成服务器的结构示意图;
图7是本发明实施例提供的一种网络服务器的结构示意图;
图8是本发明实施例提供的一种用户终端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,图1是本发明实施例提供的一种验证码干扰系统的架构示意图。本发明实施例中的验证码干扰系统包括用户终端、网络服务器以及验证码生产服务器。其中,网络服务器可以包括Web服务器和验证服务器,由Web服务器和验证服务器共同完成网络服务器执行的操作,需要说明的是,网络服务器和验证码生成服务器也可以作为一个处理服务器,由该处理服务器完成验证码图片生成、信息交互和验证码校验的所有操作,因此该验证码干扰系统也可以仅包括用户终端和处理服务器。
请参考图2,图2是本发明第一实施例提出的一种验证码干扰方法的流程示意图。如图所示,本发明实施例的执行主体为验证码生成服务器,本发明实施例中的方法包括:
S201,将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片。
具体实现中,所述前景字符可以包括数字、英文字母等等,前景字符的个数可以包括但不局限于4个或5个,所述背景图片可以包括自然背景图片、人物背景图片等等。在生成模糊图片的过程中,可以获取所述多个像素点中目标像素点邻近的其他像素点中每个像素点的像素值;根据所述其他像素点中每个像素点到所述目标像素点的距离,计算所述其他像素点中每个像素点对应的权重;根据所述其他像素点中每个像素点对应的权重以及所述其他像素点中每个像素点的像素值,确定所述目标像素点的像素值,依次对背景图片中的每个像素点进行模糊处理,从而最终得到模糊图片。
进一步的,高斯模糊处理的权重分配满足正态分布曲线,可以将目标像素点作为原点,其他像素点按照到原点的距离确定在正态分布曲线上的横坐标,并根据该横坐标确定在正态分布曲线上的纵坐标,并将该纵坐标作为其他像素点对应的权重,距离原点越近,权重越大,距离原点越远,权重越小。
例如,如图3所示,目标像素点是中间像素点1,与目标像素点邻近的其他像素点包括像素点2、像素点3、像素点4、像素点5、像素点6、像素点7、像素点8和像素点9等8个像素点,可以分别计算8个像素点到目标像素点1的距离,将目标像素点作为原点,其他每个像素点按照该像素点到原点的距离分配权重,然后计算8个像素点的像素值的加权平均值作为目标像素点的像素值。
S202,对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片。
具体实现中,所述验证码图片中目标像素点的像素值
其中,srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。其中,图像融合是将多源信道所采集到的关于同一目标的图像数据经过图像处理和计算机技术等,最大限度的提取各自信道中的有利信息,最后综合成高质量的图像。
例如,如图4所示,字符内容图片modelimg包括FPTQ四个字符,对背景图片srcimg1、模糊图片srcimg2和字符内容图片modelimg进行图像融合处理得到验证码图片destimg,其中,透明验证码FPTQ四个字符所在的区域为透明色,可以显示背景图片srcimg1中的图像,透明验证码FPTQ四个字符所在的区域之外的其他部分显示模糊图片srcimg2。
可选的,可以将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种,从而增强识别难度,进一步提高抗破解能力。
S203,接收网络服务器发送的验证码获取请求。
具体实现中,用户终端可以向网络服务器发送网络访问请求,网络服务器在确认用户终端访问的内容需要验证码校验时,向验证码生成服务器发送验证码获取请求,验证码生成服务器接收验证码获取请求。
S204,向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
具体实现中,首先,验证码生成服务器接收到验证码获取请求之后,向网络服务器发送验证码图片,网络服务器接收到验证码图片之后,将验证码图片发送给用户终端,用户终端显示验证码图片,并提示用户输入校验码,然后,用户终端获取用户输入的校验码,并向网络服务器发送校验码,网络服务器根据从验证码生成服务器获取到的验证码图片,生成与所述验证码图片对应的特征签名,在网络服务器接收到用户终端发送的校验码之后,确定校验码是否与特征签名匹配,若校验码与特征签名匹配,则向用户终端发送第一提示信息,所述第一提示信息用于提示用户验证码输入正确,若校验码与特征签名不匹配,则向用户终端发送第二提示信息,所述第二提示信息用于提示用户验证码输入错误,并从验证码生成服务器中重新获取验证码图片发送到用户终端进行验证。
可选的,可以根据所述验证码图片,生成与所述验证码图片对应的特征签名;将所述特征签名发送给所述网络服务器,所述网络服务器接收到特征签名之后,可以根据所述特征签名对所述用户终端提交的校验码进行校验。
在本发明实施例中,首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片,并将验证码图片发送给用户终端并提示用户输入校验码进行验证,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因而提高了验证码的抗破解能力。
请参考图5,图5是本发明第二实施例提出的一种验证码干扰方法的流程示意图。如图所示,本发明实施例中的方法包括:
S501,验证码生成服务器将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片。
具体实现中,所述前景字符可以包括数字、英文字母等等,前景字符的个数可以包括但不局限于4个或5个,所述背景图片可以包括自然背景图片、人物背景图片等等。在生成模糊图片的过程中,可以获取所述多个像素点中目标像素点邻近的其他像素点中每个像素点的像素值;根据所述其他像素点中每个像素点到所述目标像素点的距离,计算所述其他像素点中每个像素点对应的权重;根据所述其他像素点中每个像素点对应的权重以及所述其他像素点中每个像素点的像素值,确定所述目标像素点的像素值,依次对背景图片中的每个像素点进行模糊处理,从而最终得到模糊图片。
进一步的,高斯模糊处理的权重分配满足正态分布曲线,可以将目标像素点作为原点,其他像素点按照到原点的距离确定在正态分布曲线上的横坐标,并根据该横坐标确定在正态分布曲线上的纵坐标,并将该纵坐标作为其他像素点对应的权重,距离原点越近,权重越大,距离原点越远,权重越小。
例如,如图3所示,目标像素点1是中间点,与目标像素点邻近的其他像素点包括像素点2、像素点3、像素点4、像素点5、像素点6、像素点7和像素点8和像素点9等8个像素点,可以分别计算8个像素点到目标像素点1的距离,将目标像素点作为原点,其他每个像素点按照该像素点到原点的距离分配权重,然后计算8个像素点的像素值的加权平均值作为目标像素点的像素值。
S502,验证码生成服务器对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片。
具体实现中,所述验证码图片中目标像素点的像素值
srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。其中,图像融合是将多源信道所采集到的关于同一目标的图像数据经过图像处理和计算机技术等,最大限度的提取各自信道中的有利信息,最后综合成高质量的图像。
例如,如图4所示,字符内容图片modelimg包括FPTQ四个字符,对背景图片srcimg1、模糊图片srcimg2和字符内容图片modelimg进行图像融合处理得到验证码图片destimg,其中,透明验证码FPTQ四个字符所在的区域为透明色,可以显示背景图片srcimg1中的图像,透明验证码FPTQ四个字符所在的区域之外的其他部分显示模糊图片srcimg2。
可选的,可以将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种,从而增强识别难度,进一步提高抗破解能力。
S503,用户终端向网络服务器发送网络访问请求。
S504,网络服务器向验证码生成服务器发送验证码获取请求。
具体实现中,网络服务器发送网络访问请求之后,网络服务器确认用户终端访问的内容是否需要验证码校验,在确认用户终端访问的内容需要验证码校验时,向验证码生成服务器发送验证码获取请求。
S505,验证码生成服务器向网络服务器发送验证码图片。
S506,网络服务器向用户终端发送验证码图片。
S507,用户终端获取用户输入的校验码,并将校验码发送给网络服务器。
具体实现中,用户终端接收到网络服务器发送的验证码图片之后,显示验证码图片,并提示用户输入的校验码,进而获取用户输入的校验码。
S508,网络服务器根据所述用户输入的校验码和所述验证码图片,确定校验结果。
具体实现中,可以根据所述验证码图片,生成与所述验证码图片对应的特征签名;确定所述用户输入的校验码是否与所述特征签名匹配;若所述用户输入的校验码与所述特征签名匹配,则确定所述校验结果为通过,若所述用户输入的校验码与所述特征签名匹配,则确定所述校验结果为不通过。
S509,网络服务器向用户终端发送校验结果。
具体实现中,网络服务器若确定校验码与特征签名匹配,则向用户终端发送第一提示信息,用户终端接收到第一提示信息之后,显示第一提示信息,所述第一提示信息用于提示用户验证码输入正确,若确定校验码与特征签名不匹配,则向用户终端发送第二提示信息,用户终端接收到第二提示信息之后,显示第二提示信息,所述第二提示信息用于提示用户验证码输入错误,此时,网络服务器可以从验证码生成服务器中重新获取验证码图片发送到用户终端进行验证。
在本发明实施例中,验证码生成服务器将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片,进而将验证码图片发送给用户终端提示用户输入校验码进行验证,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因此提高了验证码的抗破解能力。
请参考图6,图6是本发明实施例提供的一种验证码生服务器的结构示意图。如图所示,本发明实施例中的验证码生成服务器包括:
图片处理模块601,用于将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片。
具体实现中,所述前景字符可以包括数字、英文字母等等,前景字符的个数可以包括但不局限于4个或5个,所述背景图片可以包括自然背景图片、人物背景图片等等。在生成模糊图片的过程中,可以获取所述多个像素点中目标像素点邻近的其他像素点中每个像素点的像素值;根据所述其他像素点中每个像素点到所述目标像素点的距离,计算所述其他像素点中每个像素点对应的权重;根据所述其他像素点中每个像素点对应的权重以及所述其他像素点中每个像素点的像素值,确定所述目标像素点的像素值,依次对背景图片中的每个像素点进行模糊处理,从而最终得到模糊图片。
进一步的,高斯模糊处理的权重分配满足正态分布曲线,可以将目标像素点作为原点,其他像素点按照到原点的距离确定在正态分布曲线上的横坐标,并根据该横坐标确定在正态分布曲线上的纵坐标,并将该纵坐标作为其他像素点对应的权重,距离原点越近,权重越大,距离原点越远,权重越小。
例如,如图3所示,目标像素点是中间像素点1,与目标像素点邻近的其他像素点包括像素点2、像素点3、像素点4、像素点5、像素点6、像素点7、像素点8和像素点9等8个像素点,可以分别计算8个像素点到目标像素点1的距离,将目标像素点作为原点,其他每个像素点按照该像素点到原点的距离分配权重,然后计算8个像素点的像素值的加权平均值作为目标像素点的像素值。
验证码生成模块602,用于对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片。
具体实现中,所述验证码图片中目标像素点的像素值
其中,srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。
例如,如图4所示,字符内容图片modelimg包括FPTQ四个字符,对背景图片srcimg1、模糊图片srcimg2和字符内容图片modelimg进行图像融合处理得到验证码图片destimg,其中,透明验证码FPTQ四个字符所在的区域为透明色,可以显示背景图片srcimg1中的图像,透明验证码FPTQ四个字符所在的区域之外的其他部分显示模糊图片srcimg2。
信息接收模块603,用于接收网络服务器发送的验证码获取请求。
具体实现中,用户终端可以向网络服务器发送网络访问请求,网络服务器确认用户终端访问的内容是否需要验证码校验,在确认用户终端访问的内容需要验证码校验时,向验证码生成服务器发送验证码获取请求,进而接收验证码获取请求。
信息发送模块604,用于向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
具体实现中,首先网络服务器接收到验证码图片之后,将验证码图片发送给用户终端,用户终端显示验证码图片,并提示用户输入校验码,然后用户终端获取用户输入的校验码,并向网络服务器发送校验码,网络服务器根据预先从验证码生成服务器获取到的验证码图片,生成与所述验证码图片对应的特征签名,在网络服务器接收到用户终端发送的校验码之后,确定校验码是否与特征签名匹配,若校验码与特征签名匹配,则向用户终端发送第一提示信息,所述第一提示信息用于提示用户验证码输入正确,若校验码与特征签名不匹配,则向用户终端发送第二提示信息,所述第二提示信息用于提示用户验证码输入错误,并从验证码生成服务器中重新获取验证码图片发送到用户终端进行验证。
可选的,可以根据所述验证码图片,生成与所述验证码图片对应的特征签名;将所述特征签名发送给所述网络服务器,以使所述网络服务器根据所述特征签名对所述用户终端提交的校验码进行校验。
可选的,如图6所示,验证码生成服务器还可以进一步包括:
特征加入模块605,用于将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种,从而增强识别难度,进一步提高抗破解能力。
在本发明实施例中,首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片,并将验证码图片发送给用户终端并提示用户输入校验码进行验证,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因而提高了验证码的抗破解能力。
请参考图7,图7是本发明实施例提供的一种网络服务器的结构示意图。如图所示,本发明实施例中的网络服务器包括:
信息接收模块701,用于接收用户终端发送的网络访问请求。
信息发送模块702,用于根据所述网络访问请求,向验证码生成服务器发送验证码获取请求,以使所述验证码生成服务器返回预先生成的验证码图片,所述验证码图片由所述验证码生成服务器将前景字符绘制在空白画板上生成得到字符内容图片和对背景图片进行高斯模糊处理生成得到模糊图片、并对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到的。
具体实现中,用户终端向网络服务器发送网络访问请求之后,网络服务器如果确认用户终端访问的内容需要验证码校验,向验证码生成服务器发送验证码获取请求,验证码生成服务器接收验证码获取请求之后,获取预先生成的验证码图片,并向网络服务器发送验证码图片。
其中,验证码生成服务器首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片。其中,所述验证码图片中目标像素点的像素值srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。
例如,如图4所示,字符内容图片modelimg包括FPTQ四个字符,对背景图片srcimg1、模糊图片srcimg2和字符内容图片modelimg进行图像融合处理得到验证码图片destimg,其中,透明验证码FPTQ四个字符所在的区域为透明色,可以显示背景图片srcimg1中的图像,透明验证码FPTQ四个字符所在的区域之外的其他部分显示模糊图片srcimg2。
可选的,可以将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种,从而增强识别难度,进一步提高抗破解能力。
信息接收模块701,还用于接收所述验证码生成服务器返回的所述验证码图片。
信息发送模块702,还用于将所述验证码图片发送给所述用户终端,以使所述用户终端显示所述特征特征码以提示用户输入校验码提交到网络服务器进行校验。
具体实现中,首先用户终端接收到验证码图片之后,显示验证码图片,并提示用户输入校验码,然后获取用户输入的校验码,并向网络服务器发送校验码。信息接收模块701接收用户终端发送的用户输入的校验码;根据所述用户输入的校验码和所述验证码图片,确定校验结果。
进一步的,可以根据所述验证码图片,生成与所述验证码图片对应的特征签名;确定所述用户输入的校验码是否与所述特征签名匹配;若所述用户输入的校验码与所述特征签名匹配,则确定所述校验结果为通过,若所述用户输入的校验码与所述特征签名匹配,则确定所述校验结果为不通过。
可选的,可以向所述用户终端发送所述校验结果。进一步的,可以确定校验码是否与特征签名匹配,若校验码与特征签名匹配,则向用户终端发送第一提示信息,所述第一提示信息用于提示用户验证码输入正确,若校验码与特征签名不匹配,则向用户终端发送第二提示信息,所述第二提示信息用于提示用户验证码输入错误,并从验证码生成服务器中重新获取验证码图片发送到用户终端进行验证。
在本发明实施例中,首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片,并最终发送给用户终端并提示用户输入校验码进行验证,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因而提高了验证码的抗破解能力。
请参考图8,图8是本发明实施例提供的一种用户终端的结构示意图。如图所示,本发明实施例中的用户终端包括:
信息发送模块801,用于向网络服务器发送网络访问请求,以使所述网络服务器向验证码生成服务器发送验证码获取请求,使得所述验证码生成服务器返回预先生成的验证码图片,所述验证码图片由所述验证码生成服务器将前景字符绘制在空白画板上生成得到字符内容图片和对背景图片进行高斯模糊处理生成得到模糊图片、并对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到的;
具体实现中,网络服务器接收到网络访问请求之后,首先确认用户终端访问的内容是否需要验证码校验,当确认用户终端访问的内容需要验证码校验时,向验证码生成服务器发送验证码获取请求,验证码生成服务器接收验证码获取请求之后,获取预先生成的验证码图片,并向网络服务器发送验证码图片,网络服务器接收验证码生成服务器发送的验证码图片。
其中,验证码生成服务器首先将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片。其中,所述验证码图片中目标像素点的像素值srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。
例如,如图4所示,字符内容图片modelimg包括FPTQ四个字符,对背景图片srcimg1、模糊图片srcimg2和字符内容图片modelimg进行图像融合处理得到验证码图片destimg,其中,透明验证码FPTQ四个字符所在的区域为透明色,可以显示背景图片srcimg1中的图像,透明验证码FPTQ四个字符所在的区域之外的其他部分显示模糊图片srcimg2。
可选的,可以将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种,从而增强识别难度,进一步提高抗破解能力。
信息接收模块802,用于接收所述网络服务器返回的所述验证码图片;
信息显示模块803,用于显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
具体实现中,可以获取用户输入的校验码;将所述用户输入的校验码发送到所述网络服务器,以使所述网络服务器根据所述用户输入的校验码和所述验证码图片确定校验结果,然后接收所述网络服务器发送的所述校验结果,并显示所述校验结果。
进一步的,网络服务器可以根据所述验证码图片,生成与所述验证码图片对应的特征签名,确定用户输入的校验码是否与特征签名匹配,若校验码与特征签名匹配,则向用户终端发送第一提示信息,用户终端接收到第一提示信息之后,显示第一提示信息,所述第一提示信息用于提示用户验证码输入正确,若校验码与特征签名不匹配,则向用户终端发送第二提示信息,用户终端接收到第二提示信息之后,显示第二提示信息,所述第二提示信息用于提示用户验证码输入错误,此时,网络服务器可以从验证码生成服务器中重新获取验证码图片发送到用户终端进行验证。
在本发明实施例中,验证码生成服务器将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;然后对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片,进而发送给用户终端提示用户输入校验码进行验证,由于验证码图片使用的是复杂的自然图片,字符颜色和背景通过透明度来进行展示,不能通过颜色阈值进行二值化处理进而无法获取到字符区域,因此提高了验证码的抗破解能力。
需要说明的是,对于前述的各个方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某一些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本发明实施例所提供的内容下载方法及相关设备、系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种验证码干扰方法,其特征在于,所述方法包括:
将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;
对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;
接收网络服务器发送的验证码获取请求;
向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
2.如权利要求1所述的方法,其特征在于,所述背景图片包括多个像素点所述对背景图片进行高斯模糊处理生成得到模糊图片包括:
获取所述多个像素点中目标像素点邻近的其他像素点中每个像素点的像素值;
根据所述其他像素点中每个像素点到所述目标像素点的距离,计算所述其他像素点中每个像素点对应的权重;
根据所述其他像素点中每个像素点对应的权重以及所述其他像素点中每个像素点的像素值,确定所述目标像素点的像素值。
3.如权利要求1所述的方法,其特征在于,所述验证码图片中目标像素点的像素值其中,srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。
4.如权利要求1所述的方法,其特征在于,所述对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片之后,还包括:
将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种。
5.如权利要求1-4所述的方法,其特征在于,所述向所述网络服务器发送所述验证码图片之后,还包括:
根据所述验证码图片,生成与所述验证码图片对应的特征签名;
将所述特征签名发送给所述网络服务器,以使所述网络服务器根据所述特征签名对所述用户终端提交的校验码进行校验。
6.一种验证码生成服务器,其特征在于,所述服务器包括:
图片处理模块,用于将前景字符绘制在空白画板上生成得到字符内容图片,并对背景图片进行高斯模糊处理生成得到模糊图片;
验证码生成模块,用于对所述背景图片、所述模糊图片和所述字符内容图片进行图像融合处理得到验证码图片;
信息接收模块,用于接收网络服务器发送的验证码获取请求;
信息发送模块,用于向所述网络服务器发送所述验证码图片,以使所述网络服务器将所述验证码图片发送到用户终端,使得所述用户终端显示所述验证码图片以提示用户输入校验码提交到所述网络服务器进行校验。
7.如权利要求6所述的服务器,其特征在于,所述背景图片包括多个像素点,所述图片处理模块具体用于:
获取所述多个像素点中目标像素点邻近的其他像素点中每个像素点的像素值;
根据所述其他像素点中每个像素点到所述目标像素点的距离,计算所述其他像素点中每个像素点对应的权重;
根据所述其他像素点中每个像素点对应的权重以及所述其他像素点中每个像素点的像素值,确定所述目标像素点的像素值。
8.如权利要求6所述的服务器,其特征在于,所述验证码图片中目标像素点的像素值其中,srcimg1(i,j)为所述背景图片中目标像素点的像素值,srcimg2(i,j)为所述模糊图片中目标像素点的像素值,modelimg(i,j)为所述字符内容图片中目标像素点的像素值。
9.如权利要求6所述的服务器,其特征在于,所述服务器还包括:
特征加入模块,用于将干扰特征加入到所述验证码图片中,所述干扰特征包括干扰线、扭曲状态、粘连状态中的至少一种。
10.如权利要求6-9所述的服务器,其特征在于,
所述信息发送模块,还用于根据所述验证码图片,生成与所述验证码图片对应的特征签名;将所述特征签名发送给所述网络服务器,以使所述网络服务器根据所述特征签名对所述用户终端提交的校验码进行校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610835528.XA CN107844696B (zh) | 2016-09-20 | 2016-09-20 | 一种验证码干扰方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610835528.XA CN107844696B (zh) | 2016-09-20 | 2016-09-20 | 一种验证码干扰方法及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107844696A true CN107844696A (zh) | 2018-03-27 |
CN107844696B CN107844696B (zh) | 2021-07-27 |
Family
ID=61657344
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610835528.XA Active CN107844696B (zh) | 2016-09-20 | 2016-09-20 | 一种验证码干扰方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107844696B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821786A (zh) * | 2020-06-18 | 2021-12-21 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
WO2022105582A1 (zh) * | 2020-11-20 | 2022-05-27 | 北京字节跳动网络技术有限公司 | 一种验证码处理方法、装置、设备及存储介质 |
CN115150186A (zh) * | 2022-07-27 | 2022-10-04 | 张瑜 | 验证码校验方法、系统、电子设备及存储介质 |
CN113821786B (zh) * | 2020-06-18 | 2024-05-10 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101923702A (zh) * | 2010-08-25 | 2010-12-22 | 郝红卫 | 一种图片验证码的生成方法 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
CN102831568A (zh) * | 2012-08-03 | 2012-12-19 | 网易(杭州)网络有限公司 | 一种生成验证码图片的方法和装置 |
CN102947837A (zh) * | 2010-06-22 | 2013-02-27 | 微软公司 | 人机交互证明引擎的自动构造 |
CN103400107A (zh) * | 2013-07-05 | 2013-11-20 | 百度在线网络技术(北京)有限公司 | 动态验证码图片的生成方法、装置以及验证方法和装置 |
-
2016
- 2016-09-20 CN CN201610835528.XA patent/CN107844696B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102947837A (zh) * | 2010-06-22 | 2013-02-27 | 微软公司 | 人机交互证明引擎的自动构造 |
CN101923702A (zh) * | 2010-08-25 | 2010-12-22 | 郝红卫 | 一种图片验证码的生成方法 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
CN102831568A (zh) * | 2012-08-03 | 2012-12-19 | 网易(杭州)网络有限公司 | 一种生成验证码图片的方法和装置 |
CN103400107A (zh) * | 2013-07-05 | 2013-11-20 | 百度在线网络技术(北京)有限公司 | 动态验证码图片的生成方法、装置以及验证方法和装置 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113821786A (zh) * | 2020-06-18 | 2021-12-21 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
CN113821786B (zh) * | 2020-06-18 | 2024-05-10 | 中移(苏州)软件技术有限公司 | 一种验证码的获得及显示方法、相关装置 |
WO2022105582A1 (zh) * | 2020-11-20 | 2022-05-27 | 北京字节跳动网络技术有限公司 | 一种验证码处理方法、装置、设备及存储介质 |
CN115150186A (zh) * | 2022-07-27 | 2022-10-04 | 张瑜 | 验证码校验方法、系统、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107844696B (zh) | 2021-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106533696B (zh) | 基于区块链的身份认证方法、认证服务器及用户终端 | |
CN104767613B (zh) | 签名验证方法、装置及系统 | |
CN107872772B (zh) | 诈骗短信的检测方法及装置 | |
CN107786547A (zh) | 一种基于区块链的身份验证方法、装置及计算机可读存储介质 | |
CN107707970A (zh) | 一种电子合同签署方法、系统及终端 | |
CN109801192A (zh) | 电子合同签订方法、装置、计算机设备及存储介质 | |
CN108875404B (zh) | 基于机器学习的数据脱敏方法、装置及存储介质 | |
US8522327B2 (en) | Multi-step captcha with serial time-consuming decryption of puzzles | |
CN106533690B (zh) | 采用区块链资产处理终端的数字资产处理方法 | |
CN109863520A (zh) | 基于区块链的钱包系统及钱包使用方法、以及存储介质 | |
CN104767714B (zh) | 一种用户标识与用户资源信息的关联方法、终端及系统 | |
CN106549973A (zh) | 一种基于生物特征识别的客户端及其工作方法 | |
CN107392618A (zh) | 植入智能合约的方法和设备 | |
CN106779716A (zh) | 基于区块链账户地址的认证方法、装置及系统 | |
CN109844787A (zh) | 一种基于区块链的硬件钱包、交易系统以及存储介质 | |
CN106330448B (zh) | 一种用户合法性验证方法、装置及系统 | |
CN107688733B (zh) | 业务接口调用方法、装置、用户终端和可读存储介质 | |
CN108989269A (zh) | 获取验证码的方法、装置和系统 | |
CN104092653B (zh) | 一种数据处理的方法和系统 | |
CN105354464A (zh) | 基于指纹信息识别用户身份的方法和装置 | |
CN108154362A (zh) | 基于图形条码的交易方法、装置及系统 | |
CN102664736A (zh) | 电子密码生成方法、装置和设备以及电子密码认证系统 | |
CN110363509A (zh) | 一种信息保护方法及装置 | |
CN110113334A (zh) | 基于区块链的合同处理方法、设备及存储介质 | |
CN105491116A (zh) | 一种跨窗口提交数据的方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |