随着手机系统对用户隐私的收紧,Android Q中IMEI难以获取。而iOS 14中IDFA难以获取,IMEI和IDFA的跟踪变得越来越鸡肋,各家公司都推出了自己的**ID,这类ID方案成为一种潜在的解决方案, 但其实这些通用ID方案的背后就是设备指纹,各种ID与时俱进,换了个名字。
我们来看一下市面的几个产品:
这三个产品的共同目的都是给设备生成一个唯一的设备ID,大家的目的都是相同的,都是获取信息,通过算法,生成设备ID,最后各家对这个产品的名字定义不一样的,毕竟商业化产品要做包装,可以用如下结构对上述三个产品做对比:
公司 | 获取信息 | 算法 | ID | 产品名字 |
---|---|---|---|---|
数盟科技 | 基于移动设备物理层和协议层的信息 | 数字联盟独有的算法 | 设备ID/唯一不变的“身份证” | 可信ID |
蚂蚁集团 | 基于多维度的设备信息 | 智能算法 | 设备 ID | 设备指纹 |
京东数科 | 基于设备探测技术在用户授权的情况下下采集设备和网络信息 | 采用深度学习算法 | 设备ID/设备(唯一)可信ID | 设备指纹 |
本质都是一样的,就是设备指纹。
收集了哪些信息?
各家收集的信息都会很多的,各家对信息的分类也不同。以某个标准为例,将设备信息分为两种类型:
1)显性标识符:能唯一识别设备,每台设备中显性标识符的取值都不相同。
2)隐性标识符:不能唯一区分设备,不同设备中隐性标识符的取值可能相同。
显性标识符指的是具有唯一识别能力的标识符,不会出现多个设备共享同一属性值的情 况。生成移动设备的设备指纹所需的设备信息包含显性标识符和隐性标识符。显性标识符可 以唯一识别设备,但由于显性标识符的不可靠、依赖敏感权限等特性,使得依据其生成的设 备指纹容易被禁用、被伪造而失效。如ANDROID_ID、CN、MAC、IP。
单个隐性标识符一般不能用来进行唯一识别设备,多个设备存在一定的概率共享同一属 性值。虽然单个隐性标识符不具备唯一识别能力,但是将多个隐性标识符组合起来,就可以 显著提高识别能力。隐性标识符零权限获取,主要包括:软件标识符、硬件标识符和用户行 为信息标识符:
采集了那么多的信息,有些是为了验证,有些是为了增加黑产的破解难度的,并不是都会用到的,对于容易被修改的信息往往是不会使用或权重很低。
算法生成ID方案
生成ID有两种思路:
这两种方式生成ID后都会与显性标识符做关联,映射,如imei,mac ,imsi ,android_id等,这种映射关系有些叫设备图谱 (Device Graph)/数据图谱(Identity Graph)/关系库/ID管理中心,不同的厂家对这个关系会有不同的名字。
当有信息过来的时候先要到这映射关系、山寨库(风险标签计算产生)里面去找,或通过校准算法去匹配,是不是有同样高度相似的的一个设备,如果没有,就生成一个ID,如果有就用已有下发。
至于在客户端生成还是服务端生成ID,为了在低速网络环境下也能够正常使用,往往是同时使用的,但以服务端为核心,服务端方便调整逻辑或和一些规则的阈值。
使用的到的算法?市面上所有厂家对ID的生成算法的表达都比较模糊的,有两个原因:第一个防范黑产的破解,如果公布太多信息,容易被黑产破解,本身已经是和黑产斗智斗勇的了,没必要给自己挖坑;另一种是以这个作为商业化的了,需要把自己包装更高大上一些,不要问,问就是什么高深算法,都要包装的很华丽。
风险标签计算
采集了那么多的信息,可以对设备做风险标签计算,简单的就是很多的规则,复杂的就是算法,在与黑产的斗智斗勇就是规则的完善和算法里参数和阈值的调整。
应用
如数据统计、风控安全、反欺诈,最重要的还是风控、反欺诈.
国内情况
每个互联网公司都会有这个需要的,互联网公司都要搞活动,不想被薅羊毛,所以每个互联网公司内部都有一个唯一的ID体系,用于风控和反欺诈,这是非常有效的一种方法。
通常头部互联网公司拥有比较全面的覆盖率,它们的ID体系是最完整的,但往往仅限于内部使用,如腾讯的QIMIE(虽然灯塔可以用,但这里说的是对外提供ID服务),现在也有部分头部企业准备开展这块业务,如蚂蚁和京东数科,除此之外,市面上本来就已经有很多的第三方公司在提供这类服务用于风控,这类的覆盖率就良莠不齐了。
哪家比较靠谱,你可以看哪家有服务于金融领域的客户,如银行、保险、证券和基金,因为金融从来都是对风控和法律合规最严格的领域,金融领域的客户使用它之前一定是经过严格的研究调查,安全性和有效性应该有保证。
国外如何对应?
国外也推出各种ID,有这么几种形式: