CN105187566B - 一种用户标识的获取方法及装置 - Google Patents

一种用户标识的获取方法及装置 Download PDF

Info

Publication number
CN105187566B
CN105187566B CN201410240351.XA CN201410240351A CN105187566B CN 105187566 B CN105187566 B CN 105187566B CN 201410240351 A CN201410240351 A CN 201410240351A CN 105187566 B CN105187566 B CN 105187566B
Authority
CN
China
Prior art keywords
parameter
user
user identifier
result
obtains
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.)
Expired - Fee Related
Application number
CN201410240351.XA
Other languages
English (en)
Other versions
CN105187566A (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.)
FOUNDER DIGITAL PUBLISHING TECHNOLOGY (SHANGHAI) CO LTD
Peking University Founder Information Industry Group Co Ltd
Peking University Founder Group Co Ltd
Original Assignee
FOUNDER DIGITAL PUBLISHING TECHNOLOGY (SHANGHAI) CO LTD
Peking University Founder Information Industry Group Co Ltd
Peking University Founder Group Co 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 FOUNDER DIGITAL PUBLISHING TECHNOLOGY (SHANGHAI) CO LTD, Peking University Founder Information Industry Group Co Ltd, Peking University Founder Group Co Ltd filed Critical FOUNDER DIGITAL PUBLISHING TECHNOLOGY (SHANGHAI) CO LTD
Priority to CN201410240351.XA priority Critical patent/CN105187566B/zh
Publication of CN105187566A publication Critical patent/CN105187566A/zh
Application granted granted Critical
Publication of CN105187566B publication Critical patent/CN105187566B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提供了一种用户标识的获取方法及装置,解决现有技术不能方便、高效地生成用户标识字符串的问题。本发明的用户标识的获取方法包括:获取用户访问网站服务器时的用户访问参数以及网站服务器参数;对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识。本发明的用户标识的获取方法能够方便、快速地生成用户标识字符串,并且本发明可以验证用户标识字符串的真伪,提高了系统的安全性。

Description

