本申请涉及网络技术领域,尤其涉及一种人机识别方法及装置。
背景技术:
随着互联网技术的快速发展,很多网站应运而生。为了便于网站个性化管理用户资料,用户可以向网站进行注册用户名以及用户密码,并且,用户名和用户密码统称为注册信息。伴随着网站的逐渐增加,用户需要在多个网站上进行注册。为了方便记忆各个网站的注册信息,大多数用户在各个网站上的注册信息是相同的或者类似的。
众所周知,各个网站的风险控制等级不一致,如果一个网站的风险控制等级较低,则较为容易被黑客入侵。如果一个网站的风险控制等级较高,则不容易被黑客入侵。因此,黑客往往攻击风险控制等级较低的网站,在攻击成功之后,可以批量盗取用户的注册信息。
由于各个网站的注册信息为相同或类似,因此,黑客可以利用批量盗取的注册信息登录风险控制等级较高的网站,进而对风险程度较高的网站进行攻击。这会进一步导致更多注册信息的泄露并对用户造成一定损失。
由于黑客一般通过操控机器的方式攻击网站以获取注册信息,因此如果网站的操作者为机器,则很有可能是黑客在利用机器在攻击网站。因此,现在需要一种技术手段来识别网站的操作者是否为机器,以便可以防范机器攻击网站。
技术实现要素:
在研究过程中,本申请发明人发现:
为了防止机器攻击网站,一些防控技术手段已经应用到线上网站中。例如,在网站登录或付款时显示图片验证码,若操作者可以依照图片验证码来输入正确的验证码,则表示当前操作为人工操作。
但是,针对已知防控技术手段,其破解技术也被黑客所破解,所以现有的防控技术手段已经无法阻止黑客的批量盗号行为。例如,在网站登录或付 款时显示图片验证码,黑客可以采用图片识别技术来识别图片验证码的具体内容,从而输入正确的验证码,以达到躲避防控技术的目的。
因此,本申请提供了一种人机识别方法及装置,来缓解黑客使用机器攻击网站问题。
本申请提供以下技术手段来实现上述目的:
一种人机识别方法,包括:
渲染任务的显示界面;其中,所述显示界面携带有操作场景、操作对象和任务目标;
接收针对所述操作对象的处理操作;
在所述处理操作满足预设条件的情况下,确定所述处理操作为人工操作;其中,所述预设条件包括所述处理操作的操作结果达到所述任务的任务目标。
优选的,所述预设条件还包括:
所述处理操作所形成的运行状态信息满足预设人工操作条件。
优选的,所述任务的任务类型为无智类型、弱智类型或强智类型;
在所述任务为无智类型或弱智类型的情况下,所述预设条件还包括:所述处理操作所形成的运行状态信息满足预设人工操作条件。
优选的,所述处理操作所形成的运行状态信息满足预设人工操作条件,包括:
所述处理操作所形成的运动轨迹与预设人工操作轨迹匹配;和/或
所述处理操作所形成的直线运动速度在预设人工运动速度范围内;和/或
所述处理操作所形成的弯道运动加速度在预设人工运动加速度范围内。
优选的,所述处理操作所形成的运行状态信息满足预设人工操作条件,包括:
所述处理操作所形成的运动轨迹与预设人工操作轨迹的匹配程度,对应所述处理操作的第一分数;
所述处理操作所形成的直线运动速度与预设人工运动速度范围的匹配程度,对应所述处理操作的第二分数;
所述处理操作所形成的弯道运动加速度与预设满足预设人工加速度范围的匹配程度,对应所述处理操作的第三分数;
第一乘积、第二乘积和第三乘积的和值大于预设人工操作分数;其中,所述第一乘积为所述第一分数与第一权重的乘积,所述第二乘积为所述第二分数与第二权重的乘积,所述第三乘积为所述第三分数与第三权重的乘积。
优选的,所述处理操作包括:
上移、下移、左移、右移、拖动、更改操作对象的方位中的一种或多种的组合。
一种人机识别装置,包括:
渲染单元,用于渲染任务的显示界面;其中,所述显示界面携带有操作场景、操作对象和任务目标;
接收单元,用于接收针对所述操作对象的处理操作;
确定单元,用于在所述处理操作满足预设条件的情况下,确定所述处理操作为人工操作;其中,所述预设条件包括所述处理操作的操作结果达到所述任务的任务目标。
优选的,所述预设条件还包括:
所述处理操作所形成的运行状态信息满足预设人工操作条件。
优选的,所述任务的任务类型为无智类型、弱智类型或强智类型;
在所述任务为无智类型或弱智类型的情况下,所述预设条件还包括:
所述处理操作所形成的运行状态信息满足预设人工操作条件。
优选的,所述处理操作所形成的运行状态信息满足预设人工操作条件,包括:
所述处理操作所形成的运动轨迹与预设人工操作轨迹匹配;和/或
所述处理操作所形成的直线运动速度在预设人工运动速度范围内;和/或
所述处理操作所形成的弯道运动加速度在预设人工运动加速度范围内。
优选的,所述处理操作所形成的运行状态信息满足预设人工操作条件,包括:
所述处理操作所形成的运动轨迹与预设人工操作轨迹的匹配程度,对应所述处理操作的第一分数;
所述处理操作所形成的直线运动速度与预设人工运动速度范围的匹配程度,对应所述处理操作的第二分数;
所述处理操作所形成的弯道运动加速度与预设满足预设人工加速度范围的匹配程度,对应所述处理操作的第三分数;
第一乘积、第二乘积和第三乘积的和值大于预设人工操作分数;其中,所述第一乘积为所述第一分数与第一权重的乘积,所述第二乘积为所述第二分数与第二权重的乘积,所述第三乘积为所述第三分数与第三权重的乘积。
优选的,所述处理操作包括:
上移、下移、左移、右移、拖动、更改操作对象的方位中的一种或多种的组合。
通过技术手段,可以得到以下有益效果:
本申请提供一种相当于验证码的任务,本申请所提供的任务并不是固定不变的,任务中的操作对象可以随着操作者的处理操作而移动的。并且,操作者所执行的处理操作也不仅仅是简单的输入操作,而是为了达到任务目标而对操作对象执行的处理操作。当操作者的处理操作使得任务达到任务目标时,即可认为操作者输入正确的验证码。因此,本申请所提供的防控技术由于任务中需要加入操作者的处理操作才能够完成任务,并且处理操作并不是机器通过简单的识别技术便可破解的,所以,本申请提供的技术手段可以准确识别操作者为人工还是机器。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种人机识别方法的流程图;
图2为本申请实施例公开的一种人机识别方法中的任务示意图;
图3为本申请实施例公开的又一种人机识别方法中的任务示意图;
图4为本申请实施例公开的一种人机识别装置的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请发明人在研究过程中发现:虽然图片验证码中的具体内容是随机的,但是在一次操作过程中一旦图片验证码生成,图片验证码上的具体内容便不会改变。操作者仅需将图片验证码的具体内容填写至输入框中即可。即现有技术图片验证码一旦生成不会改变,并且需要操作者执行的处理操作较少。因此,黑客可以利用图片识别技术来识别图片验证码的具体内容,并将其填写至输入框,以此来躲避现有防控技术。
鉴于此,本申请发明人设想提供一种相当于验证码的任务,该任务中的操作对象可以随着操作者的处理操作而移动,当操作者的处理操作使得任务达到任务目标时,即可认为操作者输入正确的验证码。即,本申请所提供的相当于验证码的任务并不是固定不变的,而是可以随着操作者的处理操作而移动的。并且,操作者所执行的处理操作也不仅仅是简单的输入操作,而是为了达到任务目标而对操作对象执行的处理操作。加之,只有在操作者的处理操作达到任务目标时,才确定操作者输入正确的验证码。
为了使得本申请所提供的防控技术不被黑客轻易破解,所以任务的一个主要特征是随机性,以便在网站需要输入验证码阶段,网站可以保证随机分发不同的任务。
为了网站实现随机性分发任务的目的,针对同一种类任务而言,其任务目标和操作对象应该可以随机移动。例如,假设一个任务为推箱子,操作对象为箱子,任务目标为一个指定位置。当操作者将箱子从起始位置推动至指定位置时,代表操作者完成该任务。为了保证任务的随机性,在每个任务中操作对象的起始位置和任务目标的指定位置均是不同的,以实现随机分发任务的目的。
此外,为了增加任务多样性,可以在网站中添加多个种类任务,例如,推箱子、俄罗斯方块、小熊猫爬竹竿和贪吃蛇任务等等。并且,每个种类任务均具有随机性的特征,即可以实现随机分发不同任务目的。这样可以在网 站中实现任务的多样性和随机性,从而使得操作者需要执行不同的处理操作,来完成任务,以达到利用任务来实现验证码的目的。
下面详细介绍本申请的详细执行过程,如图1所示,本申请提供了一种人机识别方法,应用于网站的控制器,所述方法包括以下步骤:
步骤S101:渲染任务的显示界面;其中,所述显示界面携带有操作场景、操作对象和任务目标。
操作者在网站的一个网页执行到需要输入验证码的情况下,在控制器上具有多个种类的任务的情况下,首先随机地或者按照一定方式地选择一个种类的任务;在控制器上仅有一个种类的任务的情况下,则直接选择该种类的任务。在控制器确定一个种类的任务之后,针对该种类任务随机生成一个具体任务。
由于任务在控制器均以软件程序方式进行存储,为了让操作者可以完成任务,必须让操作者看到任务,因此控制器可以渲染任务的显示界面。在显示界面上具有操作场景、操作对象和任务目标。操作场景主要用于表示操作对象的行进线路;操作对象表示随着操作处理操作而移动的对象;任务目标表示操作对象需要达到的目的,在操作对象达到任务目标时,可以表示操作者完成任务。
例如,以任务为推箱子为例,参见图2为推箱子任务的一个显示界面。在显示界面上横竖相间的表示箱子行进线路为操作场景,箱子表示操作对象,黑色实体框为箱子所要达到的任务目标。
再如,以任务俄罗斯方块为例,参见图3为俄罗斯方块的一个显示界面。在显示界面上,横竖相间的表示操作对象行进线路以及在显示界面底部已有的一些固定的操作块均为操作场景,在图2中操作块为操作对象(如图2所示的“L”型的操作块),预先设定的分数(如300分)为任务目标,在图示中未显示。
步骤S102:接收针对所述操作对象的处理操作。
在控制器利用显示界面显示出任务之后,操作者可以依据操作场景针对操作对象执行处理操作。处理操作可以为:上移、下移、左移、右移、拖动、更改操作对象的方位以及这些操作的组合。可以理解的是,处理操作可以是 多种多样的,本申请仅仅列举出一些。针对操作对象的其它处理操作,也属于本申请的保护范围。
例如,延续上述举例,针对图2所示的任务。为了使得任务达到任务目标,操作者可以将操作对象(箱子)右移一步再将操作对象上移两步。当然,操作者还可以将操作对象上移两步再将操作对象右移一步。这些针对操作对象所执行的操作均可以看作为处理操作。
再如,延续上述举例,针对图3所示的任务。为了使得任务达到任务目标,操作者可以将操作对象(操作块)进行变换操作,再将操作对象向左移动、向右移动或向下移动,以使操作块达到空缺位置。这些针对操作对象所执行的操作均可以看作为处理操作。
步骤S103:在所述处理操作满足预设条件的情况下,确定所述处理操作为人工操作;其中,所述预设条件包括所述处理操作的操作结果达到所述任务的任务目标。
本申请所提供的预设条件包括操作者对操作对象的处理操作,可以使得任务达到任务目标。当操作者对操作对象执行处理操作之后的操作结果可以使得任务达到任务目标时,则确定操作者完成任务,也即代表操作者通过验证。
具体而言,在操作者每执行一步处理操作,均会对处理操作的操作结果进行判断,以判定任务是否达到任务目标。针对不同种类的任务而言,由于操作场景、操作对象和任务目标均不一致,所以,在不同种类中判断处理操作是否完成任务的判断依据也不尽相同。因此,在实际应用过程中,需要预先在控制器中设定各个种类任务的判断依据,至于各个种类任务的判断依据的具体设定过程,不是本申请所保护的重点,在此不再赘述。
例如,针对图2所示的推箱子,在操作者执行一步处理操作之后,即以验证操作对象的位置与指定位置是否一致,若一致的话,则表示任务达到任务目标。
再如,针对图3所示的俄罗斯方块,在操作者对一个操作块执行完毕之后,可以验证操作者所得分数是否大于设定分数(任务目标),若所得分数达到任务目标,则判定任务达到任务目标。
本申请所提供的利用任务作为验证码的技术手段为目前较为新颖的防控技术,黑客在短时间内应该无法破解本申请所提供防控技术。因此,在确定操作者的处理操作达到任务目标时,也就是确定操作者通过验证时,表示操作者的处理操作是人工操作,操作者是人工而非机器。
可以理解的是,在操作者的处理操作未达到任务目标时,也就是确定操作者未通过验证时,不能表示操作者的处理操作是人工操作。
从以上内容,可以看出本申请具有以下有益效果:
本申请提供一种相当于验证码的任务,本申请所提供的任务并不是固定不变的,任务中的操作对象可以随着操作者的处理操作而移动的。并且,操作者所执行的处理操作也不仅仅是简单的输入操作,而是为了达到任务目标而对操作对象执行的处理操作。当操作者的处理操作使得任务达到任务目标时,即可认为操作者输入正确的验证码。因此,本申请所提供的防控技术由于任务中需要加入操作者的处理操作才能够完成任务,并且处理操作并不是机器通过简单的识别技术便可破解的,所以,本申请提供的技术手段可以准确识别操作者为人工还是机器。
由于本申请所提供的防控技术手段较为新颖,黑客在短时间应该不会破解。但是,随着黑客的技术越来越高,在一段时间之后图1所示的实施例提供的防控技术难免被破解。即,机器也可以对操作对象执行处理操作,从而使得任务达到目标。为此,本申请在图1所示的实施例之上,还增加了以下技术内容,以便在一个操作者的处理操作使得任务达到任务目标之后,可以进一步确定执行处理操作的操作者是人工还是机器。
本申请所提供的预设条件还包括所述处理操作所形成的运行状态信息满足预设人工操作条件。即在图1所示的实施例中确定处理操作的操作结果达到所述任务的任务目标之后,还需要进一步判断处理操作所形成的运行状态信息是否满足预设人工操作条件。
在处理操作所形成的运行状态信息满足预设人工操作条件时,则可以表示处理操作的操作者为人工而非机器。在处理操作所形成的运行状态信息未满足预设人工操作条件时,则不能表示处理操作的操作者为人工。
下面详细介绍判断处理操作所形成的运行状态信息是否满足预设人工操作条件的具体过程,这个过程可以分为多种方式,下面对各种方式进行详细说明:
第一种方式:所述处理操作所形成的运动轨迹与预设人工操作轨迹匹配。
在本申请步骤101中渲染显示界面之后,控制器可以根据显示界面上的操作对象的初始位置以及任务目标的指定位置,并利用与任务对应的计算方式来计算合理的人工操作轨迹,并将合理的人工操作轨迹作为预设人工操作轨迹,然后进行存储以便后续过程中使用。
根据本申请步骤101中的显示界面可以构建坐标系,然后可以记录操作对象的初始位置(以横坐标和纵坐标方式表示)以及每个处理操作之后操作对象的中间位置(以横坐标和纵坐标方式表示),在操作者结束对操作对象的处理操作之后,可以依据初始位置以及各个中间位置生成操作对象的运动轨迹。
然后将操作对象的运动轨迹与预设人工操作轨迹进行匹配,若两者一致,则表示操作者的处理操作为人工操作,若不一致,则表示操作者的处理操作非人工操作。
第二种方式:所述处理操作所形成的直线运动速度在预设人工运动速度范围内。
本申请在执行之前可以通过实验方式来确定人工在直线运动时的速度范围,然后将直线运动速度范围存储至控制器中,并将预先存储的直线运动速度范围确定为预设人工运动速度范围。
根据本申请步骤101中的显示界面可以构建坐标系,然后可以记录操作对象的初始位置以及每个处理操作的操作信息。操作信息可以包括操作对象的中间位置、当前时间以及操作方式。其中,中间位置表示在处理操作之后操作对象的横坐标和纵坐标;当前时间表示操作对象更改位置之后的当前时间;操作方式表示操作者对操作对象所执行的处理,例如,上移、下移、左移、右移等。
若操作信息中操作方式持续为同一操作方式,则表示操作对象在执行直线运动。例如,多个操作信息中的操作方式均为上移,则表示操作对象在向上执行直线运动。
然后,可以利用多个操作信息计算操作对象在直线运动过程中的直线运动速度。具体的可以为利用直线运动过程中,第一个操作信息中的中间位置与最后一个操作信息中的中间位置,计算第一个点与最后一个点之间的距离。再计算第一点当前时间与最后一个点之间的当前时间之间的时间间隔,将距离与时间间隔的商值,作为直线运动速度。
然后,将操作对象的直线运动速度与预设人工运动速度范围进行匹配,若直线运动速度在预设人工运动速度范围内,则表示操作者的处理操作为人工操作,若直线运动速度未在预设人工运动速度范围内,则表示操作者的处理操作非人工操作。
作为第二种方式的扩展,若操作对象在操作过程中具有多条直线,则可以计算多条直线运动速度是否相似。因为若为人工操作的话,由于人的使用习惯,所以各条直线运动速度应该为近似一致的;若为机器操作的话,由于机器没有操作习惯,所以各条直线运动速度可能会不一致。
所以,在判断各条直线运动速度相似的话,则表示为人工操作;若各条直线运动速度不相似的话,则表示为机器操作。
第三种方式:所述处理操作所形成的弯道运动加速度在预设人工运动加速度范围内。
本申请在执行之前可以通过实验方式来确定人工在弯道运动时的加速度范围,然后将弯道运动加速度范围存储至控制器中,并将预先存储的弯道加运动速度范围确定为预设人工运动加速度范围。
根据本申请步骤101中的显示界面可以构建坐标系,然后可以记录操作对象的初始位置以及每个处理操作的操作信息。操作信息可以包括操作对象的中间位置、当前时间以及操作方式。其中,中间位置表示在处理操作之后操作对象的横坐标和纵坐标;当前时间表示操作对象更改位置之后的当前时间;操作方式表示操作者对操作对象所执行的处理,例如,上移、下移、左移、右移等。
若操作信息中操作方式由一种操作方式更改为另一种操作方式,则表示操作对象在执行弯道运动。例如,一个操作信息中的操作方式均为上移,在下一个操作信息的操作方式为右移,则表示两个操作信息可以形成一个向右弯道。
然后,可以利用第二种方式所提供的方法,来计算操作对象在弯道前的速度以及弯道后的速度。再计算弯道后速度与弯道前速度的速度差值,以及弯道后的操作信息的当前时间,与弯道前的操作信息的当前时间的时间间隔。将速度差值与时间间隔的商值,作为操作对象的弯道运动加速度。
然后,将操作对象的弯道运动加速度与预设人工运动加速度范围进行匹配,若弯道运动加速度在预设人工运动速度范围内,则表示操作者的处理操作为人工操作,若弯道运动加速度未在预设人工运动速度范围内,则表示操作者的处理操作非人工操作。
作为第三种方式的扩展,若操作对象在操作过程中具有多条弯道,则可以计算多条弯道运动加速度是否相似。因为若为人工操作的话,由于人的使用习惯,所以各个弯道运动加速度应该是近似一致的;若为机器操作的话,由于机器没有操作习惯,所以各条弯道运动加速度可能会不一致。
所以,在判断各弯道运动加速度相似的话,则表示为人工操作;若各个弯道运动加速度不相似的话,则表示为机器操作。
上述三种方式均站在一个方面进行判断,虽然可以确定处理操作是否为人工操作,可是这样的判断结果判断误差较大。例如,在操作者确实为人工操作的情况下,由于执行的运动轨迹与预设运动轨迹不符合,则会导致出现误判现象。因此,本申请还提供综合考虑前面三种方式的第四种方式,以提高判断的准确率。
第四种方式:综合考虑前三种方式。
(1)所述处理操作所形成的运动轨迹与预设人工操作轨迹的匹配程度,对应所述处理操作的第一分数。
按照第一种方式中所提供的技术手段,生成操作对象的运动轨迹。然后依据操作对象的运动轨迹与预设人工操作轨迹的匹配程度,为操作对象赋予不同的分数。可以理解的是,操作对象的运动轨迹与预设人工操作轨迹越相 似,则分数越高;操作对象的运动轨迹与预设人工操作轨迹越不相似,则分数越低。
(2)所述处理操作所形成的直线运动速度与预设人工运动速度范围的匹配程度,对应所述处理操作的第二分数。
按照第二种方式中所提供的技术手段,计算操作对象的直线运动速度。然后依据操作对象的直线运动速度与预设人工运动速度范围的匹配程度,为操作对象赋予不同的分数。可以理解的是,操作对象的直线运动速度与预设人工运动速度范围越接近,则分数越高;操作对象的直线运动速度与预设人工运动速度范围越不接近,则分数越低。
(3)所述处理操作所形成的弯道运动加速度与预设满足预设人工加速度范围的匹配程度,对应所述处理操作的第三分数。
按照第三种方式中所提供的技术手段,计算操作对象的弯道运动加速度。然后依据操作对象的弯道运动加速度与预设人工运动加速度范围的匹配程度,为操作对象赋予不同的分数。可以理解的是,操作对象的弯道运动加速度与预设人工运动加速度范围越接近,则分数越高;操作对象的弯道运动加速度与预设人工运动加速度范围越不接近,则分数越低。
在计算得到第一分数、第二分数、第三分数之后,可以计算三者的和值。将和值与预设人工操作分数进行对比,若和值大于预设人工操作分数则说明操作者为人工,否则说明操作者不为人工。其中,预设人工操作分数为预先设置在控制器中的一个表示人工操作分数限制。
为了区分每个方式的重要程度,可以分别为每个分数设定不同的权重,例如为第一分数设定第一权重,为第二分数设定第二权重,为第三分数设定第三权重。然后,将第一分数与第一权重的乘积称为第一乘积,将第二分数与第二权重的乘积称为第二乘积,将第三分数与第三权重的乘积称为第三乘积。在第一乘积、第二乘积和第三乘积的和值大于预设人工操作分数时,则说明操作者为人工,否则说明操作者不为人工。其中,预设人工操作分数为预先设置在控制器中的一个表示人工操作分数限制。
现有技术中不论何种情况下,其输出的验证码的难易程度均是一致。这使得网站不能够对不同级别用户和不同的应用场景进行区分对待。例如,针 对安全级别较高的网站,验证码的安全级别应该越高。针对安全级别较低的网站,验证码的安全级别应该越低。再如,在一个操作者在本地登陆账号但是输错密码的情况下,可能为用户不小心输错密码,此时可以输出安全级别不高的验证码,来验证操作者是否为人工。在一个操作者异地登陆账号但是输错密码的情况下,很有可能是机器在执行攻击操作,此时可以输出安全级别较高的验证码,来验证操作者是否为机器。
因此,本申请可以将多个种类的任务分为不同的任务类型。任务类型为无智类型、弱智类型或强智类型。其中,无智类型表示无需用户思考即可完成的任务类型,其对应的安全级别较低;例如,推箱子、贪吃蛇等。弱智类型表示需要简单的思考即可完成的任务类型,其对应的安全级别适中;例如,俄罗斯方块、熊猫爬竹竿等。强智类型表示需要用户较多思考和和一些变换操作才可完成的任务类型,其对应的安全级别较高;例如,穿越火线、DOTA等。
在图1所示的实施例中,在步骤S101中可以根据不同的情况来决定输出那个任务类型的任务。例如,当用户在本地登陆但是输入密码错误时候,可能表示操作者为人工只是忘记密码;此时可以输出无智类型的任务,以验证操作者是否人工。当操作者异地登陆账户的时候,可能表示账号被盗取,此时可以输出弱智类型的任务,来验证操作者是否为机器。当用户异地登陆时候并且输错密码,则很有可能是机器操作,此时输出强智类型的任务,来验证操作者是否为机器。
可以理解的是,在实际应用中控制器还可以根据其它情况来决定具体所输出的任务类型。在此不再赘述。
针对无智类型和弱智类型的任务,由于无智类型和弱智类型安全级别不高,需要用户思考和参与度也不高,因此在图1所示的实施例之后,仍无法准确确定操作者为人工还是机器,所以还可以继续执行验证处理操作所形成的运行状态信息是否满足预设人工操作。
针对强智类型的任务,由于强智类型的安全级别较高,需要用户思考和参与度也较高,因此在图1所示的实施例之后,便可以准确确定操作者为人 工,所以在图1所示的实施例之后,便无需执行验证处理操作所形成的运行状态信息是否满足预设人工操作。
与图1所示的人及识别方法相对应,如图4所示,本申请提供了一种人机识别装置,包括:
渲染单元401,用于渲染任务的显示界面;其中,所述显示界面携带有操作场景、操作对象和任务目标;
接收单元402,用于接收针对所述操作对象的处理操作;
确定单元403,用于在所述处理操作满足预设条件的情况下,确定所述处理操作为人工操作;其中,所述预设条件包括所述处理操作的操作结果达到所述任务的任务目标。
其中,所述预设条件还包括:所述处理操作所形成的运行状态信息满足预设人工操作条件。
在控制器中将多个种类的任务分为三种任务类型:无智类型、弱智类型或强智类型的情况下,在所述任务为无智类型或弱智类型的情况下,所述预设条件还包括:所述处理操作所形成的运行状态信息满足预设人工操作条件。在任务类型为强智类型的情况下,不需要判断处理操作所形成的运行状态信息是否满足预设人工操作条件。
所述处理操作所形成的运行状态信息满足预设人工操作条件,包括以下四种方式:
第一种方式:所述处理操作所形成的运动轨迹与预设人工操作轨迹匹配。
第二种方式:所述处理操作所形成的直线运动速度在预设人工运动速度范围内。
第三种方式:所述处理操作所形成的弯道运动加速度在预设人工运动加速度范围内。
第四种方式:所述处理操作所形成的运动轨迹与预设人工操作轨迹的匹配程度,对应所述处理操作的第一分数;所述处理操作所形成的直线运动速度与预设人工运动速度范围的匹配程度,对应所述处理操作的第二分数;所述处理操作所形成的弯道运动加速度与预设满足预设人工加速度范围的匹配程度,对应所述处理操作的第三分数;第一乘积、第二乘积和第三乘积的和 值大于预设人工操作分数;其中,所述第一乘积为所述第一分数与第一权重的乘积,所述第二乘积为所述第二分数与第二权重的乘积,所述第三乘积为所述第三分数与第三权重的乘积。
从以上内容,可以看出本申请具有以下有益效果:
本申请提供一种相当于验证码的任务,本申请所提供的任务并不是固定不变的,任务中的操作对象可以随着操作者的处理操作而移动的。并且,操作者所执行的处理操作也不仅仅是简单的输入操作,而是为了达到任务目标而对操作对象执行的处理操作。当操作者的处理操作使得任务达到任务目标时,即可认为操作者输入正确的验证码。因此,本申请所提供的防控技术由于任务中需要加入操作者的处理操作才能够完成任务,并且处理操作并不是机器通过简单的识别技术便可破解的,所以,本申请提供的技术手段可以准确识别操作者为人工还是机器。
本实施例方法所述的功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算设备可读取存储介质中。基于这样的理解,本申请实施例对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台计算设备(可以是个人计算机,服务器,移动计算设备或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本申请。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下, 在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。