CN105681344A - 一种验证码识别***及方法 - Google Patents
一种验证码识别***及方法 Download PDFInfo
- Publication number
- CN105681344A CN105681344A CN201610137671.1A CN201610137671A CN105681344A CN 105681344 A CN105681344 A CN 105681344A CN 201610137671 A CN201610137671 A CN 201610137671A CN 105681344 A CN105681344 A CN 105681344A
- Authority
- CN
- China
- Prior art keywords
- identifying code
- code
- module
- identifying
- identified
- 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
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2133—Verifying human interaction, e.g., Captcha
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种验证码识别***,该***包括第三方验证码模块、验证码适配器模块、OCR自动识别引擎模块和人工辅助识别子***模块。此外,本发明还公开了一种验证码识别方法。通过本发明提供OCR自动识别验证码的同时,再提供人工辅助识别的子***,大大提高了验证码的识别率,使自动化测试流程不再因为验证码的存在而无法进行。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种验证码识别***及方法。
背景技术
验证码(CAPTCHA)是“CompletelyAutomatedPublicTuringtesttotellComputersandHumansApart”(全自动区分计算机和人类的图灵测试)的缩写,是一种区分用户是计算机还是人的公共全自动程序。可以防止:恶意破解密码、刷票、论坛灌水,有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,实际上用验证码是现在很多网站通行的方式,利用比较简易的方式实现了这个功能。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。
目前验证码已经从简单的把随机数生成图片,到增加变形,再到增加干扰,以及更复杂的问题,甚至到图形的发展过程。为了更好的识别验证码,目前有的做法是通过修改服务器端代码屏蔽验证码,但是需要拥有服务器端代码的修改权限,且如果在生产***上屏蔽验证码会带来安全风险。还有的做法是通过修改服务器端代码增加万能验证码,这样也需要拥有服务器端代码的修改权限,且如果被攻击者探测得到万能验证码,则验证码会失去作用。因此面对各种各样错综复杂的验证码,在自动化测试中,如何通过验证码也就成为了一个关键点。
发明内容
本发明的目的是为了克服现有技术的缺陷,提供一种验证码识别***及方法,解决了自动化测试或其它需要对验证码识别的场合中自动化流程不能自动识别验证码等问题。
为实现上述目的,本发明提供了一种验证码识别***,该***包括第三方验证码模块、验证码适配器模块、OCR自动识别引擎模块和人工辅助识别子***模块;其中,第三方验证码模块,是指第三方待识别的验证码;验证码适配器模块,包括验证码信息数据库、获取适配器、校验适配器;OCR自动识别引擎模块,对预处理后的图片进行识别并返回识别结果;人工辅助识别子***模块,包括验证码展示、验证码输入及校验结果展示模块。
进一步地,第三方验证码包括多种不同类型的,例如字符图片、算术计算、问答、根据提示点击、根据提示拖动。
进一步地,获取适配器将不同验证码转化成统一的接口提供给后方程序,后方程序获得验证码后做进一步处理;通过校验适配器以统一的接口将识别得到的验证码提交到第三方网站或应用中校验,并返回校验的结果。
进一步地,人工辅助识别子***能够是一个专用客户端,或者是一个web应用,或者嵌入到其它需要验证码的应用中,又或者是一个基于验证码识别的小游戏。
此外,本发明还提供了一种验证码识别方法,该方法的流程为:
s1.分析第三方验证码,识别验证码显示的位置、验证码输入的位置、提交按钮的位置,并保存到数据库中;
s2.截取要验证的验证码,判定是否存在数据库中,如果不在则返回s1;如果在数据库中,则调用OCR自动识别引擎对验证码进行识别;
s3.如果OCR无法自动识别,则调用人工辅助识别子***对数据库中的验证码进行识别;
s4.识别后的验证码结果回填并展示给第三方网站或应用。
进一步地,调用人工辅助识别子***对数据库中的验证码进行识别,是由大量的专业识别人员、普通用户或者游戏玩家对验证码进行识别,并把识别结果回填到验证码输入框中或用户操作行为转化为动作指令操作界面,并提交校验。
本发明技术方案带来的有益效果:
通过本发明提供OCR自动识别验证码的同时,再提供人工辅助识别的子***,大大提高了验证码的识别率,使自动化测试流程不再因为验证码的存在而无法进行。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例的***架构图;
图2是本发明实施例的方法流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,不少网站在用户登录、用户提交信息等登录和输入的页面上使用了验证码技术。验证码技术可以有效防止恶意用户对网站的滥用,使得网站可以有效避免用户信息失窃、广告SPAM等问题。但与此同时,验证码技术的使用却使得自动化测试面临了较大的困难——由于验证码的存在,传统的“录制”-“回放”工具不能识别验证码而失效。本发明采用全自动并结合人工辅助的方式对验证码进行识别并返回到自动化测试的流程,使流程不再被验证码中断无法继续执行。
本发明提供的一种验证码识别***,解决了自动化测试或其它需要对验证码识别的场合中自动化流程不能自动识别验证码等问题。其***架构如图1所示。本***包括第三方验证码模块、验证码适配器模块、OCR自动识别引擎模块和人工辅助识别子***模块。
1)第三方验证码模块
该模块是第三方待识别的验证码,此验证码可以是多种不同类型的,字符图片、算术计算、问答、根据提示点击、根据提示拖动等。
2)验证码适配器模块
该模块包括验证码信息数据库、获取适配器、校验适配器等。通过获取适配器将不同验证码转化成统一的接口提供给后方程序,后方程序获得验证码后做进一步处理;通过校验适配器以统一的接口将识别得到的验证码提交到第三方网站或应用中校验,并返回校验的结果。
3)OCR自动识别引擎模块
通过对简单字符图片、简单算术计算等简单的验证码进行去除干扰、分隔字符、旋转等预处理后,使用OCR技术对预处理后的图片进行识别并返回识别结果。
4)人工辅助识别子***模块
此子***包括验证码展示、验证码输入及校验结果展示模块,此***可以是一个专用客户端,或者是一个web应用,或者嵌入到其它需要验证码的应用中,又或者是一个基于验证码识别的小游戏。由用户人工识别验证码后,根据验证码的类型,如文本型的则填入文本内容;计算型的则填入计算结果;点击型的则点击界面并记录点击的坐标;拖动型的则拖动界面组件并记录拖动的起始坐标;最后把用户的行为回传到校验适配器。
如图2所示为本发明实施例的方法流程图,具体流程如下:
1)人工分析第三方网站、应用中待识别的验证码信息,包括验证码的类型、是否可以采用OCR自动识别、验证码显示的位置、验证码输入的位置、提交按钮的位置等,并保存到数据库中。
2)开始自动化测试时,首先根据网站、应用信息从数据库中获得经人工分析的验证码信息,并根据这些信息从网页、应用界面中截取验证码。
3)如果适用OCR自动识别的,则调用OCR自动识别引擎对验证码进行识别,并把识别结果回填到验证码输入框中,并提交校验。
4)如果不适用OCR自动识别的,则把验证码发布到分布式人工辅助识别子***,由大量的专业识别人员、普通用户或者游戏玩家对验证码进行识别,并把识别结果回填到验证码输入框中或用户操作行为转化为动作指令操作界面,并提交校验。
5)如果校验通过了则返回到自动化测试继续下面的流程。
6)如果校验不通过则重复上述第二步骤。
此外,在自动化测试脚本中预留等待测试人员手工输入验证码的时间,如果需要进行大量测试时,这种由测试人员自己完成的识别、输入动作就成了不可完成的任务了。
以上对本发明实施例进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (6)
1.一种验证码识别***,其特征在于,本***包括第三方验证码模块、验证码适配器模块、OCR自动识别引擎模块和人工辅助识别子***模块;其中,
第三方验证码模块,是指第三方待识别的验证码;
验证码适配器模块,包括验证码信息数据库、获取适配器、校验适配器;
OCR自动识别引擎模块,对预处理后的图片进行识别并返回识别结果;
人工辅助识别子***模块,包括验证码展示、验证码输入及校验结果展示模块。
2.根据权利要求1所述的***,其特征在于,第三方验证码包括多种不同类型的,例如字符图片、算术计算、问答、根据提示点击、根据提示拖动。
3.根据权利要求1所述的***,其特征在于,获取适配器将不同验证码转化成统一的接口提供给后方程序,后方程序获得验证码后做进一步处理;通过校验适配器以统一的接口将识别得到的验证码提交到第三方网站或应用中校验,并返回校验的结果。
4.根据权利要求1所述的***,其特征在于,人工辅助识别子***能够是一个专用客户端,或者是一个web应用,或者嵌入到其它需要验证码的应用中,又或者是一个基于验证码识别的小游戏。
5.一种验证码识别方法,其特征在于,该方法的流程为:
s1.分析第三方验证码,识别验证码显示的位置、验证码输入的位置、提交按钮的位置,并保存到数据库中;
s2.截取要验证的验证码,判定是否存在数据库中,如果不在则返回s1;如果在数据库中,则调用OCR自动识别引擎对验证码进行识别;
s3.如果OCR无法自动识别,则调用人工辅助识别子***对数据库中的验证码进行识别;
s4.识别后的验证码结果回填并展示给第三方网站或应用。
6.根据权利要求5所述的方法,其特征在于,调用人工辅助识别子***对数据库中的验证码进行识别,是由大量的专业识别人员、普通用户或者游戏玩家对验证码进行识别,并把识别结果回填到验证码输入框中或用户操作行为转化为动作指令操作界面,并提交校验。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610137671.1A CN105681344A (zh) | 2016-03-11 | 2016-03-11 | 一种验证码识别***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610137671.1A CN105681344A (zh) | 2016-03-11 | 2016-03-11 | 一种验证码识别***及方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105681344A true CN105681344A (zh) | 2016-06-15 |
Family
ID=56308137
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610137671.1A Pending CN105681344A (zh) | 2016-03-11 | 2016-03-11 | 一种验证码识别***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105681344A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032955A (zh) * | 2018-09-07 | 2018-12-18 | 郑州云海信息技术有限公司 | 一种ui自动化测试方法、装置、设备及可读存储介质 |
CN109086591A (zh) * | 2018-06-11 | 2018-12-25 | 平安科技(深圳)有限公司 | 验证码识别方法、装置、计算机设备及存储介质 |
CN109376524A (zh) * | 2018-09-29 | 2019-02-22 | 浙江万朋教育科技股份有限公司 | 自动识别远程机器上的图片验证码的方法 |
CN109635549A (zh) * | 2018-12-13 | 2019-04-16 | 郑州云海信息技术有限公司 | 一种自动化测试中验证的方法及装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807192A (zh) * | 2009-12-31 | 2010-08-18 | 优视科技有限公司 | 一种用于移动通讯设备终端的网页页面光学字符识别处理方法 |
CN101944177A (zh) * | 2010-08-30 | 2011-01-12 | 深圳市多赢软件技术有限公司 | 一种验证码识别方法 |
CN102143016A (zh) * | 2010-11-25 | 2011-08-03 | ***(深圳)有限公司 | 网站自动化测试方法和*** |
US20130259314A1 (en) * | 2012-03-30 | 2013-10-03 | Xerox Corporation | Methods and systems for enhancing the performance of automated license plate recognition applications utilizing multiple results |
CN105260318A (zh) * | 2015-11-25 | 2016-01-20 | 飞天诚信科技股份有限公司 | 一种基于网页的自动化测试方法及装置 |
KR101683574B1 (ko) * | 2015-11-23 | 2016-12-07 | 연세대학교 산학협력단 | 모션 센서를 이용한 캡차 시스템 및 그 방법 |
-
2016
- 2016-03-11 CN CN201610137671.1A patent/CN105681344A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101807192A (zh) * | 2009-12-31 | 2010-08-18 | 优视科技有限公司 | 一种用于移动通讯设备终端的网页页面光学字符识别处理方法 |
CN101944177A (zh) * | 2010-08-30 | 2011-01-12 | 深圳市多赢软件技术有限公司 | 一种验证码识别方法 |
CN102143016A (zh) * | 2010-11-25 | 2011-08-03 | ***(深圳)有限公司 | 网站自动化测试方法和*** |
US20130259314A1 (en) * | 2012-03-30 | 2013-10-03 | Xerox Corporation | Methods and systems for enhancing the performance of automated license plate recognition applications utilizing multiple results |
KR101683574B1 (ko) * | 2015-11-23 | 2016-12-07 | 연세대학교 산학협력단 | 모션 센서를 이용한 캡차 시스템 및 그 방법 |
CN105260318A (zh) * | 2015-11-25 | 2016-01-20 | 飞天诚信科技股份有限公司 | 一种基于网页的自动化测试方法及装置 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109086591A (zh) * | 2018-06-11 | 2018-12-25 | 平安科技(深圳)有限公司 | 验证码识别方法、装置、计算机设备及存储介质 |
WO2019237549A1 (zh) * | 2018-06-11 | 2019-12-19 | 平安科技(深圳)有限公司 | 验证码识别方法、装置、计算机设备及存储介质 |
CN109032955A (zh) * | 2018-09-07 | 2018-12-18 | 郑州云海信息技术有限公司 | 一种ui自动化测试方法、装置、设备及可读存储介质 |
CN109376524A (zh) * | 2018-09-29 | 2019-02-22 | 浙江万朋教育科技股份有限公司 | 自动识别远程机器上的图片验证码的方法 |
CN109635549A (zh) * | 2018-12-13 | 2019-04-16 | 郑州云海信息技术有限公司 | 一种自动化测试中验证的方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10635809B2 (en) | Authenticating application legitimacy | |
ES2644593T3 (es) | Método y dispositivo de autentificación de identidad | |
US20090187442A1 (en) | Feedback augmented object reputation service | |
CN105227316A (zh) | 基于人脸图像身份验证的移动互联网账号登录***及方法 | |
CN104954131B (zh) | 验证码的验证方法和*** | |
CN103065077A (zh) | 一种真人用户验证方法及装置 | |
CN105681344A (zh) | 一种验证码识别***及方法 | |
US9202035B1 (en) | User authentication based on biometric handwriting aspects of a handwritten code | |
US9563763B1 (en) | Enhanced captchas | |
CN103607387A (zh) | 一种基于人脸识别的网络登录认证云服务***及方法 | |
CN101261669A (zh) | 用鼠标操作的视觉验证码***的实现方法 | |
CN102456102A (zh) | 用Usb key技术对信息***特殊操作进行身份再认证的方法 | |
CN104852916A (zh) | 一种基于社会工程学的网页验证码识别方法及*** | |
CN105337739B (zh) | 安全登录方法、装置、服务器及终端 | |
US10015181B2 (en) | Using natural language processing for detection of intended or unexpected application behavior | |
US20140059659A1 (en) | System and method for authenticating manual interaction in a computing environment | |
CN111600701B (zh) | 一种基于区块链的私钥存储方法、装置及存储介质 | |
CN111353140A (zh) | 验证码的生成、显示方法、装置和*** | |
CN111882425B (zh) | 业务数据处理方法、装置和服务器 | |
CN104935436A (zh) | 一种用户验证方法及*** | |
US11899770B2 (en) | Verification method and apparatus, and computer readable storage medium | |
CN111949952B (zh) | 验证码请求处理方法及计算机可读存储介质 | |
CN112039890A (zh) | 一种验证码校验方法、装置、终端及介质 | |
CN113836509B (zh) | 信息采集方法、装置、电子设备和存储介质 | |
CN112257053B (zh) | 一种基于通用对抗扰动的图像验证码生成方法及*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160615 |
|
WD01 | Invention patent application deemed withdrawn after publication |