CN114268430B - 一种验证码生成方法、装置、电子设备及存储介质 - Google Patents
一种验证码生成方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114268430B CN114268430B CN202111534608.9A CN202111534608A CN114268430B CN 114268430 B CN114268430 B CN 114268430B CN 202111534608 A CN202111534608 A CN 202111534608A CN 114268430 B CN114268430 B CN 114268430B
- Authority
- CN
- China
- Prior art keywords
- correct
- verification
- picture
- type
- verification 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.)
- Active
Links
- 238000012795 verification Methods 0.000 title claims abstract description 280
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 241000282326 Felis catus Species 0.000 description 3
- 241000282320 Panthera leo Species 0.000 description 3
- 241000282376 Panthera tigris Species 0.000 description 3
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005336 cracking Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
Landscapes
- Collating Specific Patterns (AREA)
Abstract
本申请提供一种验证码生成方法、装置、电子设备及存储介质。该验证码生成方法,通过获取待生成的图片验证码的第一验证类型;确定所述第一验证类型的正确类型值;获取第一预设数量的类型值和所述正确类型值相同的正确图案;获取第二预设数量的类型值和所述正确类型值不同的错误图案;并根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码。该验证码生成方法通过第二预设数量的错误图案提高了图片验证码的安全性,且在保证安全性的同时,兼顾了用户的识别难度。
Description
技术领域
本申请涉及计算机网络安全技术领域,具体涉及一种验证码生成方法、装置、电子设备及存储介质。
背景技术
为了防止采用特定程序针对某一特定注册用户进行不断的登录尝试,从而实现暴力破解,很多网站都引入图片验证码进行校验的方案,即用户必须正确输入图片中所显示的验证码,才能够被允许登录。而图片验证码设计的过于简单的话,会导致安全性较差,容易被验证码识别软件所破解;设计的过于复杂的话,又会加大人眼识别的难度。
图片验证码指的是将一串随机产生的数字或字符或符号作为验证码,并基于该验证码生成一幅图片加以显示。用户通过肉眼对该图片验证码之中的验证信息进行识别,再由用户输入其识别结果并提交验证。
发明内容
本申请实施例的目的在于提供一种验证码生成方法、装置、电子设备及存储介质,以改善上述图片验证码无法兼顾安全性和识别难度的技术问题。
为实现上述目的,本申请提供如下技术方案:
第一方面,本申请实施例提供一种验证码生成方法,所述方法包括:
获取待生成的图片验证码的第一验证类型;
确定所述第一验证类型的正确类型值;
获取第一预设数量的类型值和所述正确类型值相同的正确图案;
获取第二预设数量的类型值和所述正确类型值不同的错误图案;
根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码。
在上述方案中,该验证码生成方法通过将第一预设数量的类型值和所述正确类型值相同的正确图案、第二预设数量的类型值和所述正确类型值不同的错误图案以及正确类型值生成图片验证码,用户可以根据正确类型值选择图片验证码之中的正确图案,以完成验证码识别。该验证码生成方法通过第二预设数量的错误图案提高了图片验证码的安全性,且在保证安全性的同时,兼顾了用户的识别难度。
可选的,所述根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码,包括:获取所述正确图案的正确排列顺序;根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码。
在上述方案中,通过增设正确图案的正确排列顺序,进一步增加了该图片验证码被识别软件所暴力破解的难度,提高了图片验证码的安全性。
可选的,所述图片验证码包括验证图片和验证提示信息;所述根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码,包括:根据所述正确图案和所述错误图案生成所述验证图片;根据所述正确类型值和所述正确排列顺序生成验证提示信息。
可选的,所述获取第二预设数量的类型值和所述正确类型值不同的错误图案,包括:确定所述第一验证类型的错误类型值;获取第二预设数量的类型值和所述错误类型值相同的错误图案。
在上述方案中,错误类型值和正确类型值不同,可以通过确定和上述正确类型值较为接近的错误类型值,以进一步提高该图片验证码被识别软件所暴力破解的难度,提高图片验证码的安全性。
可选的,在所述根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码之后,所述方法还包括:记录所述图片验证码的验证信息;其中,所述验证信息包括所述图片验证码的验证码key值和所述正确图案的正确坐标集。
在上述方案中,通过记录所生成的图片验证码的验证信息,包括验证码key值和正确图案的正确坐标集,便于后续对用户输入的待验证信息进行验证。
可选的,在所述记录所述图片验证码的验证信息之后,所述方法还包括:获取用户输入的待验证点击坐标集;根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果。
在上述方案中,若用户输入的待验证点击坐标集和正确坐标集的一致,则验证成功;若用户输入的待验证点击坐标集和正确坐标集不一致,则验证失败。
可选的,所述根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果,包括:获取所述待验证点击坐标集对应的待验证key值;根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果。
在上述方案中,可以在对待验证点击坐标集进行验证之前,对待验证key值和验证码key值的一致性进行验证;若不一致,则验证失败;若一致,再对待验证点击坐标集和正确坐标集的一致性进行验证。
第二方面,本申请实施例提供一种验证码生成装置,所述装置包括:
验证类型获取模块,所述验证类型获取模块用于获取待生成的图片验证码的第一验证类型;
正确类型值确定模块,所述正确类型值确定模块用于确定所述第一验证类型的正确类型值;
正确图案获取模块,所述正确图案获取模块用于获取第一预设数量的类型值和所述正确类型值相同的正确图案;
错误图案获取模块,所述错误图案获取模块用于获取第二预设数量的类型值和所述正确类型值不同的错误图案;
验证码生成模块,所述验证码生成模块用于根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码。
在上述方案中,该验证码生成装置通过将第一预设数量的类型值和所述正确类型值相同的正确图案、第二预设数量的类型值和所述正确类型值不同的错误图案以及正确类型值生成图片验证码,用户可以根据正确类型值选择图片验证码之中的正确图案,以完成验证码识别。该验证码生成装置通过第二预设数量的错误图案提高了图片验证码的安全性,且在保证安全性的同时,兼顾了用户的识别难度。
可选的,所述验证码生成模块包括:正确排列顺序获取模块,所述正确排列顺序获取模块用于获取所述正确图案的正确排列顺序;图片验证码生成模块,所述图片验证码生成模块用于根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码。
可选的,所述图片验证码包括验证图片和验证提示信息;所述图片验证码生成模块,包括:验证图片生成模块,所述验证图片生成模块用于根据所述正确图案和所述错误图案生成所述验证图片;验证提示信息生成模块,所述验证提示信息生成模块用于根据所述正确类型值和所述正确排列顺序生成验证提示信息。
可选的,所述错误图案获取模块,包括:错误类型值确定模块,所述错误类型值确定模块用于确定所述第一验证类型的错误类型值;错误图案获取子模块,所述错误图案获取子模块用于获取第二预设数量的类型值和所述错误类型值相同的错误图案。
可选的,所述装置还包括:验证信息记录模块,所述验证信息记录模块用于记录所述图片验证码的验证信息;其中,所述验证信息包括所述图片验证码的验证码key值和所述正确图案的正确坐标集。
可选的,所述装置还包括:待验证坐标集获取模块,所述待验证坐标集获取模块用于获取用户输入的待验证点击坐标集;验证结果获取模块,所述验证结果获取模块用于根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果。
可选的,所述验证结果获取模块具体用于:获取所述待验证点击坐标集对应的待验证key值;根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果。
第三方面,本申请实施例提供一种电子设备,包括:存储器以及处理器,所述存储器中存储有计算机程序指令,所述计算机程序指令被所述处理器读取并运行时,执行第一方面任意一种可能的实现方式提供的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被处理器读取并运行时,执行第一方面任意一种可能的实现方式提供的方法。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种验证码生成方法的流程示意图;
图2为本申请实施例提供的另一种验证码生成方法的流程示意图;
图3为本申请实施例提供的一种验证码生成装置的结构示意图;
图4为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
术语“第一”、“第二”等仅用于将一个实体或者操作与另一个实体或操作区分开来,而不能理解为指示或暗示相对重要性,也不能理解为要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
针对现有技术中存在的不足,本申请实施例提供一种验证码生成方法,用于改善上述图片验证码无法兼顾安全性和识别难度的技术问题。
请参照图1,图1为本申请实施例提供的一种验证码生成方法的流程示意图,该验证码生成方法,包括:
步骤101、获取待生成的图片验证码的第一验证类型;
步骤102、确定所述第一验证类型的正确类型值;
步骤103、获取第一预设数量的类型值和所述正确类型值相同的正确图案;
步骤104、获取第二预设数量的类型值和所述正确类型值不同的错误图案;
步骤105、根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码。
其中,在步骤101中,第一验证类型包括颜色、词语、形状、动物、植物等。可以从已存储好的验证类型库中随机选择一种验证类型,并将该验证类型作为第一验证类型。
其中,在步骤102中,正确类型值指的是第一验证类型的具体值。例如,第一验证类型如果是颜色,则正确类型值可以是红色、黄色或者绿色等中的任一种;第一验证类型如果是形状,则正确类型值可以是正方形、三角形或圆形等中的任一种;第一验证类型如果是动物,则正确类型值可以是老虎、狮子或者猫等中的任一种。可以从已经存储好的,与每一验证类型所对应的类型值库中随机选择一种类型值,并将该类型值作为正确类型值。
其中,在步骤103中,第一预设数量可以是3,也可以是5,其可以根据实际情况进行调整,本申请对此不作具体限定。正确图案可以是从已存储好的和正确类型值所对应的图案库中随机筛选得到的。正确图案指的是用于生成图片验证码的可点击图案中的需要点击的图案。
其中,在步骤104中,第二预设数量可以和第一预设数量相等,也可以和第一预设数量不等;第二预设数量可以是2,也可以是5,其可以根据实际情况进行调整,本申请对此不作具体限定。且对第一预设数量和第二预设数量之间的大小关系,本申请也不作具体限定。错误图案可以是从已存储好的,不同于正确类型值所对应的图案库中随机筛选得到的。错误图案指的是用于生成图片验证码的可点击图案中的不需要点击的图案。
其中,在步骤105中,可以由正确图案和错误图案组成所生成的图片验证码的图片;可以由正确类型值组成所生成的图片验证码的提示信息。其中,可以将区别于正确类型值,却和正确类型值较为接近的类型值作为错误图案的类型值;以正确类型值为红色为例,则错误图案的类型值可以是橙色或者黄色等;以正确类型值为老虎为例,则错误图案的类型值可以是猫或者狮子等。
由上可知,本申请提供的一种验证码生成方法,通过将第一预设数量的类型值和所述正确类型值相同的正确图案、第二预设数量的类型值和所述正确类型值不同的错误图案以及正确类型值生成图片验证码,用户可以根据正确类型值选择图片验证码之中的正确图案,以完成验证码识别。该验证码生成方法通过第二预设数量的错误图案提高了图片验证码的安全性,且在保证安全性的同时,兼顾了用户的识别难度。
在一些可选的实施例中,步骤105、根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码,包括:获取所述正确图案的正确排列顺序;根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码。
其中,正确排列顺序用于生成对应的提示信息,所生成的提示信息可以是面积由大到小、颜色由深到浅、字体由粗到细等。
在一些可选的实施例中,所述图片验证码包括验证图片和验证提示信息;所述根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码,包括:根据所述正确图案和所述错误图案生成所述验证图片;根据所述正确类型值和所述正确排列顺序生成验证提示信息。
其中,正确排列顺序所对应的验证提示信息可以是面积由大到小、颜色由深到浅、字体由粗到细等。可以由正确图案和错误图案组成所生成的图片验证码的验证图片;可以由正确类型值和正确排列顺序组成所生成的图片验证码的验证提示信息。
在一些可选的实施例中,步骤103、获取第二预设数量的类型值和所述正确类型值不同的错误图案,包括:确定所述第一验证类型的错误类型值;获取第二预设数量的类型值和所述错误类型值相同的错误图案。
其中,可以从已经存储好的,与每一验证类型所对应的类型值库中随机选择一种或几种不同于正确类型值的类型值,并将该不同于正确类型值的类型值作为错误类型值;也可以将区别于正确类型值,却和正确类型值较为接近的类型值作为错误图案的类型值;以正确类型值为红色为例,则错误类型值可以是橙色或者黄色等;以正确类型值为老虎为例,则错误类型值可以是猫或者狮子等。错误图案可以是从已存储好的和错误类型值所对应的图案库中随机筛选得到的。
请参考图2,图2为本申请实施例提供的另外一种验证码生成方法的流程示意图。
在一些可选的实施例中,在步骤105、根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码之后,所述方法还包括:步骤106、记录所述图片验证码的验证信息;其中,所述验证信息包括所述图片验证码的验证码key值和所述正确图案的正确坐标集。
其中,每一所生成的图片验证码都有唯一对应的验证码key值。正确坐标集中包括所有需要点击的正确图案的坐标信息。
其中,可以将正确排列顺序转化为所生成的图片验证码中的每一正确图案所对应的正确坐标信息的点击顺序。
在一些可选的实施例中,在步骤106、记录所述图片验证码的验证信息之后,所述方法还包括:步骤107、获取用户输入的待验证点击坐标集;步骤108、根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果。
其中,待验证点击坐标集包括用户所点击的图案坐标信息。若待验证点击坐标集和正确坐标集的一致,则验证成功;若待验证点击坐标集和正确坐标集的一致,则验证失败。
其中,若验证成功,输出包含验证成功信息的提示信息;若验证失败,输出包含验证失败信息的提示信息。
在一些可选的实施例中,步骤108、根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果,包括:获取所述待验证点击坐标集对应的待验证key值;根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果。
其中,可以在对待验证点击坐标集进行验证之前,对待验证key值和验证码key值的一致性进行验证;若不一致,则验证失败;若一致,再对待验证点击坐标集和正确坐标集的一致性进行验证。
其中,还可以从预先存储好的背景库中存储好多种类型的背景图片;可以根据第一验证类型从背景库中选择合适的背景图片,通过将该合适的背景图片、正确图案以及错误图案进行融合,生成验证图片。其中,所选择出的合适的背景图片不影响用户对相应正确图案的识别。
在一些可选的实施例中,所述验证信息还包括所述正确点击顺序。
在一些可选的实施例中,在所述记录所述图片验证码的验证信息之后,所述方法还包括:获取用户输入的待验证点击坐标集的待验证点击顺序。
在一些可选的实施例中,步骤108、根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果,包括:根据待验证key值和所述验证码key值的一致性,所述待验证点击坐标集和所述正确坐标集的一致性,以及所述待验证点击顺序和所述正确点击顺序的一致性,确定所述图片验证码的验证结果。
请参照图3,图3为本申请实施例提供的一种验证码生成装置的结构示意图,该验证码生成装置,包括:
验证类型获取模块201,验证类型获取模块201用于获取待生成的图片验证码的第一验证类型;
正确类型值确定模块202,正确类型值确定模块202用于确定所述第一验证类型的正确类型值;
正确图案获取模块203,正确图案获取模块203用于获取第一预设数量的类型值和所述正确类型值相同的正确图案;
错误图案获取模块204,错误图案获取模块204用于获取第二预设数量的类型值和所述正确类型值不同的错误图案;
验证码生成模块205,验证码生成模块205用于根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码。
在一些可选的实施例中,验证码生成模块205包括:正确排列顺序获取模块,所述正确排列顺序获取模块用于获取所述正确图案的正确排列顺序;图片验证码生成模块,所述图片验证码生成模块用于根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码。
在一些可选的实施例中,所述图片验证码包括验证图片和验证提示信息;所述图片验证码生成模块,包括:验证图片生成模块,所述验证图片生成模块用于根据所述正确图案和所述错误图案生成所述验证图片;验证提示信息生成模块,所述验证提示信息生成模块用于根据所述正确类型值和所述正确排列顺序生成验证提示信息。
在一些可选的实施例中,错误图案获取模块204,包括:错误类型值确定模块,所述错误类型值确定模块用于确定所述第一验证类型的错误类型值;错误图案获取子模块,所述错误图案获取子模块用于获取第二预设数量的类型值和所述错误类型值相同的错误图案。
在一些可选的实施例中,所述装置还包括:验证信息记录模块,所述验证信息记录模块用于记录所述图片验证码的验证信息;其中,所述验证信息包括所述图片验证码的验证码key值和所述正确图案的正确坐标集。
在一些可选的实施例中,所述装置还包括:待验证坐标集获取模块,所述待验证坐标集获取模块用于获取用户输入的待验证点击坐标集;验证结果获取模块,所述验证结果获取模块用于根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果。
在一些可选的实施例中,所述验证结果获取模块具体用于:获取所述待验证点击坐标集对应的待验证key值;根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果。
在一些可选的实施例中,所述验证结果获取模块具体还用于:根据待验证key值和所述验证码key值的一致性,所述待验证点击坐标集和所述正确坐标集的一致性,以及所述待验证点击顺序和所述正确排列顺序的一致性,确定所述图片验证码的验证结果。
本申请实施例提供的验证码生成装置,其实现原理及产生的技术效果在前述方法实施例中已经介绍,为简要描述,装置实施例部分未提及之处,可参考方法实施例中相应内容。
图4为本申请实施例提供的一种电子设备的结构示意图。参照图4,电子设备3包括:处理器301、存储器302,这些组件通过通信总线303和/或其他形式的连接机构(未示出)互连并相互通讯。
其中,存储器302包括一个或多个(图中仅示出一个),其可以是,但不限于,随机存取存储器(Random Access Memory,简称RAM),只读存储器(Read Only Memory,简称ROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),可擦除可编程只读存储器(Erasable Programmable Read-Only Memory,简称EPROM),电可擦除可编程只读存储器(Electric Erasable Programmable Read-Only Memory,简称EEPROM)等。处理器301以及其他可能的组件可对存储器302进行访问,读和/或写其中的数据。
处理器301包括一个或多个(图中仅示出一个),其可以是一种集成电路芯片,具有信号的处理能力。上述的处理器301可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、微控制单元(Micro Controller Unit,简称MCU)、网络处理器(Network Processor,简称NP)或者其他常规处理器;还可以是专用处理器,包括神经网络处理器(Neural-network Processing Unit,简称NPU)、图形处理器(Graphics ProcessingUnit,简称GPU)、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuits,简称ASIC)、现场可编程门阵列(FieldProgrammable Gate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。并且,在处理器301为多个时,其中的一部分可以是通用处理器,另一部分可以是专用处理器。
在存储器302中可以存储一个或多个计算机程序指令,处理器301可以读取并运行这些计算机程序指令,以实现本申请实施例提供的一种验证码生成方法。
可以理解的,图4所示的结构仅为示意,电子设备3还可以包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的结构。图4中所示的各组件可以采用硬件、软件或其组合实现。电子设备3可能是实体设备,例如PC机、笔记本电脑、平板电脑、手机、服务器、嵌入式设备等,也可能是虚拟设备,例如虚拟机、虚拟化容器等。并且,电子设备3也不限于单台设备,也可以是多台设备的组合或者大量设备构成的集群。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序指令,所述计算机程序指令被计算机的处理器读取并运行时,执行本申请实施例提供的验证码生成方法。例如,计算机可读存储介质可以实现为图4中电子设备3中的存储器302。
在本申请所提供的实施例中,应该理解到,所揭露装置以及系统,可以通过其它的方式实现。以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (7)
1.一种验证码生成方法,其特征在于,所述方法包括:
获取待生成的图片验证码的第一验证类型;
确定所述第一验证类型的正确类型值;
获取第一预设数量的类型值和所述正确类型值相同的正确图案;
获取第二预设数量的类型值和所述正确类型值不同的错误图案;
根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码;
其中,所述获取第二预设数量的类型值和所述正确类型值不同的错误图案,包括:确定所述第一验证类型的错误类型值;获取第二预设数量的类型值和所述错误类型值相同的错误图案;其中,将区别于所述正确类型值,却和所述正确类型值接近的类型值作为所述错误图案的类型值;
其中,所述根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码,包括:获取所述正确图案的正确排列顺序;根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码;
其中,所述图片验证码包括验证图片和验证提示信息;所述根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码,包括:根据所述第一验证类型确定背景图片;根据所述正确图案、所述背景图片和所述错误图案生成所述验证图片;根据所述正确类型值和所述正确排列顺序生成验证提示信息。
2.根据权利要求1所述的方法,其特征在于,在所述根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码之后,所述方法还包括:
记录所述图片验证码的验证信息;其中,所述验证信息包括所述图片验证码的验证码key值和所述正确图案的正确坐标集。
3.根据权利要求2所述的方法,其特征在于,在所述记录所述图片验证码的验证信息之后,所述方法还包括:
获取用户输入的待验证点击坐标集;
根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果。
4.根据权利要求3所述的方法,其特征在于,所述根据所述待验证点击坐标集和所述正确坐标集的一致性确定所述图片验证码的验证结果,包括:
获取所述待验证点击坐标集对应的待验证key值;
根据所述待验证key值和所述验证码key值的一致性,以及所述待验证点击坐标集和所述正确坐标集的一致性,确定所述图片验证码的验证结果。
5.一种验证码生成装置,其特征在于,所述装置包括:
验证类型获取模块,所述验证类型获取模块用于获取待生成的图片验证码的第一验证类型;
正确类型值确定模块,所述正确类型值确定模块用于确定所述第一验证类型的正确类型值;
正确图案获取模块,所述正确图案获取模块用于获取第一预设数量的类型值和所述正确类型值相同的正确图案;
错误图案获取模块,所述错误图案获取模块用于获取第二预设数量的类型值和所述正确类型值不同的错误图案;
验证码生成模块,所述验证码生成模块用于根据所述正确图案、所述错误图案以及所述正确类型值生成所述图片验证码;
其中,所述错误图案获取模块,包括:错误类型值确定模块,用于确定所述第一验证类型的错误类型值;错误图案获取子模块,用于获取第二预设数量的类型值和所述错误类型值相同的错误图案;其中,将区别于所述正确类型值,却和所述正确类型值接近的类型值作为所述错误图案的类型值;
其中,所述验证码生成模块包括:正确排列顺序获取模块,所述正确排列顺序获取模块用于获取所述正确图案的正确排列顺序;图片验证码生成模块,所述图片验证码生成模块用于根据所述正确图案、所述错误图案、所述正确类型值以及所述正确排列顺序生成所述图片验证码;
其中,所述图片验证码包括验证图片和验证提示信息;所述图片验证码生成模块,具体包括:验证图片生成模块,所述验证图片生成模块用于根据所述第一验证类型确定背景图片;根据所述正确图案、所述背景图片和所述错误图案生成所述验证图片;验证提示信息生成模块,所述验证提示信息生成模块用于根据所述正确类型值和所述正确排列顺序生成验证提示信息。
6.一种电子设备,其特征在于,包括:处理器和存储器,所述存储器存储有所述处理器可执行的机器可读指令,所述机器可读指令被所述处理器执行时执行如权利要求1-4任一所述的方法。
7.一种计算机可读存储介质,其特征在于,该存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1-4任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534608.9A CN114268430B (zh) | 2021-12-15 | 2021-12-15 | 一种验证码生成方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534608.9A CN114268430B (zh) | 2021-12-15 | 2021-12-15 | 一种验证码生成方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114268430A CN114268430A (zh) | 2022-04-01 |
CN114268430B true CN114268430B (zh) | 2024-05-24 |
Family
ID=80827314
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111534608.9A Active CN114268430B (zh) | 2021-12-15 | 2021-12-15 | 一种验证码生成方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114268430B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870725A (zh) * | 2012-12-13 | 2014-06-18 | 华为技术有限公司 | 一种验证码的生成验证方法和装置 |
WO2015021908A1 (en) * | 2013-08-13 | 2015-02-19 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus and system for security verification |
CN106034029A (zh) * | 2015-03-20 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 基于图片验证码的验证方法和装置 |
CN108010097A (zh) * | 2017-11-30 | 2018-05-08 | 广州品唯软件有限公司 | 验证码图像的生成、验证方法及装置 |
CN108123806A (zh) * | 2017-12-19 | 2018-06-05 | 重庆亚凡科技有限公司 | 提问式图片验证码的生成方法 |
CN108182356A (zh) * | 2017-12-19 | 2018-06-19 | 重庆亚凡科技有限公司 | 提问式图片验证码的生成系统 |
CN109117624A (zh) * | 2018-08-03 | 2019-01-01 | 上海掌门科技有限公司 | 生成验证码图像的方法、电子设备和计算机可读介质 |
CN110895602A (zh) * | 2018-09-13 | 2020-03-20 | 中移(杭州)信息技术有限公司 | 身份验证方法、装置、电子设备及存储介质 |
CN112751799A (zh) * | 2019-10-29 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 基于图片验证码的验证方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107154924B (zh) * | 2016-03-04 | 2021-01-05 | 阿里巴巴集团控股有限公司 | 基于验证码的验证处理方法及装置 |
-
2021
- 2021-12-15 CN CN202111534608.9A patent/CN114268430B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870725A (zh) * | 2012-12-13 | 2014-06-18 | 华为技术有限公司 | 一种验证码的生成验证方法和装置 |
WO2015021908A1 (en) * | 2013-08-13 | 2015-02-19 | Tencent Technology (Shenzhen) Company Limited | Method, apparatus and system for security verification |
CN106034029A (zh) * | 2015-03-20 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 基于图片验证码的验证方法和装置 |
CN108010097A (zh) * | 2017-11-30 | 2018-05-08 | 广州品唯软件有限公司 | 验证码图像的生成、验证方法及装置 |
CN108123806A (zh) * | 2017-12-19 | 2018-06-05 | 重庆亚凡科技有限公司 | 提问式图片验证码的生成方法 |
CN108182356A (zh) * | 2017-12-19 | 2018-06-19 | 重庆亚凡科技有限公司 | 提问式图片验证码的生成系统 |
CN109117624A (zh) * | 2018-08-03 | 2019-01-01 | 上海掌门科技有限公司 | 生成验证码图像的方法、电子设备和计算机可读介质 |
CN110895602A (zh) * | 2018-09-13 | 2020-03-20 | 中移(杭州)信息技术有限公司 | 身份验证方法、装置、电子设备及存储介质 |
CN112751799A (zh) * | 2019-10-29 | 2021-05-04 | 北京沃东天骏信息技术有限公司 | 基于图片验证码的验证方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN114268430A (zh) | 2022-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9129100B2 (en) | Verification code generation and verification method and apparatus | |
CN107943949B (zh) | 一种确定网络爬虫的方法及服务器 | |
CN102006163A (zh) | 用户验证方法、装置及服务器 | |
US20180196875A1 (en) | Determining repeat website users via browser uniqueness tracking | |
US20140157382A1 (en) | Observable authentication methods and apparatus | |
US11361068B2 (en) | Securing passwords by using dummy characters | |
CN110334144B (zh) | 报文展示方法、装置、计算机设备及存储介质 | |
US9563763B1 (en) | Enhanced captchas | |
CN112541443B (zh) | 发票信息抽取方法、装置、计算机设备及存储介质 | |
US20150046993A1 (en) | Password authentication method and system | |
CN113887438A (zh) | 人脸图像的水印检测方法、装置、设备及介质 | |
CN106250755B (zh) | 用于生成验证码的方法及装置 | |
CN112988997A (zh) | 智能客服的应答方法、系统、计算机设备及存储介质 | |
CN111353140A (zh) | 验证码的生成、显示方法、装置和系统 | |
CN110674488A (zh) | 基于神经网络的验证码识别方法、系统及计算机设备 | |
CN110677239A (zh) | 一种验证码生成方法及装置 | |
CN114268430B (zh) | 一种验证码生成方法、装置、电子设备及存储介质 | |
CN109446764A (zh) | 一种知识问答中答题用户的身份验证方法、装置和终端设备 | |
CN114917590B (zh) | 一种虚拟现实的游戏系统 | |
CN109858289A (zh) | 适于企业内网使用的移动存储设备管理方法及装置 | |
CN107453876A (zh) | 一种基于图片的验证码实现方法及装置 | |
CN114157634A (zh) | 唯一账号识别方法、装置、设备及存储介质 | |
CN112966252A (zh) | 一种基于密码技术的客户端验证方法、装置、电子设备及介质 | |
CN112784257A (zh) | 生成测试以用于区分人类与计算机的方法 | |
TWI426764B (zh) | Randomly generate methods for verifying graphics and questionnaires |
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 |