CN107453876A - 一种基于图片的验证码实现方法及装置 - Google Patents
一种基于图片的验证码实现方法及装置 Download PDFInfo
- Publication number
- CN107453876A CN107453876A CN201710651335.3A CN201710651335A CN107453876A CN 107453876 A CN107453876 A CN 107453876A CN 201710651335 A CN201710651335 A CN 201710651335A CN 107453876 A CN107453876 A CN 107453876A
- Authority
- CN
- China
- Prior art keywords
- picture
- dimensional matrix
- position relationship
- relationship information
- checking
- 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.)
- Pending
Links
Classifications
-
- 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
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
- H04L63/0838—Network architectures or network communication protocols for network security for authentication of entities using passwords using one-time-passwords
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Collating Specific Patterns (AREA)
Abstract
本发明实施例提供一种基于图片的验证码实现方法及装置,可以有效防止机器恶意访问,同时实现简单、操作简便。基于图片的验证码实现方法,包括:从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行旋转;将第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片的位置关系信息;在接收到验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片的位置关系信息;将所述二维矩阵验证图片返回给客户端进行展示;接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与被旋转的图片的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
Description
技术领域
本发明属于网络安全领域,尤其涉及一种基于图片的验证码实现方法及装置。
背景技术
验证码,又称为CAPTCHA(Completely Automated Public Turing test to tellComputers and Humans Apart,全自动区分计算机和人类的公开图灵测试),是一种区分用户是机器还是人的公共全自动程序。现有技术中,主流的验证码实现方法通常采用字符和图片背景组合的形式,同时可能添加一定的干扰像素,通过用户识别输入验证码的内容达到防止机器恶意访问的目的。
现今,OCR(Optical Character Recognition,光学字符识别)技术已经发展得很成熟,OCR技术是通过扫描等光学输入方式将各种票据、报刊、书籍、文稿及其它印刷品的文字转化为图像信息,再利用文字识别技术将图像信息转化为可以使用的计算机输入技术。对于普通的字符图片能够很容易识别出该图片验证码上的字符,虽然通过额外的干扰因素来干扰机器的自动识别,例如在图片上加随机像素点、随机线条和随机的图片扭曲,但是这样做非但没有阻止机器自动识别出图片上的字符,反而让正常的用户看不清图片上的字符,提高了用户的错误率,对用户的使用体验造成负面影响。
发明内容
有鉴于此,本发明旨在提供一种基于图片的验证码实现方法及装置,可以有效防止机器恶意访问,同时实现简单、操作简便,能够带来良好的用户体验。
为了实现上述目的,本发明提供一种基于图片的验证码实现方法,包括:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
进一步地,所述方法还包括:
客户端接收到二维矩阵验证图片后,向用户进行展示并指示用户点选所述二维矩阵验证图片中被旋转的图片;
客户端记录用户点选图片在所述二维矩阵验证图片中所在的位置关系信息并返回。
进一步地,所述根据比对结果判定用户是否验证通过,具体包括:
如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
进一步地,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系。
进一步地,所述第一数量大于等于4,所述第二数量大于1且小于第一数量。
基于同一技术构思,本发明还提供了一种基于图片的验证码实现装置,包括:
图片库,用于存储方向可辨识的正向图片;
验证图片生成模块,用于从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
验证处理模块,用于在接收到用户通过客户端发起的验证请求时,从验证图片生成模块中获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
进一步地,所述验证处理模块,具体用于如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
进一步地,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系。
基于同一技术构思,本发明还提供一种网络覆盖性能评价依据的输出装置,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
基于同一技术构思,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
本发明提供的基于图片的验证码与现有技术中基于字符的验证码相比,能够有效对抗机器识别,尤其是基于OCR的自动识别。本发明提供的基于图片的验证码安全性较高,如果恶意攻击者想要进行破解,首先需要从二维矩阵验证图片中依次提取每张图片,并分别识别图片中的内容是否经过旋转这一问题,而该问题破难度大,保证了网络服务的安全性。本发明提供的基于图片的验证码实现方法及装置,用户仅需点选方向为非正向的图片而无需对图片方向进行调整,在操作上方便快捷,能显著降低用户使用成本,带来良好的用户体验;同时技术原理简单,实现成本较低,安全防护能力强,适用于各种需要验证码的场景。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是本发明实施例中基于图片的验证码实现方法流程图;
图2是本发明实施例中基于图片的验证码实现装置框图;
图3是本发明实施例中二维矩阵验证图片及位置关系信息示意图;
图4是本发明实施例中一种电子设备的结构示意图。
具体实施方式
本发明旨在提供一种基于图片的验证码实现方法及装置,可以有效防止机器恶意访问,同时实现简单、操作简便,能够带来良好的用户体验。
以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
如图1所示,本发明实施例提供的基于图片的验证码实现方法,包括如下步骤:
S101、从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;
在S101的具体实施中,为了提升验证准确性,从图片库中随机抽取的正向图片的第一数量通常大于等于4;随机选取的进行旋转的图片的第二数量大于1且小于第一数量。可以理解,所述的从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转是指将方向可辨识的正向图片随机的向左旋转、或者向右旋转、或者向下旋转。
S102、将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在S102的具体实施中,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系,所述位置标识可以采用数字或者字母顺序编号或者随机编号。
S103、在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
S104、将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
相应的,客户端接收到二维矩阵验证图片后,向用户进行展示并指示用户点选所述二维矩阵验证图片中被旋转的图片;客户端记录用户点选图片在所述二维矩阵验证图片中所在的位置关系信息并返回。
S105、接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
在S105的具体实施中,所述根据比对结果判定用户是否验证通过,具体包括:
如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
基于同一技术构思,本发明实施例提供了一种基于图片的验证码实现装置,主要包括验证图片生成模块和验证处理模块。其中:
验证图片生成模块主要用于生成二维矩阵验证图片。该模块从图片库中随机抽取N张(N>=4)方向可辨识的正向图片,较佳的随机抽取的N张图片内容不同;然后再从随机抽取的图片中随机选取M张(1<M<N)图片进行旋转,并拼接成二维矩阵验证图片,同时记录被旋转的图片在二维矩阵验证图片中所在的位置关系信息。
验证处理模块主要用于对验证逻辑进行处理。当客户端的验证请求到达时,该模块会从验证图片生成模块中获取一张二维矩阵验证图片和对应的被旋转图片的位置关系信息,并将二维矩阵验证图片返回给客户端;客户端收到二维矩阵验证图片后,会让用户点选其中被旋转的图片,客户端记录用户点选图像的位置关系信息,并将这些信息返回给验证处理模块;验证处理模块收到客户端发送的用户点选图片的位置关系信息后与二维矩阵验证图片中被旋转图片的位置关系信息进行对比。只有当客户端发送的用户点选图片的数量和用户每次点选的位置与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致时,验证通过,否则验证失败。
本发明实施例提供的基于图片的验证码实现装置,如图2所示,包括:图片库201、验证图片生成模块202和验证处理模块203,其中:
图片库201,用于存储方向可辨识的正向图片;
验证图片生成模块202,用于从图片库201随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
较佳的,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系。
验证处理模块203,用于在接收到用户通过客户端发起的验证请求时,从验证图片生成模块202中获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
具体实施中,验证处理模块203,具体用于如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
下面对本发明实施例提供的基于图片的验证码实现方法进行举例说明。
首先,验证图片生成模块从图片库中随机抽取第一数量(此处第一数量取值为16)、且方向可辨识的正向图片,并从中随机选取第二数量(此处第二数量取值为5)的图片进行旋转;然后将16张图片拼接成4*4的二维矩阵,如图3左边所示。其中5张被旋转的图片的位置标识分别为(1)、(3)、(7)、(11)、(13),5张被旋转的图片在二维矩阵验证图片中所在的位置关系信息如图3右边所示。
当用户访问发生,通过客户端发起验证请求时,验证处理模块会从验证图片生成模块获取如图3所示二维矩阵验证图片和对应的位置关系信息,并返回给客户端。用户验证时,点选二维矩阵验证图片中被旋转的图片,客户端记录用户点选图片的位置关系信息,并将用户点选图片的位置关系信息返回给验证处理模块。验证处理模块接收到用户点选图片的位置关系信息后,判断用户每次点选位置的图片是否均为被旋转的图片且没有多选、漏选。如果用户点选位置的图片均为被旋转的图片,且没有多选、漏选,则判定验证通过,否则判定验证失败。
本发明实施例提供的基于图片的验证码与现有技术中基于字符的验证码相比,能够有效对抗机器识别,尤其是基于OCR的自动识别。本发明实施例提供的基于图片的验证码安全性较高,如果恶意攻击者想要进行破解,首先需要从二维矩阵验证图片中依次提取每张图片,并分别识别图片中的内容是否经过旋转这一问题,而该问题破难度大,保证了网络服务的安全性。本发明实施例提供的基于图片的验证码实现方法及装置,用户仅需点选方向为非正向的图片而无需对图片方向进行调整,在操作上方便快捷,能显著降低用户使用成本,带来良好的用户体验;同时技术原理简单,实现成本较低,安全防护能力强,适用于各种需要验证码的场景。
图4示出了本发明实施例提供的一种电子设备的结构示意图。请参考图4,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成基于图片的验证码实现装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
上述如发明图4所示实施例揭示的基于图片的验证码实现装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
本发明实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图4所示实施例中基于图片的验证码实现装置执行的方法,并具体用于执行:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
本领域内的技术人员应明白,本申请的实施例可提供为方法、装置、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,本申请中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、商品或者设备中还存在另外的相同要素。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种基于图片的验证码实现方法,其特征在于,包括:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
2.如权利要求1所述的基于图片的验证码实现方法,其特征在于,所述方法还包括:
客户端接收到二维矩阵验证图片后,向用户进行展示并指示用户点选所述二维矩阵验证图片中被旋转的图片;
客户端记录用户点选图片在所述二维矩阵验证图片中所在的位置关系信息并返回。
3.如权利要求1或2所述的基于图片的验证码实现方法,其特征在于,所述根据比对结果判定用户是否验证通过,具体包括:
如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
4.如权利要求3所述的基于图片的验证码实现方法,其特征在于,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系。
5.如权利要求3所述的基于图片的验证码实现方法,其特征在于,所述第一数量大于等于4,所述第二数量大于1且小于第一数量。
6.一种基于图片的验证码实现装置,其特征在于,包括:
图片库,用于存储方向可辨识的正向图片;
验证图片生成模块,用于从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
验证处理模块,用于在接收到用户通过客户端发起的验证请求时,从验证图片生成模块中获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
7.如权利要求6所述的基于图片的验证码实现装置,其特征在于,
所述验证处理模块,具体用于如果客户端发送的用户点选图片的数量、以及用户每次点选的位置,与二维矩阵验证图片对应的被旋转图片的位置关系信息完全一致,则判定验证通过,否则判定验证失败。
8.如权利要求7所述的基于图片的验证码实现装置,其特征在于,所述位置关系信息为二维矩阵验证图片中每一个位置、与为每一个位置预先指定的唯一的位置标识之间的对应关系。
9.一种网络覆盖性能评价依据的输出装置,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
10.一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
从图片库随机抽取第一数量、且方向可辨识的正向图片,从抽取出的各正向图片中随机选取第二数量的图片进行从正向到非正向的旋转;以及
将抽取出的第一数量的图片拼接成二维矩阵验证图片,并对应记录被旋转的图片在当前二维矩阵验证图片中所在的位置关系信息;
在接收到用户通过客户端发起的验证请求时,获取一张拼接成的二维矩阵验证图片、以及被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息;
将所述二维矩阵验证图片返回给客户端进行展示,指示用户点选所述二维矩阵验证图片中被旋转的图片;
接收客户端发送的用户点选图片在所述二维矩阵验证图片中所在的位置关系信息,并与获取到的被旋转的图片在所述二维矩阵验证图片中所在的位置关系信息进行比对,根据比对结果判定用户是否验证通过。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710651335.3A CN107453876A (zh) | 2017-08-02 | 2017-08-02 | 一种基于图片的验证码实现方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710651335.3A CN107453876A (zh) | 2017-08-02 | 2017-08-02 | 一种基于图片的验证码实现方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107453876A true CN107453876A (zh) | 2017-12-08 |
Family
ID=60489420
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710651335.3A Pending CN107453876A (zh) | 2017-08-02 | 2017-08-02 | 一种基于图片的验证码实现方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107453876A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040001A (zh) * | 2018-02-14 | 2018-12-18 | 北京梆梆安全科技有限公司 | 一种验证用户的方法、终端和服务器 |
CN111667549A (zh) * | 2020-04-28 | 2020-09-15 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988442A (zh) * | 2005-12-23 | 2007-06-27 | 上海盛大网络发展有限公司 | 图片验证码的实现方法 |
US7891005B1 (en) * | 2006-08-10 | 2011-02-15 | Google Inc. | Verifying human interaction via rotated images |
CN102006163A (zh) * | 2009-09-01 | 2011-04-06 | 阿里巴巴集团控股有限公司 | 用户验证方法、装置及服务器 |
CN102685078A (zh) * | 2011-03-17 | 2012-09-19 | 中国电信股份有限公司 | 对验证码进行验证的方法和服务器 |
US20130145441A1 (en) * | 2011-06-03 | 2013-06-06 | Dhawal Mujumdar | Captcha authentication processes and systems using visual object identification |
CN103312695A (zh) * | 2013-05-17 | 2013-09-18 | 杭州时趣信息技术有限公司 | 一种图片验证码的实现方法 |
CN103942486A (zh) * | 2013-01-17 | 2014-07-23 | 上海博路信息技术有限公司 | 一种图像阵列的验证码 |
CN104935436A (zh) * | 2015-05-19 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 一种用户验证方法及*** |
CN106034029A (zh) * | 2015-03-20 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 基于图片验证码的验证方法和装置 |
US9495532B1 (en) * | 2016-03-28 | 2016-11-15 | Mikhail Zhurkin | Image based tile puzzle CAPTCHA system |
-
2017
- 2017-08-02 CN CN201710651335.3A patent/CN107453876A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1988442A (zh) * | 2005-12-23 | 2007-06-27 | 上海盛大网络发展有限公司 | 图片验证码的实现方法 |
US7891005B1 (en) * | 2006-08-10 | 2011-02-15 | Google Inc. | Verifying human interaction via rotated images |
CN102006163A (zh) * | 2009-09-01 | 2011-04-06 | 阿里巴巴集团控股有限公司 | 用户验证方法、装置及服务器 |
CN102685078A (zh) * | 2011-03-17 | 2012-09-19 | 中国电信股份有限公司 | 对验证码进行验证的方法和服务器 |
US20130145441A1 (en) * | 2011-06-03 | 2013-06-06 | Dhawal Mujumdar | Captcha authentication processes and systems using visual object identification |
CN103942486A (zh) * | 2013-01-17 | 2014-07-23 | 上海博路信息技术有限公司 | 一种图像阵列的验证码 |
CN103312695A (zh) * | 2013-05-17 | 2013-09-18 | 杭州时趣信息技术有限公司 | 一种图片验证码的实现方法 |
CN106034029A (zh) * | 2015-03-20 | 2016-10-19 | 阿里巴巴集团控股有限公司 | 基于图片验证码的验证方法和装置 |
CN104935436A (zh) * | 2015-05-19 | 2015-09-23 | 上海斐讯数据通信技术有限公司 | 一种用户验证方法及*** |
US9495532B1 (en) * | 2016-03-28 | 2016-11-15 | Mikhail Zhurkin | Image based tile puzzle CAPTCHA system |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109040001A (zh) * | 2018-02-14 | 2018-12-18 | 北京梆梆安全科技有限公司 | 一种验证用户的方法、终端和服务器 |
CN111667549A (zh) * | 2020-04-28 | 2020-09-15 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
CN111667549B (zh) * | 2020-04-28 | 2023-04-07 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106503589A (zh) | 区块链交易信息正确性的校验方法、装置及*** | |
EP3869385A1 (en) | Method for extracting structural data from image, apparatus and device | |
CN109033772A (zh) | 一种验证信息的输入方法及装置 | |
CN104618350A (zh) | 一种图片验证码的生成方法 | |
CN107077546A (zh) | 用于更新持有因素凭据的***和方法 | |
CN112037058B (zh) | 数据验证方法、装置及存储介质 | |
US20220277066A1 (en) | Identity authentication and processing | |
CN107451819A (zh) | 一种基于用户操作行为特征的身份验证方法和装置 | |
CN111563243A (zh) | 一种基于微信小程序的可信身份认证平台 | |
CN103473492A (zh) | 权限识别方法和用户终端 | |
CN107239403A (zh) | 一种问题定位方法和设备 | |
CN112215230B (zh) | 一种信息审核方法、装置及电子设备 | |
US20130191641A1 (en) | Captcha (completely automated public test to tell computers and humans apart) data generation methods and related data management systems and computer program products thereof | |
CN107317805A (zh) | 一种验证码验证方法及装置 | |
CN107453876A (zh) | 一种基于图片的验证码实现方法及装置 | |
CN107451459A (zh) | 使用图片验证码进行验证的方法和装置 | |
CN106250755B (zh) | 用于生成验证码的方法及装置 | |
CN106685945A (zh) | 业务请求处理方法、业务办理号码的验证方法及其终端 | |
CN109426759A (zh) | 物品的可视化文件归档的方法、装置和电子设备 | |
CN106878248A (zh) | 一种验证方法和设备 | |
CN110956170A (zh) | 生成护照机读码样本的方法、装置、设备及存储介质 | |
US20230186666A1 (en) | Secure document authentication | |
CN110138707A (zh) | 数据交互的方法、客户端、应用和电子设备 | |
CN109726883A (zh) | 一种保险业务的风险管控方法、装置、设备及存储介质 | |
CN112581678B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20171208 |