CN103024090B - 一种识别用户终端的方法和系统 - Google Patents

一种识别用户终端的方法和系统 Download PDF

Info

Publication number
CN103024090B
CN103024090B CN201110280085.XA CN201110280085A CN103024090B CN 103024090 B CN103024090 B CN 103024090B CN 201110280085 A CN201110280085 A CN 201110280085A CN 103024090 B CN103024090 B CN 103024090B
Authority
CN
China
Prior art keywords
terminal
information
hardware
compared
hardware information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110280085.XA
Other languages
English (en)
Other versions
CN103024090A (zh
Inventor
刘坤
徐敏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201110280085.XA priority Critical patent/CN103024090B/zh
Publication of CN103024090A publication Critical patent/CN103024090A/zh
Priority to HK13106137.6A priority patent/HK1179431A1/zh
Application granted granted Critical
Publication of CN103024090B publication Critical patent/CN103024090B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本申请公开了一种识别用户终端的方法和系统,该方法包括:判断第一终端中是否安装有硬件信息获取程序模块;在安装有所述硬件信息获取程序模块时,通过所述硬件信息获取程序模块获得所述第一终端的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;在没有安装有所述硬件信息获取程序模块时,获得所述第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;基于所述硬件信息或所述浏览器软件信息,识别所述第一终端。采用本方法,在无论是否安装有用户控件时,都可以准确的识别出用户终端。

Description

一种识别用户终端的方法和系统
技术领域
本申请涉及网络技术领域中的识别技术,具体而言,尤其是涉及一种识别用户终端的方法和系统。
背景技术
随着社会的不断进步,网络也飞速发展,成为了我们日常生活中不可或缺的一块,每天都会有成千上万的人在网上购物,浏览新闻等。在现有计算机网络中,一个用户为做不同的事情可能就要登录不同的网站或者平台,在网站上就可能注册了很多不同的ID,这些ID之间是否有联系,或者这些ID是由多个用户注册还是由同一个用户注册,这些信息对于如何有效地进行业务的控制,用户的管理,风险控制及商业智能分析,是非常重要的。
为此,在现有技术中,就产生了很多用户终端识别技术。在现有技术中的识别技术中,基本都是通过网络中的服务器或计算机,在用户访问网站的时候,将用户机器上的数据收集回来,通过这些数据,判断出来来自于哪台机器,从而判定操作这台机器的是什么人。
在现有识别用户终端的技术中,应用的最广泛的就是利用浏览器控件来获取MAC地址(以太网地址)来实现识别。
在运用上述方法时,用户首先需要安装某个网站提供的浏览器控件,在用户访问该网站页面的时候,页面会调用这个浏览器控件获取到系统的MAC地址,然后通过页面把这个MAC地址传回到服务器。由于MAC地址理论上来说,所有上网的机器都不同,因此,也就能够区分出用户机器来。
但是,上述方法通过MAC地址来识别用户机器的时候,发明人在发明本申请实施例中技术方案的过程中,发现上述方法至少存在以下问题:
1、必须通过浏览器控件才能够获取到MAC地址,如果用户没有安装该控件,则获取不到MAC地址数据,在没有安装控件的情况下,应用上述方法,就没法识别出用户终端;
2、获取到的MAC地址是从注册表中获取的,而注册表中的MAC地址是很容易被人篡改或伪造的,所以,存在获得的MAC地址不准确,甚至不真实的问题;
3、由于是直接将获得的MAC地址返回给服务器,没有进行加密,所以,在通过页面传回服务器的过程中,也存在被截取的风险;
4、在用户端系统兼容性不好的时候,还存在通过常规的API(ApplicationProgramming Interface,应用程序编程接口)是不能获取MAC地址的问题。
总之,本申请发明人在实现本申请实施例中技术方案的过程中,发现上述四个技术问题都会导致现有技术中存在不能准确识别用户终端的问题。
发明内容
本申请实施例提供一种识别用户终端的方法和系统,用以解决现有技术中不能准确识别用户终端的问题。
本申请实施例一提供一种识别用户终端的方法,包括:
获得第一终端的在所述第一终端硬件IO层获取的硬件信息,所述硬件信息中包含有用来识别第一终端的N个待比较硬件数据信息,其中N为大于或等于1的整数;
基于所述硬件信息,识别第一终端。
可选地,所述硬件信息为加密或非加密信息。
可选地,在所述硬件信息为加密信息时,基于所述硬件信息,识别第一终端,具体为:
解密所述硬件信息,获得解密后的硬件信息;
基于解密后的硬件信息,获得N个待比较硬件数据信息;
基于N个待比较硬件数据信息,识别第一终端。
可选地,基于N个待比较硬件数据信息,识别第一终端,具体包括:
基于N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定N个待比较硬件数据信息与所述K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个匹配度分值,其中K为大于或等于1的整数;
从所述K个匹配度分值中确定匹配度分值最高的终端对应的终端标识为第一终端的终端标识。
可选地,在基于所述硬件信息,识别第一终端之后,上述方法还包括:
将第一终端的终端标识发送给第一终端。
可选地,所述获得第一终端的在所述第一终端硬件IO层获取的硬件信息,具体包括:
使用所述浏览器控件调用应用程序编程接口中的设备控制函数;
运行所述设备控制函数连接到所述第一终端的输入/输出设备;
通过所述输入/输出设备的对象获取到所述输入/输出设备的属性,其中,所述属性中包括有所述第一终端的硬件信息。
为了能够保证能够准确识别出用户终端,本申请还通过实施例二提供一种识别终端的方法,包括:
判断第一终端中是否安装有硬件信息获取程序模块;
在安装有硬件信息获取程序模块时,通过硬件信息获取程序模块获得所述第一终端硬件IO层的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;
在没有安装有硬件信息获取程序模块时,获得第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;
基于所述硬件信息或所述浏览器软件信息,识别第一终端。
可选地,所述通过所述硬件信息获取程序模块从所述第一终端的硬件IO层获得所述第一终端的硬件信息,具体包括:
使用所述浏览器控件调用应用程序编程接口中的设备控制函数;
运行所述设备控制函数连接到所述第一终端的输入/输出设备;
通过所述输入/输出设备的对象获取到所述输入/输出设备的属性,其中,所述属性中包括有所述第一终端的硬件信息。
可选地,所述浏览器软件信息包括:存储在浏览器数据存储空间的随机字符串,浏览器中的属性值和Flash中的属性值,所述获得所述第一终端的浏览器软件信息,具体包括:
在页面脚本读取初始化时,获得所述存储在浏览器存储空间的随机字符串;
通过所述页面脚本获取所述浏览器的对象,所述对象中包括有属性值;
通过所述页面脚本的动作处理文件获取Flash组件包含的属性值。
可选地,通过所述硬件信息获取程序模块在所述第一终端的硬件IO层获得所述第一终端的硬件信息为加密信息或非加密信息。
可选地,在所述硬件信息为加密信息时,所述基于所述硬件信息或所述浏览器软件信息,识别所述第一终端,具体为:
解密所述硬件信息,获得解密后的硬件信息;
基于解密后的硬件信息,获得所述N个待比较硬件数据信息;基于所述浏览器软件信息获得所述M个待比较软件数据信息;
基于所述N个待比较硬件数据信息或所述M个待比较软件数据信息,识别所述第一终端。
可选地,基于所述N个待比较硬件数据信息或所述M个待比较软件数据信息,识别所述第一终端,具体包括:
基于所述N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定所述N个待比较硬件数据信息与所述K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;
或者,基于所述M个待比较软件数据信息,通过包含K个终端中每一终端的标准软件数据信息和终端标识间对应关系的数据库,确定所述M个待比较软件数据信息与所述K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;
处理所述K个对应硬件的匹配度分值或所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
可选地,在基于所述硬件信息或所述浏览器软件信息,识别所述第一终端之后,本申请实施例二提供的方法还包括:
将第一终端的终端标识发送给第一终端。
本申请还通过实施例三提供一种识别用户终端的系统,包括:
判断单元,用于判断第一终端中是否安装有硬件信息获取程序模块;
获取单元,用于在安装有所述硬件信息获取程序模块时,通过所述硬件信息获取程序模块在所述第一终端的硬件IO层获得所述第一终端的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;
在没有安装有所述硬件信息获取程序模块时,获得所述第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;
识别单元,用于基于所述硬件信息或所述浏览器软件信息,识别所述第一终端。
可选地,在安装有所述硬件信息获取程序模块时,所述硬件信息为加密信息或者非加密信息。
可选地,在所述硬件信息为加密信息时,所述识别单元具体包括:
解密单元,用于解密所述硬件信息,获得解密后的硬件信息;
匹配度分值确定单元一,用于基于所述解密后的硬件信息,确定所述N个待比较硬件数据信息与包含K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;
终端标识确定单元一,用于处理所述K个对应硬件的匹配度分值或所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
可选地,在没有安装有所述硬件信息获取程序模块时,所述识别单元具体包括:
匹配度分值确定单元二,用于基于所述浏览器软件信息,确定所述M个待比较软件数据信息与包含K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;
终端标识确定单元二,用于处理所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
本申请通过实施例中的一个实施例或者多个实施例,至少提供如下优点或者有益效果:
1、本申请识别用户终端的方法中,在用户安装有浏览器控件时,由于是从系统硬件IO层获取到的硬件信息,所以获取到的硬件信息相对来说更加精确;
2、本申请的MAC地址等硬件信息是通过浏览器控件在系统硬件IO层获取到的,这样就能够有效防止MAC地址信息被轻易截取和篡改的可能,即使修改注册表也不可以篡改或者伪造MAC地址信息;并且获取的硬件信息会加密之后,再通过页面发送回服务器,因此,通过页面也无法篡改该硬件信息,增加了安全性。
3、在用户没有安装浏览器控件的情况下也能够获取到浏览器的软件信息,且由于每个用户的浏览器软件信息的组合基本都不一样,并且数据存储控件相对稳定,存储的数据一般不会发生变化,所以,通过这些浏览器软件信息生成的终端标识在唯一性和稳定性上都能得到保证,也能够准确识别出用户来自于哪台终端。
附图说明
图1为本申请实施例一中识别用户终端的方法流程图;
图2为本申请实施例二中识别用户终端的方法流程图;
图3为本申请实施例三中识别用户终端系统的结构图;
图4为本申请实施例三中识别用户终端系统中识别单元的第一实施例结构图;
图5为本申请实施例三中识别用户终端系统中识别单元的第二实施例结构图。
具体实施方式
本申请实施例提供一种识别用户终端的方法和系统,用以在安装了浏览器控件和没有安装浏览器控件的情况下都可以准确的识别出用户终端。
下面结合实施例及附图对上述技术方案进行详细的说明。
如图1所示,在安装了浏览器控件的时候,本申请实施例一提供了一种识别用户终端的方法,包括:
步骤10:,获得第一终端的在该第一终端硬件IO层获取的硬件信息,该硬件信息中包含有用来识别该第一终端的N个待比较硬件数据信息,其中N为大于或等于1的整数;其中,从第一终端硬件IO层获取的硬件信息包括但不限于MAC地址、硬盘序列号等硬件信息。
在本实施例中,步骤10的具体实现过程为:
使用所述浏览器控件调用API(Application Programming Interface,应用程序编程接口)中的设备控制函数(Device Control函数),运行该设备控制函数连接到到硬盘、网卡等I/O(Input/Output:输入/输出)设备,然后通过所述I/O设备的对象获取到所述I/O设备的属性,属性中包括有本实施例中技术方案中所需要的硬件信息,如MAC地址、硬盘序列号、网卡地址等。
步骤11,基于该硬件信息,识别该第一终端。
其中,该硬件信息可以为加密信息,也可以为非加密信息;其中,加密信息的加密方式为对称加密方式;
在该硬件信息为加密信息时,对于步骤11,所述基于该硬件信息,识别该第一终端,具体为:
解密加密的硬件信息,获得解密后的硬件信息;
基于该解密后的硬件信息,获得N个待比较硬件数据信息;
基于N个待比较硬件数据信息,识别该第一终端。
其中,所述基于N个待比较硬件数据信息,识别所述第一终端,具体包括:
基于该N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定N个待比较硬件数据信息与K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个匹配度分值,其中K为大于或等于1的整数;如:所述第一终端有a,b两个待比较硬件数据信息,有A,B,C三个终端,就将a和b分别与三个终端A,B,C的标准硬件数据信息进行匹配,每匹配成功一项,就给匹配成功的相应的终端加上一个预定的分值,就获得了所述第一终端与所述三个终端A,B,C的匹配度分值;当然,在实际应用过程中,也可以根据需要用不同的方式表达匹配度,如:配上一个就减去相应分值,用百分率表示等等,在此就不再一一列举了。
从所述K个匹配度分值中确定匹配度分值最高的终端对应的终端标识为所述第一终端的终端标识。如:上述三个终端A,B,C对应硬件的匹配度分值分别为:0分,0分,2分,那么C终端对应的终端标识就为所述第一终端的终端标识,即可判断出使用某些ID的用户是来自于该终端。
进一步的,在步骤11,基于所述硬件信息,识别所述第一终端之后,上述实施例一提供的方法还包括:
将第一终端的终端标识发送给第一终端。
如图2所示,为了能够在没有安装浏览器控件的时候也能够准确的识别出用户终端,本申请实施例二提供一种识别终端的方法,包括:
步骤20,判断第一终端中是否安装有硬件信息获取程序模块;
步骤21,在安装有硬件信息获取程序模块时,通过硬件信息获取程序模块获得第一终端的硬件信息,该硬件信息中包括有N个待比较硬件数据信息;其中,所述硬件信息可以从第一终端的硬件IO层获取,且从第一终端硬件IO层获取的硬件信息包括但不限于MAC地址、硬盘序列号等硬件信息;
在本实施例中,所述硬件信获取程序模块可为浏览器控件,步骤21的具体实现过程为:
使用所述浏览器控件调用API(Application Programming Interface,应用程序编程接口)中的设备控制函数(Device Control函数),运行该设备控制函数连接到到硬盘、网卡等I/O(Input/Output:输入/输出)设备,然后通过所述I/O设备的对象获取到所述I/O设备的属性,属性中包括有本实施例中技术方案中所需要的硬件信息,如MAC地址、硬盘序列号、网卡地址等。
步骤22,在没有安装有硬件信息获取程序模块时,获得第一终端的浏览器软件信息,该浏览器软件信息中包括有M个待比较软件数据信息;其中,获得的浏览器软件信息可以通过页面脚本来获得,所述浏览器软件信息包括但不限于存储在Cookie、Flash Cookie等浏览器数据存储空间的随机字符串,以及浏览器和flash中的一些属性值。
在本实施例的具体实现过程中,页面脚本可以为Javascript,对于所述存储在Cookie、Flash Cookie等浏览器存储空间的随机字符串,可通过Javascript读取初始化时候获得,通过Javascript还可以获取到浏览器的Window、Navigator等对象,这些对象的属性值就包含大量的软件信息,如UserAgent(用户代理)等;另外,通过动作处理文件(Action JS)也可以获取Flash组件包含的属性值,通过该属性值可获得如CPU类型、屏幕色度等信息。
步骤23,基于该硬件信息或该浏览器软件信息,识别所述第一终端。
其中,在安装有硬件信息获取程序模块时,通过该硬件信息获取程序模块获得第一终端硬件IO层的硬件信息可以为加密信息,也可以是非加密信息,其中,加密信息的加密方式为对称加密方式。
并且,在该硬件信息为加密了的硬件信息时,所述基于硬件信息或浏览器软件信息,识别所述第一终端,具体为:
解密所述硬件信息,获得解密后的硬件信息;
基于解密后的硬件信息,获得N个待比较硬件数据信息;基于浏览器软件信息获得所述M个待比较软件数据信息;
基于N个待比较硬件数据信息或M个待比较软件数据信息,识别所述第一终端。
具体而言,基于N个待比较硬件数据信息或M个待比较软件数据信息,识别所述第一终端,包括:
基于N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定N个待比较硬件数据信息与K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;如:所述第一终端有a,b两个待比较硬件数据信息,有A,B,C三个终端,就将a和b分别与三个终端A,B,C的标准硬件数据信息进行匹配,每匹配成功一项,就给匹配成功的相应的终端加上一个预定的分值,就获得了所述第一终端与所述三个终端A,B,C的匹配度分值;当然,在实际应用过程中,也可以根据需要用不同的方式表达匹配度,如:配上一个就减去相应分值,用百分率表示等等,在此就不再一一列举了。
或者,基于M个待比较软件数据信息,通过包含K个终端中每一终端的标准软件数据信息和终端标识间对应关系的数据库,确定M个待比较软件数据信息与K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;同样,M个待比较软件数据信息与K个终端中每个终端的标准软件数据信息的匹配方式,也可以采用上述N个待比较硬件数据信息与K个终端中每个终端的标准硬件数据信息的匹配方式一样,从而获得K个对应软件的匹配度分值,如,所述第一终端有x,y,z三个待比较的软件数据信息,有A,B两个终端,就将三个带比较的软件数据信息x,y,z分别与两个终端A,B的标准软件数据信息进行匹配,每匹配成功一项,就给匹配成功的相应的终端加上一个预定的分值,就获得了所述第一终端与所述两个终端A,B的匹配度分值;当然,在实际应用过程中,也可以根据需要用不同的方式表达匹配度,如:配上一个就减去相应分值,用百分率表示等等,在此,就不一一列举了。
处理所述K个对应硬件的匹配度分值或所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
如果处理的是所述K个对应硬件的匹配度分值时,经过处理之后,三个终端A,B,C对应的终端标识分别为0分,0分,2分,那么C终端对应的终端标识就为所述第一终端的终端标识,即可判断出使用某些ID的用户是来自于该终端C;
如果处理的是所述K个对应软件的匹配度分值时,经过处理之后,两个终端A,B对应的终端标识分别为1分,2分,那么B终端对应的终端标识就为所述第一终端的终端标识,即可判断出试用某些ID的用户来之与该终端B。
进一步的,在基于硬件信息或浏览器软件信息,识别第一终端之后,实施例二提供的方法还包括:
将第一终端的终端标识发送给第一终端。
如图3所示,本申请实施例三第一实施例提供一种识别用户终端的系统,包括:
判断单元301,用于判断第一终端中是否安装有硬件信息获取程序模块;
获取单元302,用于在安装有硬件信息获取程序模块时,通过硬件信息获取程序模块获得第一终端的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;其中,所述硬件信息可以是从第一终端IO层获取的,包括但不限于MAC地址、硬盘序列号等硬件信息;
在本实施例中,所述硬件信获取程序模块可为浏览器控件,获取单元302的具体实现过程为:
使用所述浏览器控件调用API(Application Programming Interface,应用程序编程接口)中的设备控制函数(Device Control函数),运行该设备控制函数连接到到硬盘、网卡等I/O(Input/Output:输入/输出)设备,然后通过所述I/O设备的对象获取到所述I/O设备的属性,属性中包括有本实施例中技术方案中所需要的硬件信息,如MAC地址、硬盘序列号、网卡地址等。
在没有安装有硬件信息获取程序模块时,获得第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;其中,获得的浏览器软件信息可以通过页面脚本来获得,所述浏览器软件信息包括但不限于存储在Cookie、Flash Cookie等浏览器数据存储空间的随机字符串,以及浏览器和flash中的一些属性值。
在本实施例的具体实现过程中,页面脚本可以为Javascript,对于所述存储在Cookie、Flash Cookie等浏览器存储空间的随机字符串,可通过Javascript读取初始化时候获得,通过Javascript还可以获取到浏览器的Window、Navigator等对象,这些对象的属性值就包含大量的软件信息,如UserAgent(用户代理)等;另外,通过动作处理文件(Action JS)也可以获取Flash组件包含的属性值,通过该属性值可获得如CPU类型、屏幕色度等信息。
识别单元303,用于基于所述硬件信息或所述浏览器软件信息,识别第一终端。
如图4所示,为本申请实施例三中识别单元303第一实施例结构图,在安装有硬件信息获取程序模块时,所述硬件信息为加密信息或者非加密信息;并且,
在所述硬件信息为加密信息时,识别单元303具体包括:
解密单元303A,用于解密所述硬件信息,获得解密后的硬件信息;
匹配度分值确定单元一303B,用于基于所述解密后的硬件信息,确定N个待比较硬件数据信息与包含K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;
终端标识确定单元一303C,用于处理所述K个对应硬件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
如图5所示,为本申请实施例三种识别单元303第二实施例结构图,在没有安装有所述硬件信息获取程序模块时,识别单元303具体包括:
匹配度分值确定单元二303D,用于基于浏览器软件信息,确定M个待比较软件数据信息与包含K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;
终端标识确定单元二303E,用于处理所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
当然,在实际应用过程中,由于有些网卡设备制造商不规范,网卡地址未走正常渠道分配,导致很多网卡的MAC地址是重复的,为了能够更加准确的识别出用户终端,结合本申请实施例中的多个实施例,可以想到同时获取系统硬件层的MAC地址信息和浏览器软件信息,根据硬件信息和浏览器软件信息来共同识别出用户终端,在当MAC地址不够准确的时候,通过浏览器软件信息也可以准确的识别出用户终端。
本申请通过实施例中的一个实施例或者多个实施例,具有如下优点或者有益效果:
1、本申请识别用户终端的方法中,在用户安装有浏览器控件的情况下,由于MAC地址等硬件信息是从系统硬件IO层获取到的,所以获取到的硬件信息相对来说更加精确;
2、本申请的MAC地址等硬件信息是通过浏览器控件在系统硬件IO层获取到的,这样就能够有效防止MAC地址信息被轻易截取和篡改的可能即使修改注册表也不可以篡改或者伪造MAC地址信息;并且获取的硬件信息会加密之后,再通过页面发送回服务器,因此,通过页面也无法篡改该硬件信息,增加了安全性。
3、在用户没有安装浏览器控件的情况下也能够获取到浏览器的软件信息,由于每个用户的浏览器软件信息的组合基本都不一样,并且数据存储控件相对稳定,存储的数据一般不会发生变化,所以,通过这些浏览器软件信息生成的终端标识在唯一性和稳定性上都能得到保证,也能够准确识别出用户来自于哪台终端。
本发明所设计的方法,可以使用任何计算机语言实现,且对于软件与硬件没有特殊要求。尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1.一种识别用户终端的方法,其特征在于,包括:
获得第一终端的在所述第一终端硬件IO层获取的硬件信息,所述硬件信息中包含有用来识别所述第一终端的N个待比较硬件数据信息,其中N为大于或等于1的整数;
基于所述硬件信息,识别所述第一终端;
其中,所述获得第一终端的在所述第一终端硬件IO层获取的硬件信息,具体包括:
使用浏览器控件调用应用程序编程接口中的设备控制函数;
运行所述设备控制函数连接到所述第一终端的输入/输出设备;
通过所述输入/输出设备的对象获取到所述输入/输出设备的属性,其中,所述属性中包括有所述第一终端的硬件信息。
2.如权利要求1所述的方法,其特征在于,所述硬件信息为加密或非加密信息。
3.如权利要求2所述的方法,其特征在于,在所述硬件信息为加密信息时,所述基于所述硬件信息,识别所述第一终端,具体为:
解密所述硬件信息,获得解密后的硬件信息;
基于所述解密后的硬件信息,获得所述N个待比较硬件数据信息;
基于所述N个待比较硬件数据信息,识别所述第一终端。
4.如权利要求1或3所述的方法,其特征在于,所述基于所述N个待比较硬件数据信息,识别所述第一终端,具体包括:
基于所述N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定所述N个待比较硬件数据信息与所述K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个匹配度分值,其中K为大于或等于1的整数;
从所述K个匹配度分值中确定匹配度分值最高的终端对应的终端标识为所述第一终端的终端标识。
5.如权利要求4所述的方法,其特征在于,在所述基于所述硬件信息,识别所述第一终端之后,所述方法还包括:
将所述第一终端的终端标识发送给所述第一终端。
6.一种识别用户终端的方法,其特征在于,包括:
判断第一终端中是否安装有硬件信息获取程序模块;
在安装有所述硬件信息获取程序模块时,通过所述硬件信息获取程序模块在所述第一终端的硬件IO层获得所述第一终端的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;
在没有安装有所述硬件信息获取程序模块时,获得所述第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;
基于所述硬件信息或所述浏览器软件信息,识别所述第一终端;
其中,所述通过所述硬件信息获取程序模块在所述第一终端的硬件IO层获得所述第一终端的硬件信息,具体包括:
使用所述浏览器控件调用应用程序编程接口中的设备控制函数;
运行所述设备控制函数连接到所述第一终端的输入/输出设备;
通过所述输入/输出设备的对象获取到所述输入/输出设备的属性,其中,所述属性中包括有所述第一终端的硬件信息。
7.如权利要求6所述的方法,其特征在于,所述浏览器软件信息包括:存储在浏览器数据存储空间的随机字符串,浏览器中的属性值和Flash中的属性值,所述获得所述第一终端的浏览器软件信息,具体包括:
在页面脚本读取初始化时,获得所述存储在浏览器存储空间的随机字符串;
通过所述页面脚本获取所述浏览器的对象,所述对象中包括有属性值;
通过所述页面脚本的动作处理文件获取Flash组件包含的属性值。
8.如权利要求6所述的方法,其特征在于,所述在安装有所述硬件信息获取程序模块时,通过所述硬件信息获取程序模块从所述第一终端的硬件IO层获得所述第一终端的硬件信息为加密信息或非加密信息。
9.如权利要求8所述的方法,其特征在于,在所述硬件信息为加密信息时,所述基于所述硬件信息或所述浏览器软件信息,识别所述第一终端,具体为:
解密所述硬件信息,获得解密后的硬件信息;
基于所述解密后的硬件信息,获得所述N个待比较硬件数据信息;基于所述浏览器软件信息获得所述M个待比较软件数据信息;
基于所述N个待比较硬件数据信息或所述M个待比较软件数据信息,识别所述第一终端。
10.如权利要求9所述的方法,其特征在于,所述基于所述N个待比较硬件数据信息或所述M个待比较软件数据信息,识别所述第一终端,具体包括:
基于所述N个待比较硬件数据信息,通过包含K个终端中每一终端的标准硬件数据信息和终端标识间对应关系的数据库,确定所述N个待比较硬件数据信息与所述K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;
或者,基于所述M个待比较软件数据信息,通过包含K个终端中每一终端的标准软件数据信息和终端标识间对应关系的数据库,确定所述M个待比较软件数据信息与所述K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;
处理所述K个对应硬件的匹配度分值或所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
11.如权利要求6-10任一权利要求所述的方法,其特征在于,在所述基于所述硬件信息或所述浏览器软件信息,识别所述第一终端之后,所述方法还包括:
将所述第一终端的终端标识发送给所述第一终端。
12.一种识别用户终端的系统,其特征在于,包括:
判断单元,用于判断第一终端中是否安装有硬件信息获取程序模块;
获取单元,用于在安装有所述硬件信息获取程序模块时,通过所述硬件信息获取程序模块在所述第一终端的硬件IO层获得所述第一终端的硬件信息,所述硬件信息中包括有N个待比较硬件数据信息;
在没有安装有所述硬件信息获取程序模块时,获得所述第一终端的浏览器软件信息,所述浏览器软件信息中包括有M个待比较软件数据信息;
识别单元,用于基于所述硬件信息或所述浏览器软件信息,识别所述第一终端。
13.如权利要求12所述的系统,其特征在于,在安装有所述硬件信息获取程序模块时,所述硬件信息为加密信息或者非加密信息。
14.如权利要求12所述的系统,其特征在于,在所述硬件信息为加密信息时,所述识别单元具体包括:
解密单元,用于解密所述硬件信息,获得解密后的硬件信息;
匹配度分值确定单元一,用于基于所述解密后的硬件信息,确定所述N个待比较硬件数据信息与包含K个终端中每个终端的标准硬件数据信息的匹配度,并获得K个对应硬件的匹配度分值;
终端标识确定单元一,用于处理所述K个对应硬件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
15.如权利要求12所述的系统,其特征在于,在没有安装有所述硬件信息获取程序模块时,所述识别单元具体包括:
匹配度分值确定单元二,用于基于所述浏览器软件信息,确定所述M个待比较软件数据信息与包含K个终端中每个终端的标准软件数据信息的匹配度,并获得K个对应软件的匹配度分值,其中K为大于或等于1的整数;
终端标识确定单元二,用于处理所述K个对应软件的匹配度分值,确定所述K个终端中一个终端对应的终端标识为所述第一终端的终端标识。
CN201110280085.XA 2011-09-20 2011-09-20 一种识别用户终端的方法和系统 Active CN103024090B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201110280085.XA CN103024090B (zh) 2011-09-20 2011-09-20 一种识别用户终端的方法和系统
HK13106137.6A HK1179431A1 (zh) 2011-09-20 2013-05-24 種識別用戶終端的方法和系統

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110280085.XA CN103024090B (zh) 2011-09-20 2011-09-20 一种识别用户终端的方法和系统

Publications (2)

Publication Number Publication Date
CN103024090A CN103024090A (zh) 2013-04-03
CN103024090B true CN103024090B (zh) 2015-07-01

Family

ID=47972212

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110280085.XA Active CN103024090B (zh) 2011-09-20 2011-09-20 一种识别用户终端的方法和系统

Country Status (2)

Country Link
CN (1) CN103024090B (zh)
HK (1) HK1179431A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104184713B (zh) 2013-05-27 2018-03-27 阿里巴巴集团控股有限公司 终端识别方法、机器识别码注册方法及相应系统、设备
CN104601436B (zh) * 2013-12-31 2016-11-16 腾讯科技(深圳)有限公司 一种账号的生成方法、终端及后台服务器
CN104573474B (zh) * 2014-09-10 2019-01-11 中电科技(北京)有限公司 一种基于uefi的身份标识生成系统和方法
CN105763521B (zh) * 2014-12-18 2019-09-20 阿里巴巴集团控股有限公司 一种设备验证方法及装置
CN106033510B (zh) 2015-03-13 2018-12-21 阿里巴巴集团控股有限公司 一种用户设备识别方法及系统
CN106294219B (zh) * 2015-05-26 2020-03-27 阿里巴巴集团控股有限公司 一种设备识别、数据处理方法、装置及系统
CN105847879B (zh) * 2016-03-17 2018-12-04 广州盈可视电子科技有限公司 一种服务器的服务程序对象的控制方法和装置
CN107995167B (zh) * 2017-11-14 2021-10-22 联动优势电子商务有限公司 一种设备识别方法及服务器
CN110177093A (zh) * 2019-05-22 2019-08-27 上海上湖信息技术有限公司 一种进行身份识别的设备、用于识别的设备及识别方法
CN111654734A (zh) * 2020-05-15 2020-09-11 海信视像科技股份有限公司 一种集控终端、显示设备以及机器编号设置方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622050A (zh) * 2003-11-24 2005-06-01 顺德市顺达电脑厂有限公司 计算机系统之硬件信息撷取及监测方法
CN101330420A (zh) * 2008-07-24 2008-12-24 中兴通讯股份有限公司 鉴权方法及装置、移动终端
CN101741561A (zh) * 2008-11-17 2010-06-16 联想(北京)有限公司 双向硬件认证方法及系统
CN101873331A (zh) * 2010-07-07 2010-10-27 中国工商银行股份有限公司 一种安全认证方法和系统
CN102025535A (zh) * 2010-11-17 2011-04-20 福建星网锐捷网络有限公司 虚拟机管理方法、装置及网络设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1622050A (zh) * 2003-11-24 2005-06-01 顺德市顺达电脑厂有限公司 计算机系统之硬件信息撷取及监测方法
CN101330420A (zh) * 2008-07-24 2008-12-24 中兴通讯股份有限公司 鉴权方法及装置、移动终端
CN101741561A (zh) * 2008-11-17 2010-06-16 联想(北京)有限公司 双向硬件认证方法及系统
CN101873331A (zh) * 2010-07-07 2010-10-27 中国工商银行股份有限公司 一种安全认证方法和系统
CN102025535A (zh) * 2010-11-17 2011-04-20 福建星网锐捷网络有限公司 虚拟机管理方法、装置及网络设备

Also Published As

Publication number Publication date
CN103024090A (zh) 2013-04-03
HK1179431A1 (zh) 2013-09-27

Similar Documents

Publication Publication Date Title
CN103024090B (zh) 一种识别用户终端的方法和系统
US10740411B2 (en) Determining repeat website users via browser uniqueness tracking
CN106878108B (zh) 网络流量回放测试方法及装置
US20140095308A1 (en) Advertisement distribution apparatus and advertisement distribution method
US20170318051A1 (en) Cyber-semantic account management system
CN102594806B (zh) 验证方法和广告投放服务器
US20150302466A1 (en) Data determination method and device for a thermodynamic chart
US11093565B2 (en) Methods and systems for identifying multiple devices belonging to a single user by merging deterministic and probabilistic data to generate a cross device data structure
CN104980421B (zh) 一种批量请求处理方法及系统
CN109685536B (zh) 用于输出信息的方法和装置
WO2017177778A1 (zh) 信息发送管理方法和装置、服务器和存储介质
CN109376534B (zh) 用于检测应用的方法和装置
CN105827582A (zh) 一种通信加密方法、装置和系统
CN112328486A (zh) 接口自动化测试方法、装置、计算机设备及存储介质
CN111476595A (zh) 产品推送方法、装置、计算机设备和存储介质
CN110708360A (zh) 一种信息处理方法、系统和电子设备
CN108040117A (zh) 信息推送方法及装置
CN104980420A (zh) 一种业务处理方法、装置、终端及服务器
US10922065B1 (en) Methods and systems for identifying software product installation instances
CN112181794A (zh) 页面监听方法、装置、计算机设备及存储介质
CN109408647B (zh) 用于处理信息的方法和装置
CN106790159A (zh) 密级校验方法及装置
CN111400027A (zh) 一种分布式任务处理方法、装置及系统
CN106469166A (zh) 一种信息处理方法及装置
CN112100534B (zh) 页面分享中的信息处理方法、装置、介质及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1179431

Country of ref document: HK

C14 Grant of patent or utility model
GR01 Patent grant
REG Reference to a national code

Ref country code: HK

Ref legal event code: GR

Ref document number: 1179431

Country of ref document: HK