一种用户标识的获取方法及装置
技术领域
本发明涉及计算机技术领域,特别是涉及一种用户标识的获取方法及装置。
背景技术
在互联网访问中,根据业务功能的需要,服务器端可能需要对每个访问的用户做出一个标识,以便在后续的处理中可以对用户进行识别和做相应的处理,生成的识别号码的长度是固定的,但又不能重复,保证每个用户分配到的识别号码都是独一无二的,这样才能将每个用户的操作隔离开来,保证安全性。
由于每天都会有大量的用户访问网站,网站需要保证每个用户都分配一个唯一的标识,并且该标识在用户后续的访问中一直存在,因此需要一种方法来快速生成一个定长且唯一的用户标识字符串。
发明内容
本发明的目的在于提供一种用户标识的获取方法及装置,用以解决现有算法不能方便、高效地生成用户标识的问题。
为了实现上述目的,本发明提供了一种用户标识的获取方法,包括:
获取用户访问网站服务器时的用户访问参数以及网站服务器参数;
对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;
根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识。
其中,所述用户访问参数包括:用户MAC地址和用户IP地址;所述网站服务器参数包括:用户进程ID、标识的时间以及序列号。
其中,所述对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果的步骤具体为:
对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果。
其中,所述对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果的步骤包括:
对所述用户MAC地址进行整数转换处理,得到第一参数;
对所述用户IP地址进行整数转换处理,得到第二参数;
对标识的时间进行整数转换处理,得到第三参数;
对所述序列号进行整数转换处理,得到第四参数;
根据所述第一参数、第二参数、第三参数、第四参数以及用户进程ID,得到所述处理结果。
其中,所述对所述用户MAC地址进行整数转换处理,得到第一参数的步骤包括:
将所述用户MAC地址中的第一个数值与第一预设值进行与运算,得出第一计算结果;
将所述第一计算结果与第二预设值相乘,得出第二计算结果;
将所述用户MAC地址中的第二个数值至第六个数值分别与第一预设值进行与运算后相加,得出第三计算结果;
将第三计算结果与所述第二计算结果相加后与第三预设值进行与运算,得出第一参数。
其中,所述对所述用户IP地址进行整数转换处理,得到第二参数的步骤包括:
将所述用户IP地址的第一个数值左移8位后与所述用户IP地址的第二个数值进行或运算,得出第四计算结果;
将所述第四计算结果左移8位,与所述用户IP地址的第三个数值进行或运算,得出第五计算结果;
将所述第五计算结果左移8位,与所述用户IP地址的第四个数值进行或运算,得出第二参数。
其中,所述对标识的时间进行整数转换处理,得到第三参数的步骤包括:
将当前时间转换为整数后与第四预设值相除取商,得出第六计算结果;
将所述第六计算结果减去第五预设值,得出第三参数。
其中,所述对所述序列号进行整数转换处理,得到第四参数的步骤包括:
将当前时间转换为整数后与第六预设值相除取商,得出第七计算结果;
将所述第七计算结果与第七预设值进行与运算,得出第四参数。
其中,所述根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识的步骤包括:
对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分;
根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分;
将所述第一部分和所述第二部分组合,获得所述用户标识。
其中,所述对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分的步骤包括:
将当前时间和一预设值进行与运算,得出第一计算值;
将所述第一计算值分别与所述第一参数、第二参数、用户进程ID、第三参数以及第四参数相除取余数,得到与所述第一参数对应的余数k1,与所述第二参数对应的余数k2;与所述第三参数对应的余数k3;与所述第四参数对应的余数k4以及与所述用户进程ID对应的余数k5;
将所述k1乘以所述第一参数对应的第二预设参数后与所述第一参数相加,得出第一结果,将所述k2乘以所述第二参数对应的第二预设参数后与所述第二参数相加,得出第二结果,将所述k3乘以所述第三参数对应的第二预设参数后与所述第三参数相加,得出第三结果,将所述k4乘以所述第四参数对应的第二预设参数后与所述第四参数相加,得出第四结果,将所述k5乘以所述用户进程ID对应的第二预设参数,得出第五结果;
将所述预设字符串中的位数字作为标识所述用户访问所述网站服务器的用户标识的第一部分。
其中,所述根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分的步骤包括:
通过公式Y1×(l+1)+Y2=R1;Rb×(l+1)+Yb+2=Rb+1的方式获取Rl-1;其中,1≤b≤l-2;l为所述第一部分的长度;Y1、Y2、Yb+2分别为所述第一部分的第1位、第二位和第b+2位字符;
将所述Rl-1与所述预设值进行与运算,得出一结果值D1
通过公式D1÷n=S1……T1;Sp÷n=Sp+1……Tp+1获取T1~TL-l,其中,1≤p≤L-l-1且p为整数;Sp+1为商,Tp+1为余数;L为所述用户标识的长度,l为所述第一部分的长度且L、l均为整数;;
将所述预设字符串中的第T1~TL-l位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。
其中,所述将所述第一部分和所述第二部分组合,获得所述用户标识的步骤具体为:
将所述第一部分和所述第二部分按预设顺序排序,获得所述用户标识。
其中,在所述将所述第一部分和所述第二部分组合,获得所述用户标识的步骤之后还包括:
判断所述用户标识字符串的长度是否为L,得出第一判断结果;
当所述第一判断结果为是时,判断所述用户标识字符串中的字符是否全部属于所述预设字符串,得出第二判断结果;
当所述第二结果为是时,确定所述用户标识为真,否则确定所述用户标识为伪造。
本发明的实施例还提供了一种用户标识的获取装置,包括:
第一获取模块,用于获取用户访问网站服务器时的用户访问参数以及网站服务器参数;
转换模块,用于对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;
第二获取模块,用于根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识。
其中,上述的用户标识的获取装置,所述用户访问参数包括:用户MAC地址和用户IP地址;所述网站服务器参数包括:用户进程ID、标识的时间以及序列号。
其中,所述转换模块具体通过对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果。
其中,所述转换模块包括:
第一转换模块,用于对所述用户MAC地址进行整数转换处理,得到第一参数;
第二转换模块,用于对所述用户IP地址进行整数转换处理,得到第二参数;
第三转换模块,用于对标识的时间进行整数转换处理,得到第三参数;
第四转换模块,用于对所述序列号进行整数转换处理,得到第四参数;
第三获取模块,用于根据所述第一参数、第二参数、第三参数、第四参数以及用户进程ID,得到所述处理结果。
其中,所述第一转换模块包括:
第一计算模块,用于将所述用户MAC地址中的第一个数值与第一预设值进行与运算,得出第一计算结果;
第二计算模块,用户将所述第一计算结果与第二预设值相乘,得出第二计算结果;
第三计算模块,用于将所述用户MAC地址中的第二个数值至第六个数值分别与第一预设值进行与运算后相加,得出第三计算结果;
第四获取模块,用于将第三计算结果与所述第二计算结果相加后与第三预设值进行与运算,得出第一参数。
其中,所述第二转换模块包括:
第四计算模块,用于将所述用户IP地址的第一个数值左移8位后与所述用户IP地址的第二个数值进行或运算,得出第四计算结果;
第五计算模块,用于将所述第四计算结果左移8位,与所述用户IP地址的第三个数值进行或运算,得出第五计算结果;
第五获取模块,用于将所述第五计算结果左移8位,与所述用户IP地址的第四个数值进行或运算,得出第二参数。
其中,所述第三转换模块包括:
第六计算模块,用于将当前时间转换为整数后与第四预设值相除取商,得出第六计算结果;
第六获取模块,用于将所述第六计算结果减去第五预设值,得出第三参数。
其中,所述第四转换模块包括:
第七计算模块,用于将当前时间转换为整数后与第六预设值相除取商,得出第七计算结果;
第七获取模块,用于将所述第七计算结果与第七预设值进行与运算,得出第四参数。
其中,所述第三获取模块包括:
第一编码模块,用于对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分;
第二编码部分,用于根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分;
获取模块,用于将所述第一部分和所述第二部分组合,获得所述用户标识。
其中,所述第一编码模块包括:
第一计算单元,用于将当前时间和一预设值进行与运算,得出第一计算值;
第二计算单元,用于将所述第一计算值分别与所述第一参数、第二参数、用户进程ID、第三参数以及第四参数对应的第一预设值相除取余数,得到与所述第一参数对应的余数k1,与所述第二参数对应的余数k2;与所述第三参数对应的余数k3;与所述第四参数对应的余数k4以及与所述用户进程ID对应的余数k5;
第三计算单元,用于将所述k1乘以所述第一参数对应的第二预设参数后与所述第一参数相加,得出第一结果,将所述k2乘以所述第二参数对应的第二预设参数后与所述第二参数相加,得出第二结果,将所述k3乘以所述第三参数对应的第二预设参数后与所述第三参数相加,得出第三结果,将所述k4乘以所述第四参数对应的第二预设参数后与所述第四参数相加,得出第四结果,将所述k5乘以所述用户进程ID对应的第二预设参数,得出第五结果;
第一获取单元,用于将所述预设字符串中的位数字作为标识所述用户访问所述网站服务器的用户标识的第一部分。
其中,所述第二编码模块包括:
第五计算单元,用于通过公式Y1×(l+1)+Y2=R1;Rb×(l+1)+Yb+2=Rb+1的方式获取Rl-1;其中,1≤b≤l-2;l为所述第一部分的长度;Y1、Y2、Yb+2分别为所述第一部分的第1位、第二位和第b+2位字符;
第六计算单元,用于将所述Rl-1与所述预设值进行与运算,得出一结果值D1
第七计算单元,用于通过公式D1÷n=S1……T1;Sp÷n=Sp+1……Tp+1获取T1~TL-l,其中,1≤p≤L-l-1且p为整数;Sp+1为商,Tp+1为余数;L为所述用户标识的长度,l为所述第一部分的长度且L、l均为整数;;
第二获取单元,用于将所述预设字符串中的第T1~TL-l位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。
其中,所述获取模块具体通过将所述第一部分和所述第二部分按预设顺序排序,获得所述用户标识。
其中,上述的用户标识的获取装置,还包括:
第一判断模块,用于将所述第一部分和所述第二部分组合,获得所述用户标识后判断所述用户标识字符串的长度是否为L,得出第一判断结果;
第二判断模块,用于当所述第一判断结果为是时,判断所述用户标识字符串中的字符是否全部属于所述预设字符串,得出第二判断结果;
处理模块,用于当所述第二结果为是时,确定所述用户标识为真,否则确定所述用户标识为伪造。
本发明实施例具有以下有益效果:
本发明实施例的用户标识的获取方法,根据预设算法对用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行计算处理,生成定长且唯一的用户标识字符串,同时本发明实施例还可以验证所述用户标识字符串的真伪,提高了系统的安全性。
附图说明
图1为本发明实施例的方法流程图;
图2为本发明实施例的工作原理图;
图3为本发明实施例的结构框图。
具体实施方式
为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合具体实施例及附图进行详细描述。
本发明实施例解决现有算法不能方便、高效地生成用户标识的问题,本发明实施例提供了一种用户标识的获取方法,如图1所示,所述用户标识的获取方法包括:
步骤10:获取用户访问网站服务器时的用户访问参数以及网站服务器参数;
其中,用户访问参数包括:用户MAC地址和用户IP地址;网站服务器参数包括:用户进程ID、标识的时间以及序列号。
步骤20:对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;
在本发明的具体实施例中,对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果。
步骤30:根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识。
在本发明的具体实施例中,如图2所示,先获取用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号五个参数;然后对五个参数进行转换处理,将参数转换为整数;再通过本发明实施例中得出用户标识的算法对转换为整数的五个参数进行计算,得出定长、唯一的用户标识,同时本发明实施例还具备防伪功能,提高了系统的安全性。
本发明实施例的用户标识的获取方法中,对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果的步骤包括:
对所述用户MAC地址进行整数转换处理,得到第一参数;
对所述用户IP地址进行整数转换处理,得到第二参数;
对标识的时间进行整数转换处理,得到第三参数;
对所述序列号进行整数转换处理,得到第四参数;
根据所述第一参数、第二参数、第三参数、第四参数以及用户进程ID,得到所述处理结果。
在本发明的具体实施例中,可以在java语言中获取到由六个数字组成的用户MAC地址,具体实现代码如下。
通过上述代码获取到用户MAC地址后,由于用户MAC地址是由十六进制表示的,如AE-89-D6-E8-FD-1D,不方便进行算术运算,因此需要对此进行整数换算,对所述用户MAC地址进行整数转换处理,得到第一参数的步骤包括:
将用户MAC地址中的第一个数值即AE与第一预设值255进行与运算,将用户MAC地址中的负数转换为一个整数,得出第一计算结果;
将所述第一计算结果与第二预设值256相乘,得出第二计算结果;
将所述用户MAC地址中的第二个数值至第六个数值分别与第一预设值255进行与运算后相加,得出第三计算结果;
将第三计算结果与所述第二计算结果相加后与第三预设值562949953421311进行与运算,得出第一参数。
在本发明的具体实施例中,可以通过从用户访问服务器的访问请求中获取由4个数字组成的用户IP地址。对所述用户IP地址进行整数转换处理,得到第二参数的步骤包括:
将用户IP地址的第一个数值左移8位后与所述用户IP地址的第二个数值进行或运算,得出第四计算结果;
将所述第四计算结果左移8位,与所述用户IP地址的第三个数值进行或运算,得出第五计算结果;
将所述第五计算结果左移8位,与所述用户IP地址的第四个数值进行或运算,得出第二参数。
在本发明的具体实施例中,在java语言中通过语言自带的方法可以获取到处理用户进程的用户进程ID,具体实现代码如下。
Private final static int PID=Integer.parseInt(ManagementFactory.getRuntimeMXBean().getName().split("@")[0]);
在本发明的具体实施例中,对标识的时间进行整数转换处理,得到第三参数的步骤包括:
将当前时间转换为整数后与第四预设值100相除取商,得出第六计算结果;其中,当前时间为运行算法的时间;
将所述第六计算结果减去第五预设值13054752000,得出第三参数。具体实现代码如下。
this.tokenTime=(int)(System.currentTimeMillis()/100-13054752000L);
在本发明的具体实施例中,对序列号进行整数转换处理,得到第四参数的步骤包括:
将当前时间转换为整数后与第六预设值1000相除取商,得出第七计算结果;
将所述第七计算结果与第七预设值67108863进行与运算,得出第四参数。
本发明具体实施例中,根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识的步骤包括:
对第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分;
根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分;
将所述第一部分和所述第二部分组合,获得所述用户标识。
其中,对第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分的步骤包括:
将当前时间和一预设值2147483647进行与运算,得出第一计算值;
将第一计算值分别与所述第一参数、第二参数、用户进程ID、第三参数以及第四参数相除取余数,得到与所述第一参数对应的余数k1,与所述第二参数对应的余数k2;与所述第三参数对应的余数k3;与所述第四参数对应的余数k4以及与所述用户进程ID对应的余数k5;
将k1乘以所述第一参数对应的第二预设参数后与所述第一参数相加,得出第一结果,将所述k2乘以所述第二参数对应的第二预设参数后与所述第二参数相加,得出第二结果,将所述k3乘以所述第三参数对应的第二预设参数后与所述第三参数相加,得出第三结果,将所述k4乘以所述第四参数对应的第二预设参数后与所述第四参数相加,得出第四结果,将所述k5乘以所述用户进程ID对应的第二预设参数,得出第五结果;
将所述预设字符串中的位数字作为标识所述用户访问所述网站服务器的用户标识的第一部分。
具体举例说明如下。
在本发明的具体实施例中,预设字符串为长度为61位的字符串base61,如3ibqZmxNpXOjlHIPQVSTUhWCBgFDctuYAzKd1fenyE6957rwMaLJ2kR4vso8G,假定要生成由33个字符组成的用户标识。
将当前时间和一预设值2147483647进行与运算,得出第一计算值;
如表1所示,将第一计算值除以第一参数对应的Mod值12取余数k1,然后将k1与第一参数对应的RandomBase值1000000000000000相乘后与第一参数相加得出第一结果A1;其中,Len为循环次数;
通过公式A1÷61=B1……C1;Ba÷61=Ba+1……Ca+1获取C1~C9,其中,1≤a≤8且a为整数;
将所述字符串base61中的第C1~C9位数字分别作为所述用户标识字符串的前9位数字Y1~Y9
同理,对第二参数、用户进程ID、第三参数以及第四参数按上述计算规则进行计算,最终得出5段编码数字,将5段编码数字按照上述参数顺序或者其他预设顺序进行组合,得出用户标识所述用户访问所述网站服务器的用户标识的第一部分Y1~Y30
Mod RandomBase Len
第一参数 12 1000000000000000 9
第二参数 5 10000000000 6
用户进程ID 0 0 3
标识的时间 32 100000000000 7
序列号 8 100000000 5
表1
本发明具体实施例中,根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分的步骤包括:
通过公式Y1×(l+1)+Y2=R1;Rb×(l+1)+Yb+2=Rb+1的方式获取Rl-1;其中,1≤b≤l-2;l为所述第一部分的长度;Y1、Y2、Yb+2分别为所述第一部分的第1位、第二位和第b+2位字符;
将所述Rl-1与所述预设值进行与运算,得出一结果值D1
通过公式D1÷n=S1……T1;Sp÷n=Sp+1……Tp+1获取T1~TL-l,其中,1≤p≤L-l-1且p为整数;Sp+1为商,Tp+1为余数;L为所述用户标识的长度,l为所述第一部分的长度且L、l均为整数;;
将所述预设字符串中的第T1~TL-l位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。举例说明如下。
在本发明具体实施例中,假定L的值为33,l的值为30。
通过公式Y1×31+Y2=R1;Rb×31+Yb+2=Rb+1的方式获取R29;其中,1≤b≤28;即将上述用户标识的第一部分中的第一位数字Y1乘以31,再加上第二个数字Y2,得出一计算结果,再将所述计算结果乘以31后加上第三个数字Y3,以此类推,最终获取R29
将R29与所述预设值2147483647进行与运算,得出一结果值D1
通过公式D1÷61=S1……T1;Sp÷61=Sp+1……Tp+1获取T1~T3,其中,1≤p≤2;
将所述预设字符串base61中的第T1~T3位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。
此时,将第一部分与第二部分按预设顺序进行排序,获得长度为33位的用户标识。
在本发明的具体实施例中,还可以验证用户标识的真伪,具体可以通过判断用户标识是否满足以下三个条件来判断用户标识的真伪。
(1)判断用户标识字符串的长度是否为33位,如果长度不为33位即此用户标识为伪造用户标识。
(2)当用户标识的长度为33位时,进一步判断这33位中的字符是否全部为base61中的字符,如果有一个不属于,即此用户标识为伪造用户标识。
(3)在上述具体算法中提到了最后三位数字是根据之前的30位字符计算得到的,因此可以通过相同的计算方法对用户标识中的前30位字符进行计算,如果最终得到相同的最后三位字符,即此用户标识为正确,否则即为伪造。
本发明实施例可以不依靠第三方工具或者软件,方便、高效地生成唯一的字符串,同时还具备防伪功能,可以满足网站对用户进行唯一标识的需求,另外算法中定义的base61字符串中的字符可以进行任意更改,因此即使知道用户标识计算算法,而不知道base61字符串中的61个字符,也无法进行用户标识的伪造,大大提高了安全性。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (26)

1.一种用户标识的获取方法,其特征在于,包括:
获取用户访问网站服务器时的用户访问参数以及网站服务器参数;
对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;
根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识,所述用户标识包括第一部分和第二部分,所述第二部分是根据第一部分生成的,且所述用户标识的长度为预定长度。
2.根据权利要求1所述的用户标识的获取方法,其特征在于,所述用户访问参数包括:用户MAC地址和用户IP地址;所述网站服务器参数包括:用户进程ID、标识的时间以及序列号。
3.根据权利要求2所述的用户标识的获取方法,其特征在于,所述对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果的步骤具体为:
对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果。
4.根据权利要求3所述的用户标识的获取方法,其特征在于,所述对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果的步骤包括:
对所述用户MAC地址进行整数转换处理,得到第一参数;
对所述用户IP地址进行整数转换处理,得到第二参数;
对标识的时间进行整数转换处理,得到第三参数;
对所述序列号进行整数转换处理,得到第四参数;
根据所述第一参数、第二参数、第三参数、第四参数以及用户进程ID,得到所述处理结果。
5.根据权利要求4所述的用户标识的获取方法,其特征在于,所述对所述用户MAC地址进行整数转换处理,得到第一参数的步骤包括:
将所述用户MAC地址中的第一个数值与第一预设值进行与运算,得出第一计算结果;
将所述第一计算结果与第二预设值相乘,得出第二计算结果;
将所述用户MAC地址中的第二个数值至第六个数值分别与第一预设值进行与运算后相加,得出第三计算结果;
将第三计算结果与所述第二计算结果相加后与第三预设值进行与运算,得出第一参数。
6.根据权利要求4所述的用户标识的获取方法,其特征在于,所述对所述用户IP地址进行整数转换处理,得到第二参数的步骤包括:
将所述用户IP地址的第一个数值左移8位后与所述用户IP地址的第二个数值进行或运算,得出第四计算结果;
将所述第四计算结果左移8位,与所述用户IP地址的第三个数值进行或运算,得出第五计算结果;
将所述第五计算结果左移8位,与所述用户IP地址的第四个数值进行或运算,得出第二参数。
7.根据权利要求4所述的用户标识的获取方法,其特征在于,所述对标识的时间进行整数转换处理,得到第三参数的步骤包括:
将当前时间转换为整数后与第四预设值相除取商,得出第六计算结果;
将所述第六计算结果减去第五预设值,得出第三参数。
8.根据权利要求4所述的用户标识的获取方法,其特征在于,所述对所述序列号进行整数转换处理,得到第四参数的步骤包括:
将当前时间转换为整数后与第六预设值相除取商,得出第七计算结果;
将所述第七计算结果与第七预设值进行与运算,得出第四参数。
9.根据权利要求4所述的用户标识的获取方法,其特征在于,所述根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识的步骤包括:
对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分;
根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分;
将所述第一部分和所述第二部分组合,获得所述用户标识。
10.根据权利要求9所述的用户标识的获取方法,其特征在于,所述对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分的步骤包括:
将当前时间和一预设值进行与运算,得出第一计算值;
将所述第一计算值分别与所述第一参数、第二参数、用户进程ID、第三参数以及第四参数对应的第一预设值相除取余数,得到与所述第一参数对应的余数k1,与所述第二参数对应的余数k2;与所述第三参数对应的余数k3;与所述第四参数对应的余数k4以及与所述用户进程ID对应的余数k5;
将所述k1乘以所述第一参数对应的第二预设参数后与所述第一参数相加,得出第一结果A1,将所述k2乘以所述第二参数对应的第二预设参数后与所述第二参数相加,得出第二结果A2,将所述k3乘以所述第三参数对应的第二预设参数后与所述第三参数相加,得出第三结果A3,将所述k4乘以所述第四参数对应的第二预设参数后与所述第四参数相加,得出第四结果A4,将所述k5乘以所述用户进程ID对应的第二预设参数,得出第五结果A5
通过公式 获取其中,1≤i≤5且i为整数;1≤a≤m-1,m≥1且a、m为整数;为商,为余数;n为一预设字符串的长度;
将所述预设字符串中的位数字作为标识所述用户访问所述网站服务器的用户标识的第一部分。
11.根据权利要求10所述的用户标识的获取方法,其特征在于,所述根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分的步骤包括:
通过公式Y1×(l+1)+Y2=R1;Rb×(l+1)+Yb+2=Rb+1的方式获取Rl-1;其中,1≤b≤l-2;l为所述第一部分的长度;Y1、Y2、Yb+2分别为所述第一部分的第1位、第二位和第b+2位字符;
将所述Rl-1与预设值进行与运算,得出一结果值D1
通过公式D1÷n=S1......T1;SP÷n=SP+1......TP+1获取T1~TL-l,其中,1≤p≤L-l-1且p为整数;Sp+1为商,Tp+1为余数;L为所述用户标识的长度,l为所述第一部分的长度且L、l均为整数;
将所述预设字符串中的第T1~TL-l位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。
12.根据权利要求9所述的用户标识的获取方法,其特征在于,所述将所述第一部分和所述第二部分组合,获得所述用户标识的步骤具体为:
将所述第一部分和所述第二部分按预设顺序排序,获得所述用户标识。
13.根据权利要求9所述的用户标识的获取方法,其特征在于,在所述将所述第一部分和所述第二部分组合,获得所述用户标识的步骤之后还包括:
判断所述用户标识字符串的长度是否为L,得出第一判断结果;
当所述第一判断结果为是时,判断所述用户标识字符串中的字符是否全部属于预设字符串,得出第二判断结果;
当所述第二判断结果为是时,确定所述用户标识为真,否则确定所述用户标识为伪造。
14.一种用户标识的获取装置,其特征在于,包括:
第一获取模块,用于获取用户访问网站服务器时的用户访问参数以及网站服务器参数;
转换模块,用于对所述用户访问参数以及所述网站服务器参数进行转换处理,得出一处理结果;
第二获取模块,用于根据所述处理结果,获得标识所述用户访问所述网站服务器的用户标识,所述用户标识包括第一部分和第二部分,所述第二部分是根据第一部分生成的,且所述用户标识的长度为预定长度。
15.根据权利要求14所述的用户标识的获取装置,其特征在于,所述用户访问参数包括:用户MAC地址和用户IP地址;所述网站服务器参数包括:用户进程ID、标识的时间以及序列号。
16.根据权利要求15所述的用户标识的获取装置,其特征在于,所述转换模块具体通过对所述用户MAC地址、用户IP地址、用户进程ID、标识的时间以及序列号进行整数转换处理,得出所述处理结果。
17.根据权利要求16所述的用户标识的获取装置,其特征在于,所述转换模块包括:
第一转换模块,用于对所述用户MAC地址进行整数转换处理,得到第一参数;
第二转换模块,用于对所述用户IP地址进行整数转换处理,得到第二参数;
第三转换模块,用于对标识的时间进行整数转换处理,得到第三参数;
第四转换模块,用于对所述序列号进行整数转换处理,得到第四参数;
第三获取模块,用于根据所述第一参数、第二参数、第三参数、第四参数以及用户进程ID,得到所述处理结果。
18.根据权利要求17所述的用户标识的获取装置,其特征在于,所述第一转换模块包括:
第一计算模块,用于将所述用户MAC地址中的第一个数值与第一预设值进行与运算,得出第一计算结果;
第二计算模块,用户将所述第一计算结果与第二预设值相乘,得出第二计算结果;
第三计算模块,用于将所述用户MAC地址中的第二个数值至第六个数值分别与第一预设值进行与运算后相加,得出第三计算结果;
第四获取模块,用于将第三计算结果与所述第二计算结果相加后与第三预设值进行与运算,得出第一参数。
19.根据权利要求17所述的用户标识的获取装置,其特征在于,所述第二转换模块包括:
第四计算模块,用于将所述用户IP地址的第一个数值左移8位后与所述用户IP地址的第二个数值进行或运算,得出第四计算结果;
第五计算模块,用于将所述第四计算结果左移8位,与所述用户IP地址的第三个数值进行或运算,得出第五计算结果;
第五获取模块,用于将所述第五计算结果左移8位,与所述用户IP地址的第四个数值进行或运算,得出第二参数。
20.根据权利要求17所述的用户标识的获取装置,其特征在于,所述第三转换模块包括:
第六计算模块,用于将当前时间转换为整数后与第四预设值相除取商,得出第六计算结果;
第六获取模块,用于将所述第六计算结果减去第五预设值,得出第三参数。
21.根据权利要求17所述的用户标识的获取装置,其特征在于,所述第四转换模块包括:
第七计算模块,用于将当前时间转换为整数后与第六预设值相除取商,得出第七计算结果;
第七获取模块,用于将所述第七计算结果与第七预设值进行与运算,得出第四参数。
22.根据权利要求17所述的用户标识的获取装置,其特征在于,所述第三获取模块包括:
第一编码模块,用于对所述第一参数、第二参数、用户进程ID、第三参数以及第四参数进行编码运算,获得标识所述用户访问所述网站服务器的用户标识的第一部分;
第二编码部分,用于根据所述第一部分,获得标识所述用户访问所述网站服务器的用户标识的第二部分;
获取模块,用于将所述第一部分和所述第二部分组合,获得所述用户标识。
23.根据权利要求22所述的用户标识的获取装置,其特征在于,所述第一编码模块包括:
第一计算单元,用于将当前时间和一预设值进行与运算,得出第一计算值;
第二计算单元,用于将所述第一计算值分别与所述第一参数、第二参数、用户进程ID、第三参数以及第四参数对应的第一预设值相除取余数,得到与所述第一参数对应的余数k1,与所述第二参数对应的余数k2;与所述第三参数对应的余数k3;与所述第四参数对应的余数k4以及与所述用户进程ID对应的余数k5;
第三计算单元,用于将所述k1乘以所述第一参数对应的第二预设参数后与所述第一参数相加,得出第一结果,将所述k2乘以所述第二参数对应的第二预设参数后与所述第二参数相加,得出第二结果,将所述k3乘以所述第三参数对应的第二预设参数后与所述第三参数相加,得出第三结果,将所述k4乘以所述第四参数对应的第二预设参数后与所述第四参数相加,得出第四结果,将所述k5乘以所述用户进程ID对应的第二预设参数,得出第五结果;
第四计算单元,用于通过公式 获取其中,1≤i≤5且i为整数;1≤a≤m-1,m≥1且a、m为整数;为商,为余数;n为一预设字符串的长度;
第一获取单元,用于将所述预设字符串中的位数字作为标识所述用户访问所述网站服务器的用户标识的第一部分。
24.根据权利要求23所述的用户标识的获取装置,其特征在于,所述第二编码模块包括:
第五计算单元,用于通过公式Y1×(l+1)+Y2=R1;Rb×(l+1)+Yb+2=Rb+1的方式获取Rl-1;其中,1≤b≤l-2;l为所述第一部分的长度;Y1、Y2、Yb+2分别为所述第一部分的第1位、第二位和第b+2位字符;
第六计算单元,用于将所述Rl-1与预设值进行与运算,得出一结果值D1
第七计算单元,用于通过公式D1÷n=S1......T1;SP÷n=SP+1......TP+1获取T1~TL-l,其中,1≤p≤L-l-1且p为整数;Sp+1为商,Tp+1为余数;L为所述用户标识的长度,l为所述第一部分的长度且L、l均为整数;
第二获取单元,用于将所述预设字符串中的第T1~TL-l位数字作为标识所述用户访问所述网站服务器的用户标识的第二部分。
25.根据权利要求22所述的用户标识的获取装置,其特征在于,所述获取模块具体通过将所述第一部分和所述第二部分按预设顺序排序,获得所述用户标识。
26.根据权利要求22所述的用户标识的获取装置,其特征在于,还包括:
第一判断模块,用于将所述第一部分和所述第二部分组合,获得所述用户标识后判断所述用户标识字符串的长度是否为L,得出第一判断结果;
第二判断模块,用于当所述第一判断结果为是时,判断所述用户标识字符串中的字符是否全部属于预设字符串,得出第二判断结果;
处理模块,用于当所述第二判断结果为是时,确定所述用户标识为真,否则确定所述用户标识为伪造。
CN201410240351.XA 2014-05-30 2014-05-30 一种用户标识的获取方法及装置 Expired - Fee Related CN105187566B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410240351.XA CN105187566B (zh) 2014-05-30 2014-05-30 一种用户标识的获取方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410240351.XA CN105187566B (zh) 2014-05-30 2014-05-30 一种用户标识的获取方法及装置

Publications (2)

Publication Number Publication Date
CN105187566A CN105187566A (zh) 2015-12-23
CN105187566B true CN105187566B (zh) 2018-08-07

Family

ID=54909405

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410240351.XA Expired - Fee Related CN105187566B (zh) 2014-05-30 2014-05-30 一种用户标识的获取方法及装置

Country Status (1)

Country Link
CN (1) CN105187566B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106657441A (zh) * 2017-01-11 2017-05-10 深圳证券通信有限公司 一种生成金融数据交换消息唯一包id的算法
CN110505306B (zh) * 2019-08-30 2021-12-21 公安部交通管理科学研究所 一种可指定位数的数据id生成方法
CN115686759B (zh) * 2023-01-04 2023-04-07 恒丰银行股份有限公司 一种计算虚拟机唯一识别码的方法及系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1816216A (zh) * 2005-01-28 2006-08-09 Lg电子株式会社 用于安全地发送移动用户标识符的方法和移动终端
CN1829213A (zh) * 2005-02-28 2006-09-06 西门子(中国)有限公司 一种在通信网络中将用户标识结构化的方法
CN1917711A (zh) * 2006-08-29 2007-02-21 中国移动通信集团公司 用户标识信息处理方法
CN101945092A (zh) * 2010-06-30 2011-01-12 赛尔网络有限公司 产生统一的互联网用户标识的方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9723463B2 (en) * 2010-10-25 2017-08-01 Nokia Technologies Oy Method and apparatus for a device identifier based solution for user identification

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1816216A (zh) * 2005-01-28 2006-08-09 Lg电子株式会社 用于安全地发送移动用户标识符的方法和移动终端
CN1829213A (zh) * 2005-02-28 2006-09-06 西门子(中国)有限公司 一种在通信网络中将用户标识结构化的方法
CN1917711A (zh) * 2006-08-29 2007-02-21 中国移动通信集团公司 用户标识信息处理方法
CN101945092A (zh) * 2010-06-30 2011-01-12 赛尔网络有限公司 产生统一的互联网用户标识的方法

Also Published As

Publication number Publication date
CN105187566A (zh) 2015-12-23

Similar Documents

Publication Publication Date Title
CN109617927B (zh) 一种匹配安全策略的方法及装置
CN108769111A (zh) 一种服务器连接方法、计算机可读存储介质及终端设备
CN105187566B (zh) 一种用户标识的获取方法及装置
Raikhlin et al. Reliable recognition of masked binary matrices. Connection to information security in map systems
CN111639368A (zh) 一种基于区块链的增量学习分布式计算方法、系统和节点
CN107579811A (zh) 一种基于sm3密码杂凑算法的硬件优化方法
CN106941400A (zh) 一种基于sram‑puf的模糊保险箱认证方法
Razborov On the Caccetta–Häggkvist conjecture with forbidden subgraphs
CN104580202B (zh) 报文的匹配方法和装置
CN109325367A (zh) 信息隐藏方法、装置、设备及计算机可读存储介质
CN107634765B (zh) 一种物联网编码方法及系统
CN108337092A (zh) 用于在通信网络中执行集体认证的方法和系统
CN110489466A (zh) 邀请码的生成方法、装置、终端设备及存储介质
CN106649217A (zh) 数据的匹配方法及装置
CN109474691A (zh) 一种物联网设备识别的方法及装置
CN104657432A (zh) 一种降低长地址转换为短地址重复率的方法
CN109460930B (zh) 一种确定风险账户的方法以及相关设备
CN105119876A (zh) 一种自动生成的域名的检测方法及系统
CN111311284B (zh) 基于区块链的化妆品溯源平台系统
Arshad et al. Security of graph data: Hashing schemes and definitions
TW201038036A (en) Method for generating hash keys and apparatus for using the same
CN114389822B (zh) 基于区块链的签名生成方法、装置、设备和存储介质
Suzuki et al. Multiple-valued debiasing for physically unclonable functions and its application to fuzzy extractors
CN114389821B (zh) 基于区块链的签名监管方法、装置、设备和存储介质
CN105956921A (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
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180807

Termination date: 20190530