一种数字转汉字类型的验证码生成方法及验证系统技术方案

技术编号:26770703 阅读:23 留言:0更新日期:2020-12-18 23:49
本发明专利技术公开一种数字转汉字类型的验证码生成方法,包括如下步骤:根据0至9对应汉语发音映射生成对应的汉字集组合;接收用户终端发送的验证请求;根据验证请求随机生成验证码,所述验证码包含不少于一个数字且数字之间具有一定排列规律;提取验证码中每个数字对应的汉字集组合;从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照预设的排列规律生成汉字验证码图片向用户终端显示;当所述用户终端输入的数字与对应汉字验证码相匹配时,验证成功。本发明专利技术将基于汉语发音生成具有唯一识别的验证码,避免用户辨认时混淆不清,提高用户的验证效率。

【技术实现步骤摘要】
一种数字转汉字类型的验证码生成方法及验证系统
本专利技术涉及计算机网络
,尤其涉及一种数字转汉字类型的验证码生成方法及验证系统。
技术介绍
“验证码”的英文表示为CAPTCHA(CompletelyAutomatedPublicTuringtesttotellComputersandHumansApart),翻译过来就是“全自动区分计算机和人类的图灵测试”,顾名思义,它是用来区分计算机和人类的。在CAPTCHA测试中,作为服务器的计算机会自动生成一个问题由用户来解答。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,如果没有验证码,攻击者会使用有害程序自动注册大量的Web服务帐户,然后攻击者可以使用这些帐户为其他的用户制造麻烦,如发送垃圾邮件或通过同时反复登录多个帐户来延缓服务的速度。为了不被攻击者恶意攻击,验证码通常是背景图像与字符串图像进行融合并进行变形处理,处理后会造成字符串图像中的内容也不易被用户识别,例如“6”、“9”、“b”同时出现,“p”、“q”同时出现,或“0”“o”同时出现等这类情况,再将这些相似的字符进行变形排列后作为验证码出现时,正常用户识别时就经常出现混淆不清的情况,导致输入错误,影响验证效率。
技术实现思路
为了解决上述技术问题,本专利技术提出一种数字转汉字类型的验证码生成方法及验证系统。为了达到上述目的,本专利技术的技术方案如下:一种数字转汉字类型的验证码生成方法,包括如下步骤:根据0至9对应汉语发音映射生成对应的汉字集组合;接收用户终端发送的验证请求;根据验证请求随机生成验证码,所述验证码包含不少于一个数字且数字之间具有一定排列规律;提取验证码中每个数字对应的汉字集组合,从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照预设的排列规律生成汉字验证码图片向用户终端显示;当用户终端输入的数字与对应汉字验证码相匹配时,验证成功。优选地,还包括如下步骤:验证失败时,将用户终端输入的数字与对应汉字验证码进行存储,若数字的错误输入率超过预设阈值,则在数字对应的汉字集中将对应汉字验证码进行删除。优选地,所述数字的错误输入率为数字的错误输入量与数字的总输入量之比。优选地,所述生成汉字验证码图片,包括如下步骤:将汉字验证字符填充到经过模糊处理的背景图中;对填充后的图片进行增加噪声或形态学处理,获得汉字验证码图片。优选地,所述汉字集组合中不包括多音字、生僻字。一种数字转汉字类型的验证系统,包括用户终端和验证服务器,其中,所述用户终端,用于向验证服务器发送验证请求;用于输入验证信息;所述验证服务器,用于根据0至9对应汉语发音映射生成对应的汉字集组合;用于接收请求并随机生成验证码,所述验证码包含不少于一个数字且数字之间具有一定排列规律;用于提取每个数字的对应的汉字集组合,从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照预设的排列规律生成汉字验证码图片向用户终端显示,当所述用户终端输入的数字与对应汉字验证码相匹配时,验证成功。优选地,所述验证服务器中还包括存储模块和提取模块,其中,所述存储模块,用于将用户终端输入的数字与对应汉字验证码进行存储;所述提取模块,用于在验证失败时,根据存储模块中的存储信息计算数字的错误输入率,若在数字的错误输入率超过预设阈值,则在数字对应的汉字集中将对应汉字验证码进行删除。优选地,所述数字的错误输入率为数字的错误输入量与数字的总输入量之比。优选地,所述验证服务器中还包括转换模块,用于将汉字验证字符填充到经过模糊处理的背景图中;对填充后的图片进行增加噪声或形态学处理,获得汉字验证码图片。优选地,所述汉字集组合中不包括多音字、生僻字。基于上述技术方案,本专利技术的有益效果是:1)、使用汉字作为验证码显示,不管汉字如何变形都不会影响用户进行有效识别,便于用户识别后准确输入对应的数字进行验证,不会因为验证码混淆,造成输入错误的现象;2)、恶意程序在辨别验证码字符时需要分析图片内容,由于对图片进行了模糊、增加噪点和形态学处理,从而提高了汉字验证字符被辨别出的难度,进而提高了汉字验证码图片的安全性。附图说明下面结合附图对本专利技术的具体实施方式作进一步详细的说明。图1:本专利技术一种数字转汉字类型的验证码生成方法的流程图;图2:本专利技术一种验证系统的结构框图;图3,本专利技术实施例提供的汉字验证码图片的效果图,其中:100、验证系统;200、用户终端;300、验证服务器;301、存储模块;302、提取模块;303、转换模块。具体实施方式为了更清楚地说明本专利技术,下面结合优选实施例对本专利技术做进一步的说明。本领域技术人员应当理解,下面所具体描述的内容是说明性的而非限制性的,不应以此限制本专利技术的保护范围。实施例一如图1所示,本专利技术实施例提供的一种数字转汉字类型的验证码生成方法,包括如下步骤:根据0至9对应汉语发音映射生成对应的汉字集组合;接收用户终端发送的验证请求;根据验证请求随机生成指定位数的生成随机数字,例如4位数,3498;根据每个数字3、4、9和8的汉语发音映射生成对应的汉字集组合,数字3、4、9和8转换为汉字时,在代码上进行映射,例如“3”映射成“三”、“山”、“伞”等的一个汉字集组合,“4”映射为“四”、“是”、“思”等的一个汉字集组合,把所有可能的映射情况都一一列举,放入对应的汉字集组合中;根据用户的接受程度,按需要在整个映射转换的过程中,将汉字集组合中的多音字和生僻字进行剔除,便于用户进行快速辨认,输入正确的验证信息,提高验证效率,节约用户的时间。从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照初始的排列规律生成汉字验证码图片向用户终端显示,即将随机抽取的对应汉字“伞”“思”“酒”“巴”作为汉字验证字符,如图3所示;当所述用户终端输入的“3498”与对应汉字验证码相匹配时,验证结果为通过。用户终端输入数字,包括用户通过键盘输入对应数字按键、或通过触摸屏点击或滑动对应数字等手势操作、或点击图形表示数字含义的区域。进一步,还包括如下步骤:验证失败时,将用户终端输入的数字与对应汉字验证码进行存储,若数字的错误输入率超过预设阈值(10%),则在数字对应的汉字集中将对应汉字验证码进行删除,其中,所述数字的错误输入率为数字的错误输入量与数字的总输入量之比。例如,“9”随机抽取的对应汉字“酒”的错误输入量为217次,总输入量为2000次,则数字的错误输入率为0.1085,大于预设阈值,及将“酒”从“9”对应的汉字集中删除,确保安全的前提下提高验证的效率。进一步,生成汉字验证码图片,包括如下步骤:将汉字验证字符填充到经过模糊处理的背景图中;对填充后的本文档来自技高网...

