CN107516038A - 一种确定设备指纹的方法及装置 - Google Patents
一种确定设备指纹的方法及装置 Download PDFInfo
- Publication number
- CN107516038A CN107516038A CN201710671989.2A CN201710671989A CN107516038A CN 107516038 A CN107516038 A CN 107516038A CN 201710671989 A CN201710671989 A CN 201710671989A CN 107516038 A CN107516038 A CN 107516038A
- Authority
- CN
- China
- Prior art keywords
- hardware information
- cryptographic hash
- character string
- fingerprint
- remainder
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Collating Specific Patterns (AREA)
Abstract
本申请涉及计算机技术领域,尤其涉及一种确定设备指纹的方法及装置,用以解决现有技术中存在的确定设备指纹的方案不稳定且确定出的设备指纹可能不唯一的问题。在本申请技术方案中,通过对硬件信息确定第一哈希值以及第二哈希值,并对得到的第一哈希值和第二哈希值分别进行位运算,之后将结果进行组合确定为电子设备的设备指纹,相比于现有技术确定设备指纹的方式而言,增加了字符串的复杂度,从而,提升了确定设备指纹的可靠性和准确性,避免不同电子设备确定出的设备指纹出现重复,保证设备指纹的唯一性。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种确定设备指纹的方法及装置。
背景技术
目前,设备指纹的使用越来越广泛,尤其是在电子设备的识别、权限验证等场景。
一般而言,电子设备的设备指纹可通过设备属性参数确定,例如,手机等移动终端可根据自身的国际移动设备识别码(International Mobile Equipment Identity,IMEI)、移动设备识别码(Mobile Equipment Identifier,MEID)或者电子序列号(ElectronicSerial Number,ESN)等作为设备指纹,或是以移动终端在联网状态下获取的MAC地址作为设备指纹。考虑到使用场景的要求,设备指纹必须具备唯一性以及准确性,即设备指纹能够唯一且准确的标识电子设备。然而,IMEI、MEID和ESN等码值只能从具备移动通信功能的手机等移动终端中获取,同理,MAC地址也只有在具备联网功能的电子设备中才能获取,除移动终端之外的其他电子设备则无法采用上述方式确定设备指纹。
此外,设备指纹还可以通过电子设备的ROM版本、CPU型号等硬件信息来确定,但是,不同电子设备中可能包含相同版本的ROM或相同型号的CPU,进而,导致确定的设备指纹并不唯一,即很有可能存在两个不同电子设备具备相同设备指纹的情况。
由此可知,既有的为电子设备确定设备指纹的方案不稳定,且确定出的设备指纹可能不唯一,亟需一种更为可靠、准确的方式为电子设备确定唯一设备指纹。
发明内容
本申请实施例提供一种确定设备指纹的方法及装置,用以解决现有技术中存在的确定设备指纹的方案不稳定且确定出的设备指纹可能不唯一的问题。
本申请实施例采用下述技术方案:
一种确定设备指纹的方法,包括:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
可选地,根据所述多个硬件信息确定第一哈希值,具体包括:
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;
对所述第一字符串进行哈希运算,得到所述第一哈希值。
可选地,所述每个硬件信息对应有预设的取余算法;
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串,具体包括:
为每个硬件信息分别查找相应的取余算法;
按照查找到的取余算法对相应硬件信息进行取余运算;
按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
可选地,根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值,具体包括:
从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
可选地,将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹,具体包括:
对所述第一哈希值执行位运算得到第一预设位数的字符串;
对所述第二哈希值执行位运算得到第二预设位数的字符串;
将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,作为所述电子设备的设备指纹。
一种确定设备指纹的装置,包括:
第一确定单元,用于确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
第二确定单元,用于根据所述多个硬件信息确定第一哈希值;
第三确定单元,用于根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
第四确定单元,用于将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
可选地,所述第二确定单元,具体用于:
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;
对所述第一字符串进行哈希运算,得到所述第一哈希值。
可选地,所述每个硬件信息对应有预设的取余算法;
所述第二确定单元在对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串时,具体用于:
为每个硬件信息分别查找相应的取余算法;
按照查找到的取余算法对相应硬件信息进行取余运算;
按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
可选地,所述第三确定单元,具体用于:
从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
可选地,所述第四确定单元,具体用于:
对所述第一哈希值执行位运算得到第一预设位数的字符串;
对所述第二哈希值执行位运算得到第二预设位数的字符串;
将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,确定为所述电子设备的设备指纹。
一种确定设备指纹的装置,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
一种计算机可读存储介质,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
本申请实施例采用的上述至少一个技术方案能够达到以下有益效果:
在本申请技术方案中,通过对硬件信息确定第一哈希值以及第二哈希值,并对得到的第一哈希值和第二哈希值分别进行位运算,之后将结果进行组合确定为电子设备的设备指纹,相比于现有技术确定设备指纹的方式而言,增加了字符串的复杂度,从而,提升了确定设备指纹的可靠性和准确性。具体地,采取取余处理,增加了得到的字符串的复杂度,同时,还在后续对得到的第一哈希值和第二哈希值分别进行位运算处理,进一步打乱了硬件信息的固有字符串,提升确定出的字符串的复杂度,避免不同电子设备确定出的设备指纹出现重复。从而,提升了确定电子设备的设备指纹的可靠性以及准确性,保证设备指纹的唯一性。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的确定设备指纹的方法的流程示意图;
图2为本申请提供的确定设备指纹的装置结构示意图;
图3为本申请所涉及的电子设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
实施例1
如图1所示,为本申请实施例提供的确定设备指纹的方法的流程示意图,该确定方案主要包括以下步骤:
步骤11:确定电子设备的多个硬件信息。
在本申请实施例中,所涉及到的硬件信息可以为预设长度的字符串,这些字符串可以是字母或数字的组合。其中,电子设备中的多个硬件信息可以包括:设备主板信息、系统定制商信息、CPU指令集信息、设备参数信息、硬件制造商信息、手机制造商信息。举例说明,设备主板信息可以为设备主板序列号,例如:201700004563;或者设备主板序列号与设备主板制造商标识拼接形成的序列号,例如:201700004563HWP2,其中,201700004563为设备主板序列号,HWP2为设备制造商标识。而硬件制造商信息是指该电子设备的制造商标识,不同于设备主板信息中所涉及的设备主板制造商标识。
在本步骤11中,确定电子设备的多个硬件信息,具体可以确定上述硬件信息中的至少两个,为了避免使用相同硬件信息可能会形成并不唯一的设备指纹,在确定之初,就可以使用多种类型的硬件信息,这样,就提升了硬件信息存在差异的可能性,因此,本步骤11中最佳方案是至少确定上述所涉及的7种硬件信息。
步骤12:根据多个硬件信息确定第一哈希值。
在本申请中,根据多个硬件信息,即多个字符串,利用哈希算法,得到一个哈希码值,确定为第一哈希值。
一种较佳的实现方式:步骤12在根据所述多个硬件信息确定第一哈希值时,具体执行为:
第一步,对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;
第二步,对所述第一字符串进行哈希运算,得到所述第一哈希值。
其实,在本申请中,可以预先存储多种取余算法,而每个硬件信息对应有相应的预设的取余算法;例如,可以是取余数为0的取余算法、取余数为3的取余算法等;其中,取余算法的类型可以大于硬件信息的类型,这样,可以保证硬件信息的取余方式比较灵活,且可以调整。取余算法的类型也可以小于硬件信息的类型,那么,可以预设多个硬件信息共同使用一种取余算法,而其他的硬件信息可以采用另外的一种或多种取余算法。其实,取余算法的类型还可以等于硬件信息的类型,这样,取余算法与硬件信息一一映射。
以上所涉及的一一映射关系或者一对多、多对一的映射关系,均可以存储在一种表中,该表中记录有硬件信息的标识与相应取余算法的对应关系,例如:硬件信息中的设备主板信息可以标记为信息a,取余算法中的取余数为0这一取余算法标记为A,两者相互映射对应。
根据上述所涉及的预存的映射关系,第一步在对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串时,具体执行为:
(1)为每个硬件信息分别查找相应的取余算法;具体可按照预存的映射关系,根据硬件信息的标识查找相对应的取余算法。
(2)按照查找到的取余算法对相应硬件信息进行取余运算。
一种取余处理:多个硬件信息查找到相同的取余算法,那么,对这些硬件信息采取相同的余数处理方式,得到对应每个硬件信息的余数。
另一种取余处理:多个硬件信息查找到不同的取余算法,那么,分别按照各自查找到的取余算法进行取余处理,得到对应每个硬件信息的余数。
(3)按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
其实,在本申请中,预设拼接规则可以根据用户的需求设定,例如,按照硬件信息的字符串长度由长到短的作为拼接顺序,对得到的多个硬件信息对应的余数进行拼接处理。这样,就得到一信息打乱且具有一定长度的字符串,确定为第一字符串。
由此,通过上述取余处理,可以按照预定规则打乱硬件信息的字符串信息,得到具有一定复杂度的第一字符串,该字符串经过取余处理,且有可能经过不同取余算法的处理,因此,得到的字符串的复杂度较高,且采用上述方式得到的第一字符串的唯一性较为可靠,几乎不会出现不同电子设备得到相同第一字符串的情况。
步骤13:根据从多个硬件信息中选取的一个硬件信息确定第二哈希值。
在本申请中,为了提升设备指纹的可靠性,还需要从该电子设备的多个硬件信息中选取任一硬件信息以确定第二哈希值,从而,利用第一哈希值和第二哈希值共同确定设备指纹,增加确定的复杂度,进而,提升设备指纹的准确性和可靠性,保证设备指纹的唯一性。
其实,考虑到硬件信息的字符串长度,影响了设备指纹的准确性和可靠性,若字符串长度越长,则不同电子设备的硬件信息的重复率就会比较低,反之,字符串长度越短,那么不同电子设备的硬件信息的重复率就会比较高。因此,可以选择字符串长度最长的硬件信息,来确定第二哈希值。
此外,本步骤13在根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值时,还可以具体执行为:
步骤a,从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
具体地,该阈值可以根据经验确定,或是以任一长度,例如十六位,作为阈值。凡是字符串长度大于十六位的硬件信息都可以作为确定第二哈希值的硬件信息,然后从中择一选取。
步骤b,对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
其实,该步骤中的哈希算法与上述所涉及的哈希算法类似。
需要说明的是,在本申请中,步骤12和步骤13的顺序可以不限,即两个步骤可以同时执行,也可以先执行步骤13的内容再执行步骤12的内容。
步骤14:将分别对第一哈希值和第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
其实,经过上述取余算法的处理,并对得到的第一哈希值和第二哈希值分别进行位运算,之后,将分别进行位运算的结果进行组合,确定为电子设备的设备指纹,由于采用了取余算法,且分别进行了两次哈希算法的处理,因此,可以在一定程度上提升得到的字符串(设备指纹)的可靠性、准确性,保证设备指纹的唯一性。
可选地,在本申请中,上述步骤14的一种较佳实现方式:对所述第一哈希值执行位运算得到第一预设位数的字符串;对所述第二哈希值执行位运算得到第二预设位数的字符串;将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,确定为所述电子设备的设备指纹。
具体地,假设第一哈希值C进行32位的位运算后,得到一个8位的字符串;同时,对第一哈希值C进行16位的位运算,得到一个4位的字符串。在对第一哈希值C进行两次位运算后,组合为一个12位的字符串,作为第一预设位数的字符串C’。
假设针对第二哈希值D进行64位的位运算,得到一个12位的字符串;同时,对第二哈希值D进行32位的位运算,得到一个8位的字符串。在对第二哈希值D进行两次位运算后,组合为一个20位的字符串,作为第二预设位数的字符串D’。
最后,将字符串C’和字符串D’进行首尾拼接形成新的字符串F,该字符串F即为所要确定的电子设备的设备指纹。其中,首尾拼接顺序可以按照第一、第二的顺序,或者按照预设拼接顺序。
由此,在本申请技术方案中,通过对硬件信息采取取余处理,增加了得到的字符串的复杂度,同时,还在后续对得到的第一哈希值和第二哈希值分别进行位运算处理,进一步打乱了硬件信息的固有字符串,提升确定出的字符串的复杂度,避免不同电子设备确定出的设备指纹出现重复。从而,提升了确定电子设备的设备指纹的可靠性以及准确性,保证设备指纹的唯一性。
基于相同的发明构思,本申请还提供了一种确定设备指纹的装置。
参照图2所示,为本申请提供的确定设备指纹的装置结构示意图,该确定装置主要包括:
第一确定单元21,用于确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
第二确定单元22,用于根据所述多个硬件信息确定第一哈希值;
第三确定单元23,用于根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
第四确定单元24,用于将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
可选地,所述第二确定单元22,具体用于:对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;对所述第一字符串进行哈希运算,得到所述第一哈希值。
可选地,所述每个硬件信息对应有预设的取余算法;所述第二确定单元22在对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串时,具体用于:
为每个硬件信息分别查找相应的取余算法;
按照查找到的取余算法对相应硬件信息进行取余运算;
按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
可选地,所述第三确定单元23,具体用于:
从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
可选地,所述第四确定单元24,具体用于:
对所述第一哈希值执行位运算得到第一预设位数的字符串;
对所述第二哈希值执行位运算得到第二预设位数的字符串;
将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,确定为所述电子设备的设备指纹。
本申请还提供了电子设备的结构示意图,参照图3所示,在硬件层面,该电子设备包括处理器31,可选地还包括内部总线32、网络接口33、存储器34。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
存储器34,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器34可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器31从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成盗号检测装置。处理器,用于执行存储器所存放的程序,并具体用于执行以下操作:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的电子设备执行时,能够使该电子设备执行图3所示实施例中异常登录行为检测装置执行的方法,并具体用于执行:
确定多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种确定设备指纹的方法,其特征在于,包括:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
2.如权利要求1所述的方法,其特征在于,根据所述多个硬件信息确定第一哈希值,具体包括:
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;
对所述第一字符串进行哈希运算,得到所述第一哈希值。
3.如权利要求2所述的方法,其特征在于,所述每个硬件信息对应有预设的取余算法;
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串,具体包括:
为每个硬件信息分别查找相应的取余算法;
按照查找到的取余算法对相应硬件信息进行取余运算;
按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
4.如权利要求1所述的方法,其特征在于,根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值,具体包括:
从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
5.如权利要求1所述的方法,其特征在于,将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹,具体包括:
对所述第一哈希值执行位运算得到第一预设位数的字符串;
对所述第二哈希值执行位运算得到第二预设位数的字符串;
将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,作为所述电子设备的设备指纹。
6.一种确定设备指纹的装置,其特征在于,包括:
第一确定单元,用于确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
第二确定单元,用于根据所述多个硬件信息确定第一哈希值;
第三确定单元,用于根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
第四确定单元,用于将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
7.如权利要求6所述的装置,其特征在于,所述第二确定单元,具体用于:
对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串;
对所述第一字符串进行哈希运算,得到所述第一哈希值。
8.如权利要求7所述的装置,其特征在于,所述每个硬件信息对应有预设的取余算法;
所述第二确定单元在对所述多个硬件信息分别进行取余处理,根据得到的余数确定第一字符串时,具体用于:
为每个硬件信息分别查找相应的取余算法;
按照查找到的取余算法对相应硬件信息进行取余运算;
按照预设拼接规则,将所述多个硬件信息进行取余处理后的余数进行拼接得到所述第一字符串。
9.如权利要求6所述的装置,其特征在于,所述第三确定单元,具体用于:
从所述多个硬件信息中选取字符串长度满足阈值的任一硬件信息;
对选取的任一硬件信息进行哈希运算,得到所述第二哈希值。
10.如权利要求6所述的装置,其特征在于,所述第四确定单元,具体用于:
对所述第一哈希值执行位运算得到第一预设位数的字符串;
对所述第二哈希值执行位运算得到第二预设位数的字符串;
将所述第一预设位数的字符串与所述第二预设位数的字符串首尾拼接形成新的字符串,确定为所述电子设备的设备指纹。
11.一种确定设备指纹的装置,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行以下操作:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被包括多个应用程序的电子设备执行时,使得所述电子设备执行以下操作:
确定电子设备的多个硬件信息,所述硬件信息为预设长度的字符串;
根据所述多个硬件信息确定第一哈希值;
根据从所述多个硬件信息中选取的一个硬件信息确定第二哈希值;
将分别对所述第一哈希值和所述第二哈希值执行位运算得到的结果进行组合,确定为所述电子设备的设备指纹。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671989.2A CN107516038B (zh) | 2017-08-08 | 2017-08-08 | 一种确定设备指纹的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710671989.2A CN107516038B (zh) | 2017-08-08 | 2017-08-08 | 一种确定设备指纹的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107516038A true CN107516038A (zh) | 2017-12-26 |
CN107516038B CN107516038B (zh) | 2020-03-31 |
Family
ID=60723003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710671989.2A Active CN107516038B (zh) | 2017-08-08 | 2017-08-08 | 一种确定设备指纹的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107516038B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109120642A (zh) * | 2018-09-28 | 2019-01-01 | 深圳市盈视讯电子科技有限公司 | 一种山寨设备的检测、验证方法、装置及系统 |
CN109657447A (zh) * | 2018-11-28 | 2019-04-19 | 腾讯科技(深圳)有限公司 | 一种设备指纹生成方法及装置 |
CN110427785A (zh) * | 2019-07-23 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 设备指纹的获取方法和装置、存储介质及电子装置 |
CN110737881A (zh) * | 2018-07-18 | 2020-01-31 | 马上消费金融股份有限公司 | 一种智能设备指纹验证方法及装置 |
CN111246382A (zh) * | 2020-03-26 | 2020-06-05 | 嘉兴嘉赛信息技术有限公司 | 一种通过硬件指纹检测智能手机是否为受控设备的方法 |
CN111400695A (zh) * | 2020-04-09 | 2020-07-10 | 中国建设银行股份有限公司 | 一种设备指纹生成方法、装置、设备和介质 |
CN111478986A (zh) * | 2020-06-22 | 2020-07-31 | 腾讯科技(深圳)有限公司 | 设备指纹的生成方法、装置、设备及存储介质 |
CN111709044A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的硬件指纹信息生成方法及系统 |
WO2021092872A1 (zh) * | 2019-11-13 | 2021-05-20 | 北京数字联盟网络科技有限公司 | 一种基于智能手机传感器的设备指纹提取方法 |
CN112968770A (zh) * | 2021-03-15 | 2021-06-15 | 北京智芯微电子科技有限公司 | 物联网智能终端设备指纹提取方法、装置及电子设备 |
CN114726550A (zh) * | 2022-05-25 | 2022-07-08 | 北京奇虎科技有限公司 | 识别码生成方法、装置、设备及存储介质 |
CN114756906A (zh) * | 2022-03-21 | 2022-07-15 | 慧之安信息技术股份有限公司 | 一种基于设备芯片的硬件指纹获取方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763521A (zh) * | 2014-12-18 | 2016-07-13 | 阿里巴巴集团控股有限公司 | 一种设备验证方法及装置 |
CN105975272A (zh) * | 2016-05-05 | 2016-09-28 | 北京元心科技有限公司 | 一种生成设备唯一设备号的方法和系统 |
-
2017
- 2017-08-08 CN CN201710671989.2A patent/CN107516038B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763521A (zh) * | 2014-12-18 | 2016-07-13 | 阿里巴巴集团控股有限公司 | 一种设备验证方法及装置 |
CN105975272A (zh) * | 2016-05-05 | 2016-09-28 | 北京元心科技有限公司 | 一种生成设备唯一设备号的方法和系统 |
Cited By (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110737881A (zh) * | 2018-07-18 | 2020-01-31 | 马上消费金融股份有限公司 | 一种智能设备指纹验证方法及装置 |
CN109120642B (zh) * | 2018-09-28 | 2022-04-15 | 深圳市盈视讯电子科技有限公司 | 一种山寨设备的检测、验证方法、装置及系统 |
CN109120642A (zh) * | 2018-09-28 | 2019-01-01 | 深圳市盈视讯电子科技有限公司 | 一种山寨设备的检测、验证方法、装置及系统 |
CN109657447A (zh) * | 2018-11-28 | 2019-04-19 | 腾讯科技(深圳)有限公司 | 一种设备指纹生成方法及装置 |
CN109657447B (zh) * | 2018-11-28 | 2023-03-14 | 腾讯科技(深圳)有限公司 | 一种设备指纹生成方法及装置 |
CN110427785B (zh) * | 2019-07-23 | 2023-07-14 | 腾讯科技(深圳)有限公司 | 设备指纹的获取方法和装置、存储介质及电子装置 |
CN110427785A (zh) * | 2019-07-23 | 2019-11-08 | 腾讯科技(深圳)有限公司 | 设备指纹的获取方法和装置、存储介质及电子装置 |
WO2021092872A1 (zh) * | 2019-11-13 | 2021-05-20 | 北京数字联盟网络科技有限公司 | 一种基于智能手机传感器的设备指纹提取方法 |
CN111246382A (zh) * | 2020-03-26 | 2020-06-05 | 嘉兴嘉赛信息技术有限公司 | 一种通过硬件指纹检测智能手机是否为受控设备的方法 |
CN111400695A (zh) * | 2020-04-09 | 2020-07-10 | 中国建设银行股份有限公司 | 一种设备指纹生成方法、装置、设备和介质 |
CN111400695B (zh) * | 2020-04-09 | 2024-05-10 | 中国建设银行股份有限公司 | 一种设备指纹生成方法、装置、设备和介质 |
CN111709044A (zh) * | 2020-06-19 | 2020-09-25 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的硬件指纹信息生成方法及系统 |
CN111709044B (zh) * | 2020-06-19 | 2021-06-22 | 山东省计算中心(国家超级计算济南中心) | 基于国密算法的硬件指纹信息生成方法及系统 |
CN111478986B (zh) * | 2020-06-22 | 2020-09-25 | 腾讯科技(深圳)有限公司 | 设备指纹的生成方法、装置、设备及存储介质 |
WO2021258898A1 (zh) * | 2020-06-22 | 2021-12-30 | 腾讯科技(深圳)有限公司 | 设备指纹的生成方法、装置、设备及存储介质 |
CN111478986A (zh) * | 2020-06-22 | 2020-07-31 | 腾讯科技(深圳)有限公司 | 设备指纹的生成方法、装置、设备及存储介质 |
CN112968770A (zh) * | 2021-03-15 | 2021-06-15 | 北京智芯微电子科技有限公司 | 物联网智能终端设备指纹提取方法、装置及电子设备 |
CN114756906B (zh) * | 2022-03-21 | 2022-11-15 | 慧之安信息技术股份有限公司 | 一种基于设备芯片的硬件指纹获取方法 |
CN114756906A (zh) * | 2022-03-21 | 2022-07-15 | 慧之安信息技术股份有限公司 | 一种基于设备芯片的硬件指纹获取方法 |
CN114726550A (zh) * | 2022-05-25 | 2022-07-08 | 北京奇虎科技有限公司 | 识别码生成方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107516038B (zh) | 2020-03-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107516038A (zh) | 一种确定设备指纹的方法及装置 | |
CN106897348A (zh) | 一种数据存储、数据校验、数据溯源方法和设备 | |
CN108388598A (zh) | 电子装置、数据存储方法及存储介质 | |
CN107368259A (zh) | 一种向区块链系统中写入业务数据的方法和装置 | |
CN110113393B (zh) | 一种消息推送方法、装置、电子设备及介质 | |
CN107015882A (zh) | 一种区块数据校验方法和装置 | |
US11270227B2 (en) | Method for managing a machine learning model | |
US8543528B2 (en) | Exploitation of transition rule sharing based on short state tags to improve the storage efficiency | |
CN107622079A (zh) | 数据存储、查询方法及装置 | |
CN106648643A (zh) | 渠道包生成方法及装置、终端和服务器 | |
CN110008743A (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN112558868B (zh) | 一种配置数据存储的方法和装置及设备 | |
CN110458598A (zh) | 场景适配方法、装置及电子设备 | |
CN107426235A (zh) | 基于设备指纹的权限认证方法、装置及系统 | |
CN108073351A (zh) | 芯片中非易失性存储空间的数据存储方法和可信芯片 | |
CN107947917A (zh) | 一种生成白盒密钥的方法及装置 | |
CN106897342A (zh) | 一种数据校验方法和设备 | |
CN107239403A (zh) | 一种问题定位方法和设备 | |
CN107465687A (zh) | 一种权限配置的实现方法、装置及终端 | |
CN110019111A (zh) | 数据处理方法、装置、存储介质以及处理器 | |
CN105187399A (zh) | 资源处理方法及装置 | |
CN110059088A (zh) | 一种块链式账本中的数据属性标识方法、装置及设备 | |
CN109726755A (zh) | 一种图片标注方法、装置及电子设备 | |
CN108984421A (zh) | 一种信息提示方法及装置 | |
CN110866380A (zh) | 一种填写信息字段内容的方法、终端 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |