验证码的生成方法、验证方法及相应装置制造方法及图纸

技术编号:14257512 阅读:31 留言:0更新日期:2016-12-22 21:20
本发明专利技术实施例公开了验证码的生成方法、验证方法及相应装置。验证码的生成方法包括:从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符;从全部单位字符中随机选取至少一个字符作为目标单位字符;对目标单位字符进行倒置处理;根据倒置后的目标单位字符和剩余单位字符生成验证码图片;根据目标单位字符在所生成的验证码图片中的位置信息和验证码图片生成验证码。本发明专利技术实施例通过采用上述技术方案,降低验证码被暴力破解的概率,提高验证码的安全性,用户在进行验证码验证时仅需要通过点击倒置字符的方式即可轻松实现验证,操作简单,增强验证码的易用性,可提升用户体验。

【技术实现步骤摘要】

本专利技术实施例涉及信息安全
,尤其涉及验证码的生成方法、验证方法及相应装置
技术介绍
全自动区分计算机和人类的图灵测试(Completely Automated Public Turing test to tell Computers and Humans Apart,CAPTCHA),俗称验证码,是一种区分用户是计算机还是人的公共全自动程序。验证码作为一种辅助安全手段已在众多网页及应用程序等方面被广泛采用。常规的验证码一般为由一定数量的数字、字母或者文字等字符随机组合形成的图片,用户在观察验证码图片后,将其中包含的字符输入到指定区域,若输入正确,则验证通过。然而,用户在输入过程中,通常需要切换输入法以实现不同种类字符的正确输入,用户操作复杂,且中文输入费时费力,操作成本较高,在移动终端中表现尤为明显。此外,由于计算机对单个字符的识别率较高,若成功将验证码图片拆分成一个个字符图片,则可能会被暴力破解,验证码的安全性得不到保障。若为增强安全性而频繁更换字体或样式,又会提高验证码的制作和维护成本。
技术实现思路
本专利技术实施例的目的是提供验证码的生成方法、验证方法及相应装置,以优化现有的验证码生成方案以及验证方案。第一方面,本专利技术实施例提供了一种验证码的生成方法,包括:从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符;从所述全部单位字符中随机选取至少一个字符作为目标单位字符;对所述目标单位字符进行倒置处理;根据倒置后的目标单位字符和剩余单位字符生成验证码图片;根据所述目标单位字符在所生成的验证码图片中的位置信息和所述验证码图片生成验证码。第二方面,本专利技术实施例提供了一种验证码的验证方法,应用于对采用本专利技术实施例第一方面所述的验证码的生成方法所生成的验证码进行验证,所述验证方法包括:获取用户作用于所述验证码对应的验证码图片上的点击操作的点击位置信息;将所述点击位置信息与目标单位字符在所述验证码图片中的位置信息进行匹配,根据匹配结果确定验证是否通过。第三方面,本专利技术实施例提供了一种验证码的生成装置,包括:单位字符选取模块,用于从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符;目标单位字符选取模块,用于从所述全部单位字符中随机选取至少一个字符作为目标单位字符;倒置处理模块,用于对所述目标单位字符进行倒置处理;验证码图片生成模块,用于根据倒置后的目标单位字符和剩余单位字符生成验证码图片;验证码生成模块,用于根据所述目标单位字符在所生成的验证码图片中的位置信息和所述验证码图片生成验证码。第四方面,本专利技术实施例提供了一种验证码的验证装置,应用于对采用本专利技术实施例第一方面所述的验证码的生成方法所生成的验证码进行验证,所述验证装置包括:点击位置信息获取模块,用于获取用户作用于所述验证码对应的验证码图片上的点击操作的点击位置信息;验证模块,用于将所述点击位置信息与目标单位字符在所述验证码图片中的位置信息进行匹配,根据匹配结果确定验证是否通过。本专利技术实施例中提供的验证码生成方案,从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符,从全部单位字符中随机选取至少一个字符作为目标单位字符,对目标单位字符进行倒置处理,根据倒置后的目标单位字符和剩余单位字符生成验证码图片,根据目标单位字符在所生成的验证码图片中的位置信息和验证码图片生成验证码。通过采用上述技术方案,验证码图片中包含倒置的字符,在保证低制作成本的情况下增加了计算机对各个字符进行拆分的难度,降低验证码被暴力破解的概率,提高验证码的安全性;并且,用户在进行验证码验证时仅需要通过点击倒置字符的方式即可轻松实现验证,操作简单,增强验证码的易用性,可提升用户体验。附图说明图1a为现有技术中的一种字符输入式验证码的示意图;图1b为现有技术中的又一种字符输入式验证码的示意图;图2为现有技术中的一种图形拖动式验证码的示意图;图3为现有技术中的一种图形点击式验证码的示意图;图4为现有技术中的一种行为验证码的示意图;图5为本专利技术实施例一提供的一种验证码的生成方法的流程示意图;图6a为本专利技术实施例一提供的一种倒置处理效果示意图;图6b为本专利技术实施例一提供的又一种倒置处理效果示意图;图7为本专利技术实施例二提供的一种验证码的生成方法的流程示意图;图8为本专利技术实施例二提供的一种验证码图片示意图;图9为本专利技术实施例三提供的一种验证码的生成方法的流程示意图;图10为本专利技术实施例三提供的一种验证码图片示意图;图11为本专利技术实施例四提供的一种验证码的验证方法的流程示意图;图12为本专利技术实施例四提供的一种有效点击区域示意图;图13a为本专利技术实施例四提供的验证码验证过程第一示意图;图13b为本专利技术实施例四提供的验证码验证过程第二示意图;图13c为本专利技术实施例四提供的验证码验证过程第三示意图;图14为本专利技术实施例五提供的一种验证码的生成装置的结构框图;图15为本专利技术实施例六提供的一种验证码的验证装置的结构框图。具体实施方式下面结合附图并通过具体实施方式来进一步说明本专利技术的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本专利技术,而非对本专利技术的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本专利技术相关的部分而非全部结构。在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。为了方便理解本专利技术实施例的技术方案以及相应的有益效果,首先对现有技术中几种常见的验证码进行介绍。(1)字符输入式验证码图1a为现有技术中的一种字符输入式验证码的示意图;图1b为现有技术中的又一种字符输入式验证码的示意图。字符输入式验证码是最为常见的一种验证码,通常有英文字符数字混合验证码(如图1a所示)和中文验证码(如图1b所示)两种。用户在输入过程中,通常需要切换输入法以实现不同种类字符的正确输入,用户操作复杂,且中文输入费时费力,操作成本较高,在移动终端中表现尤为明显。此外,K Chellapilla等人在2005年的论文中提出,现有技术对于单个英文字符可以达到很高的识别率。若成功将验证码图片拆分成一个个字符图片,则可能会被暴力破解,验证码的安全性得不到保障。(2)图形拖动式验证码图2为现有技术中的一种图形拖动式验证码的示意图,如图2所示,此类验证码通过让用户将一张图片的缺失部分拖拽到对应位置来进行验证,但是这类验证码通常会用很明显的边界标识出图片最终要到达的部分,识别成本比较低,而且拖动是可以由机器模拟的,所以安全性偏低。(3)图形点击式验证码图3为现有技术中的一种图形点击式验证码的示意图,如图3所示,用户需要根据提示点击符合提示内容的图片,此类验证码需要维护一个巨大的图片库,而且需要不断更新,否则很容易会被暴力破解。此外,为了降低被破解的概率,图片内容有些不容易辨认,用户也很可能选错,用户体验不佳。(4)行为验证码图4为现有本文档来自技高网...
验证码的生成方法、验证方法及相应装置

