一种移动设备标识验证的方法及装置与流程

文档序号:11710055阅读:470来源:国知局
一种移动设备标识验证的方法及装置与流程

本发明涉及移动设备标识验证技术领域,特别是一种移动设备标识验证的方法及装置。



背景技术:

移动互联网和广告技术的高速发展,吸引了消费者的注意力,越来越多的媒体和广告主把资金投入到移动流量中。但一部分媒体和机构受利益的趋势,进行流量作弊,包括将一次浏览模拟为多次浏览,使用机器人创造观看广告、点击和模拟注册等转化行为,给广告主带来的非常大的损失。

市场上的第三方效果评估机构,提供了一套评估体系,可以通过分析常用移动设备标识(或称为设备id)的访问频次,访问时间,访问位置,点击次数等行为数据进行分析,可以分析出一些行为异常并定义为异常流量。常用移动设备一般为android设备的imei,androidid以及ios设备的ios等。但一些高级媒体或机构调整作弊手段,通过创造虚假设备id或使用他人的真实设备id池来模拟广告浏览或转化行为。目前市场上的第三方评估机构的评估手段几乎无法判断出这一类的异常流量。原因是媒体或机构造成了第三方可获取到的数据就是虚假的,他们通过数据调整,将访问频次,时间,位置和点击频率等等维度的数据模拟得非常真实,同时不断切换虚假设备标识并保持多个设备标识之间的真实关系,造成第三方评估机构无法发现异常。更有专业的机构,通过木马病毒,恶意作弊程序等可以控制多台真实设备模拟成千万倍于真实设备的量进行虚假业务,包括各类点击注册等转化,留存,甚至手机号码注册等。



技术实现要素:

本发明需要解决的技术问题是提供一种安全可靠的验证移动设备标识的方法及装置。

为解决上述的技术问题,本发明的一种移动设备标识验证的方法,包括以下步骤,

步骤s101:移动设备id发送,应用程序通过接口查询到设备id,然后将设备id发送给外部系统;

步骤s102:验证码获取,应用程序通过验证模块向验证引擎获取验证码;

步骤s103:对应关系查询,应用程序查询真实设备id及某硬件设备信息对应关系;

步骤s104:移动设备id验证,应用程序将自己准备发送的设备id和验证码发送给外部系统,通过外部系统和验证服务器进行解密,解密后判断设备与某硬件设备之间的对应关系是否一致;如果一致,则验证通过;如果不一致,则确定本次请求异常。

进一步的,所述步骤s102中应用程序通过验证模块向验证引擎获取验证码,验证引擎相应查询,加密组装成验证码并返回给应用程序。

本发明还包括一种移动设备标识验证的装置,包括硬件层和系统层,所述硬件层包括硬件及接口,所述硬件及接口与系统层的验证引擎相连接,所述验证引擎与应用层的验证模块相连接,所述验证模块与外部系统相连接,所述外部系统与验证服务器通信连接;所述应用层的验证模块、系统层的验证引擎都与验证服务器相连接。

进一步的,所述系统层还包括通用接口,所述通用接口与系统层的验证引擎、应用层相连接。

采用上述方法和结构后,本发明系统层获取到设备标识信息更加可靠,应用程序的自有的作弊会被验证码发现;可以最根本上的设备id上发现作弊异常,充分保护广告主利益,提高作弊成本,净化行业环境。

附图说明

下面结合附图和具体实施方式对本发明作进一步详细的说明。

图1为本发明一种移动设备标识验证方法的流程示意图。

图2为本发明一种移动设备标识验证装置的结构框图。

图中:1为硬件层,2为系统层,3为应用层,4为外部系统,5为验证服务器,

201为通用接口,202为验证引擎,301为验证模块

具体实施方式

在未应用验证方法前,存在两种情况。

第一种情况:

1、应用程序通过接口查询设备id,设备id是123。

2、应用程序向外部系统发送请求时设备id变成了xyz,此时应用程序有可能主动修改或被木马篡改。

第二种情况:

1、应用程序通过接口查询设备id,设备id是xyz,可能是由于系统层被刷机或感染恶意病毒造成。

2、应用程序向外部系统发送请求时设备id变成了xyz,此时应用程序有可能主动修改或被木马篡改。

这两种情况下,外部系统收到的设备标识都是假标识,很难被判定为异常。

如图1所示,本发明的一种移动设备标识验证的方法,包括以下步骤,

