主动式设备指纹技术一般采用JS代码或SDK,在客户端主动地收集与设备相关的信息和特征,通过对这些特征的识别来辨别不同 的设备。通过SDK或JS脚本事先在终端埋点采集终端设备信息如APP的唯一性ID、MAC地址、WIFI列表、IDFA、IMEI等信息, 然后将采集信息以加密方式上报到云端,云端服务根据后台复杂的算法生成唯一的设备ID返回给前端。这种由前端采集要素生成 指纹的模式是主动采集模式。一般的设备特征信息有:
浏览器特征,包括UA、版本、OS、插件的配置、Canvas特征等;
设备的传感器特征,比如麦克风、加速传感器的特征等;
设备OS的特征,比如是否越狱等;
设备的配置,比如网络配置,系统flash的配置等;
是否ROOT或越狱
手机APP清单(列表)相关 开机时间相关 截屏次数相关
GPS地址相关 IP相关 网络类型(WIFI、4G、3G)
主动式设备指纹算法一般将这些信息组合起来,通过特定的hash算法得到一个设备指纹ID值,作为该设备的唯一标识符。 同时,考虑到设备指纹的稳定性,一般还会结合其他的持久化的存储技术,将设备指纹ID长期保存起来。
https://www.chinaz.com/2020/0828/1177680.shtml
https://blog.51cto.com/12755572/2049360
另外有两个人的文章可以看看。知乎:维摩诘,番茄风控大数据