【技术保护点】
一种验证码的生成方法,其特征在于,包括:从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符;从所述全部单位字符中随机选取至少一个字符作为目标单位字符;对所述目标单位字符进行倒置处理;根据倒置后的目标单位字符和剩余单位字符生成验证码图片;根据所述目标单位字符在所生成的验证码图片中的位置信息和所述验证码图片生成验证码。

【技术特征摘要】
1.一种验证码的生成方法,其特征在于,包括:从验证码字符库中随机选取预设数量的字符,得到待生成的验证码图片包含的全部单位字符;从所述全部单位字符中随机选取至少一个字符作为目标单位字符;对所述目标单位字符进行倒置处理;根据倒置后的目标单位字符和剩余单位字符生成验证码图片;根据所述目标单位字符在所生成的验证码图片中的位置信息和所述验证码图片生成验证码。2.根据权利要求1所述的方法,其特征在于,所述字符包括中文字符。3.根据权利要求1所述的方法,其特征在于,根据倒置后的目标单位字符和剩余单位字符生成验证码图片,包括:按照预设规则调整倒置后的目标单位字符和剩余单位字符中的每两个相邻的单位字符之间的间距,以使每两个相邻的单位字符部分重合;根据经过间距调整后的全部单位字符生成验证码图片。4.根据权利要求1所述的方法,其特征在于,对所述目标单位字符进行倒置处理,包括:将所述全部单位字符中的每个单位字符旋转第一角度,所述第一角度的取值范围为大于-60度且小于60度,对于每个单位字符,所述第一角度的取值为所述取值范围内的任意一个数值;将旋转第一角度后的目标单位字符旋转180度。5.根据权利要求1所述的方法,其特征在于,所述位置信息包括字符中心横坐标、字符中心纵坐标、字符尺寸和旋转角度。6.一种验证码的验证方法,应用于对采用如权利要求1-5任意一项所述的验证码的生成方法所生成的验证码进行验证,所述验证方法包括:获取用户作用于所述验证码对应的验证码图片上的点击操作的点击位置信息;将所述点击位置信息与目标单位字符在所述验证码图片中的位置信息进行匹配,根据匹配结果确定验证是否通过。7.根据权利要求6所述的方法,其特征在于,所述点击位置信息包括所述点击操作的点击中心坐标;将所述点击位置信息与目标单位字符在所述验证码图片中的位置信息进行匹配,根据匹配结果确定验证是否通过,包括:根据目标单位字符在所述验证码图片中的位置信息确定有效点击区域;判断所述点击中心坐标是否处于所述有效点击区域内,若处于,则验证通过;否则,验证失败。8.根据权利要求6所述的方法,其特征在于,在获取用户作用于所述验证码对应的验证码图片上的点击操作的点击位置信息之前,还包括:对验证方式进行提示,所述验证方式为点击所述验证码对应的验证码图片中包含的所有倒置...

【专利技术属性】
技术研发人员:周奥特
申请(专利权)人:智者四海北京技术有限公司
类型:发明
国别省市:北京;11

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

1