技术摘要:
本发明提供一种运用于控制安全风险的移动端手机设备唯一识别码的生成方法,属于移动开发安全控制技术领域,该运用于控制安全风险的移动端手机设备唯一识别码的生成方法包括以下步骤步骤S1:用户使用移动端手机APP首次打开应用,移动端手机APP判断应用是否获取设备的外 全部
背景技术:
在现有技术中,同类产品据我们所知大部分是利用大数据收集,形成自己的服务 器中心,对每一个设备号做唯一性判断和多唯独信息收集,当每一个新的手机出现时会到 数据库中心做对比,从而达到识别的目的。缺点是只有大公司大集群可以做,并不能适用到 普通公司和个人。 现有同类产品容易被android刷机后修改设备号IMEI等信息,实现薅羊毛的操作, 并且伪造识别符达到破坏者的目的。 而使用了我们的方案后:提高了设备唯一ID的目前使用设备标识的唯一性和稳定 性,增加了风险设备检测,可以标记使用虚拟机和修改系统的黑产。用户删除应用后创建新 账户也不会被认为是新用户,有效防止黑产获取新人优惠。提高用户数据真实性,为后续大 数据用户画像等提供基础,根据设备信息生成能够识别唯一设备的设备唯一ID,在各系统 版本下删除应用后本地持久化存储,识别模拟器设备和ROOT权限的风险设备。
技术实现要素:
本发明的目的在于提供一种运用于控制安全风险的移动端手机设备唯一识别码 的生成方法,旨在解决现有技术中的容易被android刷机后修改设备号 IMEI等信息,实现 薅羊毛的操作,并且伪造识别符达到破坏者目的的问题。 为实现上述目的,本发明提供如下技术方案: 一种运用于控制安全风险的移动端手机设备唯一识别码的生成方法,包括以下步 骤; 步骤S1:用户使用移动端手机APP首次打开应用,移动端手机APP判断应用是否获 取设备的外部存储权限: (a)若应用有获取设备的外部存储权限,则执行步骤S11; (b)若应用无获取设备的外部存储权限,则执行步骤S12; 步骤S11:应用会先从设备存储获取设备id,应用判断是否存在设备id: (c)若设备存在设备id,则执行步骤S111; (d)若设备不存在设备id,则执行步骤S112; 步骤S111:应用判断移动端手机APP是否为虚拟机以及是否ROOT: (e)若判断结果是“虚拟机或ROOT”,则应用上传设备风险标记,用以增加风险标 识; (f)若判断结果不是“虚拟机和ROOT”,则应用不会上传设备风险标记,用户使用唯 一ID; 4 CN 111601304 A 说 明 书 2/5 页 步骤S112:应用根据多维度设备信息生成唯一设备ID,然后执行步骤 S111; 步骤S12:应用提供申请设备外部读取权限选择: (g)同意设备外部读取权限并且成功,则会执行步骤S11; (h)拒绝则使用现有方案逻辑并做标记,现有方案使用系统内android ID作为唯 一ID,应用上传设备风险标记,用以增加风险标识,然后执行S111。 作为本发明一种优选的方案,在步骤S11中包括生成设备唯一ID,生成设备分别获 取多个系统信息字段,生成唯一标识符,若全部获取失败使用唯一随机数UUID作为备用,再 添加设备硬件信息,内存信息、屏幕物理分辨率、 cpu信息之后将信息进行MD5编码存储使 用。 作为本发明一种优选的方案,在步骤S12中包括外部存储模块,系统内android ID 生成新的设备唯一ID后,应用判断是否为Android10文件系统: (i)若新的设备唯一ID是Android10文件系统,应用会使用MediaStore 接口进行 ID保存,然后执行S121; (j)若新的设备唯一ID不是Android10文件系统,应用会使用文件保存系统进行ID 保存,然后执行S121; 步骤S121:应用使用隐藏文件和非特殊的文件名进行保存,使ID保存至外部,不随 应用删除。 作为本发明一种优选的方案,在S111和S12中均包括识别风险的设备,风险设备可 以通过修改系统文件或者模拟的方式,虚构或冒用设备唯一ID,应用为了保证设备唯一ID 的安全性,会进行模拟器特征检测和系统ROOT检测: (k)模拟器检测会在本地多维度地将设备信息和模拟器特征匹配,若设备符合多 条特征将被认为是模拟器用户; (l)系统ROOT检测则通过ROOT破解后的设备特征和安装程序进行检测,如果存在 则为使用ROOT破解用户,然后对设备进行风险标记。 作为本发明一种优选的方案,步骤S112中包括生成模块,生成模块根据设备信息 和唯一信息生成设备唯一的ID信息,保证设备唯一ID的唯一性; 外部存储模块储存设备ID,保证ID信息不随应用删除可以在设备中持久化存在, 保证设备唯一ID的稳定性; 风险设备识别模块,标记出存在修改设备信息的风险设备。 作为本发明一种优选的方案,所述系统唯一字段包括“IMEI”“移动安全联盟ID” “MACAddress” IMEI:手机设备唯一ID,可以唯一标识手机设备但是因为用户隐私,需要手机权限 获取并且Android10系统以后都将无法获取; 移动安全联盟ID:移动智能终端补充设备标识体系”华为、小米、 OPPO、vivo、中 兴、努比亚、魅族、联想、三星等设备厂商均将逐步实现则标识体系,方案中使用OVID匿名设 备标识符; MACAddress:设备MACAddress目前获取方式不受系统版本和权限限制; 避免上述系统唯一字段不唯一的情况,采用设备硬件信息的屏幕分辨率、内存大 5 CN 111601304 A 说 明 书 3/5 页 小、CPU信息和手机型号信息补充共同MD5加密后组成设备标识字符; 避免上述系统唯一字段不唯一的情况,采用设备硬件信息的屏幕分辨率、内存大 小、CPU信息和手机型号信息补充共同MD5加密后组成设备标识字符。 与现有技术相比,本发明的有益效果是: 1、提高了设备唯一ID的目前使用设备标识的唯一性和稳定性,增加了风险设备检 测,可以标记使用虚拟机和修改系统的黑产。用户删除应用后创建新账户也不会被认为是 新用户,有效防止黑产获取新人优惠。提高用户数据真实性,为后续大数据用户画像等提供 基础,本方案中可以根据设备信息生成能够识别唯一设备的设备唯一ID,在各系统版本下 删除应用后本地持久化存储,识别模拟器设备和ROOT权限的风险设备。 2、设备唯一ID即需要保证每个手机,能够生成不同的ID,保证唯一性;也需要尽可 能保证用户使用唯一ID的稳定性。既要防止黑产利用修改设备信息伪装成新设备,也要保 证用户正常使用能区分出不同的设备,本方案通过多个维度设备信息生成设备唯一ID保证 唯一性,通过文件外部存储保证稳定性,并通过针对虚拟机和Root系统做检测,标识可能修 改设备信息的风险用户,尽可能地保证了设备ID的可用性。 附图说明 附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实 施例一起用于解释本发明,并不构成对本发明的限制。在附图中: 图1为本发明的主流程图; 图2为本发明中的生成设备唯一ID模块内部流程图; 图3为本发明中的外部储存模块流程图; 图4为本发明中的增加风险标识内部流程图; 图5为本发明中的根据多维度设备信息生成唯一设备ID模块内部流程图; 图6为本发明中的唯一字段内部流程图。