降低验证效率方法、生成验证码方法、相关系统及服务器的制造方法

文档序号:6504808阅读:297来源:国知局
降低验证效率方法、生成验证码方法、相关系统及服务器的制造方法
【专利摘要】本发明公开了降低验证效率方法、生成验证码方法、相关系统及服务器。降低验证效率方法包括,客户端向验证码服务器发送验证码拉取请求,验证码服务器接收到验证码拉取请求,生成携带自动执行的消耗系统资源程序的验证码信息,将携带自动执行的消耗系统资源程序的验证码信息发送给客户端,客户端接收到携带自动执行的消耗系统资源程序的验证码信息,自动执行该消耗系统资源程序。客户端接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,自动执行该消耗系统资源程序,以消耗客户端的系统资源,降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
【专利说明】降低验证效率方法、生成验证码方法、相关系统及服务器

【技术领域】
[0001]本发明涉及信息安全领域,尤其涉及降低验证码验证效率的方法、生成验证码的方法、相关系统、服务器及客户端。

【背景技术】
[0002]验证码(captcha)是“CompletelyAutomated Public Turing test to tellComputers and Humans Apart”的缩写,主要用来自动化区分计算机和人类,它被绝大多数互联网服务,如论坛、微博服务等,用来规避安全风险;主要是规避业务安全方面风险,如恶意破解密码、刷票、论坛发帖等。
[0003]现有技术中,验证码系统包括验证码服务器和客户端,客户端向验证码服务器发出拉取验证码请求,验证码服务器返回验证码信息,用户根据验证码信息通过客户端输入验证信息,客户端向验证码服务器发送携带验证信息的校验请求,验证码服务器根据校验请求进行校验,返回校验结果。
[0004]在对现有技术的研究和实践过程中,发明人发现现有技术至少存在以下问题:现有的验证码验证方法虽然可以对抗自动机的机器恶意验证,自动机指自动识别验证码的一类软件,但如果在线打码平台管理者雇佣输入人员(码工)进行打码,输入人员可根据验证码信息输入正确的验证码,现有技术对遏制人工恶意验证不起作用。


【发明内容】

[0005]本发明实施例提供降低验证码验证效率的方法、生成验证码的方法、相关系统、月艮务器及客户端,其可以降低验证码验证效率,对遏制人工恶意验证能够起到一定作用。
[0006]本发明实施例采用以下技术方案:
[0007]第一方面,提供一种降低验证码验证效率的方法,包括:
[0008]客户端向验证码服务器发送验证码拉取请求;
[0009]验证码服务器接收到验证码拉取请求,生成携带自动执行的消耗系统资源程序的验证码信息,将携带自动执行的消耗系统资源程序的验证码信息发送给客户端;
[0010]客户端接收到携带自动执行的消耗系统资源程序的验证码信息,自动执行该消耗系统资源程序。
[0011]第二方面,提供一种生成验证码的方法,包括:
[0012]接收到客户端发送的验证码拉取请求;
[0013]生成携带自动执行的消耗系统资源程序的验证码信息;
[0014]将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0015]第三方面,提供一种降低验证码验证效率的方法,包括:
[0016]向验证码服务器发送验证码拉取请求;
[0017]接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息;
[0018]自动执行该消耗系统资源程序;
[0019]接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息之后,还包括:获得用户验证信息,向验证码服务器发送携带用户验证信息的校验请求。
[0020]第四方面,提供一种降低验证码验证效率的验证码系统,包括客户端和验证码服务器;客户端包括拉取请求发送单元、验证码信息接收单元、系统资源程序执行单元;验证码服务器包括拉取请求接收单元、验证码信息生成单元、验证码信息发送单元;
[0021]拉取请求发送单元,用于向验证码服务器发送验证码拉取请求;
[0022]拉取请求接收单元,用于接收验证码拉取请求,
[0023]验证码信息生成单元,用于生成携带自动执行的消耗系统资源程序的验证码信息,
[0024]验证码信息发送单元,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端;
[0025]验证码信息接收单元,用于接收携带自动执行的消耗系统资源程序的验证码信息;
[0026]系统资源程序执行单元,用于自动执行消耗系统资源程序。
[0027]第五方面,提供一种验证码服务器,包括:
[0028]拉取请求接收单元,用于接收到客户端发送的验证码拉取请求;
[0029]验证码信息生成单元,用生成携带自动执行的消耗系统资源程序的验证码信息;
[0030]验证码信息发送单元,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0031]第六方面,提供一种客户端,包括:
[0032]拉取请求发送单元,用于向验证码服务器发送验证码拉取请求;
[0033]验证码信息接收单元,用于接收携带自动执行的消耗系统资源程序的验证码信息;
[0034]系统资源程序执行单元,用于自动执行消耗系统资源程序;
[0035]校验请求发送单元,用于获得用户验证信息,向所述验证码服务器发送携带用户验证信息的校验请求。
[0036]本发明实施例提供的技术方案带来的有益效果:
[0037]本技术方案中,客户端向验证码服务器发送验证码拉取请求,验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端;客户端接收验证码信息,自动执行该消耗系统资源程序;消耗系统资源程序能够自动执行以消耗客户端的系统资源,造成客户端反应迟钝,客户端运行效率下降,导致单位时间客户端发出的验证码拉取请求次数和校验请求次数下降;本技术方案可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。

【专利附图】

【附图说明】
[0038]为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
[0039]图1是本发明实施例提供的生成验证码方法第一个实施例的方法流程图。
[0040]图2是本发明实施例提供的生成验证码方法第二个实施例的方法流程图。
[0041]图3是本发明实施例提供的生成验证码方法第三个实施例的方法流程图。
[0042]图4是本发明实施例提供的降低验证码验证效率方法第一个实施例的方法流程图。
[0043]图5是本发明实施例提供的降低验证码验证效率方法第二个实施例的方法流程图。
[0044]图6是本发明实施例提供的降低验证码验证效率方法第三个实施例的方法流程图。
[0045]图7是本发明实施例提供的降低验证码验证效率方法第四个实施例的方法流程图。
[0046]图8是本发明实施例提供的降低验证码验证效率方法第五个实施例的方法流程图。
[0047]图9是本发明实施例提供的验证码服务器第一个实施例的结构方框图。
[0048]图10是本发明实施例提供的验证码服务器第二个实施例的结构方框图。
[0049]图11是本发明实施例提供的验证码服务器第三个实施例的结构方框图。
[0050]图12是本发明实施例提供的客户端第一个实施例的结构方框图。
[0051]图13是本发明实施例提供的客户端第二个实施例的结构方框图。
[0052]图14是本发明实施例提供的验证码系统第一个实施例的结构方框图。
[0053]图15是本发明实施例提供的验证码系统第二个实施例的结构方框图。
[0054]图16是本发明实施例提供的验证码系统第三个实施例的结构方框图。

