CN108881126A - 验证验证码的方法、装置和系统 - Google Patents

验证验证码的方法、装置和系统 Download PDF

Info

Publication number
CN108881126A
CN108881126A CN201710340289.5A CN201710340289A CN108881126A CN 108881126 A CN108881126 A CN 108881126A CN 201710340289 A CN201710340289 A CN 201710340289A CN 108881126 A CN108881126 A CN 108881126A
Authority
CN
China
Prior art keywords
identifying code
floating layer
component
code
action event
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.)
Granted
Application number
CN201710340289.5A
Other languages
English (en)
Other versions
CN108881126B (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.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding 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 Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201710340289.5A priority Critical patent/CN108881126B/zh
Publication of CN108881126A publication Critical patent/CN108881126A/zh
Application granted granted Critical
Publication of CN108881126B publication Critical patent/CN108881126B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic 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/3247Cryptographic 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 involving digital signatures

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种验证验证码的方法、装置和系统。其中,该方法包括:发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控验证码的组件上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。本发明解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。

Description

验证验证码的方法、装置和系统
技术领域
本发明涉及数据处理领域,具体而言,涉及一种验证验证码的方法、装置和系统。
背景技术
人机识别用于区别操作对象是机器还是真人,目前通用的人机识别方案是由验证服务器来自动生成一个问题,由用户解答。这个问题可以由计算机生成并评判其答案,但是只有人类才能解答。由于计算机无法解答CAPTCHA的问题,所以回答正确的用户就可以被认为是人类。常用的人机识别方案还包括让用户分辨一张被扭曲、变形后无法被OCR识别的图片。但是随着业界黑灰产业与风控从业者之间的对抗程度不断加强,此种验证方式的攻防效果已经越来越差。
行为验证码也是可以用于进行人机识别。这类验证码在网页上内嵌交互UI,引导用户完成某种行为操作,根据前端采集来的用户页面操作行为判别是否为真人操作。目前google的reCaptcha验证码、极验的拼图验证码等都属于行为验证的技术范畴。
例如,图1a是现有技术的一种行为验证方式的示例,前端页面通过加载滑动验证相关JS、CSS资源,在页面特定位置渲染出滑动验证模块,用户点击滑动条最左端的滑块,直接拖动到最右边。在滑动组件加载至拖动完成的整个过程中,页面上负责采集用户行为的采集模块会采集用户在页面上的键盘、鼠标操作、触屏操作以及设备信息。后端接收到前端采集的信息后,会调用风险识别策略与模型,综合判断用户是真人还是机器。如果判定为机器,则前端会提示验证失败,直接阻塞业务流程,具体可以如图1b所示;如果判定为真人,则会向前端返回验签字符串,前端将验签字符串随同业务请求一同提交给业务服务器,业务服务器向滑动验证服务器提交验签请求,核实字符串合法性,如果校验成功,则返回如图1c所示的界面;如果因为采集信息不足,导致无法判定为真人或机器,则会向前端返回二次验证,进入传统验证码识别流程。
然而目前行为验证码因为交互过于简单,且用户操作方式单一,导致验证码环节采集来的数据质量参差不齐,极大的影响了后端对用户行为的判决结果。在这种数据采集质量较差的情况下,各产品通常的做法是唤醒二次验证环节,极大的增加了用户交互成本,降低了用户的体验,且二次验证环节本身可能会引入更多的风险。
针对现有技术中的验证码交互方式较简单,导致验证结果不准确的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种验证验证码的方法、装置和系统,以至少解决现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
根据本发明实施例的一个方面,提供了一种验证验证码的方法,包括:发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控验证码的组件上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。
根据本发明实施例的另一方面,还提供了一种验证验证码的方法,包括:在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据;根据显示验证码的组件的屏幕上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。
根据本发明实施例的另一方面,还提供了一种验证验证码的系统,包括:显示器,用于在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据;处理器,用于监控验证码的组件的上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。
根据本发明实施例的另一方面,还提供了一种验证验证码的系统,包括:前端设备,用于发起校验码请求;后端服务器,与前端设备连接,用于获取校验码请求,根据校验码请求确定对应的初始化参数,并将初始化参数返回给前端设备,其中,初始化参数为随机生成的动态数据;其中,前端设备还用于根据初始化参数在交互界面上渲染验证码的组件,监控验证码的组件上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象。
根据本发明实施例的另一方面,还提供了一种验证验证码的装置,包括:获取模块,用于发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;渲染模块,用于根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控模块,用于监控验证码的组件上发生的操作事件,生成操作结果;验证模块,用于在操作结果满足预定条件的情况下,验证码通过验证。
根据本发明实施例的另一方面,还提供了一种验证验证码的装置,包括:显示模块,用于在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据;生成模块,用于根据显示验证码的组件的屏幕上发生的操作事件,生成操作结果;验证模块,用于在操作结果满足预定条件的情况下,验证码通过验证。
根据本发明实施例的另一方面,还提供了一种存储介质,存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行上述的验证验证码的方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,其中,程序运行时执行上述的验证验证码的方法。
此处需要说明的是,现有技术中的行为验证码因为交互过于简单,且用户操作方式单一,导致验证码环节采集来的数据质量参差不齐,极大的影响了后端对用户行为的判决结果。当本申请上述实施例提供的方案在一定程度上解决了上述问题。前端交互上通过引导用户对验证码的组件进行操作,生成操作事件,同时监控用户的操作事件,获取更多的用户操作数据;同时由于交互上给了用户更多的自主性,采集的操作数据具有多样性,更有利于对验证码判决的精度;除此之外,随着攻防强度的提升,不再依赖二次验证的过程,在一定程度上提升了用户体验。
采用本发明实施例,通过显示器在交互界面上显示验证码的组件,通过处理器监控所述验证码的组件的上发生的操作事件,生成操作结果,在所述操作结果满足预定条件的情况下,所述验证码通过验证。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性,进而解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1a是根据现有技术的一种滑动验证的示意图;
图1b是根据现有技术的一种滑动验证失败的示意图;
图1c是根据现有技术的一种滑动验证成功的示意图;
图2是根据本申请实施例1的一种验证验证码的系统的示意图;
图3是根据本申请实施例1的一种验证验证码的交互界面的示意图;
图4是根据本申请实施例1的另一种验证验证码的系统的示意图;
图5是根据本申请实施例2的一种用于实现验证验证码的方法的计算机终端(或移动设备)的硬件结构框图;
图6是根据本申请实施例2的一种验证验证码的方法的流程图;
图7是根据本申请实施例2的一种验证验证码的方法的流程图;
图8是根据本申请实施例3的一种二次验证的示意图;
图9是根据本申请实施例3的一种验证验证码的方法的流程图;
图10是根据本申请实施例4的一种验证验证码的装置的示意图;
图11是根据本申请实施例5的一种验证验证码的方法的流程图;以及
图12是根据本申请实施例6的一种计算机终端的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
首先,在对本申请实施例进行描述的过程中出现的部分名词或术语适用于如下解释:
CAPTCHA:Completely Automated Public Turing Test to Tell Computers andHumans Apart,全自动区分计算机和人类的图灵测试。CAPTCHA是区分计算机和人类的一种程序算法,这种程序可以生成人类能很容易通过但计算机却无法通过的测试。
JS:JavaScript是一种直译式脚本语言,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML 网页增加动态功能。
CSS:Cascading Style Sheets,层叠样式表,是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
实施例1
本发明实施例提供了一种验证验证码的系统。图2是根据本申请实施例1的一种验证验证码的系统的示意图,如图2所示,该系统包括:显示器20和处理器22。
显示器20,用于在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据。
具体的,上述交互界面可以是显示于用户终端,由用户的行为触发而生成的验证界面。例如,用户通过移动终端登录网站,在用户输入用户名和密码之后,网站服务器对该用户名进行风险评估,检测到该用户名具有攻击网站服务器的记录,具有较大的风险,因此在用户触发“登录”控件之前,将“登录”控件隐藏,并触发验证验证码的交互界面。上述初始化参数可以是根据交互界面的参数或发出验证请求的前端设备的参数而随机生成动态数据,可以包括:浮层下方的对象的坐标序列、尺寸、透明度、滑动时的轨迹宽度等,但都不限于此,也即,每次进行验证码的验证时,验证码的组件的初始化的参数都可以不相同,从而使得每次通过初始化参数渲染得到的验证码的组件也不相同。
图3是根据本申请实施例1的一种验证验证码的交互界面的示意图,在一种可选的实施例中,该验证码组件可以为图3中所示的刮刮卡,刮刮卡的阴影部分为浮层,非阴影部分为已刮开的区域,浮层下方有待刮出对象。
处理器22,用于监控验证码的组件的上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。
具体的,上述验证码的组件上发生的操作事件可以是用户通过滑动屏幕、移动鼠标等方式对验证码的组件进行操作的操作事件,所生成的操作结果可以是覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数总轨迹点数的比例)、轨迹锐角拐点数量和轨迹落在刮刮卡区域内数量,用于表征用户此次操作事件的行为数据。上述预定条件可以是预设的阈值或范围,可以通过对真人的操作事件进行训练和学习得到。
以覆盖在待刮出对象区域内的轨迹点数和占比为例,刮动轨迹是通过多个坐标点来记录的,也即轨迹点,由于真人在刮开刮刮卡时,倾向于刮出待刮出对象,因此覆盖在待刮出对象区域内的轨迹点数和占比较大,而机器在刮动刮刮卡时,会按照预设的规则,从一个位置开始刮起,直至全部刮完刮刮卡的全部浮层,因此覆盖在待刮出对象区域内的轨迹点数和占比较小。再以轨迹锐角拐点数量为例,真人刮动刮刮卡时倾向于划圈滑动,不产生拐点,或不定向的滑动,产生较少的拐点,而机器通常采用来往返的方式,会生成较多的锐角拐点。再以轨迹落在刮刮卡区域内数量为例进行说明,真人在刮动刮刮卡时会找准刮刮卡所在的区域,集中滑动触摸屏或移动鼠标,其轨迹点落在刮刮卡区域内的数量较多,而机器会在整个显示区域中滑动以寻找刮刮卡区域,从而导致真正落在刮刮卡区域内的轨迹点数较少。
在一种可选的实施例中,仍以图3所示的刮刮卡为例,用户通过滑动触摸屏,挂卡浮层,露出浮层下方的待刮出对象。在这一过程中,处理器监控用户滑动屏幕的行为数据,得到对应的操作结果,在当前操作结果能够表征的行为数据量足够时,对行为数据进行特征提取,提取出覆盖在待刮出对象区域内的轨迹点数和占比,轨迹锐角拐点数量以及轨迹落在刮刮卡区域内的数量,通过将这些参数与模型中的数据范围比对进行打分,如果参数属于对应的数据范围,则该项参数等分为1分,如果参数不属于对应的数据范围,则根据与数据范围的边界值之差进行打分,差值越大打分越低。最终赋予每个参数对应的权重值,将每个参数的得分进行加权,将加权结果作为此次滑动刮刮卡的得分,如果得分达大于预设的分数阈值,则说明此次操作结果满足预定条件,此次验证码通过验证。
此处需要说明的是,现有技术中的行为验证码因为交互过于简单,且用户操作方式单一,导致验证码环节采集来的数据质量参差不齐,极大的影响了后端对用户行为的判决结果。当本申请上述实施例提供的方案在一定程度上解决了上述问题。前端交互上通过引导用户对验证码的组件进行操作,生成操作事件,同时监控用户的操作事件,获取更多的用户操作数据;同时由于交互上给了用户更多的自主性,采集的操作数据具有多样性,更有利于对验证码判决的精度;除此之外,随着攻防强度的提升,不再依赖二次验证的过程,在一定程度上提升了用户体验。
由上可知,本申请上述实施例通过显示器在交互界面上显示验证码的组件,通过处理器监控验证码的组件的上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性,进而解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
图4是根据本发明实施例的另一种验证验证码的系统的示意图。如图4所示,该系统包括:前端设备40和后端服务器42。
前端设备40,用于发起校验码请求。
具体的,上述前端设备可以为用户终端设备,由用户的行为触发而向后端服务器发起校验码请求。
后端服务器42,与前端设备连接,用于获取校验码请求,根据校验码请求确定对应的初始化参数,并将初始化参数返回给前端设备,其中,初始化参数为随机生成的动态数据。其中,前端设备还用于根据初始化参数在交互界面上渲染验证码的组件,监控验证码的组件上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象。
具体的,上述初始化参数可以根据发出验证请求的前端设备的参数而随机生成,可以包括:浮层下方的对象的坐标序列、尺寸、透明度、滑动时的轨迹宽度等,但都不限于此,也即,每次进行验证码的验证时,验证码的组件的初始化的参数都可以不相同。上述验证码的组件上发生的操作事件可以是用户通过滑动屏幕、移动鼠标等方式对验证码的组件进行操作的操作事件,所生成的操作结果可以是覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数总轨迹点数的比例)、轨迹锐角拐点数量和轨迹落在刮刮卡区域内数量,用于表征用户此次操作事件的行为数据。上述预定条件可以是预设的阈值或范围,可以通过对真人的操作事件进行训练和学习得到。
此处需要说明的是,现有技术中的行为验证码因为交互过于简单,且用户操作方式单一,导致验证码环节采集来的数据质量参差不齐,极大的影响了后端对用户行为的判决结果。当本申请上述实施例提供的方案在一定程度上解决了上述问题。前端交互上通过引导用户对验证码的组件进行操作,生成操作事件,同时监控用户的操作事件,获取更多的用户操作数据;同时由于交互上给了用户更多的自主性,采集的操作数据具有多样性,更有利于对验证码判决的精度;除此之外,随着攻防强度的提升,不再依赖二次验证的过程,在一定程度上提升了用户体验。
由上可知,本申请上述实施例通过前端设备40发起校验码请求,通过与前端设备连接的后端服务器获取校验码请求,根据校验码请求确定对应的初始化参数,并将初始化参数返回给前端设备,其中,初始化参数为随机生成的动态数据。其中,前端设备还用于根据初始化参数在交互界面上渲染验证码的组件,监控验证码的组件上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性,进而解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
可选的,上述前端设备还用于加载验证码组件资源。上述验证码组件资源可以是刮刮卡验证服务器提供的资源,接入刮刮卡交互验证码服务器的网站在加载时,会首先加载验证码相关的组件资源,例如:JS资源、CSS资源、flash资源和图片资源等,但不限于此。并且在此过程中,网站可以通过前端设备配置定制化刮刮卡验证码中的资源内容,例如:背景图片内容、尺寸、位置;待刮开浮层样式;浮层下待刮出对象的数量、图片等。
可选的,上述前端设备采集模块采集设备信息,并开始监听用户行为。具体的,前端设备采集模块采集的设备信息可以为设备的硬件信息,例如:网站浏览器的类型,浏览器是否有调试器等。同时开始监听用户行为,以获取用户的行为数据,在一种可选的实施例中,可以通过监控鼠标操作信息、触屏操作信息等信息来监听用户行为。
可选的,上述前端设备还用于向验证码服务器请求初始化参数。
在上述步骤中,当网页页面通过预设逻辑确定唤醒刮刮卡交互验证码时,前端设备根据配置的资源内容向验证码服务器请求刮刮卡验证码的初始化参数。例如:前端设备在请求刮刮卡验证初始化参数时,向验证码服务器发送用于显示刮刮卡交互验证码交互界面的背景尺寸、位置、待刮出对象的样式、待刮出对象的数量等参数。验证码服务器根据请求中携带的资源内容返回对应的初始化参数,以使初始化参数与前端设备的资源内容相对应,确保不会出现图片重叠、越界等情况。例如:初始化参数可以包括:浮层下待刮出对象的坐标序列、尺寸、透明度、刮动时的轨迹粗细等,但都不限于此。
可选的,上述后端服务器可以为验证码服务器,由于验证码服务器通过预设的算法,根据网页前端设备传递的资源内容,自动返回了对应的初始化参数,因此在前端设备获取初始化参数后在页面渲染刮刮卡交互验证码界面时,能够确保前端设备图片不会重叠,不会越界,且距离合适。
前端设备根据后端服务器返回的初始化参数进行渲染得到验证码的组件,在一种可选的实施例中,验证码的组件为图3所示的刮刮卡,刮刮卡本身覆盖有一层浮层,用户通过手指接触屏幕或移动鼠标,浮层随着手指或鼠标划过的轨迹消失,显露出浮层下方的图像。
可选的,前端设备当刮开区域满足预设条件时判断采集数据量是否足够。不同于传统单一维度的验证码,用户在刮刮卡交互验证码界面内可以使用任意轨迹刮开指定灰色浮层区域,刮出下面背景图以及隐藏的待刮出对象图片。在此过程中会全量采集用户行为,以确定是否将采集到的数据发送至验证码校验服务器。在采集的数据量足够的情况下,发送采集数据至验证码服务器接口,在采集的数据量不足的情况下,提示用户滑动操作速度过快,并请用户重试。
在一种可选的实施例中,预设条件为刮出区域中待刮出对象的面积占待刮出对象的面积的比例大于X%,在刮开区域的面积满足预设条件之后,判断采集数据量是否足够,如果采集数据不足够,则确定用户刮开时的滑动操作的速度过快,可能会发生即使用户刮开刮刮卡的全部浮层,也采集不到足够的数据的情况,导致无法对此次刮开刮刮卡的操作进行验证,因此可以提示用户重试,并告知用户此次滑动速度过快。
可选的,后端服务器对采集信息综合判断,可以是验证码验证码校验服务器通过规则引擎上的策略和预设的模型对用户的刮动行为进行判决,判决维度除了通常行为验证码中使用的速度、加速度、角度等单一的行为信息之外,还会判决滑动轨迹与刮刮卡配置的匹配程度,例如:覆盖在待刮出对象区域内的轨迹点数和占比、轨迹锐角拐点数量、轨迹落在刮刮卡区域内数量等特征。
例如,以覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数与总轨迹点数的比例)为例,刮动轨迹是通过多个坐标点来记录的,也即轨迹点,由于真人在刮开刮刮卡时,倾向于刮出待刮出对象,因此覆盖在待刮出对象区域内的轨迹点数和占比较大,而机器在挂东刮刮卡时,会按照预设的规则,从一个位置开始刮起,直至全部刮完刮刮卡的全部浮层,因此覆盖在待刮出对象区域内的轨迹点数和占比较大小。再以轨迹锐角拐点数量为例,真人刮动刮刮卡时倾向于划圈滑动,不产生拐点,或不定向的滑动,产生较少的拐点,而机器通常采用来往返的方式,会生成较多的拐点。再以轨迹落在刮刮卡区域内数量为例进行说明,真人在刮动刮刮卡时会找准刮刮卡所在的区域,集中滑动,其轨迹落在刮刮卡区域内数量较多,而机器会在整个显示区域中滑动以寻找刮刮卡区域,从而导致真正落在刮刮卡区域内的轨迹点数较少。
由此可知,在机器刮开刮刮卡和真人刮开刮刮开时,上述参数具有明显的区别,因此可以使用上述参数来判决当前刮开刮刮卡的操作是否为真人操作。
在一种可选的实施例中,可以获取大量真人滑动刮刮卡的行为数据,对这些数据进行建模,得到真人滑动刮刮卡行为数据的模型。该数据模型可以表征真人滑动刮刮卡时生成的行为数据的多种特征数据的数据范围。
在当前滑动刮刮的行为数据量足够时,对行为数据进行特征提取,提取出覆盖在待刮出对象区域内的轨迹点数和占比,轨迹锐角拐点数量以及轨迹落在刮刮卡区域内的数量,通过将这些参数与模型中的数据范围比对进行打分,如果参数属于对应的数据范围,则该项参数等分为1分,如果参数不属于对应的数据范围,则根据与数据范围的边界值之差进行打分,差值越大打分越低。最终赋予每个参数对应的权重值,将每个参数的得分进行加权,将加权结果作为此次滑动刮刮卡的得分,并根据得分对此次行为进行最终的判决。
在进行判决之后,如果后端服务器的判断结果为无风险,则此次刮刮卡通过了验证,向前端设备颁发通行签名串,用户提交业务请求,并随请求携带上通行签名串,网站服务器对通行签名串进行验证,如果通行签名串验证成功,则后续业务逻辑,如果通行签名串未验证成功,则提示用户签名串无效,请用户重试。如果后端服务器的判断结果为有风险,则向前端设备返回拦截信息,并提示用户重新进行刮刮卡交互。
实施例2
根据本发明实施例,还提供了一种验证验证码的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。图5示出了一种用于实现验证验证码的方法的计算机终端(或移动设备)的硬件结构框图。如图5所示,计算机终端50(或移动设备50)可以包括一个或多个(图中采用502a、502b,……,502n来示出)处理器502(处理器502可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器504、以及用于通信功能的传输模块506。除此以外,还可以包括:显示器、输入 /输出接口(I/O接口)、通用串行总线(USB)端口(可以作为I/O接口的端口中的一个端口被包括)、网络接口、电源和/或相机。本领域普通技术人员可以理解,图5所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,计算机终端50 还可包括比图5中所示更多或者更少的组件,或者具有与图5所示不同的配置。
应当注意到的是上述一个或多个处理器502和/或其他数据处理电路在本文中通常可以被称为“数据处理电路”。该数据处理电路可以全部或部分的体现为软件、硬件、固件或其他任意组合。此外,数据处理电路可为单个独立的处理模块,或全部或部分的结合到计算机终端50(或移动设备)中的其他元件中的任意一个内。如本申请实施例中所涉及到的,该数据处理电路作为一种处理器控制(例如与接口连接的可变电阻终端路径的选择)。
存储器504可用于存储应用软件的软件程序以及模块,如本发明实施例中的验证验证码的方法对应的程序指令/数据存储装置,处理器502通过运行存储在存储器504 内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的验证验证码的方法。存储器504可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器504可进一步包括相对于处理器502远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端50。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置506用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端50的通信供应商提供的无线网络。在一个实例中,传输装置506包括一个网络适配器(Network Interface Controller,NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置506可以为射频(Radio Frequency, RF)模块,其用于通过无线方式与互联网进行通讯。
显示器可以例如触摸屏式的液晶显示器(LCD),该液晶显示器可使得用户能够与计算机终端50(或移动设备)的用户界面进行交互。
此处需要说明的是,在一些可选实施例中,上述图5所示的计算机设备(或移动设备)可以包括硬件元件(包括电路)、软件元件(包括存储在计算机可读介质上的计算机代码)、或硬件元件和软件元件两者的结合。应当指出的是,图5仅为特定具体实例的一个实例,并且旨在示出可存在于上述计算机设备(或移动设备)中的部件的类型。
在上述运行环境下,本申请提供了如图6所示的验证验证码的方法。图6是根据本申请实施例2的一种验证验证码的方法的流程图。该方法包括如下步骤:
步骤S61,发起校验码请求,并获取所述校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据。
具体的,上述验证码请求可以由操作终端的用户的行为触发而生成。例如,用户通过移动终端登录网站,在用户输入用户名和密码之后,网站服务器对该用户名进行风险评估,检测到该用户名具有攻击网站服务器的记录,具有较大风险,因此在用户触发“登录”控件之前,将“登录”控件隐藏,并向验证码服务器发起校验码请求。上述初始化参数可以包括:浮层下方的对象的坐标序列、尺寸、透明度、滑动时的轨迹宽度等,但都不限于此。
在一种可选的实施例中,前端设备向验证码服务器发起验证请求,用于请求初始化参数,在发出请求的同时,向验证码服务器发送预先配置好的资源内容,包括:用于显示验证码的组件的交互界面的背景尺寸、位置、浮层下方对象的样式、浮层下方对象的数量等参数。验证码服务器根据请求中携带的资源内容返回对应的初始化参数,以使初始化参数与前端的资源内容相对应,确保不会出现图片重叠、越界等情况。例如,初始化参数可以包括:浮层下方对象的坐标序列、尺寸、透明度、滑动时的轨迹宽度等,但都不限于此。
步骤S63,根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象。
在上述步骤中,前端设备根据初始化参数渲染得到验证码的组件。
在一种可选的实施例中,结合图3所示,在该示例中,验证码的组件一刮刮卡的形式显示,该刮刮卡包括浮层(如图中的阴影部分所示),以及浮层下方的对象(如同中的非阴影部分所示)。
步骤S65,监控验证码的组件上发生的操作事件,生成操作结果。
具体的,上述验证码的组件上发生的操作事件可以是用户通过滑动屏幕、移动鼠标等方式对验证码的组件进行操作的操作事件,所生成的操作结果可以是覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数总轨迹点数的比例)、轨迹锐角拐点数量和轨迹落在刮刮卡区域内数量,用于表征用户此次操作事件的行为数据。
步骤S67,在操作结果满足预定条件的情况下,验证码通过验证。
具体的,上述预定条件可以是预设的阈值或范围,可以通过对真人的操作事件进行训练和学习得到。
在一种可选的实施例中,仍以图3所示的刮刮卡为例,用户通过滑动触摸屏,挂卡浮层,露出浮层下方的待刮出对象。在这一过程中,处理器监控用户滑动屏幕的行为数据,得到对应的操作结果,在当前操作结果能够表征的行为数据量足够时,对行为数据进行特征提取,提取出覆盖在待刮出对象区域内的轨迹点数和占比,轨迹锐角拐点数量以及轨迹落在刮刮卡区域内的数量,通过将这些参数与预设模型中的数据范围比对进行打分,如果参数属于对应的数据范围,则该项参数等分为1分,如果参数不属于对应的数据范围,则根据与数据范围的边界值之差进行打分,差值越大打分越低。最终赋予每个参数对应的权重值,将每个参数的得分进行加权,将加权结果作为此次滑动刮刮卡的得分,如果得分达大于预设的分数阈值,则说明此次操作结果满足预定条件,此次验证码通过验证。
本申请上述实施例发起校验码请求,并获取校验码请求对应的初始化参数,根据初始化参数在交互界面上渲染验证码的组件,监控验证码的组件上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性。
由此,本申请上述方案解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
根据本申请上述实施例,步骤S67,在验证码通过验证之前,上述方法还包括:
步骤S671,发起操作结果至服务器。
具体的,上述服务器可以是验证码服务器。
步骤S673,在判断操作结果中记录的操作行为与预存的行为数据匹配,或匹配程度超过标准值的情况下,接收服务器返回的安全信息,其中,安全信息用于表征发起操作事件的操作对象为合法用户,否则,提示触发操作事件失败。
具体的,上述预存的行为数据可以通过对大量真人的操作事件进行训练和学习得到的大量行为数据。上述安全信息用于表征此处验证的验证结果为验证成功,也即,发起此次操作事件的操作对象为合法的用户。
在一种可选的实施例中,可以获取大量真人操作结果的行为数据,对这些数据进行统计,对剔除冗余数据以及噪声数据后的行为数据进行进一步统计,得到行为数据最集中的匹配值。将当前用户操作结果中的操作行为与匹配值进行匹配,如果匹配程度超过标准值,则确定此次验证成功,服务器会返回验证成功的安全信息。
在另一种可选的实施例中,可以获取大量真人操作结果的行为数据,对这些数据进行建模,得到真人的操作模型。该操作模型可以表征真人操作验证码组件时生成的行为数据的多种特征数据的数据范围。将当前用户操作结果中的操作行为与模型中的数据范围进行匹配,如果匹配成功,则确定此次验证成功,服务器会返回验证成功的安全信息。
根据本申请上述实施例,步骤S673,在安全信息包括通行签名串的情况下,在接收服务器返回的安全信息之后,上述方法还包括:
步骤S675,接收操作对象提交的业务请求,其中,业务请求携带了通行签名串。
具体的,上述同行签名串可以为sig通行签名串。
仍在上述用户登录网站的实施例中,用户在输入用户名和密码后,进入了上述验证环节,在验证成功后,服务器返回给前端设备一个sig通行签名串,用户通过触发网页上的“登录”控件发起登录请求,sig通行签名串随该请求一起发送至网站服务器。
步骤S677,验证通行签名串。
步骤S679,在验证通行签名串通过的情况下,执行业务请求所对应的任务。
步骤S681,在验证通行签名串失败的情况下,提示通行签名串无效。
在一种可选的的实施例中,仍以用户登录网站为例,网站服务器在不仅需要验证用户输入的用户名和密码是否匹配,还需要对sig通行签名串进行验证,如果sig通行签名串验证成功,则可以对用户输入的用户名和密码进行验证,随后执行用户登录的步骤,如果sig通行签名串验证失败,则提示用户sig通行签名串无效,请用户重试。用户需要重新返回对验证码进行验证的步骤,重新获取sig通行签名串。
根据本申请上述实施例,操作事件至少包括如下至少之一:点击操作、滑动操作,操作事件的操作属性包括如下至少之一:随机的操作时间和随机的操作轨迹。
在一种可选的实施例中,仍以图3所示的刮刮卡进行说明,用户通过触摸屏或鼠标在交互界面的刮刮卡显示区域点击或滑动时,对应坐标为之的浮层会消失,并显示浮层下方的对象,在监控验证码的组件上发生的操作事件时,同时监控每次点击或滑动的起始时间、每次点击的坐标位置以及每次滑动的轨迹。
根据本申请上述实施例,初始化参数确定了浮层的浮层显示参数和对象的对象显示参数,其中,浮层显示参数至少包括如下之一:浮层位置、浮层大小、浮层形状、浮层透明度、浮层颜色和浮层上发生的操作事件时显示的轨迹参数,对象显示参数至少包括如下之一:对象的数量、类型、位置、大小、形状和颜色。
具体的,上述浮层位置可以通过确定浮层边界点的坐标来确定,轨迹参数可以是当验证码的组员所属的区域发生滑动事件时滑动轨迹的宽度。对象可以是图像、文字、按钮等,对象的大小需要、形状需要确保不会重叠,不会越界,且距离合适。在前端设备获取了初始化参数之后,可以根据初始化参数进行渲染,得到验证码的组件。
根据本申请上述实施例,如果登陆到需要接入验证码的网站,触发发起校验码请求,其中,校验码请求携带有预定的配置项,通过配置项定制验证码的组件的资源内容。
具体的,上述资源内容可以包括:背景图片内容、尺寸、位置;待刮开浮层样式;浮层下待刮出对象的数量、图片等内容。
在一种可选的实施例中,用户待登录的网站预设有默认的验证码资源内容,例如,网站前端默认的验证码的显示区域为10cm×3cm的矩形,显示于显示界面中间,浮层下待刮出对象的数量为3个,待刮出对象的图片为网站的图标。用户还可以对网站的上述资源内容进行重新设置,例如:可以设置验证码的显示区域为半径为3cm的圆形,显示于显示界面的中间,浮层下待刮出对象的数量为2个,待刮出对象图片为预先上传至网站的用户照片。
根据本申请上述实施例,步骤S63,在根据初始化参数在交互界面上渲染验证码的组件之后,方法还包括:
步骤S631,释放与验证码的组件对应的采集模块。
具体的,上述采集模块可以是前端设备的采集模块。
步骤S633,使用采集模块采集设备信息,并启动监听验证码的组件上发生的操作事件。
具体的,上述设备信息可以为设备的硬件信息,例如:网站浏览器的类型,浏览器是否有调试器等。同时开始监听用户行为,以获取用户的行为信息,在一种可选的实施例中,可以通过监听鼠标操作信息、触屏操作信息等信息来监听用户行为。
根据本申请上述实施例,监控验证码的组件上发生的操作事件,生成操作结果,包括:
通过监控鼠标或触摸屏,获取验证码的组件上发生的操作事件,并获取操作事件在浮层上产生的操作结果,其中,操作结果包括的操作数据如下至少之一:在浮层上滑动时的滑动轨迹、滑动轨迹所刮开的浮层区域、显示在刮开的浮层区域上的对象内容、刮开的浮层区域占浮层图片的百分比和滑动的滑动时长。
具体的,上述操作结果中的操作数据用于判断此次操作是否为真人操作。在一种可选的实施例中,通过监听得到的验证码的组件上发生的操作事件,可以对操作事件进行特征提取,得到操作事件对应的操作结果。
根据本申请上述实施例,上述操作结果还包括:采集触发的操作事件的数量和操作时间,步骤S67,在操作结果满足预定条件的情况下,验证码通过验证,包括:
步骤S69,在触发的操作事件的数量超过阈值,且操作数据满足对应的条件参数,则确定验证码验证通过。
具体的,上述操作事件的数量超过阈值用于表征采集模块采集到足够的数据,能够对此次的操作事件进行判决。才采集模块采集到足够的数据的情况下,根据操作时间的操作结果中包括的操作数据对此次操作事件进行判决。
在一种可选的实施例中,当用户刮出的浮层下方对象的面积超过预设阈值,或用户刮开全部浮层,或用户敲击特定的浮层下的对象时,采集模块判断当前触发的操作事件的数量属否超过预设值,在当前触发的操作事件的数量超过预设值的情况下,通过操作数据对此次操作事件进行判决,在操作数据满足对应的条件参数的情况下,确定此次操作事件通过验证。
步骤S611,在触发的操作事件的数量超过阈值,和/或操作数据未满足对应的条件参数,发出提示信息,其中,提示信息包括:重新发起新的校验码请求。
在一种可选的实施例中,当用户刮出的浮层下方对象的面积超过预设阈值,或用户刮开全部浮层,或用户敲击特定的浮层下的对象时,采集模块判断当前触发的操作事件的数量属否超过预设值,在采集模块采集到的操作数据的数据量未超过阈值的情况下,则确定此次用户滑动操作过快,终止此次验证行为,并提示用户操作速度过快,请重新验证。
在另一种可选的实施例中,当用户刮出的浮层下方对象的面积超过预设阈值,或用户刮开全部浮层,或用户敲击特定的浮层下的对象时,采集模块判断当前触发的操作事件的数量属否超过预设值,在当前触发的操作事件的数量超过预设值的情况下,通过操作数据对此次操作事件进行判决,在操作数据不满足对应的条件参数的情况下,确定此次操作事件验证失败,提示用户重新验证。
作为一种可选的实施例,在采集模块的采集能力受限的情况下,无法通过判决确定当前操作是真人操作还是机器操作,还可以唤醒如图8所示的二次验证,通过让用户识别图中及其无法识别的字母和数字来区别当前操作是真人操作还是机器操作。
图7是根据本申请实施例2的一种验证验证码的示意图,下面结合图7所示,以验证码的组件为图3所示的刮刮卡为例,对上述验证验证码的系统的执行方法进行描述:
步骤S71,加载验证码组件资源。
上述验证码组件资源可以是刮刮卡验证服务器提供的资源,接入刮刮卡交互验证码服务器的网站在加载时,会首先加载验证码相关的组件资源,例如:JS资源、CSS 资源、flash资源和图片资源等,但不限于此。并且在此过程中,网站可以通过前端设备配置定制化刮刮卡验证码中的资源内容,例如:背景图片内容、尺寸、位置;待刮开浮层样式;浮层下待刮出对象的数量、图片等。
在一种可选的实施例中,用户待登录的网站预设有默认的验证码资源内容,例如,网站前端设备默认的验证码的显示区域为10cm×3cm的矩形,显示于显示界面中间,浮层下待刮出对象的数量为3个,待刮出对象的图片为网站的图标。用户还可以对网站的上述资源内容进行重新设置,例如:可以设置验证码的显示区域为半径为3cm的圆形,显示于显示界面的中间,浮层下待刮出对象的数量为2个,待刮出对象图片为预先上传至网站的用户照片。
步骤S72,前端设备采集模块采集设备信息,并开始监听用户行为。
具体的,在上述步骤中,前端设备采集模块采集的设备信息可以为设备的硬件信息,例如:网站浏览器的类型,浏览器是否有调试器等。同时开始监听用户行为,以获取用户的行为数据,在一种可选的实施例中,可以通过监控鼠标操作信息、触屏操作信息等信息来监听用户行为。
步骤S73,向验证码服务器请求初始化参数。
在上述步骤中,当网页页面通过预设逻辑确定唤醒刮刮卡交互验证码时,前端设备根据配置的资源内容向验证码服务器请求刮刮卡验证码的初始化参数。例如:前端设备在请求刮刮卡验证初始化参数时,向验证码服务器发送用于显示刮刮卡交互验证码交互界面的背景尺寸、位置、待刮出对象的样式、待刮出对象的数量等参数。验证码服务器根据请求中携带的资源内容返回对应的初始化参数,以使初始化参数与前端设备的资源内容相对应,确保不会出现图片重叠、越界等情况。例如:初始化参数可以包括:浮层下待刮出对象的坐标序列、尺寸、透明度、刮动时的轨迹粗细等,但都不限于此。
仍在上述实施例中,用户需要登录该网页,在用户输入用户名和密码后,网站服务器中的风控监测模块监测到该用户名的登录记录过于频繁,疑似机器登录,属于高风险用户,则在用户触发“登录”控件之前,唤醒刮刮卡交互验证流程。在刮刮卡交互验证流程被唤醒之后,前端设备向验证码服务器发送配置的资源内容(验证码的显示区域为半径为3cm的圆形,显示于显示界面的中间,浮层下待刮出对象的数量为2个,待刮出对象图片为已预先上传至网站的用户照片),以请求对应的刮刮卡验证初始化参数,验证码服务器在接收到该请求之后,按照该请求中携带的参数,配置好对应的初始化参数(待刮出对象的左边位置、尺寸、透明度,刮动时的轨迹粗细),并返回至前端设备。
步骤S74,验证码UI组件渲染加载。
由于验证码服务器通过预设的算法,根据网页前端设备传递的资源内容,自动返回了对应的初始化参数,因此在前端设备获取初始化参数后在页面渲染刮刮卡交互验证码界面时,能够确保前端设备图片不会重叠,不会越界,且距离合适。
步骤S75,用户使用鼠标或触屏刮开浮层,露出浮层覆盖的实体。
在一种可选的实施例中,结合图3所示,刮刮卡本身覆盖有一层浮层,用户通过手指接触屏幕或移动鼠标,浮层随着手指或鼠标划过的轨迹消失,显露出浮层下方的图像。
步骤S76,刮开区域满足预设条件时判断采集数据量是否足够。在采集数据足够的情况下进入步骤S77,在采集数据不足的情况下进入步骤S78。
不同于传统单一维度的验证码,用户在刮刮卡交互验证码界面内可以使用任意轨迹刮开指定灰色浮层区域,刮出下面背景图以及隐藏的待刮出对象图片。在此过程中采集模块会全量采集用户行为,上述步骤用于确定是否将采集到的数据发送至验证码校验服务器。
在一种可选的实施例中,预设条件为刮出区域中待刮出对象的面积占待刮出对象的面积的比例大于X%,在刮开区域的面积满足预设条件之后,判断采集数据量是否足够,如果采集数据不足够,则确定用户刮开时的滑动操作的速度过快,可能会发生即使用户刮开刮刮卡的全部浮层,也采集不到足够的数据的情况,导致无法对此次刮开刮刮卡的操作进行验证,因此可以提示用户重试,并告知用户此次滑动速度过快。
步骤S77,发送采集数据至验证码校验服务器接口。
在采集的数据量不足的情况下,提示用户滑动操作速度过快,并请用户重试。
步骤S78,图示用户滑动过快,请用户重试。
步骤S79,对采集信息综合判断。
在上述步骤中,验证码校验服务器通过规则引擎上的策略和预设的模型对用户的刮动行为进行判决,判决维度除了通常行为验证码中使用的速度、加速度、角度等单一的行为信息之外,还会判决滑动轨迹与刮刮卡配置的匹配程度,例如:覆盖在待刮出对象区域内的轨迹点数和占比、轨迹锐角拐点数量、轨迹落在刮刮卡区域内数量等特征。
例如,以覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数与总轨迹点数的比例)为例,刮动轨迹是通过多个坐标点来记录的,也即轨迹点,由于真人在刮开刮刮卡时,倾向于刮出待刮出对象,因此覆盖在待刮出对象区域内的轨迹点数和占比较大,而机器在挂东刮刮卡时,会按照预设的规则,从一个位置开始刮起,直至全部刮完刮刮卡的全部浮层,因此覆盖在待刮出对象区域内的轨迹点数和占比较大小。再以轨迹锐角拐点数量为例,真人刮动刮刮卡时倾向于划圈滑动,不产生拐点,或不定向的滑动,产生较少的拐点,而机器通常采用来往返的方式,会生成较多的拐点。再以轨迹落在刮刮卡区域内数量为例进行说明,真人在刮动刮刮卡时会找准刮刮卡所在的区域,集中滑动,其轨迹落在刮刮卡区域内数量较多,而机器会在整个显示区域中滑动以寻找刮刮卡区域,从而导致真正落在刮刮卡区域内的轨迹点数较少。
由此可知,在机器刮开刮刮卡和真人刮开刮刮开时,上述参数具有明显的区别,因此可以使用上述参数来判决当前刮开刮刮卡的操作是否为真人操作。
在一种可选的实施例中,可以获取大量真人滑动刮刮卡的行为数据,对这些数据进行建模,得到真人滑动刮刮卡行为数据的模型。该数据模型可以表征真人滑动刮刮卡时生成的行为数据的多种特征数据的数据范围。
在当前滑动刮刮的行为数据量足够时,对行为数据进行特征提取,提取出覆盖在待刮出对象区域内的轨迹点数和占比,轨迹锐角拐点数量以及轨迹落在刮刮卡区域内的数量,通过将这些参数与模型中的数据范围比对进行打分,如果参数属于对应的数据范围,则该项参数等分为1分,如果参数不属于对应的数据范围,则根据与数据范围的边界值之差进行打分,差值越大打分越低。最终赋予每个参数对应的权重值,将每个参数的得分进行加权,将加权结果作为此次滑动刮刮卡的得分,并根据得分对此次行为进行最终的判决。
步骤S710,判断结果是否为无风险。如果判断结果为无风险,则进入步骤S711,如果判断结果为有风险,在而进入步骤S712。
如果判断结果为无风险,则此次刮刮卡的行为通过了验证,向前端设备颁发通行签名串,如果判断结果为有风险,则向前端设备返回拦截信息,并提示用户重新进行刮刮卡交互。
步骤S711,向前端设备颁发通行签名串。
步骤S712,提示用户滑动行为失败,请用户重试。
在对采集信息综合判决结果为有风险的情况下,提示用户此次滑动行为失效,请用户重试。
步骤S713,用户提交业务请求,随请求带上通行签名串。
在一种可选的实施例中,用户触发“登录”案件,并携带通行签名串,请求登录网页。
步骤S714,通行签名串是否验证成功。如果通行签名串验证成功,则进入步骤S715,如果通行签名串未验证成功,则进入步骤S716。
步骤S715,后续业务逻辑。
在通行签名串验证成功的情况,根据用户发送的请求,继续执行后续的业务。例如,仍以用户登录网页为例,在用户对请求携带的通行签名串请求验证成功后,对登录用户名和登录密码进行验证,以执行后续的业务逻辑。
步骤S716,提示用户签名串无效,请用户重试。
在用户随业务请求提交的通行签名串未验证成功的情况下,提示用户签名串无效,请用户重试。
在上述实施例中,在采集模块的采集能力受限的情况下,无法通过判决确定当前操作是真人操作还是机器操作,还可以唤醒如图8所示的二次验证,通过让用户识别图中及其无法识别的字母和数字来区别当前操作是真人操作还是机器操作。
实施例3
本申请提供了如图9所示的验证验证码的方法。图9是根据本申请实施例3的一种验证验证码的方法的流程图。该方法包括如下步骤:
步骤S91,在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据。
具体的,上述交互界面可以是显示于用户终端,由用户的行为触发而生成的验证界面。例如,用户通过移动终端登录网站,在用户输入用户名和密码之后,网站服务器对该用户名进行风险评估,检测到该用户名具有攻击网站服务器的记录,具有较大风险,因此在用户触发“登录”控件之前,将“登录”控件隐藏,并触发验证验证码的交互界面。上述初始化参数可以包括:浮层下方的对象的坐标序列、尺寸、透明度、滑动时的轨迹宽度等,但都不限于此。
步骤S93,根据在显示验证码的组件的屏幕上发生的操作事件,生成操作结果。
具体的,上述验证码的组件上发生的操作事件可以是用户通过滑动屏幕、移动鼠标等方式对验证码的组件进行操作的操作事件,所生成的操作结果可以是覆盖在待刮出对象区域内的轨迹点数和占比(覆盖在待刮出对象区域内的轨迹点数总轨迹点数的比例)、轨迹锐角拐点数量和轨迹落在刮刮卡区域内数量,用于表征用户此次操作事件的行为数据。
步骤S95,在操作结果满足预定条件的情况下,验证码通过验证。
具体的,上述预定条件可以是预设的阈值或范围,可以通过对真人的操作事件进行训练和学习得到。
本申请上述实施例在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据,根据显示验证码的组件的屏幕上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性。
由此,本申请上述方案解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
实施例4
本申请提供了如图10所示的验证验证码的装置。图10是根据本申请实施例4的一种验证验证码的装置的示意图。该装置100包括:
获取模块102,用于发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据。
渲染模块104,用于根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象。
监控模块106,用于监控验证码的组件上发生的操作事件,生成操作结果。
验证模块108,用于在操作结果满足预定条件的情况下,验证码通过验证。
可选的,根据本申请上述实施例,上述装置还包括:
发起模块,用于在验证码通过验证之前,发起操作结果至服务器。
第一接收模块,用于在判断操作结果中记录的操作行为与预存的行为数据匹配,或匹配程度超过标准值的情况下,接收服务器返回的安全信息,其中,安全信息用于表征发起操作事件的操作对象为合法用户。
第一提示模块,用于在判断操作结果中记录的操作行为与预存的行为数据不匹配,且匹配程度未超过标准值的情况下,提示触发操作事件失败。
可选的,根据本申请上述实施例,上述装置还包括:
第二接收模块,用于在安全信息包括通行签名串的情况下,在接收服务器返回的安全信息之后,接收操作对象提交的业务请求,其中,业务请求携带了通行签名串。
验证模块,用于验证通行签名串。
执行模块,用于在验证通行签名串通过的情况下,执行业务请求所对应的任务。
第二提示模块,用于在验证通行签名串失败的情况下,提示通行签名串无效。
可选的,根据本申请上述实施例,操作事件至少包括如下至少之一:点击操作、滑动操作,操作事件的操作属性包括如下至少之一:随机的操作时间和随机的操作轨迹。
可选的,根据本申请上述实施例,初始化参数确定了浮层的浮层显示参数和对象的对象显示参数,其中,浮层显示参数至少包括如下之一:浮层位置、浮层大小、浮层形状、浮层透明度、浮层颜色和浮层上发生的操作事件时显示的轨迹参数,对象显示参数至少包括如下之一:对象的数量、类型、位置、大小、形状和颜色。
可选的,根据本申请上述实施例,如果登陆到需要接入验证码的网站,触发发起校验码请求,其中,校验码请求携带有预定的配置项,通过配置项定制验证码的组件的资源内容。
可选的,根据本申请上述实施例,上述装置还包括:
释放模块,用于在根据初始化参数在交互界面上渲染验证码的组件之后,释放与验证码的组件对应的采集模块;
启动模块,用于使用采集模块采集设备信息,并启动监听验证码的组件上发生的操作事件。
可选的,根据本申请上述实施例,监控模块106包括:
获取子模块,用于通过监控鼠标或触摸屏,获取验证码的组件上发生的操作事件,并获取操作事件在浮层上产生的操作结果,其中,操作结果包括的操作数据如下至少之一:在浮层上滑动时的滑动轨迹、滑动轨迹所刮开的浮层区域、显示在刮开的浮层区域上的对象内容、刮开的浮层区域占浮层图片的百分比和滑动的滑动时长。
可选的,根据本申请上述实施例,操作结果还包括:采集触发的操作事件的数量和操作时间,验证模块108包括。
确定子模块,用于在触发的操作事件的数量超过阈值,且操作数据满足对应的条件参数,则确定验证码验证通过。
提示子模块,用于在触发的操作事件的数量超过阈值,和/或操作数据未满足对应的条件参数,发出提示信息,其中,提示信息包括:重新发起新的校验码请求。
上述装置的具体实施方式可见实施例3所示,此处不再赘述。
实施例5
本申请提供了如图11所示的验证验证码的装置。图11是根据本申请实施例5的一种验证验证码的方法的流程图。该装置110包括:
显示模块112,用于在交互界面上显示验证码的组件,其中,验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于浮层下方的对象,其中,初始化参数为随机生成的动态数据。
生成模块114,用于根据显示验证码的组件的屏幕上发生的操作事件,生成操作结果。
验证模块116,用于在操作结果满足预定条件的情况下,验证码通过验证。
上述装置的具体实施方式可见实施例4所示,此处不再赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例6
本发明的实施例可以提供一种计算机终端,该计算机终端可以是计算机终端群中的任意一个计算机终端设备。可选地,在本实施例中,上述计算机终端也可以替换为移动终端等终端设备。
可选地,在本实施例中,上述计算机终端可以位于计算机网络的多个网络设备中的至少一个网络设备。
在本实施例中,上述计算机终端可以执行应用程序的验证验证码的方法中以下步骤的程序代码:发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控验证码的组件上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。
可选地,图12是根据本申请实施例6的一种计算机终端的结构框图。如图12所示,该计算机终端A可以包括:一个或多个(图中仅示出一个)处理器1202、存储器 1204、以及传输装置1206。
其中,存储器可用于存储软件程序以及模块,如本发明实施例中的验证验证码的方法和装置对应的程序指令/模块,处理器通过运行存储在存储器内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的验证验证码的方法。存储器可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至终端A。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
处理器可以通过传输装置调用存储器存储的信息及应用程序,以执行下述步骤:发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控验证码的组件上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。
可选的,上述处理器还可以执行如下步骤的程序代码:发起操作结果至服务器;在判断操作结果中记录的操作行为与预存的行为数据匹配,或匹配程度超过标准值的情况下,接收服务器返回的安全信息,其中,安全信息用于表征发起操作事件的操作对象为合法用户;否则,提示触发操作事件失败。
可选的,上述处理器还可以执行如下步骤的程序代码:接收操作对象提交的业务请求,其中,业务请求携带了通行签名串;验证通行签名串;在验证通行签名串通过的情况下,执行业务请求所对应的任务;在验证通行签名串失败的情况下,提示通行签名串无效。
可选的,上述处理器还可以执行如下步骤的程序代码:操作事件至少包括如下至少之一:点击操作、滑动操作,操作事件的操作属性包括如下至少之一:随机的操作时间和随机的操作轨迹。
可选的,上述处理器还可以执行如下步骤的程序代码:初始化参数确定了浮层的浮层显示参数和对象的对象显示参数,其中,浮层显示参数至少包括如下之一:浮层位置、浮层大小、浮层形状、浮层透明度、浮层颜色和浮层上发生的操作事件时显示的轨迹参数,对象显示参数至少包括如下之一:对象的数量、类型、位置、大小、形状和颜色。
可选的,上述处理器还可以执行如下步骤的程序代码:如果登陆到需要接入验证码的网站,触发发起校验码请求,其中,校验码请求携带有预定的配置项,通过配置项定制验证码的组件的资源内容。
可选的,上述处理器还可以执行如下步骤的程序代码:释放与验证码的组件对应的采集模块;使用采集模块采集设备信息,并启动监听验证码的组件上发生的操作事件。
可选的,上述处理器还可以执行如下步骤的程序代码:通过监控鼠标或触摸屏,获取验证码的组件上发生的操作事件,并获取操作事件在浮层上产生的操作结果,其中,操作结果包括的操作数据如下至少之一:在浮层上滑动时的滑动轨迹、滑动轨迹所刮开的浮层区域、显示在刮开的浮层区域上的对象内容、刮开的浮层区域占浮层图片的百分比和滑动的滑动时长。
可选的,上述处理器还可以执行如下步骤的程序代码:在触发的操作事件的数量超过阈值,且操作数据满足对应的条件参数,则确定验证码验证通过;在触发的操作事件的数量超过阈值,和/或操作数据未满足对应的条件参数,发出提示信息,其中,提示信息包括:重新发起新的校验码请求。
采用本发明实施例,通过显示器在交互界面上显示验证码的组件,通过处理器监控验证码的组件的上发生的操作事件,生成操作结果,在操作结果满足预定条件的情况下,验证码通过验证。上述方案监控验证码的组件上发生的操作事件进行验证,由于本申请上述方案中的验证码组件包括浮层和浮层下方的对象,在渲染验证码的组件时所使用的初始化参数时随机生成的,且用户对验证码的组件进行操作时的操作结果也是随机的,从而提高了验证码交互的复杂程度,提升了验证码验证的准确性,进而解决了现有技术中的验证码交互方式较简单,导致验证结果不准确的技术问题。
本领域普通技术人员可以理解,图12所示的结构仅为示意,计算机终端也可以是智能手机(如Android手机、iOS手机等)、平板电脑、掌声电脑以及移动互联网设备 (MobileInternet Devices,MID)、PAD等终端设备。图12其并不对上述电子装置的结构造成限定。例如,计算机终端A还可包括比图12中所示更多或者更少的组件(如网络接口、显示装置等),或者具有与图12所示不同的配置。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(Read-Only Memory,ROM)、随机存取器(RandomAccess Memory,RAM)、磁盘或光盘等。
实施例7
本发明的实施例还提供了一种存储介质。可选地,在本实施例中,上述存储介质可以用于保存上述实施例一所提供的验证验证码的方法所执行的程序代码。
可选地,在本实施例中,上述存储介质可以位于计算机网络中计算机终端群中的任意一个计算机终端中,或者位于移动终端群中的任意一个移动终端中。
可选地,在本实施例中,存储介质被设置为存储用于执行以下步骤的程序代码:发起校验码请求,并获取校验码请求对应的初始化参数,其中,初始化参数为随机生成的动态数据;根据初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的验证码的组件至少包括:浮层和位于浮层下方的对象;监控验证码的组件上发生的操作事件,生成操作结果;在操作结果满足预定条件的情况下,验证码通过验证。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (16)