步骤s101:移动设备id发送,应用程序通过接口查询到设备id,然后将设备id发送给外部系统,id=xyz。

步骤s102:验证码获取,应用程序通过验证模块向验证引擎获取验证码;验证引擎相应查询,加密组装成验证码并返回给应用程序。

步骤s103:对应关系查询,应用程序查询真实设备id及某硬件设备信息对应关系。假设验证引擎通过各种方案查询到真实设备id=123及某硬件设备=abc。

步骤s104:移动设备id验证,应用程序将自己准备发送的设备id和验证码发送给外部系统,通过外部系统和验证服务器进行解密,可以将***解密出123+abc,确定123与abc对应关系合理,并发现123与应用程序发送的xyz不一致,则被认为本次请求异常。

如图2所示,本发明还包括一种移动设备标识验证的装置,包括硬件层1和系统层2,所述硬件层1包括硬件及接口。所述硬件及接口与系统层2的验证引擎202相连接,所述验证引擎202与应用层3的验证模块301相连接,所述验证模块301与外部系统4相连接,所述外部系统4与验证服务器5通信连接;所述应用层3的验证模块301、系统层2的验证引擎202都与验证服务器5相连接。

其中,验证模块301可以从验证引擎202获取到验证码信息,在应用程序向外部发送其设备标识时,应用程序需要调用验证模块301,并由应用程序讲验证模块301返回的验证码添加到向外发送的请求中。应用程序在以往的发送中只需要通过系统层通用接口或许设备标识信息,而当前方法中需要通过验证模块获取验证码信息。验证模块301向外发送请求的工作仍旧由应用程序自主完成,只是需要添加验证码信息。系统认为只有添加了验证码的请求才是被验证过的可辨识真伪的请求。

验证引擎相比应用层有更高的系统权限,可以获取系统设备及系统运行过程中非常多的有用信息。在该方法和装置中,第一,验证引擎通过系统层通用接口可以查询到真实的设备标识信息,验证引擎的查询可以规避掉应用程序自己篡改设备标识信息的情况,将直接查询到的真实结果作为验证码的一部分;第二,验证引擎通过系统层可以查询到设备底层硬件信息,可以讲其中的某些硬件设备id作为验证码的一部分。使用硬件设备id作为验证码的一部分是,是考虑部分手机系统刷机后,恶意程序可能会控制常用设备id的查询接口,让引擎查询到的接口也是虚假设备id,硬件设备id几乎无法被篡改,因此保留设备id与硬件id对应关系,可以进一步降低作弊风险。

验证引擎提供一个查询接口,供验证模块进行查询。根据查询输入的内容不同,验证引擎会返回一个加密后的验证码,验证码可以被最终解密为多个设备标识信息。这些信息为验证引擎查询到的真实的设备标识,而非应用程序告知的设备标识信息。由于每次查询验证引擎时会有多个输入信息的变化,验证引擎每一次返回的结果均不同,因此要求应用程序不可以只查询一次验证码后多次使用,如果后续多次使用则后续验证码解析出的结果会判定为后续的请求异常。

验证服务器是管理验证引擎的服务器,同时具有数据分析的功能。其主要工作是管理验证引擎的加密功能,可以定期的实现加密算法的修改,保证验证引擎的加密规则和算法不被窃取。

验证服务器可以提供分析功能,当外部系统收集到数据后需要解密来判别请求真伪时,验证服务器可以通过解密验证码,分析验证码解析出来的设备id是否存在异常。分析的方法可以是:第一,直接使用应用程序请求中自带的设备标识与验证码解密出来的设备标识进行对比,若不一致可以认为存在异常;第二,验证码直接可以备解析出来一些信息,能够判断请求是否异常。验证服务器也可以提供不同组别的设备标识和设备标识之间的关系,供外部系统进行流量是否异常的判别。

通过上述的方法,应用程序在对外发布请求时除了应用程序自身需要发送设备标识外,还需要通过验证引擎获取验证码。外部系统可以通过验证码判断设备标识的异常情况,这样即使作弊机构模拟非常真实的用户行为,也无法绕过底层验证码的验证功能,从根本上发现异常流量。

进一步的,所述系统层2还包括通用接口201,所述通用接口201与系统层的验证引擎、应用层相连接。

虽然以上描述了本发明的具体实施方式,但是本领域熟练技术人员应当理解,这些仅是举例说明,可以对本实施方式作出多种变更或修改,而不背离本发明的原理和实质,本发明的保护范围仅由所附权利要求书限定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1