CN106156597A - 一种验证码的实现方法,及装置 - Google Patents
一种验证码的实现方法,及装置 Download PDFInfo
- Publication number
- CN106156597A CN106156597A CN201510180721.XA CN201510180721A CN106156597A CN 106156597 A CN106156597 A CN 106156597A CN 201510180721 A CN201510180721 A CN 201510180721A CN 106156597 A CN106156597 A CN 106156597A
- Authority
- CN
- China
- Prior art keywords
- character
- identifying code
- priori
- error
- short sentence
- 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
-
- 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
- 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
-
- 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/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
- H04W12/121—Wireless intrusion detection systems [WIDS]; Wireless intrusion prevention systems [WIPS]
- H04W12/122—Counter-measures against attacks; Protection against rogue devices
-
- 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
-
- 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
-
- 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)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Computing Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种验证码的实现方法,及装置,其中方法的实现包括:若确定需要进行身份验证,则获取字符验证码,然后显示字符验证码;所述字符验证码包含先验知识的错误字符;提示输入所述验证字符中错误字符的正确字符,接收验证信息;在确定所述验证信息属于所述先验知识的正确字符,则确定验证通过,否则确定验证失败。采用人类的先验知识构建字符验证码,通过人类先验知识对错误的字符进行纠错;由于采用的是字符验证码,因此验证码的生产速度传输速度很快,并且验证码库可以很大但占用资源却较少,另外由于使用的是人类的先验知识,不用加图像干扰,可以对抗图像识别技术因此抗破解能力强,并且用户验证通过率较高。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种验证码的实现方法,及装置。
背景技术
全自动区分计算机和人类的图灵测试(Completely Automated PublicTuring test to tell Computers and Humans Apart,CAPTCHA),也称为验证码,是一种区分用户是计算机和人的公共全自动程序。在CAPTCHA测试中,作为服务器的计算机会自动生成一个问题由用户来解答。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。
基于以上介绍可知:验证码是一种区分用户是计算机和人的公共全自动程序。它可以有效防止坏人使用自动化程序进行暴力破解密码、刷票、论坛灌水等恶意行为。
目前最通用的验证码解决方案为所见即所得式验证码。
基本原理如下:服务器给出图像X;该图像通常是服务器根据一定的规则自动生成的;用户观察图像X,寻找图像中的数字、英文字符或中文字符Y;用户将自己所理解的字符串Y提交给服务器;服务器将用户输入的Y与原始图像X对应的答案Y’进行对比,如果Y和Y’完全一致,则认定当前用户为人类用户,如果Y和Y’不一致,则认定当前用户为非人类用户。
针对以上方案,只要收集足够的样本,使用OCR(Optical CharacterRecognition,光学字符识别)技术进行学习和训练,就可以很快开发出可用的自动机程序来对传统的图像验证码进行识别。为了对抗自动机对字符验证码的识别,目前普遍的做法是加各种各样的干扰:比如旋转、扭曲、形变、加干扰线等等方式。但是随着OCR技术的提升,现在验证码所加的干扰越来越复杂,人类用户也越来越难以识别这些加干扰的验证码,导致人识别验证码的比例不断下降。
因此,随着深度学习、稀疏编码等人工智能技术的成熟,OCR的精度越来越高,单纯的图像干扰对自动机的抗破解并不能提供很有效的效果,而且导致用户识别验证码的比例也不断下降,验证效率也越来越低。
发明内容
本发明实施例提供了一种验证码的实现方法,及装置,用于提高验证码抗破解能力,提高验证码验证通过效率。
一种验证码的实现方法,包括:
若确定需要进行身份验证,则获取字符验证码,然后显示字符验证码;所述字符验证码包含先验知识的错误字符;
提示输入所述验证字符中错误字符的正确字符,接收验证信息;
在确定所述验证信息属于所述先验知识的正确字符,则确定验证通过,否则确定验证失败。
一种验证码的实现装置,包括:
获取单元,用于若确定需要进行身份验证,则获取字符验证码;所述字符验证码包含先验知识的错误字符;
显示单元,用于显示字符验证码;提示输入所述验证字符中错误字符的正确字符;
接收单元,用于接收验证信息;
验证单元,用于在确定所述验证信息属于所述先验知识的正确字符,则确定验证通过,否则确定验证失败。
从以上技术方案可以看出,本发明实施例具有以下优点:采用人类的先验知识构建字符验证码,通过人类先验知识对错误的字符进行纠错;由于采用的是字符验证码,因此验证码的生产速度传输速度很快,并且验证码库可以很大但占用资源却较少,另外由于使用的是人类的先验知识,不用加图像干扰,可以对抗图像识别技术因此抗破解能力强,并且用户验证通过率较高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例方法流程示意图;
图2为本发明实施例验证码的验证示意图;
图3为本发明实施例方法流程示意图;
图4为本发明实施例装置结构示意图;
图5为本发明实施例装置结构示意图;
图6为本发明实施例装置结构示意图;
图7为本发明实施例装置结构示意图;
图8为本发明实施例装置结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种验证码的实现方法,如图1所示,包括:
101:若确定需要进行身份验证,则获取字符验证码,然后显示字符验证码;上述字符验证码包含先验知识的错误字符;
在本发明实施例中,需要进行身份验证的情况可以是终端也可以是服务器一端需要进行身份验证,例如:操作权限的验证、登录验证等,具体应用场景可以参考目前需要使用验证码的情形,本发明实施例不作唯一性限定。另需说明的是,若本实施例的执行主体是服务器,验证码由服务器提供,那么显示字符验证码可以是将字符验证码发送给终端显示。
本发明实施例中的验证码主要是指字符验证码不包含纯粹的图像验证码,字符验证码所占用的空间小,而且更适用于本发明实施例中先验知识,因此字符验证码可以作为优选实现方式。人类因为拥有先验知识,可以对一些简单语义上的错误有自动纠正功能,本发明实施例利用这一点实现验证码的方案,其中字符验证码的来源可以是服务提供方提供的,也可以是验证执行方执行的,具体如下:
一、由验证执行方自身获得验证码的具体实现方式如下:
上述获取字符验证码包括:从本地文本中获取短句,并从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。
字符验证码中的字符可以是中文字符、英文字符或者其他字符,在本发明实施例中,优选地首先获取用户当前使用的语言类型,然后获取与上述语言类型相同类型的字符验证码,从而使用户能够具有高匹配率的先验知识,并进一步提升验证效率。基于本发明实施例可以使用中文字符的字符验证码,本发明实施例还进一步提供了如下解决方案:
若上述字符为中文,上述进行随机变换之前,上述方法还包括:确定抽取的字符在近意字符库中的近意字符;
上述进行随机变换包括:使用近意字符之外的其他字符进行变换。
由于中文字符中存在极多近义字符,例如“突然”和“忽然”在语句中含义几乎是相同的,若将“突”改为“忽”则用户难以通过先验知识进行识别,因此本发明实施例提供了使用非近义字符进行变换的方案,避免这种情况的发生,从而提高验证成功率。
二、由服务器提供方或者服务器侧提供验证码的具体实现方式如下:
上述获取字符验证码包括:接收来自服务提供方设备的字符验证码,上述字符验证码为短句,上述短句内包含先验知识的错误字符。
在本实施例中,采用的是服务器提供字符验证码的形式,在服务器一侧生成验证码的方式可以参考“从本地文本中获取短句,并从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。”在此不再赘述。
本实施例还提供了基于字符验证码的先验知识,具体如下:若上述字符验证码为字母字符串的集合,上述错误字符包括:
字符字符串的非首尾字符顺序颠倒、字符串内字符缺省以及字符串内字符随机增加中的至少一种。
在显示验证码的过程中,还可以对验证码中基于先验知识的错误字符进行提示,具体如下:上述方法还包括:显示上述错误字符的提示信息。
提示的具体实现方式,可以是将错误字符进行标识,例如:使用与原颜色不同的颜色进行突出显示,或者,使用其他例如加框加粗等标记进行提示。
102:提示输入上述验证字符中错误字符的正确字符,接收验证信息;
提示输入正确字符的方式,可以参考字符验证码的一般提示方式,这里提示要增加告知用户原字符有误,需要输入正确的提示信息,而不是“所见即所得”的方式输入原始显示的字符。
103:在确定上述验证信息属于上述先验知识的正确字符,则确定验证通过,否则确定验证失败。
在本实施例中,正确字符是原始正确的字符,例如:替换之前的字符;在验证码生成一端可以保存正确的字符,也可以在生成后发送给执行身份验证的设备。
本发明实施例采用人类的先验知识构建字符验证码,通过人类先验知识对错误的字符进行纠错;由于采用的是字符验证码,因此验证码的生产速度传输速度很快,并且验证码库可以很大但占用资源却较少,另外由于使用的是人类的先验知识,不用加图像干扰,可以对抗图像识别技术因此抗破解能力强,并且用户验证通过率较高。
以下实施例将给出一个具体实例,对本发明实施例的实现过程进行说明。本发明实施例的验证码主要就是利用了人类的先验知识,而自动机的图像识别目标基本是人类在做训练的时候就确定了,最多也只能识别字符在各种图像上的一些形变,而对于字符语义上的改变是无法做到识别的。先看下面两段话:
“研表究明,汉字的序顺并不定一能影阅响读,比如当你看完这句话后,才发这现里的字全是都乱的。”
"Aoccdrnig to a rscheearch at an Elingsh uinervtisy,it deosn't mttaer in wahtoredr the ltteers in a wrod are,the olny iprmoetnt tihng is taht frist and lsat ltteer isat the rghit pclae"
从以上两段话我们就可以看出人类因为拥有先验知识,可以对一些简单语义上的错误有自动纠正功能。由此本发明实施例提供的验证码是制造一些细小的错误让用户去自动的纠错,然后输入正确的答案。这种验证码给用户带来良好的体验过程、而且也只是需要生产字符图片,生产成本很小、并且在抗破解上也比传统的字符验证码要好。
基于人类先验知识的字符验证码样图,如图2所示。显示包含错误字符的验证码“The damege is becoming more apparent”,然后提示用户输入正确的字符“请输入矩形框内单词的正确形式”,若用户输入“damage”,那么将会验证通过。
以下实施例是本发明实施例的一个验证码生成过程举例,如图3所示,包括如下步骤:
301:从文档中随机选取一个短句;
302:在这个短句中随机选取一个单词;
303:对这个单词进行以下4种操作中的一种:
随机交换2个字母的顺序(非首端和末端);
随机删除中间某个位置的字母;
随机在中间某个位置添加一个字母;
不做处理。
304:对修改过后的单词进行标红;
305:将组合的短句画在图片上;
306:输出验证码。
相比于拼图验证码,拼图验证码至少有如下缺点:
拼图验证码可以带来很好的用户体验,却也增加了成本,需要一个大数据量的图片库。另外所选的图片的大小基本上是字符验证码的10倍大小(字符验证码图片小于4KB,拼图验证码图片大于40KB)。这样不管是从网络传输、还是生产速度上都会要比字符验证码要慢。对于一些移动端的用户,有时候刷出一张拼图验证码会需要很长的时间。
与字符验证码一样,拼图验证码也只是单纯的一种图像验证码,通过图像的一些识别技术也能够识别拼接的位置和方向等信息,所以抗破解程度也不是很高。
采用本发明实施例方案,则至少有如下好处:
1、提升用户体验,字符上不用加任何的图像干扰,验证通过率较高;
2、能够保持与传统字符验证码一样的大小,解决了传输速率、生产速率的问题;
3、抗破解能力比较强,本发明运用了人类一些纠错的先验知识,所以单纯的运用图像技术是不可能破解我们的验证码。
本发明实施例还提供了一种验证码的实现装置,如图4所示,包括:
获取单元401,用于若确定需要进行身份验证,则获取字符验证码;上述字符验证码包含先验知识的错误字符;
显示单元402,用于显示字符验证码;提示输入上述验证字符中错误字符的正确字符;
接收单元403,用于接收验证信息;
验证单元404,用于在确定上述验证信息属于上述先验知识的正确字符,则确定验证通过,否则确定验证失败。
在本发明实施例中,需要进行身份验证的情况可以是终端也可以是服务器一端需要进行身份验证,例如:操作权限的验证、登录验证等,具体应用场景可以参考目前需要使用验证码的情形,本发明实施例不作唯一性限定。另需说明的是,若本实施例的执行主体是服务器,验证码由服务器提供,那么显示字符验证码可以是将字符验证码发送给终端显示。
提示输入正确字符的方式,可以参考字符验证码的一般提示方式,这里提示要增加告知用户原字符有误,需要输入正确的提示信息,而不是“所见即所得”的方式输入原始显示的字符。
在本实施例中,正确字符是原始正确的字符,例如:替换之前的字符;在验证码生成一端可以保存正确的字符,也可以在生成后发送给执行身份验证的设备。
本发明实施例采用人类的先验知识构建字符验证码,通过人类先验知识对错误的字符进行纠错;由于采用的是字符验证码,因此验证码的生产速度传输速度很快,并且验证码库可以很大但占用资源却较少,另外由于使用的是人类的先验知识,不用加图像干扰,可以对抗图像识别技术因此抗破解能力强,并且用户验证通过率较高。
本发明实施例中的验证码主要是指字符验证码不包含纯粹的图像验证码,字符验证码所占用的空间小,而且更适用于本发明实施例中先验知识,因此字符验证码可以作为优选实现方式。人类因为拥有先验知识,可以对一些简单语义上的错误有自动纠正功能,本发明实施例利用这一点实现验证码的方案,其中字符验证码的来源可以是服务提供方提供的,也可以是验证执行方执行的,具体如下:
一、由验证执行方自身获得验证码的具体实现方式如下:
可选地,如图5所示,上述获取单元401包括:
短句获取单元501,用于从本地文本中获取短句;
字符变换单元502,用于从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。
字符验证码中的字符可以是中文字符、英文字符或者其他字符,在本发明实施例中,优选地首先获取用户当前使用的语言类型,然后获取与上述语言类型相同类型的字符验证码,从而使用户能够具有高匹配率的先验知识,并进一步提升验证效率。基于本发明实施例可以使用中文字符的字符验证码,本发明实施例还进一步提供了如下解决方案:
进一步地,如图6所示,上述装置还包括:
字符确定单元601,用于若上述字符为中文,在上述字符变换单元502进行随机变换之前,确定抽取的字符在近意字符库中的近意字符;
上述字符变换单元502,用于使用近意字符之外的其他字符进行变换。
由于中文字符中存在极多近义字符,例如“突然”和“忽然”在语句中含义几乎是相同的,若将“突”改为“忽”则用户难以通过先验知识进行识别,因此本发明实施例提供了使用非近义字符进行变换的方案,避免这种情况的发生,从而提高验证成功率。
二、由服务器提供方或者服务器侧提供验证码的具体实现方式如下:
可选地,上述获取单元401,用于接收来自服务提供方设备的字符验证码,上述字符验证码为短句,上述短句内包含先验知识的错误字符。
在本实施例中,采用的是服务器提供字符验证码的形式,在服务器一侧生成验证码的方式可以参考“从本地文本中获取短句,并从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。”在此不再赘述。
本实施例还提供了基于字符验证码的先验知识,具体如下:可选地,若上述字符验证码为字母字符串的集合,上述错误字符包括:
字符字符串的非首尾字符顺序颠倒、字符串内字符缺省以及字符串内字符随机增加中的至少一种。
在显示验证码的过程中,还可以对验证码中基于先验知识的错误字符进行提示,具体如下:进一步地,上述显示单元402,还用于显示上述错误字符的提示信息。
提示的具体实现方式,可以是将错误字符进行标识,例如:使用与原颜色不同的颜色进行突出显示,或者,使用其他例如加框加粗等标记进行提示。
本发明实施例还提供了另一种验证码的实现装置,如图7所示,包括:接收器701、发射器702、处理器703以及存储器704;
其中,处理器704,用于若确定需要进行身份验证,则获取字符验证码,然后显示字符验证码;上述字符验证码包含先验知识的错误字符;提示输入上述验证字符中错误字符的正确字符,接收验证信息;在确定上述验证信息属于上述先验知识的正确字符,则确定验证通过,否则确定验证失败。
在本发明实施例中,需要进行身份验证的情况可以是终端也可以是服务器一端需要进行身份验证,例如:操作权限的验证、登录验证等,具体应用场景可以参考目前需要使用验证码的情形,本发明实施例不作唯一性限定。另需说明的是,若本实施例的执行主体是服务器,验证码由服务器提供,那么显示字符验证码可以是将字符验证码发送给终端显示。
提示输入正确字符的方式,可以参考字符验证码的一般提示方式,这里提示要增加告知用户原字符有误,需要输入正确的提示信息,而不是“所见即所得”的方式输入原始显示的字符。
在本实施例中,正确字符是原始正确的字符,例如:替换之前的字符;在验证码生成一端可以保存正确的字符,也可以在生成后发送给执行身份验证的设备。
本发明实施例采用人类的先验知识构建字符验证码,通过人类先验知识对错误的字符进行纠错;由于采用的是字符验证码,因此验证码的生产速度传输速度很快,并且验证码库可以很大但占用资源却较少,另外由于使用的是人类的先验知识,不用加图像干扰,可以对抗图像识别技术因此抗破解能力强,并且用户验证通过率较高。
本发明实施例中的验证码主要是指字符验证码不包含纯粹的图像验证码,字符验证码所占用的空间小,而且更适用于本发明实施例中先验知识,因此字符验证码可以作为优选实现方式。人类因为拥有先验知识,可以对一些简单语义上的错误有自动纠正功能,本发明实施例利用这一点实现验证码的方案,其中字符验证码的来源可以是服务提供方提供的,也可以是验证执行方执行的,具体如下:
一、由验证执行方自身获得验证码的具体实现方式如下:
上述处理器704,用于获取字符验证码包括:从本地文本中获取短句,并从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。
字符验证码中的字符可以是中文字符、英文字符或者其他字符,在本发明实施例中,优选地首先获取用户当前使用的语言类型,然后获取与上述语言类型相同类型的字符验证码,从而使用户能够具有高匹配率的先验知识,并进一步提升验证效率。基于本发明实施例可以使用中文字符的字符验证码,本发明实施例还进一步提供了如下解决方案:
上述处理器704,还用于若上述字符为中文,在进行随机变换之前,确定抽取的字符在近意字符库中的近意字符;
上述上述处理器704,用于进行随机变换包括:使用近意字符之外的其他字符进行变换。
由于中文字符中存在极多近义字符,例如“突然”和“忽然”在语句中含义几乎是相同的,若将“突”改为“忽”则用户难以通过先验知识进行识别,因此本发明实施例提供了使用非近义字符进行变换的方案,避免这种情况的发生,从而提高验证成功率。
二、由服务器提供方或者服务器侧提供验证码的具体实现方式如下:
上述处理器704,用于获取字符验证码包括:接收来自服务提供方设备的字符验证码,上述字符验证码为短句,上述短句内包含先验知识的错误字符。
在本实施例中,采用的是服务器提供字符验证码的形式,在服务器一侧生成验证码的方式可以参考“从本地文本中获取短句,并从上述短句中随机抽取字符进行随机变换,使上述短句出现先验知识的错误字符。”在此不再赘述。
本实施例还提供了基于字符验证码的先验知识,具体如下:若上述字符验证码为字母字符串的集合,上述错误字符包括:
字符字符串的非首尾字符顺序颠倒、字符串内字符缺省以及字符串内字符随机增加中的至少一种。
在显示验证码的过程中,还可以对验证码中基于先验知识的错误字符进行提示,具体如下:上述处理器704,还用于控制显示上述错误字符的提示信息。
提示的具体实现方式,可以是将错误字符进行标识,例如:使用与原颜色不同的颜色进行突出显示,或者,使用其他例如加框加粗等标记进行提示。
本发明实施例还提供了另一种验证码的实现装置,如图8所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该装置以终端为例,该终端可以为包括手机、平板电脑、PDA(Personal Digital Assistant,个人数字助理)、POS(Point of Sales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:
图8示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图8,手机包括:射频(Radio Frequency,RF)电路810、存储器820、输入单元830、显示单元840、传感器850、音频电路860、无线保真(wirelessfidelity,WiFi)模块870、处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
下面结合图8对手机的各个构成部件进行具体的介绍:
RF电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器880处理;另外,将设计上行的数据发送给基站。通常,RF电路810包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low Noise Amplifier,LNA)、双工器等。此外,RF电路810还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global Systemof Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE)、电子邮件、短消息服务(Short Messaging Service,SMS)等。
存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元830可用于接收输入的数字或字符信息,以及产生与手机的用户设置以及功能控制有关的键信号输入。具体地,输入单元830可包括触控面板831以及其他输入设备832。触控面板831,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板831上或在触控面板831附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板831。除了触控面板831,输入单元830还可以包括其他输入设备832。具体地,其他输入设备832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元840可包括显示面板841,可选的,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管(Organic Light-EmittingDiode,OLED)等形式来配置显示面板841。进一步的,触控面板831可覆盖显示面板841,当触控面板831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。虽然在图8中,触控面板831与显示面板841是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板831与显示面板841集成而实现手机的输入和输出功能。
手机还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在手机移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路860、扬声器861,传声器862可提供用户与手机之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经RF电路810以发送给比如另一手机,或者将音频数据输出至存储器820以便进一步处理。
WiFi属于短距离无线传输技术,手机通过WiFi模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了WiFi模块870,但是可以理解的是,其并不属于手机的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器880是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器880可包括一个或多个处理单元;优选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
手机还包括给各个部件供电的电源890(比如电池),优选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
尽管未示出,手机还可以包括摄像头、蓝牙模块等,在此不再赘述。
在本发明实施例中,该终端所包括的处理器880还具有前一实施例中处理器的功能。
值得注意的是,上述装置实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (12)
1.一种验证码的实现方法,其特征在于,包括:
若确定需要进行身份验证,则获取字符验证码,然后显示字符验证码;所述字符验证码包含先验知识的错误字符;
提示输入所述验证字符中错误字符的正确字符,接收验证信息;
在确定所述验证信息属于所述先验知识的正确字符,则确定验证通过,否则确定验证失败。
2.根据权利要求1所述方法,其特征在于,所述获取字符验证码包括:
从本地文本中获取短句,并从所述短句中随机抽取字符进行随机变换,使所述短句出现先验知识的错误字符。
3.根据权利要求2所述方法,其特征在于,若所述字符为中文,所述进行随机变换之前,所述方法还包括:确定抽取的字符在近意字符库中的近意字符;
所述进行随机变换包括:使用近意字符之外的其他字符进行变换。
4.根据权利要求1所述方法,其特征在于,所述获取字符验证码包括:
接收来自服务提供方设备的字符验证码,所述字符验证码为短句,所述短句内包含先验知识的错误字符。
5.根据权利要求1所述方法,其特征在于,若所述字符验证码为字母字符串的集合,所述错误字符包括:
字符字符串的非首尾字符顺序颠倒、字符串内字符缺省以及字符串内字符随机增加中的至少一种。
6.根据权利要求1至5任意一项所述方法,其特征在于,所述方法还包括:显示所述错误字符的提示信息。
7.一种验证码的实现装置,其特征在于,包括:
获取单元,用于若确定需要进行身份验证,则获取字符验证码;所述字符验证码包含先验知识的错误字符;
显示单元,用于显示字符验证码;提示输入所述验证字符中错误字符的正确字符;
接收单元,用于接收验证信息;
验证单元,用于在确定所述验证信息属于所述先验知识的正确字符,则确定验证通过,否则确定验证失败。
8.根据权利要求7所述装置,其特征在于,所述获取单元包括:
短句获取单元,用于从本地文本中获取短句;
字符变换单元,用于从所述短句中随机抽取字符进行随机变换,使所述短句出现先验知识的错误字符。
9.根据权利要求8所述装置,其特征在于,所述装置还包括:
字符确定单元,用于若所述字符为中文,在所述字符变换单元进行随机变换之前,确定抽取的字符在近意字符库中的近意字符;
所述字符变换单元,用于使用近意字符之外的其他字符进行变换。
10.根据权利要求7所述装置,其特征在于,
所述获取单元,用于接收来自服务提供方设备的字符验证码,所述字符验证码为短句,所述短句内包含先验知识的错误字符。
11.根据权利要求7所述装置,其特征在于,若所述字符验证码为字母字符串的集合,所述错误字符包括:
字符字符串的非首尾字符顺序颠倒、字符串内字符缺省以及字符串内字符随机增加中的至少一种。
12.根据权利要求7至11任意一项所述装置,其特征在于,
所述显示单元,还用于显示所述错误字符的提示信息。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510180721.XA CN106156597A (zh) | 2015-04-16 | 2015-04-16 | 一种验证码的实现方法,及装置 |
PCT/CN2016/077777 WO2016165557A1 (zh) | 2015-04-16 | 2016-03-30 | 验证码的实现方法及装置 |
US15/636,453 US10769253B2 (en) | 2015-04-16 | 2017-06-28 | Method and device for realizing verification code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510180721.XA CN106156597A (zh) | 2015-04-16 | 2015-04-16 | 一种验证码的实现方法,及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106156597A true CN106156597A (zh) | 2016-11-23 |
Family
ID=57125737
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510180721.XA Pending CN106156597A (zh) | 2015-04-16 | 2015-04-16 | 一种验证码的实现方法,及装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10769253B2 (zh) |
CN (1) | CN106156597A (zh) |
WO (1) | WO2016165557A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106899411A (zh) * | 2016-12-08 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种基于验证码的校验方法及装置 |
CN109815658A (zh) * | 2018-12-14 | 2019-05-28 | 平安科技(深圳)有限公司 | 一种验证方法和装置、计算机设备以及计算机存储介质 |
CN111667549A (zh) * | 2020-04-28 | 2020-09-15 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
CN113076535A (zh) * | 2021-03-30 | 2021-07-06 | 顶象科技有限公司 | 一种国际化验证码的实现方法和装置 |
CN114465762A (zh) * | 2021-12-24 | 2022-05-10 | 安徽航天信息有限公司 | 一种基于语境的验证码生成方法、装置及存储介质 |
WO2024055824A1 (zh) * | 2022-09-16 | 2024-03-21 | 北京字跳网络技术有限公司 | 短信验证方法、装置、存储介质及电子设备 |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3432182B1 (en) * | 2017-07-17 | 2020-04-15 | Tata Consultancy Services Limited | Systems and methods for secure, accessible and usable captcha |
CN110246198B (zh) * | 2019-05-21 | 2023-05-02 | 北京奇艺世纪科技有限公司 | 选字验证码生成方法、装置、电子设备及存储介质 |
CN110691086A (zh) * | 2019-09-29 | 2020-01-14 | 深圳供电局有限公司 | 一种跨平台的验证解锁方法 |
CN111143213A (zh) * | 2019-12-24 | 2020-05-12 | 北京数衍科技有限公司 | 软件自动化测试方法和装置及电子设备 |
CN112241522B (zh) * | 2020-09-29 | 2024-02-09 | 全通金信控股(广东)有限公司 | 一种图片验证码生成方法和验证系统 |
CN113297548B (zh) * | 2021-04-06 | 2022-07-08 | 北京理工大学 | 人机协同方式的验证码识别方法及其系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872351A (zh) * | 2009-04-27 | 2010-10-27 | 阿里巴巴集团控股有限公司 | 识别同义词的方法、装置及利用其进行搜索的方法和装置 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
US20130132093A1 (en) * | 2008-06-23 | 2013-05-23 | John Nicholas And Kristin Gross Trust U/A/D April 13, 2010 | System and Method for Generating Challenge Items for CAPTCHAs |
CN103546287A (zh) * | 2012-07-17 | 2014-01-29 | 联想(北京)有限公司 | 密码验证方法和电子设备 |
CN104243399A (zh) * | 2013-06-07 | 2014-12-24 | 腾讯科技(深圳)有限公司 | 用户验证方法以及实现该方法的客户端、服务器及系统 |
CN104283682A (zh) * | 2013-07-08 | 2015-01-14 | 深圳市腾讯计算机系统有限公司 | 一种利用验证码进行校验的方法、装置及系统 |
CN104346557A (zh) * | 2013-08-06 | 2015-02-11 | 深圳市腾讯计算机系统有限公司 | 验证码的生成方法及装置、验证码的显示控制方法及装置 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7945952B1 (en) * | 2005-06-30 | 2011-05-17 | Google Inc. | Methods and apparatuses for presenting challenges to tell humans and computers apart |
US20080228580A1 (en) * | 2007-03-12 | 2008-09-18 | Mynewpedia Corp. | Method and system for compensating online content contributors and editors |
CN102904722A (zh) * | 2012-09-21 | 2013-01-30 | 张仁平 | 一种用语义和图像元素接合的网络验证方法及系统 |
WO2014107618A1 (en) * | 2013-01-04 | 2014-07-10 | Gary Stephen Shuster | Cognitive-based captcha system |
CN104144052B (zh) * | 2013-05-10 | 2018-05-01 | 孙鑫 | 一种文字中间的关键词与图片或视频对应的验证方法 |
CN104038502B (zh) * | 2014-06-24 | 2018-11-13 | 五八同城信息技术有限公司 | 一种验证方法及系统 |
-
2015
- 2015-04-16 CN CN201510180721.XA patent/CN106156597A/zh active Pending
-
2016
- 2016-03-30 WO PCT/CN2016/077777 patent/WO2016165557A1/zh active Application Filing
-
2017
- 2017-06-28 US US15/636,453 patent/US10769253B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130132093A1 (en) * | 2008-06-23 | 2013-05-23 | John Nicholas And Kristin Gross Trust U/A/D April 13, 2010 | System and Method for Generating Challenge Items for CAPTCHAs |
CN101872351A (zh) * | 2009-04-27 | 2010-10-27 | 阿里巴巴集团控股有限公司 | 识别同义词的方法、装置及利用其进行搜索的方法和装置 |
CN103546287A (zh) * | 2012-07-17 | 2014-01-29 | 联想(北京)有限公司 | 密码验证方法和电子设备 |
CN102768754A (zh) * | 2012-08-03 | 2012-11-07 | 网易(杭州)网络有限公司 | 一种图片验证码的实现方法和装置 |
CN104243399A (zh) * | 2013-06-07 | 2014-12-24 | 腾讯科技(深圳)有限公司 | 用户验证方法以及实现该方法的客户端、服务器及系统 |
CN104283682A (zh) * | 2013-07-08 | 2015-01-14 | 深圳市腾讯计算机系统有限公司 | 一种利用验证码进行校验的方法、装置及系统 |
CN104346557A (zh) * | 2013-08-06 | 2015-02-11 | 深圳市腾讯计算机系统有限公司 | 验证码的生成方法及装置、验证码的显示控制方法及装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI756266B (zh) * | 2016-12-08 | 2022-03-01 | 開曼群島商創新先進技術有限公司 | 基於驗證碼的檢查方法及裝置 |
WO2018103564A1 (zh) * | 2016-12-08 | 2018-06-14 | 阿里巴巴集团控股有限公司 | 一种基于验证码的校验方法及装置 |
KR20190091529A (ko) * | 2016-12-08 | 2019-08-06 | 알리바바 그룹 홀딩 리미티드 | 검증 코드에 기초한 검증 방법 및 장치 |
EP3554000A4 (en) * | 2016-12-08 | 2019-11-06 | Alibaba Group Holding Limited | VALIDATION CODE BASED METHOD AND DEVICE |
US10719599B2 (en) | 2016-12-08 | 2020-07-21 | Alibaba Group Holding Limited | Verification code generation to improve recognition accuracy by a person and recognition difficulty by a computer program |
KR102194072B1 (ko) * | 2016-12-08 | 2020-12-23 | 어드밴스드 뉴 테크놀로지스 씨오., 엘티디. | 검증 코드에 기초한 검증 방법 및 장치 |
CN106899411A (zh) * | 2016-12-08 | 2017-06-27 | 阿里巴巴集团控股有限公司 | 一种基于验证码的校验方法及装置 |
CN109815658A (zh) * | 2018-12-14 | 2019-05-28 | 平安科技(深圳)有限公司 | 一种验证方法和装置、计算机设备以及计算机存储介质 |
CN111667549A (zh) * | 2020-04-28 | 2020-09-15 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
CN111667549B (zh) * | 2020-04-28 | 2023-04-07 | 华东师范大学 | 基于对抗样本和随机变换的图形验证码生成方法、设备及存储介质 |
CN113076535A (zh) * | 2021-03-30 | 2021-07-06 | 顶象科技有限公司 | 一种国际化验证码的实现方法和装置 |
CN114465762A (zh) * | 2021-12-24 | 2022-05-10 | 安徽航天信息有限公司 | 一种基于语境的验证码生成方法、装置及存储介质 |
WO2024055824A1 (zh) * | 2022-09-16 | 2024-03-21 | 北京字跳网络技术有限公司 | 短信验证方法、装置、存储介质及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
US20170300676A1 (en) | 2017-10-19 |
WO2016165557A1 (zh) | 2016-10-20 |
US10769253B2 (en) | 2020-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106156597A (zh) | 一种验证码的实现方法,及装置 | |
CN103634294B (zh) | 信息验证方法和装置 | |
CN103632165B (zh) | 一种图像处理的方法、装置及终端设备 | |
CN103400108B (zh) | 人脸识别方法、装置和移动终端 | |
CN104852885B (zh) | 一种进行验证码验证的方法、装置和系统 | |
CN104618217B (zh) | 分享资源的方法、终端、服务器及系统 | |
CN104902531B (zh) | 连接网络的方法、应用认证服务器、终端及路由器 | |
CN104168270A (zh) | 身份验证方法、服务器、客户端及系统 | |
CN103501482A (zh) | 网络接入方法、装置及终端 | |
CN104796385A (zh) | 终端绑定方法、装置及系统 | |
CN104901805B (zh) | 一种身份鉴权方法、装置和系统 | |
CN103716793A (zh) | 接入点信息分享方法和装置 | |
CN104468101A (zh) | 一种用户身份的验证方法、装置和验证服务系统 | |
CN103714316B (zh) | 图像识别方法、装置及电子设备 | |
CN106506321A (zh) | 一种群消息处理方法及终端设备 | |
CN104573437B (zh) | 信息认证方法、装置和终端 | |
CN106293375A (zh) | 一种场景切换方法,及设备 | |
CN103279272B (zh) | 一种在电子装置中启动应用程序的方法及装置 | |
CN104199596A (zh) | 场景界面切换方法及装置 | |
CN104135728A (zh) | 网络连接方法及装置 | |
CN104134043A (zh) | 对内容进行隐藏、解隐藏的方法、装置及终端 | |
CN104991699A (zh) | 一种视频显示控制的方法和装置 | |
CN105553718B (zh) | 引导信息显示方法及装置 | |
CN103227832B (zh) | 共享资源处理方法及装置 | |
CN108270764A (zh) | 一种应用登陆方法、服务器及移动端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | 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 |
Application publication date: 20161123 |
|
RJ01 | Rejection of invention patent application after publication |