CN108010097B - 验证码图像的验证方法及验证装置 - Google Patents
验证码图像的验证方法及验证装置 Download PDFInfo
- Publication number
- CN108010097B CN108010097B CN201711247877.0A CN201711247877A CN108010097B CN 108010097 B CN108010097 B CN 108010097B CN 201711247877 A CN201711247877 A CN 201711247877A CN 108010097 B CN108010097 B CN 108010097B
- Authority
- CN
- China
- Prior art keywords
- verification
- image
- images
- verification code
- identification information
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3226—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
- H04L9/3228—One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Editing Of Facsimile Originals (AREA)
Abstract
本申请公开了一种验证码图像的生成、验证方法及装置,涉及互联网技术领域,可以使得生成的验证码方便用户识别,提高了用户登陆网站的安全性。所述方法包括:获取包含有不同标识信息的验证图像;根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,其中,一个标识信息对应的验证图像指定有一个图层;调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;合并各个图层,生成验证图像交叉形式的验证码图像,进一步接收用户输入的校验验证码,判断所述校验验证码与预先存储的堆叠层次顺序是否相同;若是,则验证通过。本申请适用于验证码图像的生成以及验证。
Description
技术领域
本发明涉及互联网技术领域,尤其是涉及到验证码图像的验证方法及验证装置。
背景技术
验证码是一种区分用户是计算机还是人的公共全自动程序,可以有效防止某个黑客对一个特定注册用户特定程序暴力破解方式进行不断的登陆尝试,从而防止恶意破解密码、刷票、论坛灌水等行为。所以,很多网站采用识别用户输入验证码的方式来增强用户登陆的安全性。
目前常用的验证码图像主要有以下两种形式,一种是通过在随机生成的元素中加入干扰项的方式以供用户输入验证码,如在随机数字中加入干扰线或噪点,在随机生成的图片中嵌入广告等,这种验证码的形式对干扰项的要求较高,如果干扰项过于简单,算法容易检测边缘从而识别验证码,容易被机器破解,如果干扰项过于模糊,也会增加用户的识别难度,不便于用户识别;另一种是通过向终端发送信息的方式以供用户输入验证码,如向终端发送语音验证码或者向终端发送数字验证码等,这种验证码的形式虽然可以从一定程度上有效阻止网站恶意用户数量,但是向终端发送信息也会增加服务方提供的成本。
发明内容
本发明提供了验证码图像验证方法及验证装置,解决了相关技术中验证码图像不便于用户识别的问题。
一种验证码图像的验证方法,包括:
获取包含有不同标识信息的验证图像;
根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,其中,一个标识信息对应的验证图像指定有一个图层;
调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;
合并各个图层,生成验证图像交叉形式的方便用户识别验证图像堆叠层次顺序的验证码图像;根据所述验证码图像的难度等级确定各个图层中验证图像之间的最小交叉点个数;调整各个图层中验证图像的角度,以使得各个图层中验证图像之间形成的交叉点个数不少于所述最小交叉点个数;
接收用户输入的校验验证码,所述校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息;
判断所述校验验证码与预先存储的堆叠层次顺序是否相同;
若是,则验证通过。
优选地,在所述获取包含有不同标识信息的验证图像之前,所述方法还包括:
根据验证请求参数,确定验证码图像的难度等级。
优选地,所述获取包含有不同标识信息的验证图像包括:
获取与所述验证码图像的难度等级对应的形状矩阵;
将所述形状矩阵转换为验证图像,并生成与所述验证码图像的难度等级对应数量的验证图像;
对所述验证图像进行标识,得到包含有不同标识信息的验证图像。
优选地,所述获取与所述验证码图像的难度等级对应的形状矩阵包括:
从形状库中查找与所述验证码图像的难度等级对应形状的矩阵信息,所述形状库中记录有预先生成的不同难度等级对应形状的矩阵信息;
根据所述矩阵信息生成所述形状矩阵。
优选地,在所述获取包含有不同标识信息的验证图像之后,所述方法还包括:
根据所述验证码图像的难度等级在不同标识信息的验证图像中添加干扰元素。
一种验证码图像的验证装置,所述验证装置用于执行如上所述的验证方法,所述验证装置包括:
第一生成单元,用于根据用户发送的验证请求生成所述验证码图像;
接收单元,用于接收用户输入的校验验证码,所述校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息;
判断单元,用于判断所述校验验证码与预先存储的堆叠层次顺序是否相同;
第一验证单元,用于若所述校验验证码与预先存储的堆叠层次顺序相同,则验证通过。
通过本发明,将获取的包含有不同标识信息的验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,了解到各个验证图像的堆叠层次顺序,通过调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉,增加了机器识别验证码图像的难度,保证了用户识别验证码图像便利性的同时提高了验证码图像的安全性。与现有技术中验证码图像的生成方法相比,本发明利用二维图像的三维感知能力,生成具有多角度的堆叠层次感的验证码图像,从而保证验证码图像的识别难度,在使用验证码图像进行验证的过程中,通过用户输入肉眼识别验证码图像中各个验证图像堆叠层次顺序的校验验证码,并判断用户输入的校验验证码与预先存储的堆叠层次顺序是否相同,若相同,则验证通过,否则验证失败,进一步有效阻止网站恶意用户数量,保证用户登录网站的安全性。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的验证码图像的生成方法的流程图一;
图2是根据本发明实施例的验证码图像的生成方法的流程图二;
图3是根据本发明实施例验证图像的形状矩阵;
图4是根据本发明实施例水印处理后的验证图像;
图5是根据本发明优选实施例的验证码图像一;
图6是根据本发明优选实施例的验证码图像二;
图7是根据本发明实施例的验证码图像的验证方法的流程图;
图8是根据本发明实施例的验证码图像的生成以及验证的流程图;
图9是根据本发明实施例的验证码图像的生成装置的结构框图一;
图10是根据本发明实施例的验证码图像的生成装置的结构框图二;
图11是根据本发明实施例的验证码图像的验证装置的结构框图一;
图12是根据本发明实施例的验证码图像的验证装置的结构框图二。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种验证码图像的生成方法,图1是根据本发明实施例的验证码图像的生成方法的流程图一,如图1所示,该流程包括如下步骤:
步骤S101,获取包含有不同标识信息的验证图像;
其中,验证图像可以为任意形状的图像,如月牙形、矩形、圆形等,这里的标识信息用于区分不同的验证图像,可以为编号形式,也可以为文字形式等,当标识信息为编号形式时,可以将第一张验证图像编号为1,第二张验证图像编号为2,以此类推,当标识信息为文字形式时,可以将验证图像标记为对应形状的文字,如第一张验证图像标记为月牙形,第二张验证图像标记为圆形,第三张验证图像标记为星形等,本发明实施例对验证图像的形状以及验证图像对应标识信息不进行限定。
对于本发明实施例,验证图像可以从预先建立的图像库中获取,这里的图像库中存储有预先生成的不同形状的图像,并将不同形状的图像对应的矩阵信息保存到指定路径,以便于从指定路径获取到相应形状的图像的矩阵信息,从而生成相应形状的验证图像。
需要说明的是,不同标识的验证图像可以为相同形状的图像,也可以为不同形状的图像,对于相同形状的验证图像的标识信息通常为编号形式,如5个牙签形状的图像,标识信息分别为编号1至编号5,对于不同形状的验证图像的标识信息通常为文字形式,如1个圆形的图像、一个月牙形图像、一个方形图像,标识信息分别为圆形、月牙形、方形,当然还可以根据验证图像中不同的填充物或者验证图像的颜色不同来确定验证图像标识信息的形式,本发明实施例不进行限定,具体可以根据实际需求确定验证图像标识信息的形式。
步骤S102,根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息;
其中,由于包含有不同标识信息的验证图像表明具有多个验证图像,而将验证图像贴入预先生成的图层中时,一个标识信息对应的验证图像指定有一个图层,例如将标识信息为编号2的验证图像贴入第一个图层,将标识信息为编号3的验证图像贴入第二个图层,将标识信息为编号1的验证图像贴入第三个图层,需要说明的是,这里的验证图像的标识信息与图层的叠放顺序之间存在有映射关系,本发明实施例对上述映射关系不进行限定,当然可以直接根据验证图像的标识信息对应的编号顺序将相应编号的验证图像贴入图层中,也可以根据验证图像的标识信息随机将验证图像贴入图层中。
对于本发明实施例,通过记录各个图层中验证图像的标识信息,能够了解到各个图层中贴入的验证图像的顺序,进而通过图层叠放顺序对应生成验证图像标识信息的叠放顺序,例如,图层的叠放顺序为图层1、图层2、图层3,而验证图像标识信息的叠放顺序为编号2、编号1、编号3。
步骤S103,调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;
其中,调整各个图层中验证图像的位置信息可以调整验证图像在图层中上下左右移动距离、验证图像的角度等,例如有3个月牙形的验证图像,分别调整3个验证图像的移动方向为向左移动、向右移动、居中不动,以及分别调整3个验证图像的角度为顺时针旋转30度、90度、120度,从而使得验证图像不会发生重叠。
由于各个图层中验证图像的位置通常都是处于居中状态,如果直接合并各个图层,形成的验证码图像大部分都是重叠的,本发明实施例通过调整各个图层中验证图像的位置信息,以使得各个图层中验证图像直接形成交叉,通过形成的交叉点能够方便用户识别各个验证图像的叠放顺序。
步骤S104,合并各个图层,生成验证图像交叉形式的验证码图像。
由于在预先生成图层的时候,各个图层之间存在一定的堆叠层次顺序,这里的堆叠层次顺序为在合并各个图层时将各个图层由上至下堆叠合并的顺序,进一步按照堆叠层次顺序合并各个图层,生成验证图像交叉形式的验证码图像,使得验证码图像中位于上方图层中的验证图像不会被下方图层中的验证图像所遮挡,各个图层中的图像形成交叉样式。
本发明实施例生成验证图像交叉形式的验证码图像,与现有的验证码图像有所不同,这样形式的验证码图像融合了立体交叉识别的特点,通过用户肉眼识别验证码图像来输入各个图层中验证图像的堆叠层次顺序,增加了机器识别验证码的难度,提高了验证码图像的安全性。
本发明实施例提供的一种验证码图像的生成方法,通过将获取的包含有不同标识信息的验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,了解到各个验证图像的堆叠层次顺序,通过调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉,增加了机器识别验证码图像的难度,保证了用户识别验证码图像便利性的同时提高了验证码图像的安全性。与现有技术中验证码图像的生成方法相比,本发明实施例利用二维图像的三维感知能力,生成具有多角度的堆叠层次感的验证码图像,从而保证验证码图像的识别难度。
图2是根据本发明实施例的验证码图像的生成方法的流程图二,如图2所示,该流程包括如下步骤:
步骤S201,根据验证请求参数,确定验证码图像的难度等级;
其中,验证请求参数为通过终端环境检测所请求验证码图像生成所需要的参数,具体可以包括但不局限于用户终端运行环境的硬件参数以及用户操作行为的标识参数,用户终端运行环境的硬件参数可以包括但不局限于用户终端的显示尺寸、显示分辨率等,用户操作行为的标识参数可以包括但不局限于用户终端设备的标识、用户登录位置标识、用户当前操作信息等。
需要说明的是,这里的验证请求参数可以用来衡量验证码图像的难度等级,如果用户终端的显示尺寸过小,为了方便用户进行验证码图像的识别,不适宜将验证码图像的尺寸设置过大,可以相应降低验证码图像的难度等级,如果用户操作行为的标识参数表示用户当不在常用地登录或者登录地点经常更换,为了保证用户登录的安全性,可以相应增加验证码图像的难度等级。
对于本发明实施例中不同难度等级的验证码图像可能对应有不同数量的验证图像以及不同形状的验证图像,对于数量少的验证码图像所需的堆叠层次较少,用户容易识别出各个验证图像堆叠层次顺序,所以验证码图像的难度等级较低,对于复杂形状的验证码图像所需的验证图像会涉及多种不同形状,用户从多个不同形状的验证图像中识别出各个验证图像的堆叠层次顺序比较困难,所以验证码图像的难度等级较高,本发明实施例对验证码图像难度等级的具体分类方式不进行限定,当然还可以通过设置不同尺寸的验证码图像以及不同背景图案的验证码图像等方式来划分验证码图像的难度。
例如,可以将验证码图像的难度等级划分为5个难度等级,难度等级越高对应的验证码图像中验证图像数量越多,或者难度等级越高对应的验证码图像中背景图案越复杂,或者难度等级越高对应的验证码图像中不同验证图像数量越多等,当然还可以是以上多种形式的结合。
步骤S202,获取与所述验证码图像的难度等级对应的形状矩阵;
由于不同难度等级的验证码图像需要设置相应难度的验证图像,形状简单的验证图像识别度较高,验证图像的难度等级较低,例如,圆形、方形等规则形状,形状复杂的验证图像识别度较低,验证图像的难度等级较高,例如,钥匙形状、音符形状等不规则形状。
对于本发明实施例,具体可以从形状库中查找与验证码图像难度等级对应形状的矩阵信息,这里的形状库中记录有预先生成的不同难度等级对应形状的矩阵信息,并且根据矩阵信息可以生成相应的形状矩阵,当然这的形状主要挑选实际生活中容易完成堆叠拆解的形状,如牙签、冰棒、线条、竹子、纸条等,本发明实施例不进行限定。
步骤S203,将所述形状矩阵转换为验证图像,并生成与所述验证码图像的难度等级对应数量的验证图像;
对于本发明实施例,在确定验证码图像的难度等级后,会生成相应难度等级对应数量的验证图像,这里的验证图像可以为相同图像,也可以为不同图像,如果是相同图像,则可以在首次将形状矩阵转换为验证图像后,通过复制的形式生成多个相同的验证图像,从而得到与验证图像的难度等级对应数量的验证图像,如果为不同图像,则需要多次重复将不同的形状矩阵转换为相应的验证图像,从而得到与验证图像的难度等级对应数量的验证图像。
步骤S204,对所述验证图像进行标识,得到包含有不同标识信息的验证图像;
对于本发明实施例,为了便于用户在识别过程中填写对应验证图像的堆叠层次顺序,对验证图像进行标识,这里的标识方式可以为编号标识、文字标识等,例如按照验证图像个数从1开始编号,对于不同验证图像也可以根据验证图像的图像特征进行标识,本发明实施例对验证图像的标识形式不进行限定。
当然为了方便用户更好的识别编号,可以对编号进行描边处理,避免由于验证图像颜色以及编号一致导致识别困难的问题。
步骤S205,根据所述验证码图像的难度等级在不同标识信息的验证图像中添加干扰元素;
需要说明的是,在用户识别验证码图像中各个验证图像的堆叠层次顺序时,为了方便用户识别,会根据验证码图像的难度等级在验证图像中添加干扰元素,进行必要的贴图水印处理,完成识别干扰,如加入不同的填充图案或者加入不同的颜色等,本发明实施例对标识信息不进行限定,可以为预先生成的图片素材。
步骤S206,根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息;
对于本发明实施例,在将验证图像贴入预先生成的图层中之前,需要设置预设尺寸的画布,在作图软件中,画布就是位于图层最下方的那一层,这里需要根据验证图像的尺寸设置预设尺寸的画布,以保证各个验证图像均能够放入画布中,例如将画布设为307*246,并在画布中生成与验证图像数量相同的图层,进一步将验证图像贴入预先生成的图层中,每个图层对应一个验证图像,并且对应有不同的标识信息。
例如,在画布中生成与验证图像数量相同的5个图层,并按照编号3-1-2-5-4的顺序将验证图像贴入各个图层中,将编号3的验证图像贴入图层1,将编号1的验证图像贴入图层2,将编号2的验证图像贴入图层3,将编号5的验证图像贴入图层4,将编号4的验证图像贴入图层5。
步骤S207,调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;
对于本发明实施例,具体可以根据验证码图像的难度等级确定各个图层中验证图像之间的最小交叉点个数,如果验证码图像的难度等级较高,则可以设置多个交叉点个数,进一步通过调整各个图层中验证图像的角度,以使得各个图层中验证图像之间形成的交叉点个数不少于所述最小交叉点个数,从而方便用户识别验证图像的堆叠层次顺序。
步骤S208,合并各个图层,生成验证图像交叉形式的验证码图像;
在合并各个图层时,按照预先安排的堆叠层次顺序由上至下将各个图层进行合并,使得验证码图像中位于上方图层中的验证图像不会被下方图层中的验证图像所遮挡,各个图层中的图像形成交叉样式。
步骤S209,根据所述验证码图像的难度等级生成验证码背景图像;
对于本发明实施例,还可以根据验证码图像的难度等级生成验证码背景图像,这里的验证码背景图像用于验证码图像的难度等级,相当于干扰用户识别验证图像层叠顺序的干扰元素,例如可以按照验证图像的颜色、纹理等特性生成验证码背景,生成的验证码背景图像越接近与验证图像,则说明验证码图像的难度等级越高,验证图像的堆叠层次顺序越不容易被用户所识别。
步骤S210,将所述验证码背景图像放置于合并后验证码图像的底层。
对于本发明实施例,具体的应用场景可以如下所示,但不限于此,包括:在接收到用户的验证请求后,服务器了解到用户终端运行环境的硬件参数以及用户操作行为的标识参数,确定验证码的难度等级为4级,按照难度等级获取到对应的形状矩阵为牙签,所需要的验证图像数量为5个,增加验证码背景图像难度,进一步从形状库中查找与验证码图像难度等级对应牙签形状的矩阵信息,图3是根据本发明实施例验证图像的形状矩阵,如图3所示,并且根据矩阵信息可以生成相应牙签形状的矩阵,将牙签形状的矩阵转换为牙签图像,并复制出4个相同形状的牙签图像作为验证图像,为了区分不同验证图像,分别对5个牙签图像进行标号以及做不同的贴图水印处理,图4是根据本发明实施例水印处理后的验证图像,如图4所示,将各个牙签图像贴入预先生成的图层中,这里的堆叠层次顺序设置为3-2-1-4-5,将编号3的牙签图像贴入图层1,将编号2的牙签图像贴入图层2,将编号1的牙签图像贴入图层3,将编号4的牙签图像贴入图层4,将编号4的牙签图像贴入图层4,将编号5的牙签图像贴入图层5,并调整各个图层中牙签图像的位置以及角度,保证各个牙签图层直接存在交叉,图5是根据本发明优选实施例的验证码图像一,如图5所示,调整后的各个图层中牙签图像能够观察出堆叠层次关系,进一步在合并各个图层后,生成验证码背景图像,图6是根据本发明优选实施例的验证码图像二,如图6所示,按照牙签图像的填充颜色,生成相应的验证码背景图像,放置于合并后验证码图像的底层,完成最终验证码图像的生成。
本发明实施例的另一种验证码图像的生成方法,通过确定验证码图像的难度等级,生成相应难度等级的验证码图像,保证了用户识别验证码图像便利性的同时提高了验证码图像的安全性。与现有技术中验证码图像的生成方法相比,本发明实施例利用二维图像的三维感知能力,生成具有多角度的堆叠层次感的验证码图像,从而保证验证码图像的识别难度。
在本实施例中提供了一种验证码图像的验证方法,图7是根据本发明实施例的验证码图像的验证方法的流程图,如图7所示,该流程包括如下步骤:
步骤S301,根据用户发送的验证请求生成验证码图像;
其中,验证码图像为包含多个叠加在一起的验证图像,这里的验证图像可以为相同图像,也可以为不同图像,具体根据验证图像的难度等级确定,验证图像可以为任意形状的图像,如月牙形、矩形、圆形等,并且不同验证图像包含有不同的标识信息,标识信息可以为编号形式,也可以为文字形式等,当标识信息为编号形式时,可以将第一张验证图像编号为1,第二张验证图像编号为2,以此类推,当标识信息为文字形式时,可以将验证图像标记为对应形状的文字,如第一张验证图像标记为月牙形,第二张验证图像标记为圆形,第三张验证图像标记为星形等,本发明实施例对验证图像的形状以及验证图像对应标识信息不进行限定。
步骤S302,接收用户输入的校验验证码;
对于本发明实施例,校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息,当验证图像的标识信息为编号时,用户可以按照从上至下的堆叠层次顺序输入验证图像的编号,如校验验证码为3-4-1-2,当当验证图像的标识信息为不同颜色的文字时,用户可以按照从上至下的堆叠层次顺序输入验证图像的颜色,如校验验证码为红-绿-黄-蓝,等本发明实施例对校验验证码的形式不进行限定。
步骤S303,判断所述校验验证码与预先存储的堆叠层次顺序是否相同。
其中,预先存储的堆叠层次顺序为在生成验证码图像时记录的各个图层中验证图像的标识信息的顺序,为正确的校验验证码顺序,通过判断校验验证码与预先存储的堆叠层次顺序可以判断用户输入的校验验证码是否正确。
步骤S304,若是,则验证通过。
对于本发明实施例,若验证通过,说明用户输入的校验验证码为正确的,说明是用户真实的操作,并非虚拟机器所能实现的操作,通过用户对验证码图像的识别,提高了用户登录验证的安全性。
对于本发明实施例,若校验不通过,则验证失败,说明用户输入的校验验证码不正确,可能是验证码图像对于用户来说不容易识别,可以根据验证请求参数重新生成验证码图像,当然如果用户认为难以识别验证码图像,也可以请求降低验证码图像的难度,本发明实施例不进行限定。
本发明实施例的另一种验证码图像的验证方法,通过接收用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息,能够得到验证码图像中各个验证图像的堆叠层次顺序,进一步判断所述校验验证码与预先存储的堆叠层次顺序是否相同来对验证码图像进行验证,若是,则验证通过。与现有技术中验证码图像的验证方法相比,本发明实施例通过用户输入肉眼识别验证码图像中各个验证图像堆叠层次顺序的校验验证码,增加了机器识别验证码的难度,进一步有效阻止网站恶意用户数量,保证用户登录网站的安全性。
图8是根据本发明实施例的验证码图像的生成以及验证的流程图,如图8所示,当用户打开网站页面时,向服务器请求验证码图像,服务器根据用户发送的验证请求生成选取形状或者随机形状的验证码图像,以及在服务器端保留验证图像的堆叠层次顺序,将生成的验证码图像显示给用户,用户通过肉眼识别验证图像的堆叠层次顺序后,输入带有各个验证图像标识信息的校验验证码,服务器根据用户输入的校验验证码与保留的堆叠层次信息进行对比,如果对比一致,则说明,用户通过验证,否则需要重新生成新的验证码图像,以便用户再次输入校验验证码。
图9是根据本发明实施例的验证码图像的生成装置的结构框图一,如图9所示,该装置包括:
获取单元41,可以用于获取包含有不同标识信息的验证图像;
贴入单元42,可以用于根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,其中,一个标识信息对应的验证图像指定有一个图层;
调整单元43,可以用于调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;
第一生成单元44,可以用于合并各个图层,生成验证图像交叉形式的验证码图像。
本发明实施例提供的一种验证码图像的生成装置,通过将获取的包含有不同标识信息的验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,了解到各个验证图像的堆叠层次顺序,通过调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉,增加了机器识别验证码图像的难度,保证了用户识别验证码图像便利性的同时提高了验证码图像的安全性。与现有技术中验证码图像的生成方法相比,本发明实施例利用二维图像的三维感知能力,生成具有多角度的堆叠层次感的验证码图像,从而保证验证码图像的识别难度。
作为图9中所示验证码图像的生成装置的进一步说明,图10是根据本发明实施例的验证码图像的生成装置的结构框图二,如图10所示,该装置还包括:
确定单元45,可以用于根据验证请求参数,确定验证码图像的难度等级。
添加单元46,可以用于根据所述验证码图像的难度等级在不同标识信息的验证图像中添加干扰元素。
设置单元47,可以用于设置预设尺寸的画布,在所述画布中生成与所述验证图像数量相同的图层。
第二生成单元48,可以用于根据所述验证码图像的难度等级生成验证码背景图像;
第三生成单元49,可以用于将所述验证码背景图像放置于合并后验证码图像的底层。
进一步地,所述获取单元41包括:
获取模块411,可以用于获取与所述验证码图像的难度等级对应的形状矩阵;
转换模块412,可以用于将所述形状矩阵转换为验证图像,并生成与所述验证码图像的难度等级对应数量的验证图像;
标识模块413,可以用于对所述验证图像进行标识,得到包含有不同标识信息的验证图像。
进一步地,所述获取模块411,具体可以用于从形状库中查找与所述验证码图像的难度等级对应形状的矩阵信息,所述形状库中记录有预先生成的不同难度等级对应形状的矩阵信息;
所述获取模块411,具体还可以用于根据所述矩阵信息生成所述形状矩阵。
进一步地,所述调整单元43包括:
确定模块431,可以用于根据所述验证码图像的难度等级确定各个图层中验证图像之间的最小交叉点个数;
调整模块432,可以用于调整各个图层中验证图像的角度,以使得各个图层中验证图像之间形成的交叉点个数不少于所述最小交叉点个数。
本发明实施例提供的另一种验证码图像的生成装置,通过确定验证码图像的难度等级,生成相应难度等级的验证码图像,保证了用户识别验证码图像便利性的同时提高了验证码图像的安全性。与现有技术中验证码图像的生成方法相比,本发明实施例利用二维图像的三维感知能力,生成具有多角度的堆叠层次感的验证码图像,从而保证验证码图像的识别难度。
图11是根据本发明实施例的验证码图像的验证装置的结构框图一,如图11所示,该装置包括:
第一生成单元51,可以用于根据用户发送的验证请求生成验证码图像;
接收单元52,可以用于接收用户输入的校验验证码,所述校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息;
判断单元53,可以用于判断所述校验验证码与预先存储的堆叠层次顺序是否相同;
第一验证单元54,可以用于若所述校验验证码与预先存储的堆叠层次顺序相同,则验证通过。
作为图11中所示验证码图像的验证装置的进一步说明,图12是根据本发明实施例的验证码图像的验证装置的结构框图二,如图12所示,该装置还包括:
第二验证单元55,可以用于若所述校验验证码与预先存储的堆叠层次顺序不相同,则验证失败;
第二生成单元56,可以用于根据验证请求参数重新生成验证码图像。
本发明实施例提供的一种验证码图像的验证装置,通过接收用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息,能够得到验证码图像中各个验证图像的堆叠层次顺序,进一步判断所述校验验证码与预先存储的堆叠层次顺序是否相同来对验证码图像进行验证,若是,则验证通过。与现有技术中验证码图像的验证方法相比,本发明实施例通过用户输入肉眼识别验证码图像中各个验证图像堆叠层次顺序的校验验证码,增加了机器识别验证码的难度,进一步有效阻止网站恶意用户数量,保证用户登录网站的安全性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。
Claims (6)
1.一种验证码图像的验证方法,其特征在于,包括:
获取包含有不同标识信息的验证图像;
根据所述标识信息将所述验证图像贴入预先生成的图层中,并记录各个图层中验证图像的标识信息,其中,一个标识信息对应的验证图像指定有一个图层;
调整各个图层中验证图像的位置信息,以使得各个图层中验证图像之间形成交叉;
合并各个图层,生成验证图像交叉形式的方便用户识别验证图像堆叠层次顺序的验证码图像;根据所述验证码图像的难度等级确定各个图层中验证图像之间的最小交叉点个数;调整各个图层中验证图像的角度,以使得各个图层中验证图像之间形成的交叉点个数不少于所述最小交叉点个数;
接收用户输入的校验验证码,所述校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息;
判断所述校验验证码与预先存储的堆叠层次顺序是否相同;
若是,则验证通过。
2.根据权利要求1所述的方法,其特征在于,在所述获取包含有不同标识信息的验证图像之前,所述方法还包括:
根据验证请求参数,确定验证码图像的难度等级。
3.根据权利要求2所述的方法,其特征在于,所述获取包含有不同标识信息的验证图像包括:
获取与所述验证码图像的难度等级对应的形状矩阵;
将所述形状矩阵转换为验证图像,并生成与所述验证码图像的难度等级对应数量的验证图像;
对所述验证图像进行标识,得到包含有不同标识信息的验证图像。
4.根据权利要求3所述的方法,其特征在于,所述获取与所述验证码图像的难度等级对应的形状矩阵包括:
从形状库中查找与所述验证码图像的难度等级对应形状的矩阵信息,所述形状库中记录有预先生成的不同难度等级对应形状的矩阵信息;
根据所述矩阵信息生成所述形状矩阵。
5.根据权利要求1-4中任一项所述的方法,其特征在于,在所述获取包含有不同标识信息的验证图像之后,所述方法还包括:
根据所述验证码图像的难度等级在不同标识信息的验证图像中添加干扰元素。
6.一种验证码图像的验证装置,其特征在于,所述验证装置用于执行如权利要求1-5任一项所述的验证方法,所述验证装置包括:
第一生成单元,用于根据用户发送的验证请求生成所述的验证码图像;
接收单元,用于接收用户输入的校验验证码,所述校验验证码为用户按照校验码图像中各个验证图像的堆叠层次顺序输入的各个验证图像的标识信息;
判断单元,用于判断所述校验验证码与预先存储的堆叠层次顺序是否相同;
第一验证单元,用于若所述校验验证码与预先存储的堆叠层次顺序相同,则验证通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711247877.0A CN108010097B (zh) | 2017-11-30 | 2017-11-30 | 验证码图像的验证方法及验证装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711247877.0A CN108010097B (zh) | 2017-11-30 | 2017-11-30 | 验证码图像的验证方法及验证装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108010097A CN108010097A (zh) | 2018-05-08 |
CN108010097B true CN108010097B (zh) | 2021-04-20 |
Family
ID=62056002
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711247877.0A Active CN108010097B (zh) | 2017-11-30 | 2017-11-30 | 验证码图像的验证方法及验证装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108010097B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110740112B (zh) * | 2018-07-20 | 2023-05-12 | 北京京东尚科信息技术有限公司 | 认证方法、装置和计算机可读存储介质 |
CN109741415B (zh) * | 2019-01-02 | 2023-08-08 | 中国联合网络通信集团有限公司 | 图层整理方法、装置及终端设备 |
CN111723356B (zh) * | 2019-03-18 | 2024-04-05 | 京东科技控股股份有限公司 | 一种验证码的验证方法、装置和存储介质 |
CN111414609B (zh) * | 2020-03-19 | 2024-01-26 | 腾讯科技(深圳)有限公司 | 一种对象验证方法和装置 |
CN114268430B (zh) * | 2021-12-15 | 2024-05-24 | 瀚云科技有限公司 | 一种验证码生成方法、装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101237324A (zh) * | 2007-01-31 | 2008-08-06 | 中国移动通信集团公司 | 图片验证码的生成方法及生成装置 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
WO2013029319A1 (zh) * | 2011-08-30 | 2013-03-07 | 北京百度网讯科技有限公司 | 一种用于基于验证安全等级提供图片验证码的方法与设备 |
CN103312512A (zh) * | 2013-06-07 | 2013-09-18 | 深圳第七大道网络技术有限公司 | 一种图片验证码的生成方法及装置、身份验证方法及装置 |
CN105574399A (zh) * | 2015-12-22 | 2016-05-11 | 安徽一拓通信科技集团股份有限公司 | 一种图形验证码的生成方法 |
CN106936575A (zh) * | 2015-12-29 | 2017-07-07 | 张仁平 | 一种让智能化程序难以识别的验证码系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11210648B2 (en) * | 2012-10-17 | 2021-12-28 | Royal Bank Of Canada | Systems, methods, and devices for secure generation and processing of data sets representing pre-funded payments |
-
2017
- 2017-11-30 CN CN201711247877.0A patent/CN108010097B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101237324A (zh) * | 2007-01-31 | 2008-08-06 | 中国移动通信集团公司 | 图片验证码的生成方法及生成装置 |
WO2013029319A1 (zh) * | 2011-08-30 | 2013-03-07 | 北京百度网讯科技有限公司 | 一种用于基于验证安全等级提供图片验证码的方法与设备 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
CN103312512A (zh) * | 2013-06-07 | 2013-09-18 | 深圳第七大道网络技术有限公司 | 一种图片验证码的生成方法及装置、身份验证方法及装置 |
CN105574399A (zh) * | 2015-12-22 | 2016-05-11 | 安徽一拓通信科技集团股份有限公司 | 一种图形验证码的生成方法 |
CN106936575A (zh) * | 2015-12-29 | 2017-07-07 | 张仁平 | 一种让智能化程序难以识别的验证码系统 |
Non-Patent Citations (1)
Title |
---|
基于FusionCharts的图形验证码的研究与实现;李建迎;《计算机应用与软件》;20140831;第31卷(第8期);第327-329页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108010097A (zh) | 2018-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108010097B (zh) | 验证码图像的验证方法及验证装置 | |
CN105763521B (zh) | 一种设备验证方法及装置 | |
US9524395B2 (en) | Apparatus and methods for obtaining a password hint | |
US8260718B2 (en) | System and method for authenticating an end user | |
US8776213B2 (en) | Mobile application security system and method | |
US7659869B1 (en) | System and method for authenticating an end user | |
US8645281B2 (en) | Process for authenticating an end user | |
US20030191947A1 (en) | System and method of inkblot authentication | |
CN105095737A (zh) | 检测弱密码的方法和装置 | |
CN104318196B (zh) | 一种工程质量检测报告二维码防伪验证方法 | |
CN107294900A (zh) | 基于生物特征的身份注册方法和装置 | |
CN104468531A (zh) | 敏感数据的授权方法、装置和系统 | |
US20120204229A1 (en) | Method and system for authenticating an end user | |
CN104299146A (zh) | 一种产品防伪查询系统 | |
CN103559221B (zh) | 一种进行多媒体数据处理的方法、装置和浏览器 | |
CN105357008A (zh) | 身份验证方法及装置 | |
CN110324344A (zh) | 账号信息认证的方法及装置 | |
CN206962826U (zh) | 基于fido u2f双因子指纹识别的身份认证系统 | |
CN105701391B (zh) | 动态验证码图片生成方法及装置 | |
CN104618356B (zh) | 身份验证方法及装置 | |
EP3528152A1 (en) | Method and apparatus for user authentication | |
CN105187422A (zh) | 依托隐形图像编码技术上的反钓鱼网站识别方法及系统 | |
CN104660561B (zh) | 身份验证方法和装置 | |
KR101620446B1 (ko) | 이미지를 이용한 인증 장치 및 방법 | |
CN108694429B (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 |