1.本说明书一个或多个实施例涉及隐私保护和风险防控领域,尤其涉及一种基于隐私保护在终端上检测脚本作弊的方法和装置。
背景技术:2.近年来,很多互联网应用的业务规模不断扩大。与其对应的,出现很多针对这些应用的自动化作弊脚本。例如,只需要在终端上安装一些插件,便可实现无需人工操作,通过脚本定时打开互联网应用,并自动进行特定业务操作,获取特定业务操作带来的利益。这种通过脚本方式,而非正常用户操作方式参与业务活动,显然对于正常用户是不公平的。它不仅损害了正常用户的利益,以及正常用户参与业务活动的积极性,也给提供业务的企业带来损失。所以,需要技术上的方案对通过脚本进行的作弊操作进行检测,进而可以根据检测结果及时防止其造成的损害。此外,由于用户操作的相关信息往往是用户的隐私信息,需要在检测过程中对使用的用户隐私信息进行保护。现有的检测方案尚不能同时达成上述目的。
3.因此,需要一种兼顾隐私保护的、可以对终端脚本作弊进行检测的方法。
技术实现要素:4.本说明书中的实施例旨在提供兼顾用户隐私保护的、在用户终端上进行脚本作弊检测的方法,解决现有技术中的不足。
5.根据第一方面,提供了一种基于隐私保护在终端上检测脚本作弊的方法,所述终端上部署有目标应用,所述方法包括:
6.获取针对所述目标应用进行目标操作的若干操作属性信息;
7.利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文,所述预设加密算法针对相同明文输出相同密文;
8.基于所述若干属性密文,确定目标特征,所述目标特征用于表征所述目标操作的模式特点;
9.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作。
10.在一种可能的实施方式中,所述目标操作包括针对所述目标应用进行的多个操作动作,所述若干操作属性信息包括所述多个操作动作各自的若干动作属性信息;
11.所述根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作,包括:
12.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作动作。
13.在一种可能的实施方式中,所述操作动作包括点击动作或滑动动作中的一种或多种。
14.在一种可能的实施方式中,所述动作属性信息包括:所述操作动作的对应页面的spm编码、所述操作动作的对应控件的spm编码、所述操作动作的对应位置、所述操作动作对
应的时间戳、所述操作动作的对应页面的留存时间、所述操作动作与其邻接动作之间的间隔时间中的一种或多种。
15.在一种可能的实施方式中,所述目标特征包括操作序列特征;
16.基于所述若干属性密文,确定所述目标特征,包括;
17.根据所述若干属性密文构成的密文序列,通过预先训练的特征提取网络,获取所述操作序列特征;
18.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作,包括:
19.根据所述操作序列特征,通过预先训练的作弊分类网络,确定所述目标操作是否包括通过作弊脚本生成的操作。
20.在一种可能的实施方式中,所述终端上设置有作弊检测模型,所述作弊检测模型包括,所述特征提取网络和所述作弊分类网络。
21.在一种可能的实施方式中,所述目标特征包括操作信息分布特征;
22.基于所述若干属性密文,确定目标特征,包括:
23.根据所述若干属性密文,基于统计分布运算,获取所述操作信息分布特征;
24.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作,包括:
25.根据所述操作信息分布特征,基于预定的第一规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
26.在一种可能的实施方式中,所述目标特征包括操作频率特征;
27.基于所述若干属性密文,确定目标特征,包括;
28.根据所述若干属性密文,基于频率统计运算,确定所述目标操作的操作频率特征;
29.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作,包括:
30.根据操作频率特征,基于预定的第二规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
31.在一种可能的实施方式中,所述预设加密算法包括,哈希算法。
32.在一种可能的实施方式中,所述哈希算法为md5算法;
33.在一种可能的实施方式中,利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文,包括:
34.利用哈希算法,对所述若干操作属性信息进行加密,得到对应的若干第一密文;
35.对所述若干第一密文分别进行取模运算,获取所述若干属性密文。
36.根据第二方面,提供一种基于隐私保护在终端上检测脚本作弊的装置,所述终端上部署有目标应用,所述装置包括:
37.操作属性获取单元,配置为,获取针对所述目标应用进行目标操作的若干操作属性信息;
38.密文获取单元,配置为,利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文,所述预设加密算法针对相同明文输出相同密文;
39.特征确定单元,配置为,基于所述若干属性密文,确定目标特征,所述目标特征用于表征所述目标操作的模式特点;
40.判断单元,配置为,根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作。
41.在一种可能的实施方式中,所述目标操作包括针对所述目标应用进行的多个操作动作,所述若干操作属性信息包括所述多个操作动作各自的若干动作属性信息;
42.判断单元,进一步配置为:
43.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作动作。
44.在一种可能的实施方式中,所述操作动作包括点击动作或滑动动作中的一种或多种。
45.在一种可能的实施方式中,所述动作属性信息包括:所述操作动作的对应页面的spm编码、所述操作动作的对应控件的spm编码、所述操作动作的对应位置、所述操作动作对应的时间戳、所述操作动作的对应页面的留存时间、所述操作动作与其邻接动作之间的间隔时间中的一种或多种。
46.在一种可能的实施方式中,所述目标特征包括操作序列特征;
47.特征确定单元,进一步配置为:
48.根据所述若干属性密文构成的密文序列,通过预先训练的特征提取网络,获取所述操作序列特征;
49.判断单元,进一步配置为:
50.根据所述操作序列特征,通过预先训练的作弊分类网络,确定所述目标操作是否包括通过作弊脚本生成的操作。
51.在一种可能的实施方式中,所述终端上设置有作弊检测模型,所述作弊检测模型包括,所述特征提取网络和所述作弊分类网络。
52.在一种可能的实施方式中,所述目标特征包括操作信息分布特征;
53.特征确定单元,进一步配置为;
54.根据所述若干属性密文,基于统计分布运算,获取所述操作信息分布特征;
55.判断单元,进一步配置为:
56.根据所述操作信息分布特征,基于预定的第一规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
57.在一种可能的实施方式中,所述目标特征包括操作频率特征;
58.特征确定单元,进一步配置为;
59.根据所述若干属性密文,基于频率统计运算,确定所述目标操作的操作频率特征;
60.判断单元,进一步配置为:
61.根据操作频率特征,基于预定的第二规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
62.在一种可能的实施方式中,所述预设加密算法包括,哈希算法。
63.在一种可能的实施方式中,所述哈希算法为md5算法。
64.在一种可能的实施方式中,密文获取单元,进一步配置为:
65.利用哈希算法,对所述若干操作属性信息进行加密,得到对应的若干第一密文;
66.对所述若干第一密文分别进行取模运算,获取所述若干属性密文。
67.根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面所述的方法。
68.根据第四方面,提供了一种计算设备,包括存储器和处理器,所述存储器中存储有
可执行代码,所述处理器执行所述可执行代码时,实现第一方面所述的方法。
69.利用以上各个方面中的方法、装置、计算设备、存储介质中的一个或多个,可以在用户终端上有效地检测出通过作弊脚本进行的伪用户操作,以便对其进行防控,降低其造成的经济损失,还可以有效降低检测过程中使用的用户隐私信息被泄露的风险。
附图说明
70.为了更清楚说明本发明实施例的技术方案,下面将对实施例描述中所需使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
71.图1示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的方法的原理示意图;
72.图2示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的方法的流程图;
73.图3示出根据本说明书实施例的正常操作对应的密文序列和作弊脚本操作对应的密文序列的对比示意图;
74.图4示出根据本说明书实施例的一种人类操作属性信息与作弊脚本操作属性信息对应的密文分布的对比示意图;
75.图5示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的装置的结构图。
具体实施方式
76.下面将结合附图,对本发明书提供的方案进行描述。
77.很多互联网业务,通过用户终端上的对应的应用程序app,向用户提供业务访问入口和业务操作界面。但是,这些业务也会面临,作弊用户通过自动脚本进行特定业务操作,从而获取不正当利益的问题。例如,在一种虚拟种树业务中,用户可以通过浇水、收取树木能量等操作,获取一定的奖励。一些作弊用户可以只需要安装一些脚本插件,便可无需人工操作,通过脚本执行定时打开业务app、自动进行收取能量、浇水等操作,从而不合规则的获取利益。这种行为可以损害通过正常操作参与该业务的正常用户的利益,破坏了他们参与活动的积极性。在另一种有奖励红包的业务推广活动中,作弊用户可以通过脚本在人工不干预、不参与的情况下,持续地在线并且监控是否有红包可领。从而使得红包不能发送到正常参与用户的手中,破坏了活动的推广目的。
78.因此,对于很多业务活动来说,为了保证业务的正常进行、以及达到应有的效果,对于脚本作弊的检测和控制是至关重要的。并且,随着用户隐私的重要性也越来越凸显,在检测脚本作弊的过程,也要保证用户隐私信息不被泄露。现有的脚本作弊检测、以及用户数据的隐私保护的方法,其存在的问题在于,或者不能充分利用终端上的操作数据,并且对脚本作弊具有较高的识别率,或者不能在识别过程中对用户终端数据进行隐私保护。例如,一种现有的脚本作弊检测方案,基于采集的用户终端的设备层面信息(例如设备是否已被root),判断该终端是否具有利用脚本进行作弊的危险性。这种方法的缺点具体在于:一、相对于应用层面的终端信息的采集,对于设备层面的终端信息的采集受到的监管更加严格。
并且,还会受限于具体终端厂商开发/提供的信息采集接口,例如,在ios终端设备上的很多设备信息通常无法采集到。二,作弊判断强烈依赖于预定规则,由于判断规则本身基于收集的设备信息而制定,因此例如当设备硬件升级导致信息变更时,判断规则也需要更新维护。三,作弊识别依据的设备层面信息较少,识别出的作弊脚本数量占比较低,即识别率较低。
79.另一种现有的脚本作弊检测方案,主要在云端服务器端,基于用户发送的业务操作请求进行脚本作弊判断,例如根据是否存在异常频率的操作请求,确定是否有服务器接收的操作情求是作弊脚本所为。这种方法的弊端在于,云端对于操作的感知颗粒度较大,无法利用到终端上细粒度更高的用户操作数据(例如,应用页面上一秒钟内发生的高速点击,通常不一定每次点击都引发对于服务器的请求),因此判断脚本作弊的速度和准确率也不足。
80.而在对用户操作进行作弊检测的同时,保护用户操作信息不被泄露的问题,可以等价于,既要获取基于用户隐私数据的处理结果,又不泄露用户隐私数据本身。在现有技术中,解决这个问题通常可以采用包括例如同态加密在内的多方安全计算技术。例如,先通过同态加密函数,对不同参与方的用户数据进行加密。然后,根据加密后的数据进行运算。再对于得到的运算结果,通过与同态加密函数对应的解密函数进行解密,得到最终目标结果。但是这种方法的弊端在于:所用多方安全计算的算法复杂性通常较大,消耗的计算资源过高,通常主要用于云端服务器和云端服务器之间的计算任务,难以在终端上实施。
81.为了解决上述技术问题,本说明书实施例提供了一种基于隐私保护在终端上检测脚本作弊的方法。图1示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的方法的原理示意图。下面结合图1,描述该方法的核心思想。
82.首先,可以在客户端采集用户针对目标应用的操作信息。在不同的实施例中,例如可以采集针对目标应用的多个不同操作动作的属性信息。例如,在图1所示中,可以采集针对目标应用的不同操作动作(例如点击、滑动)的施加对象的标识(例如页面id、控件id)、动作发生的时间戳、与相邻动作之间的时间间隔、动作发生的位置、动作类型等。
83.然后,将采集的操作属性信息分别通过预定加密算法进行加密,获取分别对应的密文。在一个例子中,所用的加密算法例如可以是md5算法,在不同的实施例中,可以使用其他加密算法,只要可以达到针对不同数据得到不同密文即可。
84.接着,可以根据上述操作属性信息的密文,利用统计方法得到密文的统计特征。由于操作属性信息和密文存在一一对应关系,密文的统计特征实际上可以反映操作属性信息的统计特征,也就是说,实质上得到了操作属性信息的统计特征。例如,图1所示中,根据前述获取的多个操作信息对应的密文,可以分别统计出操作频率特征和/或操作信息分布特征。最后,可以根据上述统计特征,根据预定的判断规则,确定针对目标应用的操作中是否存在由作弊脚本发起的操作动作。例如,图1所示中,基于预定的判断规则2,根据获取的操作频率特征,确定操作信息密文对应的操作动作中是否存在由作弊脚本发起的操作(即第一结果)。在一个例子中,判断规则2例如可以为:若特定类型的操作动作,在预定时长内的发生频率高于预定的第一阈值(例如每秒10次),则所述操作动作,为通过作弊脚本生成的动作。则例如可以在所述操作动作发生时,记录其某种属性信息(例如为动作类型a),并加密得到该属性信息对应的属性密文,然后,统计出例如在t时间段内的、获取的对应属性密文的数量,进而确定该种操作动作在t时间段内的发生次数和发生频率。如果该种操作动作
例如在t时间段的发生频率超出第一阈值,则可以确定在t时间段内的该种操作动作,为作弊脚本生成的动作。如图1所示中,还可以基于预定的判断规则1,根据获取的操作信息分布特征,确定操作信息密文对应的操作动作中是否存在由作弊脚本发起的操作(即第二结果)。在一个例子中,判断规则1例如可以为:若特定动作属性信息的对应密文的分布与正态分布之间的差异度小于第二阈值,则该操作动作属性对应的操作动作,为作弊脚本发起的动作。则可以根据统计出的密文的分布、以及判断规则1,确定密文对应的动作是否为作弊脚本发起的动作。
85.还可以,将由操作属性信息的密文构成的密文序列,输入预先训练的特征提取网络,得到操作序列特征。而后根据得到的操作序列特征,输入预先训练的脚本作弊分类网络,得到脚本作弊分类结果,即用于确定上述若干操作信息密文对应的操作中,是否存在由作弊脚本发起的操作的分类结果(即第三结果)。
86.由此可见,本发明实施例提供的脚本作弊检测方法,基于对操作信息加密后的密文,通过统计方法获取密文的统计特征,进而根据统计特征判断出密文对应的操作是否为脚本作弊操作;或通过神经网络提取所述密文构成的密文序列的序列特征,并根据序列特征,判断密文序列中的密文对应的操作是否为脚本作弊操作。由于加密后的作弊判断基于对密文的处理结果,且根据预定的密文加密算法,该密文不能被逆向解密,也就是不能根据密文反向获取操作信息的原始数据。因此,这种方法可以使得检测使用的用户隐私信息,在作弊检测过程中不被泄露。
87.更为重要的,虽然根据加密后的密文不能直接获取其对应的原始数据,但是加密后产生的密文,与操作动作信息的原始数据基本上存在一一对应关系。也就是说,虽然不知道大量原始数据的值本身,但是原始数据的例如分布模式(或者说规律)、出现频率模式和排列序列模式,依旧存在于其对应的密文中。而通过统计方式或神经网络可以提取出反映这些分布模式、频率模式和序列模式的模式特征。
88.而相对于正常操作的属性信息,通过脚本生成的操作的属性信息,其分布模式、频率模式或序列模式中,不可避免的存在由于脚本生成方式产生的异常特征。例如,由作弊脚本生成的操作的属性信息,无论其脚本如何升级,通常不可避免的在以下一个或多个方面存在脚本作弊的特点:一、属性信息分布方面的异常。由于来源于脚本驱动,各种类型的属性信息的数据分布,明显不同于正常人类操作的属性信息通常呈现的正态分布。例如点击的位置呈现出在固定位置点上的平均分布,点击之间的间隔时间呈现集中分布等。二、操作动作构成的操作序列方面的异常。例如,一些作弊脚本为了避免点击目标控件(例如,虚拟种树活动中的
‘
收取能量’button)失败,常常在点击
‘
收取能量’操作时均连续点击两次,这显然与正常人类的操作序列不同。三、操作动作的频率方面的异常。例如,作弊脚本生成的操作动作,不受人类动作的生理局限,常常产生例如一秒钟点击20次这样的超高频率的非人类操作。
89.因此,在提取了待识别的操作动作信息的模式特征之后,可以利用例如预定的规则或神经网络分类器,识别其中是否存在上述异常模式特征,进而判断这些操作动作信息对应的动作是否由作弊脚本生成。综合而言,使用这种方法,可以在检测脚本作弊的同时,提供对于用户操作信息的隐私保护。并且,该方法可以在用户终端实施,一方面可以充分使用终端更丰富的操作数据,提高检测识别率。另一方面,直接在终端进行的检测,相对于依
赖于服务器的检测,信息通讯上的时间和资源消耗更少,通常检测速度更快,从而可以更快的根据检测结果,防止作弊行为带来的损失。
90.下面进一步阐述该方法的详细过程。图2示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的方法的流程图。如图2所述,该方法至少包括如下步骤:
91.步骤21,获取针对所述目标应用进行目标操作的若干操作属性信息;
92.步骤22,利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文,所述预设加密算法针对相同明文输出相同密文;
93.步骤23,基于所述若干属性密文,确定目标特征,用于指示所述目标操作的操作模式特点;
94.步骤24,根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作。
95.首先,在步骤21,获取针对目标应用进行目标操作的若干操作属性信息。该步骤中,目标应用可以是用户终端上任意的应用。在不同的实施例中,所述用户终端可以是不同类型的移动端设备,例如可以是手机、平板电脑、笔记本电脑、掌上电脑pda、可穿戴设备(如智能眼镜、智能手表等)等,本说明书对此不作限制。在一个实施例中,对目标应用进行的目标操作可以包括针对所述目标应用进行的多个操作动作,所述目标操作的若干操作属性信息包括所述多个操作动作各自的若干动作属性信息。例如,在一个具体的实施例中,操作动作可以包括以下动作中的一种或多种:点击动作、滑动动作、拖拽动作、输入动作、截屏动作等。在一个具体的实施例中,动作属性信息可以包括:所述操作动作的对应页面的spm编码、所述操作动作的对应控件的spm编码、所述操作动作的对应位置、所述操作动作对应的时间戳、所述操作动作的对应页面的留存时间、所述操作动作与其邻接动作之间的间隔时间中的一种或多种。
96.spm(shopping page mark,导购页面标记)编码,可以用于准确的标识操作动作对应的对象(例如网页、控件)。在一个实施例中,spm编码例如可以包括a.b.c.d四级编码。其中,a例如可以是站点id,站点id用于标识某特定业务的根站点。b例如可以是页面id,页面id可以标识某特定业务下的特定页面,例如该业务的首页,也就是说,spm的前两级编码(a.b)唯一标识了一个指定的页面。c例如可以是区域id,区域id用于标识页面上一个特定的区域,例如,
‘
额度展示’区域、
‘
我的详情’区域。d例如可以是控件id,用于表示是指页面特定的区域中,一个对应的链接、图片、卡片等可操作控件,例如,"看详情"按钮。在不同的具体实施例中,根据获取的操作的对应对象,采用具体的该对应对象的spm编码。在一个例子中,获取了操作动作的对应页面的spm编码,该smp编码可以采用a.b两级编码。在一个例子中,获取了操作动作的对应控件的spm编码,该smp编码可以采用a.b.c.d四级编码。
97.然后,在步骤22,利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文。
98.该步骤中,可以利用预先设定的加密算法进行加密。在不同的实施例中,可以采用不同的具体加密算法,只要其可以针对相同明文输出相同的密文。在一个实施例中,所述预设的加密算法可以是哈希算法。在一个具体的实施例中,其可以是md5算法。为了提高后续步骤的计算效率,可以对操作属性信息进行加密后得到的加密结果,进行基于预定被除数的取模运算,以得到的模值作为操作属性信息对应的属性密文。模值的长度通常短于初始
的加密结果,因此可以减少后续步骤的计算消耗,提高其计算效率。因此,在一个具体的实施例中,可以利用哈希算法,对所述若干操作属性信息进行加密,得到对应的若干第一密文;对所述若干第一密文分别进行取模运算,获取所述若干属性密文。
99.接着,在步骤23,基于所述若干属性密文,确定目标特征,用以指示所述目标操作的操作模式特点。
100.该步骤中,通过操作属性信息对应的属性密文确定的目标特征,例如可以是属性密文的分布/序列/发生频率方面的特征,由于这些特征本质上反映了不同的目标操作具有的不同的操作模式,因此,本说明书中也将该目标特征称为目标操作的模式特征。在不同的实施例中,可以使用不同的特征提取方式,确定出不同的具体模式特征。
101.通常,各个操作动作可以包含多个属性项的属性信息,在采集时这些属性信息可以按照一定顺序排列,进而在加密后,各自的密文可以仍然是原顺序排列。为了方便处理,在一个实施例中,可以依据上述顺序,按照属性项,对多个动作的属性密文进行整理,得到每个属性项对应的密文集合或密文序列,然后基于密文集合或密文序列,进行进一步的统计或特征提取。
102.如前所述,脚本生成的操作的属性信息常常在序列上具有不可避免的特点。例如,图3示出根据本说明书实施例的正常操作对应的密文序列和作弊脚本操作对应的密文序列的对比示意图。在如图3所示的实施例中,左图是正常人类在特定区域上例如点击操作的位置信息对应的密文序列,其中的各个字母例如
‘
a’、
‘
b’等,均表示一个完整位置信息对应的密文,其中的
‘
x’表示任意的位置信息对应的密文。从中可以看出,正常人类在特定区域上的点击位置呈现随机化的趋向。右图是作弊脚本生成的在特定区域上例如点击操作的位置信息对应的密文序列,从中可以看出,作弊脚本生成的在特定区域上的多个点击操作的点击位置,具有排列序列上的特征,例如特定的重复出现子序列,如右图中“abcdefg”、“abcxxcda”。因此,可以提取操作的属性信息序列的特征(或称操作序列特征),用于在后续步骤中,基于该特征确定其对应操作是否为作弊脚本生成。因此,在一个实施例中,可以基于所述若干属性密文,确定所述目标操作的操作序列特征。在一个具体的例子中,可以根据若干属性密文构成的密文序列,通过预先训练的特征提取网络,获取所述操作序列特征。在不同的实施例中,可以采用不同类型的特征提取网络。在一个例子中,特征提取网络可以基于有监督网络模型。在另一个例子中,特征提取网络可以基于无监督网络模型。
103.在另一个实施例中,可以基于若干属性密文,确定目标操作的操作信息分布特征作为前述模式特征。在一个具体的实施例中,例如可以基于分布统计运算,获取所述操作信息分布特征。在一个例子中,例如可以分别统计在特定时间段,一种操作(例如点击)所属的一种属性信息(例如与相邻点击的时间间隔)对应的各密文的出现次数,在该属性信息对应的所有密文的总出现次数中的占比。然后,后续步骤中可以根据所述占比,确定上述操作是否为作弊脚本生成。
104.图4示出根据本说明书实施例的一种人类操作属性信息与作弊脚本操作属性信息对应的密文分布的对比示意图。如图4所示,左图例如是统计出的,时间段1内获取的点击操作的例如
‘
与相邻点击的时间间隔’对应的各具体属性密文(左图中密文1-7)的占比分布图。右图例如是统计出的,时间段2内获取的点击操作的例如
‘
与相邻点击的时间间隔’属性对应的各具体属性密文(左图中密文1-2)的占比分布图。可以看到,左图的占比分布呈现出
(或近似于)正态分布,因此,可以确定时间段1内的点击操作为人类执行的。右图的占比分布显示,95%的点击操作的
‘
与相邻点击的时间间隔’时间均相同,这不符合人类操作的正常规律。因此,后续步骤中可以根据左图所示占比分布,确定时间段1内的点击操作为作弊脚本生成。需要注意的是,在不同的实施例中,可以根据不同的具体操作属性对应的密文,确定对应的具体操作信息分布特征,本说明书对此不做限制。在不同的实施例中,也可以基于不同的时间条件(例如,所有/特定时间段、特定时长内等)和空间条件(例如,操作动作发生的站点、页面、区域、控件等),进行统计计算,本说明书对此也不做限制。
105.在一个实施例中,还可以基于所述若干属性密文,确定所述目标操作的操作频率特征。在一个具体的实施例中,可以基于第二运算,确定所述目标操作的操作频率特征。例如,统计出在时间段3内,点击操作的频率为每秒100次,这显然超出正常人类的手速极限,因此,可以确定时间段3内的点击操作为作弊脚本生成。
106.此后,在步骤24,根据所述模式特征,确定所述目标操作是否包括通过作弊脚本生成的操作。
107.如上所述,针对目标应用的目标操作可以包括针对目标应用的多个操作动作。因此,该步骤中,可以根据所述模式特征,确定所述目标操作是否包括通过作弊脚本生成的操作动作。在不同的具体实施例中,可以根据不同的具体模式特征,确定目标操作是否包括通过作弊脚本生成的操作。例如,在上述提取操作序列特征的实施例中,可以根据所述操作序列特征,通过预先训练的作弊分类网络,确定所述目标操作是否包括通过作弊脚本生成的操作。在该实施例中,终端上的特征提取网络和作弊分类网络可以组成一个作弊检测模型。在上述提取操作信息分布特征的实施例中,可以根据所述操作信息分布特征,基于预定的第一规则,确定所述目标操作是否包括通过作弊脚本生成的操作。在一个具体的例子中,第一规则例如可以是上述的判断规则1。与在上述提取操作频率特征的实施例中,可以根据操作频率特征,基于预定的第二规则,确定所述目标操作是否包括通过作弊脚本生成的操作。在一个具体的例子中,第二规则例如可以是上述的判断规则2。
108.为了提高对于脚本作弊的识别率,在不同的实施例中,还可以结合根据不同的模式特征,确定的不同作弊判断结果,获取最终作弊判断结果。例如图1所示中的实施例中,若识别出的第一、第二和第三结果,分别为操作集合1、2和3。在一个实施例中,可以以操作集合1、2和3和合集,作为可能由作弊脚本生成的总操作集合。
109.根据另一方面的实施例,还提供一种基于隐私保护在终端上检测脚本作弊的装置。图5示出根据本说明书实施例的一种基于隐私保护在终端上检测脚本作弊的装置的结构图。终端上部署有目标应用,如图5所示,该装置500包括:
110.操作属性获取单元51,配置为,获取针对所述目标应用进行目标操作的若干操作属性信息;
111.密文获取单元52,配置为,利用预设加密算法,对所述若干操作属性信息进行加密,得到对应的若干属性密文,所述预设加密算法针对相同明文输出相同密文;
112.特征确定单元53,配置为,基于所述若干属性密文,确定目标特征,所述目标特征用于表征所述目标操作的模式特点;
113.判断单元54,配置为,根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作。
114.在一个实施例中,目标操作可以包括针对所述目标应用进行的多个操作动作,所述若干操作属性信息包括所述多个操作动作各自的若干动作属性信息;
115.判断单元,可以进一步配置为:
116.根据所述目标特征,确定所述目标操作是否包括通过作弊脚本生成的操作动作。
117.在一个实施例中,操作动作可以包括点击动作或滑动动作中的一种或多种。
118.在一个实施例中,动作属性信息可以包括:所述操作动作的对应页面的spm编码、所述操作动作的对应控件的spm编码、所述操作动作的对应位置、所述操作动作对应的时间戳、所述操作动作的对应页面的留存时间、所述操作动作与其邻接动作之间的间隔时间中的一种或多种。
119.在一个实施例中,目标特征可以包括操作序列特征;
120.特征确定单元,可以进一步配置为:
121.根据所述若干属性密文构成的密文序列,通过预先训练的特征提取网络,获取所述操作序列特征;
122.判断单元,可以进一步配置为:
123.根据所述操作序列特征,通过预先训练的作弊分类网络,确定所述目标操作是否包括通过作弊脚本生成的操作。
124.在一个实施例中,所述终端上可以设置有作弊检测模型,所述作弊检测模型包括,所述特征提取网络和所述作弊分类网络。
125.在一个实施例中,所述目标特征可以包括操作信息分布特征;
126.特征确定单元,可以进一步配置为;
127.根据所述若干属性密文,基于统计分布运算,获取所述操作信息分布特征;
128.判断单元,可以进一步配置为:
129.根据所述操作信息分布特征,基于预定的第一规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
130.在一个实施例中,所述目标特征可以包括操作频率特征;
131.特征确定单元,可以进一步配置为;
132.根据所述若干属性密文,基于频率统计运算,确定所述目标操作的操作频率特征;
133.判断单元,可以进一步配置为:
134.根据操作频率特征,基于预定的第二规则,确定所述目标操作是否包括通过作弊脚本生成的操作。
135.在一个实施例中,所述预设加密算法可以包括,哈希算法。
136.在一个实施例中,所述哈希算法可以为md5算法。
137.在一个实施例中,密文获取单元,可以进一步配置为:
138.利用哈希算法,对所述若干操作属性信息进行加密,得到对应的若干第一密文;
139.对所述若干第一密文分别进行取模运算,获取所述若干属性密文。
140.本说明书又一方面提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项方法。
141.本说明书再一方面提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现上述任一项方法。
142.需要理解,本文中的“第一”,“第二”等描述,仅仅为了描述的简单而对相似概念进行区分,并不具有其他限定作用。
143.本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。
144.以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。