1.一种验证验证码的方法,其特征在于,包括:
发起校验码请求,并获取所述校验码请求对应的初始化参数,其中,所述初始化参数为随机生成的动态数据;
根据所述初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的所述验证码的组件至少包括:浮层和位于所述浮层下方的对象;
监控所述验证码的组件上发生的操作事件,生成操作结果;
在所述操作结果满足预定条件的情况下,所述验证码通过验证。
2.根据权利要求1所述的方法,其特征在于,在所述验证码通过验证之前,所述方法还包括:
发起所述操作结果至服务器;
在判断所述操作结果中记录的操作行为与预存的行为数据匹配,或匹配程度超过标准值的情况下,接收所述服务器返回的安全信息,其中,所述安全信息用于表征发起所述操作事件的操作对象为合法用户;
否则,提示触发所述操作事件失败。
3.根据权利要求2所述的方法,其特征在于,在所述安全信息包括通行签名串的情况下,在接收所述服务器返回的安全信息之后,所述方法还包括:
接收所述操作对象提交的业务请求,其中,所述业务请求携带了所述通行签名串;
验证所述通行签名串;
在验证所述通行签名串通过的情况下,执行业务请求所对应的任务;
在验证所述通行签名串失败的情况下,提示所述通行签名串无效。
4.根据权利要求1所述的方法,其特征在于,所述操作事件至少包括如下至少之一:点击操作、滑动操作,所述操作事件的操作属性包括如下至少之一:随机的操作时间和随机的操作轨迹。
5.根据权利要求1所述的方法,其特征在于,所述初始化参数确定了所述浮层的浮层显示参数和所述对象的对象显示参数,其中,所述浮层显示参数至少包括如下之一:浮层位置、浮层大小、浮层形状、浮层透明度、浮层颜色和所述浮层上发生的操作事件时显示的轨迹参数,所述对象显示参数至少包括如下之一:对象的数量、类型、位置、大小、形状和颜色。
6.根据权利要求1所述的方法,其特征在于,如果登陆到需要接入所述验证码的网站,触发发起所述校验码请求,其中,所述校验码请求携带有预定的配置项,通过所述配置项定制所述验证码的组件的资源内容。
7.根据权利要求6所述的方法,其特征在于,在根据所述初始化参数在交互界面上渲染验证码的组件之后,所述方法还包括:
释放与所述验证码的组件对应的采集模块;
使用所述采集模块采集设备信息,并启动监听所述验证码的组件上发生的操作事件。
8.根据权利要求1至7中任意一项所述的方法,其特征在于,监控所述验证码的组件上发生的操作事件,生成操作结果,包括:
通过监控鼠标或触摸屏,获取所述验证码的组件上发生的操作事件,并获取所述操作事件在所述浮层上产生的所述操作结果,其中,所述操作结果包括的操作数据如下至少之一:在所述浮层上滑动时的滑动轨迹、所述滑动轨迹所刮开的浮层区域、显示在所述刮开的浮层区域上的对象内容、刮开的浮层区域占浮层图片的百分比和所述滑动的滑动时长。
9.根据权利要求8所述的方法,其特征在于,所述操作结果还包括:采集触发的操作事件的数量和操作时间,在所述操作结果满足预定条件的情况下,所述验证码通过验证,包括:
在所述触发的操作事件的数量超过阈值,且操作数据满足对应的条件参数,则确定所述验证码验证通过;
在所述触发的操作事件的数量超过阈值,和/或所述操作数据未满足对应的条件参数,发出提示信息,其中,所述提示信息包括:重新发起新的校验码请求。
10.一种验证验证码的方法,其特征在于,包括:
在交互界面上显示验证码的组件,其中,所述验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于所述浮层下方的对象,其中,所述初始化参数为随机生成的动态数据;
根据显示所述验证码的组件的屏幕上发生的操作事件,生成操作结果;
在所述操作结果满足预定条件的情况下,所述验证码通过验证。
11.一种验证验证码的系统,其特征在于,包括:
显示器,用于在交互界面上显示验证码的组件,其中,所述验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于所述浮层下方的对象,其中,所述初始化参数为随机生成的动态数据;
处理器,用于监控所述验证码的组件的上发生的操作事件,生成操作结果,在所述操作结果满足预定条件的情况下,所述验证码通过验证。
12.一种验证验证码的系统,其特征在于,包括:
前端设备,用于发起校验码请求;
后端服务器,与所述前端设备连接,用于获取所述校验码请求,根据所述校验码请求确定对应的初始化参数,并将所述初始化参数返回给所述前端设备,其中,所述初始化参数为随机生成的动态数据;
其中,所述前端设备还用于根据所述初始化参数在交互界面上渲染验证码的组件,监控所述验证码的组件上发生的操作事件,生成操作结果,在所述操作结果满足预定条件的情况下,所述验证码通过验证,其中,渲染得到的所述验证码的组件至少包括:浮层和位于所述浮层下方的对象。
13.一种验证验证码的装置,其特征在于,包括:
获取模块,用于发起校验码请求,并获取所述校验码请求对应的初始化参数,其中,所述初始化参数为随机生成的动态数据;
渲染模块,用于根据所述初始化参数在交互界面上渲染验证码的组件,其中,渲染得到的所述验证码的组件至少包括:浮层和位于所述浮层下方的对象;
监控模块,用于监控所述验证码的组件上发生的操作事件,生成操作结果;
验证模块,用于在所述操作结果满足预定条件的情况下,所述验证码通过验证。
14.一种验证验证码的装置,其特征在于,包括:
显示模块,用于在交互界面上显示验证码的组件,其中,所述验证码的组件根据请求得到的初始化参数而渲染得到,且至少包括:浮层和位于所述浮层下方的对象,其中,所述初始化参数为随机生成的动态数据;
生成模块,用于根据显示所述验证码的组件的屏幕上发生的操作事件,生成操作结果;
验证模块,用于在所述操作结果满足预定条件的情况下,所述验证码通过验证。
15.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至10中任意一项所述的验证验证码的方法。
16.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至10中任意一项所述的验证验证码的方法。
CN201710340289.5A 2017-05-15 2017-05-15 验证验证码的方法、装置、系统、存储介质和计算机终端 Active CN108881126B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710340289.5A CN108881126B (zh) 2017-05-15 2017-05-15 验证验证码的方法、装置、系统、存储介质和计算机终端

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710340289.5A CN108881126B (zh) 2017-05-15 2017-05-15 验证验证码的方法、装置、系统、存储介质和计算机终端