【技术保护点】
1.一种数字转汉字类型的验证码生成方法,其特征在于,包括如下步骤:/n根据0至9对应汉语发音映射生成对应的汉字集组合;/n接收用户终端发送的验证请求;/n根据验证请求随机生成验证码,所述验证码包含不少于一个数字且数字之间具有一定排列规律;/n提取验证码中每个数字对应的汉字集组合,从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照预设的排列规律生成汉字验证码图片向用户终端显示;/n当所述用户终端输入的数字与对应汉字验证码相匹配时,验证成功。/n

【技术特征摘要】
1.一种数字转汉字类型的验证码生成方法,其特征在于,包括如下步骤:
根据0至9对应汉语发音映射生成对应的汉字集组合;
接收用户终端发送的验证请求;
根据验证请求随机生成验证码,所述验证码包含不少于一个数字且数字之间具有一定排列规律;
提取验证码中每个数字对应的汉字集组合,从汉字集组合中随机抽取一个汉字作为汉字验证字符,将汉字验证字符按照预设的排列规律生成汉字验证码图片向用户终端显示;
当所述用户终端输入的数字与对应汉字验证码相匹配时,验证成功。


2.根据权利要求1所述的一种数字转汉字类型的验证码生成方法,其特征在于,还包括如下步骤:验证失败时,将用户终端输入的数字与对应汉字验证码进行存储,若数字的错误输入率超过预设阈值,则在数字对应的汉字集中将对应汉字验证码进行删除。


3.根据权利要求2所述的一种数字转汉字类型的验证码生成方法,其特征在于,所述数字的错误输入率为数字的错误输入量与数字的总输入量之比。


4.根据权利要求1所述的一种数字转汉字类型的验证码生成方法,其特征在于,所述生成汉字验证码图片,包括如下步骤:
将汉字验证字符填充到经过模糊处理的背景图中;
对填充后的图片进行增加噪声或形态学处理,获得汉字验证码图片。


5.根据权利要求1至4所述的一种数字转汉字类型的验证码生成方法,其特征在于,所述汉字集组合中不包括多音字、生僻字。


6.一种数字转汉字类型的验证系统,其特征在于,包...

【专利技术属性】
技术研发人员:胡伟
申请(专利权)人:苏州云葫芦信息科技有限公司
类型:发明
国别省市:江苏;32

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

1