【具体实施方式】
[0055]为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0056]请参考图1,其是本发明实施例提供的生成验证码方法第一个实施例的方法流程图。本实施例的方法应用于验证码服务器,验证码服务器指用于生成验证码信息和对用户验证信息进行校验的服务器。
[0057]该生成验证码方法,包括如下步骤:
[0058]S101、接收到客户端发送的验证码拉取请求。
[0059]客户端在请求互联网服务之前,向验证码服务器发出验证码拉取请求,验证码服务器接收该验证码拉取请求。
[0060]S102、生成携带自动执行的消耗系统资源程序的验证码信息。
[0061]本发明实施例中,自动执行的消耗系统资源程序为以下一种或至少两种的组合:自动执行的申请和释放内存的程序、自动执行的申请CPU运算的程序、自动执行的网络上传内容和/或网络下载内容的程序。除这三种消耗系统资源程序外,本技术方案还可以使用其它消耗系统资源程序。这三种程序均可消耗大量系统资源,可根据不同场景选择消耗不同系统资源及控制系统资源消耗量的程序,现有计算机编程语言有多种方法实现这些程序,在此不对具体程序进行赘述。
[0062]验证码信息可为问答类验证码信息或图片类验证码信息。问答类验证码信息可为问题信息,验证码服务器保存有问题信息的原始验证信息,即问题答案,用户根据问题信息提交正确的答案就能通过校验。图片类验证码信息可为图片信息,将字体、前景、背景制成图片信息,验证码服务器保存有图片信息的原始验证信息,即图片对应的字体,用户根据图片信息提交正确的字体就能通过校验。
[0063]S103、将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0064]客户端接收到该验证码信息后,将自动执行该消耗系统资源的程序;因为系统资源被消耗,客户端执行程序速度变慢,造成反应迟钝,导致后续的发送校验请求和再次发送验证码拉取请求变慢,从而降低验证码验证效率。考虑到客户端收到验证码信息后自动执行的消耗系统资源程序可能会被某些杀毒软件判定为病毒而被隔离,本技术方案在实现的时候,可与特定客户端软件结合,系统允许特定客户端软件的相关程序自动执行。
[0065]本技术方案可以是对所有验证码拉取请求均生成携带自动执行的消耗系统资源程序的验证码信息;因为对人工恶意验证的客户端来说,会大量发送验证码拉取请求,多次或大量自动执行消耗系统资源程序对客户端运行效率影响大;而对正常客户端来说,发送验证码拉取请求的次数很少,一次或少量自动执行消耗系统资源程序对客户端运行效率影响小,不会对操作系统产生负担,用户基本上觉察不到。本技术方案也可以是确定验证码拉取请求为异常请求后才生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端,对正常的验证码拉取请求,生成正常没有携带自动执行的消耗系统资源程序的验证码信息并发送给客户端。
[0066]综上,验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端,以使得客户端接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端的系统资源,造成客户端反应迟钝,客户端运行效率下降,导致单位时间客户端发出的验证码拉取请求次数和校验请求次数下降;本技术方案可以降低验证码验证效率,增加人工恶意验证的成本,包括时间成本、支付给雇佣输入人员的成本、高端打码设备购买成本等,对遏制人工恶意验证能够起到一定作用。
[0067]请参考图2,其是本发明实施例提供的生成验证码方法第二个实施例的方法流程图。本实施例与生成验证码方法第一个实施例的主要区别在于,增加在生成验证码信息之前确定验证码拉取请求为异常请求的内容,增加加密原始验证信息形成加密验证信息发送到客户端、再接收客户端发送的该加密验证信息进行解密得到原始验证信息、然后进行校验的内容。
[0068]该生成验证码方法,包括如下步骤:
[0069]S201、接收到客户端发送的验证码拉取请求。
[0070]S202、确定验证码拉取请求为异常请求。
[0071]判断验证码拉取请求是否为异常请求,如果为异常请求,继续步骤S203,向客户端发送携带自动执行的消耗系统资源程序的验证码信息,如果为正常请求,向客户端发送正常的验证码信息,正常的验证码信息不需携带自动执行的消耗系统资源程序。验证码服务器向客户端发送正常的验证码信息及客户端处理正常的验证码信息是现有技术,在此不做赘述。
[0072]本发明实施例中,通过以下方法判断出异常请求:统计客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。需要说明的是,还可以通过其它方法判断验证码拉取请求是否为异常请求,比如将用户注册账号分为验证注册账号和游客注册账号,通过账户类型进行判断,验证注册账号发出的验证码拉取请求为正常请求,游客注册账号发出的验证码拉取请求为异常请求。
[0073]例如,对于恶意刷票情况,把预定时间周期设置为24小时,异常阈值为10次,如果同一客户端的用户特征信息的验证码拉取请求的次数在24小时内,大于等于10次,则认为验证码拉取请求为异常请求。
[0074]客户端的用户特征信息为验证码拉取请求携带的标识信息,用于识别请求的发出者,可为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息等。
[0075]S203、对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。该原始验证信息为验证码信息对应的答案、字体或其它正确校验值。
[0076]可使用消息摘要算法或安全散列算法(SHA-1)对验证码信息的原始验证信息进行加密得到加密验证信息,当然,亦可使用其它加密算法。在步骤S206中,使用对应算法对加密验证信息进行解密。消息摘要算法中,较常用的是消息摘要算法第五版(MD5,Message-Digest Algorithm5)。
[0077]S204、将携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给客户端。
[0078]S205、接收到客户端发送的携带用户验证信息和该加密验证信息的校验请求。
[0079]客户端不对从验证码服务器接收到的加密验证信息进行解密,客户端将其打包到校验请求中,校验请求携带用户验证信息和该加密验证信息发送到验证码服务器。
[0080]S206、对校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0081]如果校验成功,则该客户端可以继续运行相关联请求程序,如果校验失败,则该客户端无法运行相关联请求程序。
[0082]S207、将校验结果发送给客户端。
[0083]综上,验证码服务器确定验证码拉取请求为异常请求后才发送携带自动执行的消耗系统资源程序的验证码信息,对正常请求发送正常的没有携带自动执行的消耗系统资源程序的验证码信息,异常请求和正常请求区别对待,不会影响发送正常的验证码拉取请求的客户端的运行效率。
[0084]验证码服务器加密原始验证信息形成加密验证信息,发送携带该加密验证信息的验证码信息到客户端,再接收客户端发送的携带该加密验证信息的校验请求,对其进行解密得到原始验证信息,然后进行校验,可避免原始验证信息保存在验证码服务器,减少验证码服务器存储的数据量,降低验证码服务器组建数据库的难度。
[0085]验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端,以使得客户端接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0086]请参考图3,其是本发明实施例提供的生成验证码方法第三个实施例的方法流程图。本实施例与生成验证码方法第二个实施例的主要区别在于,生成验证码方法第二个实施例将原始验证信息加密发送到客户端,而本实施例将原始验证信息保存在验证码服务器。
[0087]S301、建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表;建立客户端的用户特征信息与验证码信息的原始验证信息对应关系的第二映射列表。
[0088]第一映射列表和第二映射列表均为动态更新,它们可以整合到同一数据库保存在验证码服务器。在验证码服务器接收到新的验证码拉取请求时,则在第一映射列表新建客户端的用户特征信息与验证码拉取请求的次数对应关系,在验证码服务器新生成携带自动执行的消耗系统资源程序的验证码信息,则在第二映射列表新建客户端的用户特征信息与验证码信息的原始验证信息对应关系。
[0089]S302、接收到客户端发送的验证码拉取请求。
[0090]S303、根据接收到的验证码拉取请求更新第一映射列表,从第一映射列表中找到客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数;如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0091]S304、生成携带自动执行的消耗系统资源程序的验证码信息;根据验证码信息的原始验证信息更新第二映射列表。
[0092]本发明实施例中,从策略服务器获取验证策略,从验证码素材库服务器获取验证码元素,根据验证策略、验证码元素生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。这里的验证策略包括验证规则,比如,确定给客户端下发问答类验证码信息还是图片类验证码信息。验证码素材库保存有生成验证码所需的验证码元素,比如字体、背景、前景等。策略服务器还保存有异常的验证码拉取请求的判断规则。
[0093]S305、将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0094]S306、接收客户端发送的携带用户验证信息的校验请求,
[0095]S307、从第二映射列表中找到客户端的用户特征信息对应的验证码信息的原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0096]S308、将校验结果发送给客户端。
[0097]综上,验证码服务器使用第二映射列表保存原始验证信息,而不是采用加密和解密原始验证信息方式传递原始验证信息,可减少加密和解密产生的运算量,提高验证码服务器的数据处理效率,且原始验证信息保存在验证码服务器比较安全。验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端,以使得客户端接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0098]请参考图4,其是本发明实施例提供的降低验证码验证效率方法第一个实施例的方法流程图。本实施例的方法应用于客户端,本文的客户端指能够发出验证码拉取请求和校验请求的终端,其可以为个人电脑、便携式电脑、平板电脑、智能手机等。
[0099]该降低验证码验证效率方法,包括以下步骤:
[0100]S401、向验证码服务器发送验证码拉取请求。
[0101]验证码服务器接收到客户端的验证码拉取请求,生成携带自动执行的消耗系统资源程序的验证码信息,发送给该客户端。
[0102]S402、接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信肩、O
[0103]S403、自动执行该消耗系统资源程序。这里的自动执行,指客户端接收到验证码信息后,无需用户干涉就可以自动运行。
[0104]综上,客户端接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,自动执行该消耗系统资源程序,以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0105]请参考图5,其是本发明实施例提供的降低验证码验证效率方法第二个实施例的方法流程图。本实施例与降低验证码验证效率方法第一个实施例的主要区别在于,客户端接收到的验证码信息携带加密验证信息,客户端发送的校验请求携带该加密验证信息。
[0106]S501、向验证码服务器发送验证码拉取请求。
[0107]验证码服务器接收到客户端的验证码拉取请求,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息,发送给该客户端。
[0108]S502、接收到携带自动执行的消耗系统资源程序和加密验证信息的验证码信息;
[0109]S503、自动执行该消耗系统资源程序。
[0110]S504、获得用户验证信息,向验证码服务器发送携带用户验证信息和该加密验证息的校验请求。
[0111]验证码服务器通过对该加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0112]综上,验证码信息和校验请求携带加密验证信息,可避免原始验证信息保存在验证码服务器,降低验证码服务器组建数据库的难度。客户端接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,自动执行该消耗系统资源程序,以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0113]上述降低验证码验证效率方法的第一个实施例和第二个实施例的应用主体为客户端,而以下降低验证码验证效率方法的第三个实施例至第五个实施例的应用主体为验证码系统,该验证码系统包括验证码服务器和客户端。
[0114]请参考图6,其是本发明实施例提供的降低验证码验证效率方法第三个实施例的方法流程图。本实施例结合上述生成验证码方法第一个实施例和降低验证码验证效率方法第一个实施例的内容,本实施例未详尽描述的细节内容,可以参考这两个实施例。本实施例体现了验证码服务器和客户端的数据交互。
[0115]S601、客户端向验证码服务器发送验证码拉取请求。
[0116]S602、验证码服务器接收到客户端发送的验证码拉取请求。
[0117]S603、生成携带自动执行的消耗系统资源程序的验证码信息。
[0118]S604、将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0119]S605、客户端接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码/[目息O
[0120]S606、自动执行该消耗系统资源程序。因为系统资源被消耗,客户端执行程序速度变慢,导致后续的发送校验请求和再次发送验证码拉取请求变慢,验证过程变慢,降低了验证码验证效率。
[0121]综上,客户端发送验证码拉取请求,验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息,客户端接收到该验证码信息后,自动执行该消耗系统资源程序,以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0122]为达到恶意验证的目的,比如恶意刷票,在线打码平台管理者雇佣专门从事验证码输入工作的人员(码工),采取分布式打码的方式取代自动机,进行人工恶意验证,打码团伙依据码工提交的正确验证码的数量来计算报酬。采用本技术方案后,客户端运行效率下降,降低验证码验证效率,大幅降低码工的输入验证码效率,码工单位时间的打码报酬降低,增加打码团伙的成本,本技术方案对打码团伙的人工恶意验证起到一定的遏制作用。
[0123]请参考图7,其是本发明实施例提供的降低验证码验证效率方法第四个实施例的方法流程图。本实施例结合上述生成验证码方法第二个实施例和降低验证码验证效率方法第二个实施例的内容,本实施例未详尽描述的细节内容,可以参考这两个实施例。
[0124]S701、客户端向验证码服务器发送验证码拉取请求。
[0125]可通过Web服务器接收客户端的信息,Web服务器将客户端的验证码拉取请求和校验请求转发给验证码服务器,将验证码服务器的验证码信息和校验结果转发给客户端。
[0126]S702、验证码服务器接收到客户端发送的验证码拉取请求。
[0127]S703、确定验证码拉取请求为异常请求。
[0128]S704、对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。
[0129]其中,验证码服务器从策略服务器获取验证策略,从验证码素材库服务器获取验证码元素,根据验证策略、验证码元素、加密验证信息生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。
[0130]S705、将携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给客户端。
[0131]S706、客户端接收到携带自动执行的消耗系统资源程序和加密验证信息的验证码信息,继续步骤S707和步骤S708。需要指出的是,步骤S707和步骤S708没有先后顺序关系O
[0132]S707、自动执行该消耗系统资源程序。
[0133]S708、获得用户验证信息,向验证码服务器发送携带用户验证信息和加密验证信息的校验请求。
[0134]S709、验证码服务器接收到客户端发送的携带用户验证信息和该加密验证信息的校验请求。
[0135]S710、对校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0136]S711、将校验结果发送给客户端。
[0137]综上,验证码服务器确定验证码拉取请求为异常请求后才发送携带自动执行的消耗系统资源程序的验证码信息,对正常请求发送正常的没有携带自动执行的消耗系统资源程序的验证码信息,不会影响发送正常的验证码拉取请求的客户端运行效率。验证码服务器加密原始验证信息形成加密验证信息,发送携带该加密验证信息的验证码信息到客户端,再接收客户端发送的携带该加密验证信息的校验请求,对其进行解密得到原始验证信息,然后进行校验,可避免原始验证信息保存在验证码服务器,降低验证码服务器组建数据库的难度。
[0138]客户端发送验证码拉取请求,验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息,客户端接收到该验证码信息后,自动执行该消耗系统资源程序,以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0139]以下为本发明实施例应用于网络论坛发帖的应用实施例。该例中,验证码信息为图片类验证码信息,自动执行的消耗系统资源程序为申请和释放内存的程序。
[0140]预先在验证码服务器设置判断异常的验证码拉取请求的条件如下,预定时间周期为10秒,异常阈值为3次,如果用户注册账号的验证码拉取请求的次数在10秒内,大于等于3次,则认为该验证码拉取请求为异常请求。
[0141]用户通过个人电脑(客户端)使用用户注册账号访问网络论坛,网络论坛的显示页面提示有论坛发帖功能,当用户点击论坛发帖时,个人电脑向验证码服务器发送验证码拉取请求,验证码服务器判断该验证码拉取请求是否为异常请求。假如该用户为论坛恶意发帖,平均每秒钟发一次验证码拉取请求,则通过上述方法可判断出证码拉取请求为异常请求。
[0142]验证码服务器生成携带自动执行的申请和释放内存程序和加密验证信息的图片类验证码信息。个人电脑接收到该图片类验证码信息后,自动执行申请和释放内存的程序,消耗个人电脑的系统资源,导致个人电脑反应迟钝,达到降低验证码验证效率的目的。
[0143]在申请内存时,操作系统需要对空闲内存块进行分割,则申请内存的时间耗费约等于在空闲内存块链表中顺序查找合适大小空闲块的时间耗费加上将分割后的空闲块插入到空闲块链表中适当位置上的时间耗费;在释放内存时,操作系统需要对空闲内存块进行合并,则释放内存块的时间耗费约等于将合并后的空闲内存块插入到空闲块链表中适当位置上的时间耗费。
[0144]根据上述申请和释放内存的原理,这里使用需要遍历链表结点的平均个数来衡量申请内存就和释放内存的时间效率。定义L为空闲内存块链表的空闲块数量,即初始长度,则定位到某一个合适位置需要遍历空闲块的平均个数是:
ri.if §
'I c'……1-1
A \.*#-
[0145]T4》;==L.本=
4*-1ml
[0146]记T1为申请内存时需要遍历链表结点的平均个数,则:
/I 1\ /1 1-.
[0147]T; = [?£-T! + b£^y)=i +:

、繼dm ■*-%?
[0148]记T2为释放内存时需要遍历链表结点的平均个数,则:


-4
[0149]Γ-
[0150]当接收到携带自动执行的申请和释放内存程序的图片类验证码信息,自动执行申请和释放内存的程序,操作系统申请和释放内存会产生内存碎片。根据上述公式,随着大量发送验证码拉取请求,接收到大量的携带自动执行的申请和释放内存程序的图片类验证码信息,系统中的内存碎片会呈线性增长,导致申请和释放内存需要的时间也会呈线性增长,最终会消耗大量系统资源,而降低提交验证码的效率。
[0151]用户根据图片类验证码信息找到图片中的文字,并输入该文字作为用户验证信息,个人电脑获得用户验证信息,向验证码服务器发送携带用户验证信息和加密验证信息的校验请求。验证码服务器对校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验并反馈校验结果。
[0152]请参考图8,其是本发明实施例提供的降低验证码验证效率方法第五个实施例的方法流程图。本实施例结合上述生成验证码方法第三个实施例和降低验证码验证效率方法第一个实施例的内容,本实施例未详尽描述的细节内容,可以参考这两个实施例。
[0153]S801、验证码服务器建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表;建立客户端的用户特征信息与验证码信息的原始验证信息对应关系的第二映射列表。
[0154]S802、客户端向验证码服务器发送验证码拉取请求。
[0155]S803、验证码服务器接收到客户端发送的验证码拉取请求。
[0156]S804、根据接收到的验证码拉取请求更新第一映射列表,从第一映射列表中找到客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数;如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0157]S805、生成携带自动执行的消耗系统资源程序的验证码信息;根据验证码信息的原始验证信息更新第二映射列表。
[0158]S806、将携带自动执行的消耗系统资源程序的验证码信息发送给客户端。
[0159]S807、客户端接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,继续步骤S808和步骤S809。步骤S808和步骤S809没有先后顺序关系。
[0160]S808、自动执行该消耗系统资源程序。
[0161]S809、获得用户验证信息,向验证码服务器发送携带用户验证信息的校验请求。
[0162]S810、验证码服务器接收客户端发送的携带用户验证信息的校验请求,
[0163]S811、从第二映射列表中找到客户端的用户特征信息对应的验证码信息的原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0164]S812、将校验结果发送给客户端。
[0165]综上,验证码服务器使用第二映射列表保存原始验证信息,而不是采用加密和解密原始验证信息方式传递原始验证信息,可减少加密和解密产生的运算量,提高验证码服务器的数据处理效率,且原始验证信息保存在验证码服务器比较安全。客户端发送验证码拉取请求,验证码服务器生成携带自动执行的消耗系统资源程序的验证码信息,客户端接收到该验证码信息后,自动执行该消耗系统资源程序,以消耗客户端的系统资源,客户端运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0166]以下为本发明实施例的验证码服务器910实施例、客户端920实施例、降低验证码验证效率的验证码系统实施例。本发明实施例的生成验证码的方法、降低验证码验证效率的方法、验证码服务器910、客户端920、降低验证码验证效率的验证码系统属于一个总的发明构思,在验证码服务器910实施例、客户端920实施例、降低验证码验证效率的验证码系统实施例中未详尽描述的细节内容,可以参考上述生成验证码的方法实施例、降低验证码验证效率的方法实施例。
[0167]请参考图9,其是本发明实施例提供的验证码服务器910第一个实施例的结构方框图。该验证码服务器910,包括如下内容:
[0168]拉取请求接收单元911,用于接收到客户端920发送的验证码拉取请求;
[0169]验证码信息生成单元912,用生成携带自动执行的消耗系统资源程序的验证码信息;
[0170]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0171]综上,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端920,以使得客户端920接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0172]请参考图10,其是本发明实施例提供的验证码服务器910第二个实施例的结构方框图。该验证码服务器910,包括如下内容:
[0173]拉取请求接收单元911,用于接收到客户端920发送的验证码拉取请求。
[0174]验证码信息生成单元912,用生成携带自动执行的消耗系统资源程序的验证码信肩、O
[0175]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0176]异常请求确定单元914,用于确定验证码拉取请求为异常请求。
[0177]校验请求接收单元915,用于接收携带用户验证信息的校验请求。
[0178]用户验证信息校验单元916,用于对用户验证信息进行校验。
[0179]校验结果发送单元917,用于将校验结果发送给客户端920。
[0180]其中,异常请求确定单元914,具体用于统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0181]其中,验证码信息生成单元912,具体用于从策略服务器940获取验证策略,从验证码素材库服务器950获取验证码元素,根据验证策略和验证码元素生成携带自动执行的消耗系统资源程序的验证码信息。
[0182]其中,验证码信息生成单元912,具体用于对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息;
[0183]其中,验证码信息发送单元913,具体用于将携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给客户端920 ;
[0184]其中,校验请求接收单元915,具体用于接收携带用户验证信息和加密验证信息的校验请求;
[0185]其中,用户验证信息校验单元916,具体用于对校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0186]其中,对验证码信息的原始验证信息进行加密得到加密验证信息,具体为:使用消息摘要算法或安全散列算法对验证码信息的原始验证信息进行加密得到加密验证信息。
[0187]其中,消耗系统资源程序为申请和释放内存的程序、申请CPU运算的程序或网络上传内容和/或网络下载内容的程序。
[0188]其中,客户端920的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息。
[0189]其中,验证码信息为问答类验证码信息或图片类验证码信息。
[0190]综上,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端920,以使得客户端920接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0191]请参考图11,其是本发明实施例提供的验证码服务器910第三个实施例的结构方框图。该验证码服务器910,包括如下内容:
[0192]拉取请求接收单元911,用于接收到客户端920发送的验证码拉取请求。
[0193]验证码信息生成单元912,用生成携带自动执行的消耗系统资源程序的验证码信肩、O
[0194]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0195]异常请求确定单元914,用于确定验证码拉取请求为异常请求。
[0196]其中,异常请求确定单元914,具体用于统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0197]第一列表建立单元918,用于建立客户端920的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表。
[0198]其中,统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括:根据接收到的验证码拉取请求更新第一映射列表,从第一映射列表中找到客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数。
[0199]其中,验证码信息生成单元912,具体用于从策略服务器940获取验证策略,从验证码素材库服务器950获取验证码元素,根据验证策略和验证码元素生成携带自动执行的消耗系统资源程序的验证码信息。
[0200]校验请求接收单元915,用于接收携带用户验证信息的校验请求;
[0201]用户验证信息校验单元916,用于对用户验证信息进行校验;
[0202]校验结果发送单元917,用于将校验结果发送给客户端920。
[0203]第二列表建立单元919,用于建立客户端920的用户特征信息与验证码信息的原始验证信息对应关系的第二映射列表。
[0204]其中,用户验证信息校验单元916,具体用于从第二映射列表中找到客户端920的用户特征信息对应的验证码信息的原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0205]其中,消耗系统资源程序为申请和释放内存的程序、申请CPU运算的程序或网络上传内容和/或网络下载内容的程序。
[0206]其中,客户端920的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息。
[0207]其中,验证码信息为问答类验证码信息或图片类验证码信息。
[0208]综上,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息并发送给客户端920,以使得客户端920接收到该验证码信息后,自动执行该消耗系统资源程序以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0209]请参考图12,其是本发明实施例提供的客户端920第一个实施例的结构方框图。该客户端920,包括如下内容:
[0210]拉取请求发送单元921,用于向验证码服务器发送验证码拉取请求。
[0211]验证码信息接收单元912,用于接收携带自动执行的消耗系统资源程序的验证码信息。
[0212]系统资源程序执行单元913,用于自动执行消耗系统资源程序。
[0213]综上,客户端920接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,自动执行消耗系统资源程序,以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0214]请参考图13,其是本发明实施例提供的客户端920第二个实施例的结构方框图。该客户端920,包括如下内容:
[0215]拉取请求发送单元921,用于向验证码服务器发送验证码拉取请求。
[0216]验证码信息接收单元912,用于接收携带自动执行的消耗系统资源程序的验证码信息。
[0217]系统资源程序执行单元913,用于自动执行消耗系统资源程序。
[0218]校验请求发送单元914,用于获得用户验证信息,向验证码服务器发送携带用户验证信息的校验请求。
[0219]其中,验证码信息接收单元912,具体用于接收携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。
[0220]校验请求发送单元914,具体用于向验证码服务器发送携带用户验证信息和加密验证信息的校验请求。
[0221]综上,客户端920接收到验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息,自动执行消耗系统资源程序,以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0222]请参考图14,其是本发明实施例提供的降低验证码验证效率的验证码系统第一个实施例的结构方框图。该降低验证码验证效率的验证码系统,包括如下内容:
[0223]包括客户端920和验证码服务器910 ;客户端920包括拉取请求发送单元921、验证码信息接收单元912、系统资源程序执行单元913 ;验证码服务器910包括拉取请求接收单元911、验证码信息生成单元912、验证码信息发送单元913。
[0224]拉取请求发送单元921,用于向验证码服务器发送验证码拉取请求。
[0225]拉取请求接收单元911,用于接收验证码拉取请求。
[0226]验证码信息生成单元912,用于生成携带自动执行的消耗系统资源程序的验证码信息。
[0227]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0228]验证码信息接收单元912,用于接收携带自动执行的消耗系统资源程序的验证码信息。
[0229]系统资源程序执行单元913,用于自动执行消耗系统资源程序。
[0230]综上,客户端920发送验证码拉取请求,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息,客户端920接收到该验证码信息后,自动执行消耗系统资源程序,以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0231 ] 请参考图15,其是本发明实施例提供的降低验证码验证效率的验证码系统第二个实施例的结构方框图。该降低验证码验证效率的验证码系统,包括如下内容:
[0232]包括客户端920和验证码服务器910 ;客户端920包括拉取请求发送单元921、验证码信息接收单元912、系统资源程序执行单元913 ;验证码服务器910包括拉取请求接收单元911、验证码信息生成单元912、验证码信息发送单元913。
[0233]拉取请求发送单元921,用于向验证码服务器发送验证码拉取请求。
[0234]拉取请求接收单元911,用于接收验证码拉取请求。
[0235]验证码信息生成单元912,用于生成携带自动执行的消耗系统资源程序的验证码信息。
[0236]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0237]验证码信息接收单元912,用于接收携带自动执行的消耗系统资源程序的验证码信息。
[0238]系统资源程序执行单元913,用于自动执行消耗系统资源程序。
[0239]验证码服务器还包括异常请求确定单元914:
[0240]异常请求确定单元914,用于确定验证码拉取请求为异常请求。
[0241]其中,异常请求确定单元914,具体用于统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0242]其中,还包括Web服务器930:
[0243]Web服务器930,用于接收到客户端920发送的验证码拉取请求,向验证码服务器转发验证码拉取请求。
[0244]其中,将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920,具体为:将携带自动执行的消耗系统资源程序的验证码信息通过Web服务器930发送给客户端920。
[0245]其中,客户端920还包括校验请求发送单元914:
[0246]校验请求发送单元914,用于获得用户验证信息,向验证码服务器发送携带用户验证信息的校验请求。
[0247]其中,验证码服务器还包括校验请求接收单元915、用户验证信息校验单元916、校验结果发送单元917:
[0248]校验请求接收单元915,用于接收携带用户验证信息的校验请求;
[0249]用户验证信息校验单元916,用于对用户验证信息进行校验;
[0250]校验结果发送单元917,用于将校验结果发送给客户端920。
[0251]其中,验证码信息生成单元912,具体用于对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信肩、O
[0252]其中,验证码信息发送单元913,具体用于将携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给客户端920。
[0253]其中,验证码信息接收单元912,具体用于接收携带自动执行的消耗系统资源程序和加密验证信息的验证码信息。
[0254]其中,校验请求发送单元914,具体用于获得用户验证信息,向验证码服务器发送携带用户验证信息和加密验证信息的校验请求。
[0255]其中,校验请求接收单元915,具体用于接收携带用户验证信息和加密验证信息的校验请求;。
[0256]其中,用户验证信息校验单元916,具体用于对校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0257]其中,对验证码信息的原始验证信息进行加密得到加密验证信息,具体为:使用消息摘要算法或安全散列算法对验证码信息的原始验证信息进行加密得到加密验证信息。
[0258]其中,消耗系统资源程序为申请和释放内存的程序、申请CPU运算的程序或网络上传内容和/或网络下载内容的程序。
[0259]其中,客户端920的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息。
[0260]其中,验证码信息为问答类验证码信息或图片类验证码信息。
[0261]综上,客户端920发送验证码拉取请求,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息,客户端920接收到该验证码信息后,自动执行消耗系统资源程序,以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0262]请参考图16,其是本发明实施例提供的降低验证码验证效率的验证码系统第三个实施例的结构方框图。该降低验证码验证效率的验证码系统,包括如下内容:
[0263]包括客户端920和验证码服务器910 ;客户端920包括拉取请求发送单元921、验证码信息接收单元912、系统资源程序执行单元913 ;验证码服务器910包括拉取请求接收单元911、验证码信息生成单元912、验证码信息发送单元913。
[0264]拉取请求发送单元921,用于向验证码服务器发送验证码拉取请求。
[0265]拉取请求接收单元911,用于接收验证码拉取请求。
[0266]验证码信息生成单元912,用于生成携带自动执行的消耗系统资源程序的验证码信息。
[0267]验证码信息发送单元913,用于将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920。
[0268]验证码信息接收单元912,用于接收携带自动执行的消耗系统资源程序的验证码信息。
[0269]系统资源程序执行单元913,用于自动执行消耗系统资源程序。
[0270]其中,验证码服务器还包括异常请求确定单元914:
[0271]异常请求确定单元914,用于确定验证码拉取请求为异常请求。
[0272]其中,异常请求确定单元914,具体用于统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果该次数大于等于异常阈值,则判断出验证码拉取请求为异常请求。
[0273]其中,验证码服务器还包括第一列表建立单元918:
[0274]第一列表建立单元918,用于建立客户端920的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表。
[0275]其中,统计客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括:
[0276]根据接收到的验证码拉取请求更新第一映射列表,从第一映射列表中找到客户端920的用户特征信息在预定时间周期内的验证码拉取请求的次数。
[0277]其中,还包括策略服务器940和验证码素材库服务器950:
[0278]其中,验证码信息生成单元912,具体用于从策略服务器940获取验证策略,从验证码素材库服务器950获取验证码元素,根据验证策略和验证码元素生成携带自动执行的消耗系统资源程序的验证码信息。
[0279]其中,还包括Web服务器930:
[0280]Web服务器930,用于接收到客户端920发送的验证码拉取请求,向验证码服务器转发验证码拉取请求。
[0281]其中,将携带自动执行的消耗系统资源程序的验证码信息发送给客户端920,具体为:将携带自动执行的消耗系统资源程序的验证码信息通过Web服务器930发送给客户端920。
[0282]其中,客户端920还包括校验请求发送单元914:
[0283]校验请求发送单元914,用于获得用户验证信息,向验证码服务器发送携带用户验证信息的校验请求。
[0284]其中,验证码服务器还包括校验请求接收单元915、用户验证信息校验单元916、校验结果发送单元917:
[0285]校验请求接收单元915,用于接收携带用户验证信息的校验请求;
[0286]用户验证信息校验单元916,用于对用户验证信息进行校验;
[0287]校验结果发送单元917,用于将校验结果发送给客户端920。
[0288]其中,验证码服务器还包括第二列表建立单元919:
[0289]第二列表建立单元919用于建立客户端920的用户特征信息与验证码信息的原始验证信息对应关系的第二映射列表;
[0290]其中,用户验证信息校验单元916,具体用于从第二映射列表中找到客户端920的用户特征信息对应的验证码信息的原始验证信息,通过比较原始验证信息与用户验证信息,对用户验证信息进行校验。
[0291]其中,消耗系统资源程序为申请和释放内存的程序、申请CPU运算的程序或网络上传内容和/或网络下载内容的程序。
[0292]其中,客户端920的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息。
[0293]其中,验证码信息为问答类验证码信息或图片类验证码信息。
[0294]综上,客户端920发送验证码拉取请求,验证码服务器910生成携带自动执行的消耗系统资源程序的验证码信息,客户端920接收到该验证码信息后,自动执行消耗系统资源程序,以消耗客户端920的系统资源,客户端920运行效率下降,可以降低验证码验证效率,增加人工恶意验证的成本,对遏制人工恶意验证能够起到一定作用。
[0295]本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括存储器、磁盘或光盘等。
[0296]以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在【具体实施方式】及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。
【权利要求】
1.一种降低验证码验证效率的方法,其特征在于,包括: 客户端向验证码服务器发送验证码拉取请求; 所述验证码服务器接收到所述验证码拉取请求,生成携带自动执行的消耗系统资源程序的验证码信息,将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端; 所述客户端接收到所述携带自动执行的消耗系统资源程序的验证码信息,自动执行所述消耗系统资源程序。
2.根据权利要求1所述的方法,其特征在于,所述验证码服务器接收到所述验证码拉取请求之后,生成携带自动执行的消耗系统资源程序的验证码信息之前,还包括: 确定所述验证码拉取请求为异常请求。
3.根据权利要求2所述的方法,其特征在于,所述确定所述验证码拉取请求为异常请求,包括: 统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果所述次数大于等于异常阈值,则所述验证码拉取请求为异常请求; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数之前,还包括: 所述验证码服务器建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括: 根据接收到的验证码拉取请求更新所述第一映射列表,从所述第一映射列表中找所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数。
4.根据权利要求1所述的方法,其特征在于: 所述消耗系统资源程序为申请和释放内存的程序,或 所述消耗系统资源程序为申请CPU运算的程序,或 所述消耗系统资源程序为网络上传内容和/或网络下载内容的程序。
5.根据权利要求1所述的方法,其特征在于,所述验证码服务器接收到所述验证码拉取请求之前,还包括: Web服务器接收到所述客户端发送的验证码拉取请求,向验证码服务器转发所述验证码拉取请求; 所述将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端,具体为:将所述携带自动执行的消耗系统资源程序的验证码信息通过所述Web服务器发送给所述客户端; 所述生成携带自动执行的消耗系统资源程序的验证码信息,包括: 从策略服务器获取验证策略,从验证码素材库服务器获取验证码元素,根据验证策略和验证码元素生成携带自动执行的消耗系统资源程序的验证码信息。
6.根据权利要求1所述的方法,其特征在于,所述客户端接收到所述携带自动执行的消耗系统资源程序的验证码信息之后,还包括: 获得用户验证信息,向所述验证码服务器发送携带用户验证信息的校验请求; 所述向所述验证码服务器发送携带用户验证信息的校验请求之后,还包括: 所述验证码服务器接收到所述携带用户验证信息的校验请求,对所述用户验证信息进行校验,将校验结果发送给所述客户端。
7.根据权利要求6所述的方法,其特征在于,所述生成携带自动执行的消耗系统资源程序的验证码信息,将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端,包括: 对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息,将所述携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给所述客户端; 所述客户端接收到所述携带自动执行的消耗系统资源程序的验证码信息,具体为:所述客户端接收到携带自动执行的消耗系统资源程序和加密验证信息的验证码信息; 所述向所述验证码服务器发送携带用户验证信息的校验请求,具体为:向所述验证码服务器发送携带用户验证信息和所述加密验证信息的校验请求; 所述验证码服务器接收到所述携带用户验证信息的校验请求,对所述用户验证信息进行校验,包括: 所述验证码服务器接收到所述携带用户验证信息和所述加密验证信息的校验请求,对所述校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较所述原始验证信息与所述用户验证信息,对所述用户验证信息进行校验; 所述对验证码信息的原始验证信息进行加密得到加密验证信息,具体为:使用消息摘要算法或安全散列算法对验证码信息的原始验证信息进行加密得到加密验证信息。
8.根据权利要求6所述的方法,其特征在于,所述生成携带自动执行的消耗系统资源程序的验证码信息之后,还包括: 建立所述客户端的用户特征信息与所述验证码信息的原始验证信息对应关系的第二映射列表; 所述对所述用户验证信息进行校验,包括: 从所述第二映射列表中找到所述客户端的用户特征信息对应的所述验证码信息的原始验证信息,通过比较所述原始验证信息与所述用户验证信息,对所述用户验证信息进行校验。
9.根据权利要求3或8所述的方法,其特征在于,所述客户端的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息; 所述验证码信息为问答类验证码信息或图片类验证码信息。
10.一种生成验证码的方法,其特征在于,包括: 接收到客户端发送的验证码拉取请求; 生成携带自动执行的消耗系统资源程序的验证码信息; 将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端。
11.根据权利要求10所述的方法,其特征在于,所述接收到客户端发送的验证码拉取请求之后,生成携带自动执行的消耗系统资源程序的验证码信息之前,还包括: 确定所述验证码拉取请求为异常请求。
12.根据权利要求11所述的方法,其特征在于,所述确定所述验证码拉取请求为异常请求,包括: 统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果所述次数大于等于异常阈值,则所述验证码拉取请求为异常请求; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数之前,还包括: 建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括: 根据接收到的验证码拉取请求更新所述第一映射列表,从所述第一映射列表中找所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数。
13.根据权利要求10所述的方法,其特征在于: 所述消耗系统资源程序为申请和释放内存的程序,或 所述消耗系统资源程序为申请CPU运算的程序,或 所述消耗系统资源程序为网络上传内容和/或网络下载内容的程序。
14.根据权利要求10所述的方法,其特征在于,所述将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端之后,还包括: 接收到所述客户端发送的携带用户验证信息的校验请求,对所述用户验证信息进行校验,将校验结果发送给所述客户端。
15.根据权利要求14所述的方法,其特征在于,所述生成携带自动执行的消耗系统资源程序的验证码信息,将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端,包括: 对验证码信息的原始验证信息进行加密得到加密验证信息,生成携带自动执行的消耗系统资源程序和加密验证信息的验证码信息,将所述携带自动执行的消耗系统资源程序和加密验证信息的验证码信息发送给所述客户端; 所述接收到所述客户端发送的携带用户验证信息的校验请求,对所述用户验证信息进行校验,包括: 所述接收到所述客户端发送的携带用户验证信息和所述加密验证信息的校验请求,对所述校验请求携带的加密验证信息进行解密得到原始验证信息,通过比较所述原始验证信息与所述用户验证信息,对所述用户验证信息进行校验; 所述对验证码信息的原始验证信息进行加密得到加密验证信息,具体为:使用消息摘要算法或安全散列算法对验证码信息的原始验证信息进行加密得到加密验证信息。
16.根据权利要求14所述的方法,其特征在于,所述生成携带自动执行的消耗系统资源程序的验证码信息之后,还包括: 建立所述客户端的用户特征信息与所述验证码信息的原始验证信息对应关系的第二映射列表; 所述对所述用户验证信息进行校验,包括: 从所述第二映射列表中找到所述客户端的用户特征信息对应的所述验证码信息的原始验证信息,通过比较所述原始验证信息与所述用户验证信息,对所述用户验证信息进行校验。
17.根据权利要求12或16所述的方法,其特征在于,所述客户端的用户特征信息为用户注册账号、客户端IP地址、客户端网卡MAC地址或保存在浏览器cookies的个人信息; 所述验证码信息为问答类验证码信息或图片类验证码信息。
18.一种降低验证码验证效率的方法,其特征在于,包括: 向验证码服务器发送验证码拉取请求; 接收到所述验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息; 自动执行所述消耗系统资源程序; 所述接收到所述验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息之后,还包括: 获得用户验证信息,向所述验证码服务器发送携带用户验证信息的校验请求。
19.一种降低验证码验证效率的验证码系统,其特征在于,包括客户端和验证码服务器;客户端包括拉取请求发送单元、验证码信息接收单元、系统资源程序执行单元;验证码服务器包括拉取请求接收单元、验证码信息生成单元、验证码信息发送单元; 拉取请求发送单元,用于向验证码服务器发送验证码拉取请求; 拉取请求接收单元,用于接收所述验证码拉取请求; 验证码信息生成单元,用于生成携带自动执行的消耗系统资源程序的验证码信息;验证码信息发送单元,用于将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端; 验证码信息接收单元,用于接收所述携带自动执行的消耗系统资源程序的验证码信息; 系统资源程序执行单元,用于自动执行所述消耗系统资源程序。
20.根据权利要求19所述的验证码系统,其特征在于,所述验证码服务器还包括异常请求确定单元: 异常请求确定单元,用于确定所述验证码拉取请求为异常请求。
21.根据权利要求20所述的验证码系统,其特征在于: 所述异常请求确定单元,具体用于统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果所述次数大于等于异常阈值,则所述验证码拉取请求为异常请求; 所述验证码服务器还包括第一列表建立单元: 第一列表建立单元,用于建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括: 根据接收到的验证码拉取请求更新所述第一映射列表,从所述第一映射列表中找所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数。
22.根据权利要求19所述的验证码系统,其特征在于,还包括Web服务器: Web服务器,用于接收到所述客户端发送的验证码拉取请求,向验证码服务器转发所述验证码拉取请求; 所述将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端,具体为:将所述携带自动执行的消耗系统资源程序的验证码信息通过所述Web服务器发送给所述客户端; 所述验证码系统还包括策略服务器和验证码素材库服务器: 所述验证码信息生成单元,具体用于从策略服务器获取验证策略,从验证码素材库服务器获取验证码元素,根据验证策略和验证码元素生成携带自动执行的消耗系统资源程序的验证码信息。
23.一种验证码服务器,其特征在于,包括: 拉取请求接收单元,用于接收到客户端发送的验证码拉取请求; 验证码信息生成单元,用生成携带自动执行的消耗系统资源程序的验证码信息;验证码信息发送单元,用于将所述携带自动执行的消耗系统资源程序的验证码信息发送给所述客户端。
24.根据权利要求23所述的验证码服务器,其特征在于,还包括: 异常请求确定单元,用于确定所述验证码拉取请求为异常请求。
25.根据权利要求23所述的验证码服务器,其特征在于: 所述异常请求确定单元,具体用于统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,如果所述次数大于等于异常阈值,则所述验证码拉取请求为异常请求; 所述验证码服务器还包括第一列表建立单元: 第一列表建立单元,用于建立客户端的用户特征信息与验证码拉取请求的次数对应关系的第一映射列表; 所述统计所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数,包括: 根据接收到的验证码拉取请求更新所述第一映射列表,从所述第一映射列表中找所述客户端的用户特征信息在预定时间周期内的验证码拉取请求的次数。
26.—种客户端,其特征在于,包括: 拉取请求发送单元,用于向验证码服务器发送验证码拉取请求; 验证码信息接收单元,用于接收所述验证码服务器发送的携带自动执行的消耗系统资源程序的验证码信息; 系统资源程序执行单元,用于自动执行所述消耗系统资源程序; 校验请求发送单元,用于获得用户验证信息,向所述验证码服务器发送携带用户验证 息的校验请求。
【文档编号】G06F21/31GK104253687SQ201310260843
【公开日】2014年12月31日 申请日期:2013年6月26日 优先权日:2013年6月26日
【发明者】涂杰, 付晓强, 刘畅, 刘海生, 王进, 田伟, 董梁 申请人:深圳市腾讯计算机系统有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1