Publications (2)

Publication Number Publication Date
CN108881126A true CN108881126A (zh) 2018-11-23
CN108881126B CN108881126B (zh) 2021-08-31

Family

ID=64320461

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710340289.5A Active CN108881126B (zh) 2017-05-15 2017-05-15 验证验证码的方法、装置、系统、存储介质和计算机终端

Country Status (1)

Country Link
CN (1) CN108881126B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110543755A (zh) * 2019-09-04 2019-12-06 四川长虹电器股份有限公司 基于Canvas实现刮刮卡效果验证码的方法
CN111163470A (zh) * 2019-12-31 2020-05-15 联想(北京)有限公司 核心网网元通信方法、装置、计算机存储介质和电子设备
CN111259369A (zh) * 2018-12-03 2020-06-09 北京京东尚科信息技术有限公司 一种人机身份验证方法和系统
CN111625805A (zh) * 2019-02-28 2020-09-04 阿里巴巴集团控股有限公司 验证方法、装置、电子设备及存储介质
CN111723357A (zh) * 2019-03-21 2020-09-29 北京京东尚科信息技术有限公司 登录验证方法及装置
CN111831912A (zh) * 2020-07-17 2020-10-27 小红书科技有限公司 在启动应用程序时提供推荐信息的方法
CN113591062A (zh) * 2020-05-01 2021-11-02 易鑫 一种滑动拼图类验证码识别方法
CN114747179A (zh) * 2020-06-25 2022-07-12 谷歌有限责任公司 异常用户界面输入检测
CN114780394A (zh) * 2022-04-08 2022-07-22 北京金堤科技有限公司 一种极验处理方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339666A (zh) * 2008-08-12 2009-01-07 腾讯科技(深圳)有限公司 一种图片验证码的生成方法和装置
CN103139204A (zh) * 2012-12-19 2013-06-05 姚爱军 一种网络验证码的方法及系统
EP3061056A1 (en) * 2014-02-21 2016-08-31 Samsung Pay, Inc. Methods, devices, and systems for secure provisioning, transmission, and authentication of payment data
CN106230855A (zh) * 2016-08-30 2016-12-14 五八同城信息技术有限公司 请求消息处理方法和装置
CN106656944A (zh) * 2015-11-03 2017-05-10 腾讯科技(深圳)有限公司 手持移动设备滑动验证的方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101339666A (zh) * 2008-08-12 2009-01-07 腾讯科技(深圳)有限公司 一种图片验证码的生成方法和装置
CN103139204A (zh) * 2012-12-19 2013-06-05 姚爱军 一种网络验证码的方法及系统
EP3061056A1 (en) * 2014-02-21 2016-08-31 Samsung Pay, Inc. Methods, devices, and systems for secure provisioning, transmission, and authentication of payment data
CN106656944A (zh) * 2015-11-03 2017-05-10 腾讯科技(深圳)有限公司 手持移动设备滑动验证的方法及装置
CN106230855A (zh) * 2016-08-30 2016-12-14 五八同城信息技术有限公司 请求消息处理方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
传智播客高教产品研发部编著: "《Android移动应用基础教程》", 31 January 2015, 中国铁道出版社 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111259369A (zh) * 2018-12-03 2020-06-09 北京京东尚科信息技术有限公司 一种人机身份验证方法和系统
CN111259369B (zh) * 2018-12-03 2024-04-12 北京京东尚科信息技术有限公司 一种人机身份验证方法和系统
CN111625805A (zh) * 2019-02-28 2020-09-04 阿里巴巴集团控股有限公司 验证方法、装置、电子设备及存储介质
CN111625805B (zh) * 2019-02-28 2024-02-20 阿里巴巴集团控股有限公司 验证方法、装置、电子设备及存储介质
CN111723357A (zh) * 2019-03-21 2020-09-29 北京京东尚科信息技术有限公司 登录验证方法及装置
CN110543755A (zh) * 2019-09-04 2019-12-06 四川长虹电器股份有限公司 基于Canvas实现刮刮卡效果验证码的方法
CN110543755B (zh) * 2019-09-04 2022-03-01 四川长虹电器股份有限公司 基于Canvas实现刮刮卡效果验证码的方法
CN111163470A (zh) * 2019-12-31 2020-05-15 联想(北京)有限公司 核心网网元通信方法、装置、计算机存储介质和电子设备
CN113591062A (zh) * 2020-05-01 2021-11-02 易鑫 一种滑动拼图类验证码识别方法
CN114747179A (zh) * 2020-06-25 2022-07-12 谷歌有限责任公司 异常用户界面输入检测
CN111831912A (zh) * 2020-07-17 2020-10-27 小红书科技有限公司 在启动应用程序时提供推荐信息的方法
CN114780394A (zh) * 2022-04-08 2022-07-22 北京金堤科技有限公司 一种极验处理方法及装置

