CN105024814B - 一种验证方法、服务器,及系统 - Google Patents

一种验证方法、服务器,及系统 Download PDF

Info

Publication number
CN105024814B
CN105024814B CN201410164283.3A CN201410164283A CN105024814B CN 105024814 B CN105024814 B CN 105024814B CN 201410164283 A CN201410164283 A CN 201410164283A CN 105024814 B CN105024814 B CN 105024814B
Authority
CN
China
Prior art keywords
information
privately owned
registration information
operational order
identifying 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
Application number
CN201410164283.3A
Other languages
English (en)
Other versions
CN105024814A (zh
Inventor
刘金星
张彦玲
孙淑芹
王玉叶
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Tencent Cloud Computing Beijing Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201410164283.3A priority Critical patent/CN105024814B/zh
Publication of CN105024814A publication Critical patent/CN105024814A/zh
Application granted granted Critical
Publication of CN105024814B publication Critical patent/CN105024814B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例公开了一种验证方法、服务器,及系统,其中方法的实现包括:服务器接收来自终端的操作指令;在确认需要对所述操作指令进行验证后,生成验证码问题,并发送给所述终端;所述验证码问题的答案是所述操作指令指向的对象的私有注册信息;接收来自所述终端的验证信息,若所述验证信息与所述私有注册信息相同,则确认验证通过,否则确定验证失败。使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。

Description

一种验证方法、服务器,及系统
技术领域
本发明涉及通信技术领域,特别涉及一种验证方法、服务器,及系统。
背景技术
全自动区分计算机和人类的图灵测试(Completely Automated Public Turingtest to tell Computers and Humans Apart,CAPTCHA),也称为验证码,是一种区分用户是计算机和人的公共全自动程序。在CAPTCHA测试中,作为服务器的计算机会自动生成一个问题由用户来解答。这个问题可以由计算机生成并评判,但是必须只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答出问题的用户就可以被认为是人类。
人工打码是利用人工大量输入验证码的意思。由于验证码图像生成技术无论成本和难度都要远远低于图像解码识别技术,最后解码技术从自动化逐渐转变成使用人工智能,即雇佣人去解码,而不是研发新的解码系统。专门从事打码的工作人员,我们称为码工。
基于以上介绍可知:验证码是一种区分用户是计算机和人的公共全自动程序。它可以有效防止坏人使用自动化程序进行暴力破解密码、刷票、论坛灌水等恶意行为。由于验证码自动化识别技术无论从成本还是难度上看都要远远高于验证码图像生成技术,现在验证码识别逐渐从自动化转变成使用人工打码方式。而传统的验证码对付自动机绰绰有余,但对付人工打码就显得无能为力。
目前最通用的验证码解决方案为所见即所得式验证码。
基本原理如下:服务器给出图像X;该图像通常是服务器根据一定的规则自动生成的;用户观察图像X,寻找图像中的数字、英文字符或中文字符Y;用户将自己所理解的字符串Y提交给服务器;服务器将用户输入的Y与原始图像X对应的答案Y’进行对比,如果Y和Y’完全一致,则认定当前用户为人类用户,如果Y和Y’不一致,则认定当前用户为非人类用户。
针对以上方案,只要收集足够的样本,使用一些OCR技术进行学习和训练,就可以很快开发出可用的自动机程序来对传统的图像验证码进行识别。即使是改进的图像验证码,如果它的背景库不够庞大,依然也会被自动机识别。以字符验证码为例,如果是大小写字符和数字,最多只有62个。因此以上方案抗破解能力差。另外,对同一张验证码图片,所有人的输入结果都是一样的,根据用户的输入无法区分是真正的用户在输入还是码工在输入。因此,以上方案无法对抗人工打码。
目前也存在抗破解能力强并可以对抗人工打码的方案,例如:手机验证码。基本原理如下:首先需要用户提供一个可用的手机号,服务器端随机生成一串验证码通过短信或电话方式下发到该手机上,然后由用户将收到的验证码信息通过表单提交到服务器进行验证,验证成功后才能使用某项功能。目前大型网站尤其是购物网站,会提供有手机短信验证码功能,该方案可以比较准确和安全地保证安全性及验证用户的正确性。但是该方案存在明显的缺陷:首先,该方案需要用户提供一个可用的手机号码,而用户未必有手机或手机未必随身携带,这就导致了此类验证码的应用场景有限。其次,由于验证码是通过运营商渠道下发,服务器端的运营成本花费非常高。再次,如果要正确区分用户还是码工,则完成该验证的手机号码必须为用户事先已绑定好的可信手机,而非任意手机号码;这就要用户再使用该验证功能前还要完成手机绑定过程,增加了用户使用门槛和复杂度。
基于以上验证码的验证方案介绍可以发现,以上两个验证方案均不能实现技术门槛低并且安全高效地对抗人工打码。
发明内容
本发明实施例提供了一种验证方法、服务器,及系统,用于提供一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
一种验证方法,包括:
服务器接收来自终端的操作指令;
在确认需要对所述操作指令进行验证后,生成验证码问题,并发送给所述终端;所述验证码问题的答案是所述操作指令指向的对象的私有注册信息;
接收来自所述终端的验证信息,若所述验证信息与所述私有注册信息相同,则确认验证通过,否则确定验证失败。
一种服务器,包括:
指令接收单元,用于接收来自终端的操作指令;
验证码生成单元,用于在确认需要对所述操作指令进行验证后,生成验证码问题,所述验证码问题的答案是所述操作指令指向的对象的私有注册信息;
验证码发送单元,用于将所述验证码生成单元生成的验证码问题发送给所述终端;
信息接收单元,用于接收来自所述终端的验证信息;
验证单元,用于若所述信息接收单元接收的所述验证信息与所述私有注册信息相同,则确认验证通过,否则确定验证失败。
一种验证系统,包括:服务器和终端;所述服务器为本发明实施例提供的任意一项的服务器。
从以上技术方案可以看出,本发明实施例具有以下优点:通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例方法流程示意图;
图2为本发明实施例验证码问题界面示意图;
图3为本发明实施例服务器结构示意图;
图4为本发明实施例服务器结构示意图;
图5为本发明实施例服务器结构示意图;
图6为本发明实施例验证系统结构示意图;
图7为本发明实施例验证系统结构示意图;
图8为本发明实施例方法流程示意图;
图9为本发明实施例服务器结构示意图;
图10为本发明实施例服务器结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部份实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例提供了一种验证方法,如图1所示,包括:
101:服务器接收来自终端的操作指令;
上述操作指令,可以是来自终端的任意的操作指令,比如查看空间信息的操作指令、首次发送信息的操作指令、首次登录的操作指令等等。具体的操作指令,可以是任意的可能需要进行验证的操作指令,本发明实施例对此不予限定。
102:在确认需要对上述操作指令进行验证后,生成验证码问题,并发送给上述终端;上述验证码问题的答案是上述操作指令指向的对象的私有注册信息;
在本发明实施例中,私有注册信息是操作指令指向的对象在服务器一侧保存的各种注册信息,其中有一些注册信息是上述对象私有的,例如:姓名、籍贯、故乡、所在地、手机号、甚至身份证号等等。这些信息虽然是上述对象私有的,但是基于特定的应用场景,一些信息应当是发送操作指令的用户应当知道的,例如:社交网络中,该对象的姓名、故乡或者所在地等信息。这些信息,都可以存放在提供相应应用服务的服务器一侧,生成验证码的过程中可以提取这些信息。由于私有注册信息,对于码工而言,是无法获知的,因此可以对抗人工打码。另外这些信息的数据库是庞大的,自动机也无法破解。
对于私有注册信息的验证码问题,可以直接对私有注册信息进行提问,也可以对私有注册信息进行处理得到缺省的私有注册信息,这样这个缺省的私有注册信息可以对发送操作指令的一方用户进行适当的提醒。例如在即时通讯相关应用中,假定好友(上述对象)的姓名是刘金星;直接对私有注册信息进行提问可以如下:请输入好友姓名;如果是缺省的私有注册信息,则可以一并发送刘?星给上述终端显示给用户,那么用户将会看到:请输入好友姓名,并且还有提示“刘?星”,具体方案如下:进一步地,上述方法,还包括:获取上述操作指令指向的对象的私有注册信息,并按照预定规则将上述私有注册信息生成缺省的私有注册信息;上述验证码问题包含上述缺省的私有特征信息。
可选地,本发明实施例还提供了私有注册信息的获得方案,私有注册信息可以存放在本地,也可能存放在提供相应应用服务的服务器上,具体如下:上述获取上述操作指令指向的对象的私有注册信息包括:确定上述操作指令指向的对象,并从本地数据库中获取上述操作指令指向的对象的私有注册信息,或者,确定上述操作指令指向的对象,并确定上述操作指令指向的对象的私有注册信息所在的信息服务器,并从上述信息服务器中获取上述操作指令指向的对象的私有注册信息。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒可以依据一定的规则来执行,例如:假定上述对象的籍贯是广东省深圳市,那么可以提醒籍贯是广东省??市,具体如下:进一步地,上述方法,还包括:提取上述私有注册信息的信息相关项作为提示信息,并将上述提示信息发送给上述终端。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒除了使用文字信息进行提醒以外,还可以使用图像信息来提醒,只要这个图像与答案具有内在的联系就可以,例如:前述举例中的姓名的私有注册信息,则可以提取上述对象的头像作为提示信息,具体如下:可选地,提取上述私有注册信息的信息相关项作为提示信息包括:提取与上述缺省的私有注册信息相关的图像信息作为提示信息。
可选地,本发明实施例还提供了私有注册信息的优选举例,需要说明的是以下几个私有注册信息的举例并不是所有可选私有注册信息的穷举,以下几个私有注册信息可以作为优选的方案来使用,具体如下:上述私有注册信息包括:上述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
本发明实施例中使用了用户的私有注册信息进行提醒,那么在某些场景下,发送操作指令的用户并不知道这一问题的答案,例如网络好友则有可能并不知道上述对象注册的真实姓名,同事\同学\亲属等现实中的好友则应当知道上述对象的真实姓名;再例如:同事\网络好友可能并不知道、籍贯\学校这些信息,但是同学\亲属则通常是应当知道的;基于此,本发明实施例提供了使验证码问题与发送操作指令的用户身份适应,从而进一步地提高验证通过率,避免可能的不适当提问导致的验证码不合理的无法通过,上述方法,还包括:依据上述操作指令指向的对象的特征信息,确定上述操作指令的源用户与上述操作指令指向的对象的关系特征;并依据上述关系特征对上述操作指令指向的对象的私有注册信息进行预测,得到上述操作指令的源用户应当知道的私有注册信息;上述验证码问题的答案是上述操作指令指向的对象的私有注册信息;包括:上述验证码问题的答案是预测得到的私有注册信息。
以上应当知道的私有注册信息,可以按照预定的规则设定,例如:若发送操作指令的用户在上述操作指令指向的对象的小学同学一栏,则发送验证码问题可以是:请输入好友的小学名称,或者,请输入好友的故乡等。若发送操作指令的用户在上述操作指令指向的对象的大学同学一栏,则发送验证码问题可以是:请输入好友的大学名称,或者,请输入好友就读大学所在城市等。具体如何设定,可以依据现实中基于用户之间的关系应当获知信息的实际情况进行设定,本发明实施例对此不予具体限定。
103:接收来自上述终端的验证信息,若上述验证信息与上述私有注册信息相同,则确认验证通过,否则确定验证失败。
以上方案通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
以下实施例将以缺省的私有注册信息,以及提示信息一起作为发送给终端的验证消息为例,进行详细说明,具体如下:
本文档从以下3个部分详细阐述本发明内容的基本思想与原理:
背景:指服务器提供给用户进行验证码流程的检验数据;
问题:指服务器期望用户对之前给出的数据进行处理的方式,例如,传统的图像验证码,其问题就是“图像中的字符是什么?”;
答案:指一个验证码的期望结果,如果用户可以给出问题的答案,就可以认为是人类用户。
本发明实施例的背景是经过服务器处理后的,与用户好友资料相关的、可对用户记忆进行可能性的帮助的片段,如头像、姓氏、名字等等。
发明实施例验证码的问题可以是例如:请将以下好友的姓名补充完整。
对应地,发明实施例验证码的问题的正确答案应为服务器存储的,该好友的真实姓名。
如图2所示,问题为:请将以下好友的名字补充完整。背景为左边的头像,提示信息有“刘?星”。当且仅当用户填入的答案与服务器端存储的答案完全匹配时,才算验证通过。
以上方案,通过以下几个特点,具有如下优势:
1、本发明实施例所采用的验证码大大提高了防破解能力:
首先,本发明实施例所采用的验证码摒弃了传统的基于机器生成图像背景的方法,而是通过用户好友姓名、头像数据生成图片;由于用户好友关系数据具有多样性,因此验证码图库的规模不至于单一,可以有效避免自动机穷举破解。
其次,由于每个用户的好友关系数据都不同,这就使得每一个用户所拉取到的图形验证码与他人不同,使得自动机无法进行大规模批量操作。
2、可对抗人工打码:
基于好友关系数据的验证码,每一个用户所拉取到的图形验证码与他人不同,这类问题来源于真实关系链,他人很难知晓,因此可以有效对抗人工打码。
3、不需要辨别扭曲、变形的图片:
由于人类对周围好友姓名、头像数据的记忆和理解能力具有先天优势,只要我们所生成的图片控制在一定范围内,并且保留足够的提示,任何人都可以顺利的通过该测试;
其次,相比于传统验证码,本发明实施例所采用的验证码不需要用户辨识扭曲、变形的字符图片,用户体验上更好。
本发明实施例还提供了一种服务器,如图3所示,包括:
指令接收单元301,用于接收来自终端的操作指令;
验证码生成单元302,用于在确认需要对上述操作指令进行验证后,生成验证码问题,上述验证码问题的答案是上述操作指令指向的对象的私有注册信息;
验证码发送单元303,用于将上述验证码生成单元302生成的验证码问题发送给上述终端;
信息接收单元304,用于接收来自上述终端的验证信息;
验证单元305,用于若上述信息接收单元304接收的上述验证信息与上述私有注册信息相同,则确认验证通过,否则确定验证失败。
上述操作指令,可以是来自终端的任意的操作指令,比如查看空间信息的操作指令、首次发送信息的操作指令、首次登录的操作指令等等。具体的操作指令,可以是任意的可能需要进行验证的操作指令,本发明实施例对此不予限定。
以上方案通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
在本发明实施例中,私有注册信息是操作指令指向的对象在服务器一侧保存的各种注册信息,其中有一些注册信息是上述对象私有的,例如:姓名、籍贯、故乡、所在地、手机号、甚至身份证号等等。这些信息虽然是上述对象私有的,但是基于特定的应用场景,一些信息应当是发送操作指令的用户应当知道的,例如:社交网络中,该对象的姓名、故乡或者所在地等信息。这些信息,都可以存放在提供相应应用服务的服务器一侧,生成验证码的过程中可以提取这些信息。由于私有注册信息,对于码工而言,是无法获知的,因此可以对抗人工打码。另外这些信息的数据库是庞大的,自动机也无法破解。
对于私有注册信息的验证码问题,可以直接对私有注册信息进行提问,也可以对私有注册信息进行处理得到缺省的私有注册信息,这样这个缺省的私有注册信息可以对发送操作指令的一方用户进行适当的提醒。例如在即时通讯相关应用中,假定好友(上述对象)的姓名是刘金星;直接对私有注册信息进行提问可以如下:请输入好友姓名;如果是缺省的私有注册信息,则可以一并发送刘?星给上述终端显示给用户,那么用户将会看到:请输入好友姓名,并且还有提示“刘?星”,具体方案如下:进一步地,上述验证码生成单元302,还用于获取上述操作指令指向的对象的私有注册信息,并按照预定规则将上述私有注册信息生成缺省的私有注册信息;上述验证码问题包含上述缺省的私有特征信息。
可选地,本发明实施例还提供了私有注册信息的获得方案,私有注册信息可以存放在本地,也可能存放在提供相应应用服务的服务器上,具体如下:上述验证码生成单元302,用于确定上述操作指令指向的对象,并从本地数据库中获取上述操作指令指向的对象的私有注册信息,或者,确定上述操作指令指向的对象,并确定上述操作指令指向的对象的私有注册信息所在的信息服务器,并从上述信息服务器中获取上述操作指令指向的对象的私有注册信息。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒可以依据一定的规则来执行,例如:假定上述对象的籍贯是广东省深圳市,那么可以提醒籍贯是广东省??市,具体如下:进一步地,如图4所示,上述服务器还包括:
信息提取单元401,用于提取上述私有注册信息的信息相关项作为提示信息;
验证码发送单元303,还用于将上述提示信息发送给上述终端。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒除了使用文字信息进行提醒以外,还可以使用图像信息来提醒,只要这个图像与答案具有内在的联系就可以,例如:前述举例中的姓名的私有注册信息,则可以提取上述对象的头像作为提示信息,具体如下:可选地,上述信息提取单元401,用于提取与上述缺省的私有注册信息相关的图像信息作为提示信息。
可选地,本发明实施例还提供了私有注册信息的优选举例,需要说明的是以下几个私有注册信息的举例并不是所有可选私有注册信息的穷举,以下几个私有注册信息可以作为优选的方案来使用,具体如下:上述验证码生成单元302,用于生成验证码问题所使用的上述私有注册信息包括:上述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
本发明实施例中使用了用户的私有注册信息进行提醒,那么在某些场景下,发送操作指令的用户并不知道这一问题的答案,例如网络好友则有可能并不知道上述对象注册的真实姓名,同事\同学\亲属等现实中的好友则应当知道上述对象的真实姓名;再例如:同事\网络好友可能并不知道、籍贯\学校这些信息,但是同学\亲属则通常是应当知道的;基于此,本发明实施例提供了使验证码问题与发送操作指令的用户身份适应,从而进一步地提高验证通过率,避免可能的不适当提问导致的验证码不合理的无法通过,进一步地,如图5所示,上述服务器还包括:
特征确定单元501,用于依据上述操作指令指向的对象的特征信息,确定上述操作指令的源用户与上述操作指令指向的对象的关系特征;
预测单元502,用于依据上述特征确定单元501确定的关系特征对上述操作指令指向的对象的私有注册信息进行预测,得到上述操作指令的源用户应当知道的私有注册信息;
上述验证码生成单元302,用于生成的上述验证码问题的答案是上述预测单元502预测得到的私有注册信息。
以上应当知道的私有注册信息,可以按照预定的规则设定,例如:若发送操作指令的用户在上述操作指令指向的对象的小学同学一栏,则发送验证码问题可以是:请输入好友的小学名称,或者,请输入好友的故乡等。若发送操作指令的用户在上述操作指令指向的对象的大学同学一栏,则发送验证码问题可以是:请输入好友的大学名称,或者,请输入好友就读大学所在城市等。具体如何设定,可以依据现实中基于用户之间的关系应当获知信息的实际情况进行设定,本发明实施例对此不予具体限定。
本发明实施例还提供了一种验证系统,如图6所示,包括:服务器601和终端602;其中,上述服务器601为本发明实施例提供的任意一项的服务器。
以上方案通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
本发明实施例还提供了另一种验证系统,如图7所示,包括:Web(网页)服务器701、验证服务器702、验证码生成服务器703、好友关系服务器704以及终端705;
上述验证系统各设备的功能如下:
终端705:用户通过终端705的终端705通过统一资源定位符(Uniform ResourceLocator,URL)访问Web服务器701;并接收验证码问题显示给用户,接收用户的回答并发送给验证服务器702。
Web服务器701:接收终端705通过统一资源定位符(Uniform Resource Locator,URL)的访问,Web服务器701返回从验证码生成服务器703拉取的验证码图片展现给用户。
验证服务器702:从生成服务器获取验证码并生成与验证码一一对应的签名再通过Web服务器701下发给终端705;校验用户填写的答案和签名是否匹配。
验证码生成服务器703:用于对所有用户帐号,随机选择一系列的好友数据,并将好友数据中的姓名隐去某个或某几个字符。然后将头像、处理后的姓名生成相应的验证码图片,存储在内存中等待验证码服务器获取。一般来说内存中为每一个帐号准备了1~N个备选验证码图片供使用。
好友关系服务器704:用于存储用户好友列表,包括好友的头像、姓名等。用于验证码生成服务器703用来生成验证码图片。
如图8,所示,基于以上系统结构,本发明实施例提供的具体方案流程如下:
801:终端接收用户的操作指令,并将操作指令发送给Web服务器;
上述操作指令,可以是来自终端的任意的操作指令,比如查看空间信息的操作指令、首次发送信息的操作指令、首次登录的操作指令等等。具体的操作指令,可以是任意的可能需要进行验证的操作指令,本发明实施例对此不予限定。上述操作指令携带有操作指令的请求操作事项信息以及操作指令指向的对象信息。
802:Web服务器将接收到的操作指令转发给验证服务器;
803:验证服务器依据上述请求操作事项信息,如果确定上述请求操作事项需要进行验证,则向验证码生成服务器发送验证码请求消息;
上述验证码请求消息可以携带操作指令指向的对象信息,以及终端的用户信息。
804:验证码生成服务器接收到验证码请求消息以后,向好友关系服务器发送信息获取请求;
该信息获取请求可以携带操作指令指向的对象信息,以及终端的用户信息。
805:好友关系服务器依据信息获取请求中上述操作指令指向的对象,获取上述操作指令指向的对象的私有注册信息,并将获取到的上述操作指令指向的对象的私有注册信发送给验证码生成服务器;
在本发明实施例中,私有注册信息是操作指令指向的对象在服务器一侧保存的各种注册信息,其中有一些注册信息是上述对象私有的,例如:姓名、籍贯、故乡、所在地、手机号、甚至身份证号等等。这些信息虽然是上述对象私有的,但是基于特定的应用场景,一些信息应当是发送操作指令的用户应当知道的,例如:社交网络中,该对象的姓名、故乡或者所在地等信息。这些信息,都可以存放在提供相应应用服务的服务器一侧,生成验证码的过程中可以提取这些信息。由于私有注册信息,对于码工而言,是无法获知的,因此可以对抗人工打码。另外这些信息的数据库是庞大的,自动机也无法破解。
可选地,本发明实施例还提供了私有注册信息的优选举例,需要说明的是以下几个私有注册信息的举例并不是所有可选私有注册信息的穷举,以下几个私有注册信息可以作为优选的方案来使用,具体如下:上述私有注册信息包括:上述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
806:验证码生成服务器,将收到的上述操作指令指向的对象的私有注册信并生成验证码问题;上述验证码问题的答案是上述操作指令指向的对象的私有注册信息;并将验证码问题以及验证码问题的答案发送给验证服务器;
对于私有注册信息的验证码问题,可以直接对私有注册信息进行提问,也可以对私有注册信息进行处理得到缺省的私有注册信息,这样这个缺省的私有注册信息可以对发送操作指令的一方用户进行适当的提醒。例如在即时通讯相关应用中,假定好友(上述对象)的姓名是刘金星;直接对私有注册信息进行提问可以如下:请输入好友姓名;如果是缺省的私有注册信息,则可以一并发送刘?星给上述终端显示给用户,那么用户将会看到:请输入好友姓名,并且还有提示“刘?星”,具体方案如下:进一步地,验证码生成服务器还可以用户:获取上述操作指令指向的对象的私有注册信息,并按照预定规则将上述私有注册信息生成缺省的私有注册信息;上述验证码问题包含上述缺省的私有特征信息。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒可以依据一定的规则来执行,例如:假定上述对象的籍贯是广东省深圳市,那么可以提醒籍贯是广东省??市,具体如下:进一步地,上述方法,还包括:提取上述私有注册信息的信息相关项作为提示信息,并将上述提示信息发送给上述验证码服务器,验证码服务器通过Web服务器发送给上述终端。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒除了使用文字信息进行提醒以外,还可以使用图像信息来提醒,只要这个图像与答案具有内在的联系就可以,例如:前述举例中的姓名的私有注册信息,则可以提取上述对象的头像作为提示信息,具体如下:可选地,提取上述私有注册信息的信息相关项作为提示信息包括:提取与上述缺省的私有注册信息相关的图像信息作为提示信息。
本发明实施例中使用了用户的私有注册信息进行提醒,那么在某些场景下,发送操作指令的用户并不知道这一问题的答案,例如网络好友则有可能并不知道上述对象注册的真实姓名,同事\同学\亲属等现实中的好友则应当知道上述对象的真实姓名;再例如:同事\网络好友可能并不知道、籍贯\学校这些信息,但是同学\亲属则通常是应当知道的;基于此,本发明实施例提供了使验证码问题与发送操作指令的用户身份适应,从而进一步地提高验证通过率,避免可能的不适当提问导致的验证码不合理的无法通过,验证码生成服务器,还用于依据上述操作指令指向的对象的特征信息,确定上述操作指令的源用户与上述操作指令指向的对象的关系特征;并依据上述关系特征对上述操作指令指向的对象的私有注册信息进行预测,得到上述操作指令的源用户应当知道的私有注册信息;验证码问题的答案是上述操作指令指向的对象的私有注册信息;包括:上述验证码问题的答案是预测得到的私有注册信息。
以上应当知道的私有注册信息,可以按照预定的规则设定,例如:若发送操作指令的用户在上述操作指令指向的对象的小学同学一栏,则发送验证码问题可以是:请输入好友的小学名称,或者,请输入好友的故乡等。若发送操作指令的用户在上述操作指令指向的对象的大学同学一栏,则发送验证码问题可以是:请输入好友的大学名称,或者,请输入好友就读大学所在城市等。具体如何设定,可以依据现实中基于用户之间的关系应当获知信息的实际情况进行设定,本发明实施例对此不予具体限定。
807:验证码服务器收到验证码问题以及验证码问题的答案以后,将验证码问题发送给Web服务器;
808:Web服务器将接收到的验证码问题转发给终端;
809:终端接收到验证码问题后,显示验证码问题,并将用户输入的验证信息发送给Web服务器;
810:Web服务器将接收到的验证信息发送给验证服务器;
811:验证服务器确定接收到的验证信息是否与验证码问题的答案相同,如果相同,则确认验证通过,否则确定验证失败。
以上方案通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
本发明实施例还提供了另一种服务器,如图9所示,包括:接收器901、发射器902、处理器903以及存储器904;
其中,上述处理器903,用于控制执行:接收来自终端的操作指令;在确认需要对上述操作指令进行验证后,生成验证码问题,并发送给上述终端;上述验证码问题的答案是上述操作指令指向的对象的私有注册信息;接收来自上述终端的验证信息,若上述验证信息与上述私有注册信息相同,则确认验证通过,否则确定验证失败。
以上方案通过生成验证码问题,并使验证码问题的答案是上述操作指令指向的对象的私有注册信息,这样,使验证码脱离了“所见即所得”式的局限,可以成功对抗人工打码;另外由于操作指令指向的对象的注册信息背景库是庞大的库,使得自动机无法识别。另外,该方案不需要使用手机绑定,可以避免需要绑定手机导致的应用场景限制、维护难费用高、技术门槛和复杂度高等各种问题。因此以上方案提供了一种技术门槛低并且能够安全高效地对抗人工打码的验证方案。
上述操作指令,可以是来自终端的任意的操作指令,比如查看空间信息的操作指令、首次发送信息的操作指令、首次登录的操作指令等等。具体的操作指令,可以是任意的可能需要进行验证的操作指令,本发明实施例对此不予限定。
在本发明实施例中,私有注册信息是操作指令指向的对象在服务器一侧保存的各种注册信息,其中有一些注册信息是上述对象私有的,例如:姓名、籍贯、故乡、所在地、手机号、甚至身份证号等等。这些信息虽然是上述对象私有的,但是基于特定的应用场景,一些信息应当是发送操作指令的用户应当知道的,例如:社交网络中,该对象的姓名、故乡或者所在地等信息。这些信息,都可以存放在提供相应应用服务的服务器一侧,生成验证码的过程中可以提取这些信息。由于私有注册信息,对于码工而言,是无法获知的,因此可以对抗人工打码。另外这些信息的数据库是庞大的,自动机也无法破解。
对于私有注册信息的验证码问题,可以直接对私有注册信息进行提问,也可以对私有注册信息进行处理得到缺省的私有注册信息,这样这个缺省的私有注册信息可以对发送操作指令的一方用户进行适当的提醒。例如在即时通讯相关应用中,假定好友(上述对象)的姓名是刘金星;直接对私有注册信息进行提问可以如下:请输入好友姓名;如果是缺省的私有注册信息,则可以一并发送刘?星给上述终端显示给用户,那么用户将会看到:请输入好友姓名,并且还有提示“刘?星”,具体方案如下:进一步地,上述处理器903,还用于控制执行:获取上述操作指令指向的对象的私有注册信息,并按照预定规则将上述私有注册信息生成缺省的私有注册信息;上述验证码问题包含上述缺省的私有特征信息。
可选地,本发明实施例还提供了私有注册信息的获得方案,私有注册信息可以存放在本地,也可能存放在提供相应应用服务的服务器上,具体如下:上述处理器903,用于控制执行:确定上述操作指令指向的对象,并从本地数据库中获取上述操作指令指向的对象的私有注册信息,或者,确定上述操作指令指向的对象,并确定上述操作指令指向的对象的私有注册信息所在的信息服务器,并从上述信息服务器中获取上述操作指令指向的对象的私有注册信息。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒可以依据一定的规则来执行,例如:假定上述对象的籍贯是广东省深圳市,那么可以提醒籍贯是广东省??市,具体如下:进一步地,上述处理器903,还用于控制执行:提取上述私有注册信息的信息相关项作为提示信息,并将上述提示信息发送给上述终端。
对于私有注册信息而言,由于已经不再是“所见即所得”的方式,需要用户思考来回答,因此可以对用户进行适当的提醒,这种提醒除了使用文字信息进行提醒以外,还可以使用图像信息来提醒,只要这个图像与答案具有内在的联系就可以,例如:前述举例中的姓名的私有注册信息,则可以提取上述对象的头像作为提示信息,具体如下:上述处理器903,用于控制执行:提取与上述缺省的私有注册信息相关的图像信息作为提示信息。
可选地,本发明实施例还提供了私有注册信息的优选举例,需要说明的是以下几个私有注册信息的举例并不是所有可选私有注册信息的穷举,以下几个私有注册信息可以作为优选的方案来使用,具体如下:上述处理器903,用于控制执行生成验证码问题所使用的上述私有注册信息包括:上述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
本发明实施例中使用了用户的私有注册信息进行提醒,那么在某些场景下,发送操作指令的用户并不知道这一问题的答案,例如网络好友则有可能并不知道上述对象注册的真实姓名,同事\同学\亲属等现实中的好友则应当知道上述对象的真实姓名;再例如:同事\网络好友可能并不知道、籍贯\学校这些信息,但是同学\亲属则通常是应当知道的;基于此,本发明实施例提供了使验证码问题与发送操作指令的用户身份适应,从而进一步地提高验证通过率,避免可能的不适当提问导致的验证码不合理的无法通过,上述处理器903,还用于控制执行:依据上述操作指令指向的对象的特征信息,确定上述操作指令的源用户与上述操作指令指向的对象的关系特征;并依据上述关系特征对上述操作指令指向的对象的私有注册信息进行预测,得到上述操作指令的源用户应当知道的私有注册信息;上述验证码问题的答案是预测得到的私有注册信息。
以上应当知道的私有注册信息,可以按照预定的规则设定,例如:若发送操作指令的用户在上述操作指令指向的对象的小学同学一栏,则发送验证码问题可以是:请输入好友的小学名称,或者,请输入好友的故乡等。若发送操作指令的用户在上述操作指令指向的对象的大学同学一栏,则发送验证码问题可以是:请输入好友的大学名称,或者,请输入好友就读大学所在城市等。具体如何设定,可以依据现实中基于用户之间的关系应当获知信息的实际情况进行设定,本发明实施例对此不予具体限定。
图10是本发明实施例提供的一种服务器结构示意图,该服务器1000可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器1000上执行存储介质1030中的一系列指令操作。
服务器1000还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述实施例中由服务器所执行的步骤可以基于该图10所示的服务器结构。
值得注意的是,上述服务器实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
另外,本领域普通技术人员可以理解实现上述各方法实施例中的全部或部分步骤是可以通过程序来指令相关的硬件完成,相应的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明实施例揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (9)

1.一种验证方法,其特征在于,包括:
服务器接收来自终端的操作指令;
依据所述操作指令指向的对象的特征信息,确定所述操作指令的源用户与所述操作指令指向的对象的关系特征;并依据所述关系特征对所述操作指令指向的对象的私有注册信息进行预测,得到所述操作指令的源用户应当知道的私有注册信息;
在确认需要对所述操作指令进行验证后,生成验证码问题,并获取预测得到的私有注册信息,按照预定规则将获取的私有注册信息生成缺省的私有注册信息;生成提示信息,所述提示信息中包括所述缺省的私有注册信息,将所述验证码问题和所述提示信息发送给所述终端;所述验证码问题的答案是所述预测得到的私有注册信息;
接收来自所述终端的验证信息,若所述验证信息与所述私有注册信息相同,则确认验证通过,否则确定验证失败。
2.根据权利要求1所述方法,其特征在于,所述获取预测得到的私有注册信息包括:
从本地数据库中获取所述操作指令指向的对象的所述预测得到的私有注册信息,或者,确定所述操作指令指向的对象的私有注册信息所在的信息服务器,并从所述信息服务器中获取所述操作指令指向的对象的所述预测得到的私有注册信息。
3.根据权利要求1所述方法,其特征在于,还包括:提取与所述缺省的私有注册信息相关的图像信息,所述提示信息中还包括所述图像信息。
4.根据权利要求1至3任意一项所述方法,其特征在于,
所述私有注册信息包括:所述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
5.一种服务器,其特征在于,包括:
指令接收单元,用于接收来自终端的操作指令;
特征确定单元,用于依据所述操作指令指向的对象的特征信息,确定所述操作指令的源用户与所述操作指令指向的对象的关系特征;
预测单元,用于依据所述特征确定单元确定的关系特征对所述操作指令指向的对象的私有注册信息进行预测,得到所述操作指令的源用户应当知道的私有注册信息;
验证码生成单元,用于在确认需要对所述操作指令进行验证后,生成验证码问题,所述验证码问题的答案是预测得到的私有注册信息;
信息提取单元,用于获取所述预测得到的私有注册信息,按照预定规则将获取的私有注册信息生成缺省的私有注册信息;生成提示信息,所述提示信息中包括所述缺省的私有注册信息;
验证码发送单元,用于将所述验证码生成单元生成的验证码问题和所述信息提取单元提取的提示信息发送给所述终端;
信息接收单元,用于接收来自所述终端的验证信息;
验证单元,用于若所述信息接收单元接收的所述验证信息与所述私有注册信息相同,则确认验证通过,否则确定验证失败。
6.根据权利要求5所述服务器,其特征在于,
所述信息提取单元,用于从本地数据库中获取所述操作指令指向的对象的所述预测得到的私有注册信息,或者,确定所述操作指令指向的对象的私有注册信息所在的信息服务器,并从所述信息服务器中获取所述操作指令指向的对象的所述预测得到的私有注册信息。
7.根据权利要求5所述服务器,其特征在于,
所述信息提取单元,还用于提取与所述缺省的私有注册信息相关的图像信息,所述提示信息中还包括所述图像信息。
8.根据权利要求5至7任意一项所述服务器,其特征在于,
所述验证码生成单元,用于生成验证码问题所使用的所述私有注册信息包括:所述操作指令指向对象的姓名、籍贯、学校、手机号、出生时间中的任意一项。
9.一种验证系统,包括:服务器和终端;其特征在于,所述服务器为权利要求5至8任意一项的服务器。
CN201410164283.3A 2014-04-22 2014-04-22 一种验证方法、服务器,及系统 Active CN105024814B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410164283.3A CN105024814B (zh) 2014-04-22 2014-04-22 一种验证方法、服务器,及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410164283.3A CN105024814B (zh) 2014-04-22 2014-04-22 一种验证方法、服务器,及系统

Publications (2)

Publication Number Publication Date
CN105024814A CN105024814A (zh) 2015-11-04
CN105024814B true CN105024814B (zh) 2019-02-05

Family

ID=54414550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410164283.3A Active CN105024814B (zh) 2014-04-22 2014-04-22 一种验证方法、服务器,及系统

Country Status (1)

Country Link
CN (1) CN105024814B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846424A (zh) * 2017-12-26 2018-03-27 上海棠宝机器人有限公司 一种登录验证方法及装置
CN108256303A (zh) * 2018-01-10 2018-07-06 深圳壹账通智能科技有限公司 电子装置、身份验证方法及存储介质
CN108363684A (zh) * 2018-02-13 2018-08-03 中企动力科技股份有限公司 表单创建方法、装置及服务器
CN110543754A (zh) * 2018-05-29 2019-12-06 武汉极意网络科技有限公司 存储器、验证码实现方法、装置和设备
CN109995761B (zh) * 2019-03-06 2021-10-19 百度在线网络技术(北京)有限公司 服务处理方法、装置、电子设备及存储介质
CN113076535A (zh) * 2021-03-30 2021-07-06 顶象科技有限公司 一种国际化验证码的实现方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102361479A (zh) * 2011-06-24 2012-02-22 上海合合信息科技发展有限公司 指定信息获取方法及系统
CN103138921A (zh) * 2011-11-22 2013-06-05 阿里巴巴集团控股有限公司 一种身份信息验证方法和系统
CN103220153A (zh) * 2013-05-13 2013-07-24 百度在线网络技术(北京)有限公司 基于二维码的加密方法及装置、信息系统

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9124386B2 (en) * 2012-09-28 2015-09-01 Saurabh Dadu System, device, and method for securing voice authentication and end-to-end speech interaction

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102361479A (zh) * 2011-06-24 2012-02-22 上海合合信息科技发展有限公司 指定信息获取方法及系统
CN103138921A (zh) * 2011-11-22 2013-06-05 阿里巴巴集团控股有限公司 一种身份信息验证方法和系统
CN103220153A (zh) * 2013-05-13 2013-07-24 百度在线网络技术(北京)有限公司 基于二维码的加密方法及装置、信息系统

Also Published As

Publication number Publication date
CN105024814A (zh) 2015-11-04

Similar Documents

Publication Publication Date Title
CN105024814B (zh) 一种验证方法、服务器,及系统
US10380333B1 (en) Multi-factor authentication for determining whether a user is authorized to take an examination
EP3497609B1 (en) Detecting scripted or otherwise anomalous interactions with social media platform
CN109509021B (zh) 基于行为轨迹的异常识别方法、装置、服务器及存储介质
CN105554037B (zh) 身份认证处理方法及服务平台
JP2022532677A (ja) 身元検証及び管理システム
US9979721B2 (en) Method, server, client and system for verifying verification codes
CN108650226B (zh) 一种登录验证方法、装置、终端设备及存储介质
CN109684799A (zh) 账户登录方法、登录装置、账户登录设备及存储介质
KR20180041699A (ko) 이미지 기반의 captcha 과제
CN107294953B (zh) 攻击操作检测方法及装置
CN104618315B (zh) 一种验证信息推送和信息验证的方法、装置及系统
CN108011863A (zh) 识别暴力破解的方法及装置
CN104125485B (zh) 一种用户信息共享的方法、设备及系统
CN108011868A (zh) 一种滑动验证方法及移动终端
CN105376220A (zh) 一种业务实现方法、系统以及服务器
CN109600336A (zh) 存储设备、验证码应用方法和装置
CN104283682A (zh) 一种利用验证码进行校验的方法、装置及系统
CN105007255A (zh) 一种验证方法、服务器,及系统
CN106130739A (zh) 应用程序登录处理方法及装置
CN111651749A (zh) 基于密码找回账号的方法、装置、计算机设备及存储介质
CN105704133A (zh) 数据同步的方法、终端及服务器
CN107104946A (zh) 一种计算机机房管理系统
CN104009963B (zh) 远程密码的安全认证机制
CN110543754A (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
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20190731

Address after: Shenzhen Futian District City, Guangdong province 518044 Zhenxing Road, SEG Science Park 2 East Room 403

Co-patentee after: Tencent cloud computing (Beijing) limited liability company

Patentee after: Tencent Technology (Shenzhen) Co., Ltd.

Address before: Shenzhen Futian District City, Guangdong province 518000 Zhenxing Road, SEG Science Park 2 East Room 403

Patentee before: Tencent Technology (Shenzhen) Co., Ltd.