Also Published As

Publication number Publication date
CN108881126B (zh) 2021-08-31

Similar Documents

Publication Publication Date Title
CN108881126A (zh) 验证验证码的方法、装置和系统
AU2021254670B2 (en) Systems and methods for providing security via interactive media
WO2019153604A1 (zh) 人机识别模型的建立装置、方法及计算机可读存储介质
CN108650226B (zh) 一种登录验证方法、装置、终端设备及存储介质
CN103530546B (zh) 一种基于用户鼠标行为的身份认证方法
CN104135365B (zh) 对访问请求进行验证的方法、服务器及客户端
CN106844522B (zh) 一种网络数据爬取方法和装置
CN107682368B (zh) 基于交互操作的验证方法、客户端、服务器及系统
CN109271762A (zh) 基于滑块验证码的用户认证方法及装置
CN106155298A (zh) 人机识别方法及装置、行为特征数据的采集方法及装置
CN109918892A (zh) 验证码生成方法、装置及存储介质、计算机设备
CN107194213A (zh) 一种身份识别方法及装置
CN107317682A (zh) 一种身份认证方法及系统
CN103413078B (zh) 基于用户标识和笔迹的两层在线认证系统及认证方法
CN108011868A (zh) 一种滑动验证方法及移动终端
CN110138800A (zh) 界面交互及其验证方法、登陆请求生成及验证方法和装置
CN109902459A (zh) Web页面的人机识别验证方法、系统、设备和存储介质
Mathis et al. Virtual reality observations: Using virtual reality to augment lab-based shoulder surfing research
CN106504001A (zh) 一种vr环境中的支付方法及装置
CN111353140B (zh) 验证码的生成、显示方法、装置和系统
CN113282919A (zh) 一种基于眼球及鼠标追踪的个性化反钓鱼教育培训方法
CN108182276A (zh) 一种基于拍摄图片进行搜题的方法及电子设备
CN109635214A (zh) 一种学习资源的推送方法及电子设备
CN113269378A (zh) 一种网络流量处理方法、装置、电子设备和可读存储介质
CN109299592A (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
GR01 Patent grant
GR01 Patent grant