CN109560927B - 一种设备指纹实现方法及装置 - Google Patents

一种设备指纹实现方法及装置 Download PDF

Info

Publication number
CN109560927B
CN109560927B CN201811389120.XA CN201811389120A CN109560927B CN 109560927 B CN109560927 B CN 109560927B CN 201811389120 A CN201811389120 A CN 201811389120A CN 109560927 B CN109560927 B CN 109560927B
Authority
CN
China
Prior art keywords
service data
threshold
encrypted
encryption key
fingerprint
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
CN201811389120.XA
Other languages
English (en)
Other versions
CN109560927A (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.)
Advanced New Technologies Co Ltd
Advantageous New Technologies Co Ltd
Original Assignee
Advanced New Technologies 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 Advanced New Technologies Co Ltd filed Critical Advanced New Technologies Co Ltd
Priority to CN201811389120.XA priority Critical patent/CN109560927B/zh
Publication of CN109560927A publication Critical patent/CN109560927A/zh
Application granted granted Critical
Publication of CN109560927B publication Critical patent/CN109560927B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0866Generation of secret information including derivation or calculation of cryptographic keys or passwords involving user or device identifiers, e.g. serial number, physical or biometrical information, DNA, hand-signature or measurable physical characteristics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Collating Specific Patterns (AREA)
  • Storage Device Security (AREA)

Abstract

本说明书一个或多个实施例提供了一种设备指纹实现方法及装置,将用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。

Description

一种设备指纹实现方法及装置
技术领域
本说明书一个或多个涉及数据安全技术领域,尤其涉及一种设备指纹实现方法及装置。
背景技术
目前,为了保证终端设备上应用程序运行所需的业务数据的安全性,采用密钥加密的方式对业务数据进行加密存储,在应用程序运行时,再解密获得业务数据,然而,考虑到一旦攻击者获取到以明文形式存储的业务数据加密密钥,其中,该业务数据加密密钥是指对业务数据进行加密时所用的密钥,此时攻击者就能够破解得到业务数据,因此,在具体实施时,不仅需要对业务数据进行加密,还需要对业务数据加密密钥进行保护,来防止攻击者破解业务数据。
当前,通过利用设备指纹对业务数据加密密钥进行加密,再将加密后的业务数据加密密钥存储至本地,进而加强对业务数据加密密钥的安全保护,具体的,该业务数据加密密钥的具体加密过程为:利用哈希算法基于动态获取的设备信息,生成设备指纹;将该设备指纹作为密钥加密密钥中至少一个因子,对业务数据加密密钥进行加密,得到加密后的业务数据加密密钥。在此过程中,设备信息是实时获取的,不需要对设备指纹进行存储,导致攻击者无法获取设备指纹,并且因不同终端设备的设备信息存在一定差异性,攻击者在其他终端设备上也无法获取加密该业务数据加密密钥所用的设备指纹,从而无法对破解得到业务数据加密密钥,对业务数据加密密钥进行了有效保护。
其中,虽然采用上述方式能够达到防止攻击者破解业务数据加密密钥的目的,但是考虑到终端设备的设备信息可能存在变化的情况,例如,设备固件升级导致设备信息的变化,又如,操作***的升级导致原本能够读取的设备信息无法读取。因此,因设备信息变化导致设备指纹发生变化,从而出现利用基于变化后的设备信息生成的设备指纹,对加密后的业务数据加密密钥进行解密,无法解密得到业务数据加密密钥,从而导致无法对加密后的业务数据进行解密得到应用程序运行所需的业务数据,最终导致应用程序无法正常运行。
因此,需要提供一种能够容忍设备信息变化的设备指纹实现方案。
发明内容
本说明书一个或多个实施例的目的是提供一种设备指纹实现方法及装置,即使加密门限分量所用的设备信息中的个别设备信息发生变化,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
为解决上述技术问题,本说明书一个或多个实施例是这样实现的:
本说明书一个或多个实施例提供了一种设备指纹实现方法,包括:
获取目标终端设备的设备指纹;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储。
本说明书一个或多个实施例提供了一种设备指纹实现装置,包括:
设备指纹获取模块,用于获取目标终端设备的设备指纹;
门限分量生成模块,用于对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
门限分量加密模块,用于基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
门限分量存储模块,用于将所述加密后的门限分量进行存储。
本说明书一个或多个实施例提供了一种设备指纹实现设备,包括:处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器:
获取目标终端设备的设备指纹;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述可执行指令在被执行时实现以下流程:
获取目标终端设备的设备指纹;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储。
本说明书一个或多个实施例中的设备指纹实现方法及装置,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本说明书一个或多个实施例提供的设备指纹实现方法的应用场景示意图之一;
图1b为本说明书一个或多个实施例提供的设备指纹实现方法的应用场景示意图之二;
图2为本说明书一个或多个实施例提供的设备指纹实现方法的第一种流程示意图;
图3为本说明书一个或多个实施例提供的设备指纹实现方法的第二种流程示意图;
图4为本说明书一个或多个实施例提供的设备指纹实现方法的第三种流程示意图;
图5为本说明书一个或多个实施例提供的设备指纹实现方法中加密门限分量的实现原理示意图;
图6为本说明书一个或多个实施例提供的设备指纹实现装置的第一种模块组成示意图;
图7为本说明书一个或多个实施例提供的设备指纹实现装置的第二种模块组成示意图;
图8为本说明书一个或多个实施例提供的用于设备指纹实现的设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书一个或多个一部分实施例,而不是全部的实施例。基于本说明书一个或多个中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书一个或多个保护的范围。
本说明书一个或多个实施例提供了一种设备指纹实现方法及装置,通过对设备指纹进行(t,n)门限秘密分享处理生成多个门限分量,再基于设备信息对门限分量进行加密,这样即使加密门限分量所用的设备信息中的个别设备信息发生变化,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
图1a为本说明书一个或多个实施例提供的设备指纹实现方法的应用场景示意图之一,如图1a所示,在业务数据的加密过程,不仅利用业务数据加密密钥对业务数据进行加密处理,还对加密该业务数据加密密钥所用的设备指纹进行安全保护,其中,应用程序运行所需的业务数据的加密过程,具体为:
(a1)针对对设备指纹进行安全保护的过程,考虑到若将基于实时采集的设备信息生成的设备指纹作为加密密钥,对业务数据加密密钥进行加密;当需要对加密后的业务数据加密密钥进行解密时,再实时采集设备信息,并基于实时采集到的设备信息生成设备指纹,将当前生成的设备指纹作为解密密钥,对加密后的业务数据加密密钥进行解密,得到明文的业务数据加密密钥,这样如果设备信息发生了变化,导致加密过程所用的设备指纹与解密过程所用的设备指纹不同,因此,将出现因设备信息发生变化而导致无法还原设备指纹,进而无法解密得到业务数据加密密钥的问题,其中,为了避免该问题同时达到对设备指纹进行安全保护的目的,由直接使用设备信息作为设备指纹,转化为使用设备信息加密将设备指纹分解得到的门限分量,即利用(t,n)门限秘密分享方式将设备指纹分解为n个门限分量,再基于设备信息对门限分量进行加密;
(a2)利用分量加密密钥对门限分量进行加密,得到加密后的门限分量,并对加密后的门限分量进行存储,其中,该分量加密密钥可以是设备信息。
具体的,利用(t,n)门限秘密分享方式将用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量,再将设备信息作为加密密钥对该门限分量进行加密;当需要对加密后的门限分量进行解密时,即使加密门限分量所用的设备信息中的个别设备信息发生变化,只要保证指定数量的设备信息不变,就能够基于该指定数量的设备信息对加密后的门限分量进行解密,得到指定数量的解密后的门限分量,进而基于该指定数量的解密后的门限分量即可恢复得到设备指纹,因此,结合(t,n)门限秘密分享方式对设备指纹进行安全保护达到了在部分设备信息变化的情况下,仍然能够还原得到设备指纹的目的,即充分借助(t,n)门限秘密分享方式中只要获得秘密分享的至少t个秘密分量即可还原秘密的原理,来实现容忍设备信息的可变性,从而保证加密过程所用的设备指纹与解密过程所用的设备指纹不变。
(a3)针对对业务数据加密密钥进行安全保护的过程,利用针对目标终端设备生成的设备指纹,对业务数据加密密钥进行加密,即将该设备指纹作为加密密钥,对业务数据加密密钥进行加密,得到加密后的业务数据加密密钥,并对加密后的业务数据加密密钥进行存储;
其中,考虑到直接将设备指纹进行存储或直接对设备指纹加密后存储,同样存在攻击者可能直接获取设备指纹或通过获取加密设备指纹所用的指纹加密密钥,将解密得到业务数据加密密钥的问题,因此,再基于上述(a1)和(a2)的过程对设备指纹进行安全保护;
(a4)针对对业务数据进行安全保护的过程,利用业务数据加密密钥对业务数据进行加密,得到加密后的业务数据,并对加密后的业务数据进行存储;
其中,考虑到一旦攻击者获取到该业务数据加密密钥的话,将解密得到业务数据,因此,需要对业务数据加密密钥进行安全保护,因此,可以基于上述(a3)的过程对业务数据加密密钥进行安全保护;
在确定需要使用业务数据时,需要对图1a中所示的加密后的业务数据进行解密,得到明文的业务数据,图1b为本说明书一个或多个实施例提供的设备指纹实现方法的应用场景示意图之二,如图1b所示,应用程序运行所需的业务数据的解密过程,具体为:
(b1)获取与待使用的业务数据相关的加密后的门限分量,具体的,根据待使用的业务数据的标识,获取上述步骤(a2)中存储的加密后的门限分量;
具体的,由于预先通过上述步骤(a1)和(a2)利用(t,n)门限秘密分享方式对设备指纹进行安全保护,并将加密后的门限分量存储至本地指定存储位置,该(t,n)门限秘密分享算法是指将一个秘密拆分给n个参与节点,获得至少t个参与节点得到的子秘密,基于该至少t个子秘密即可将秘密恢复,因此,在对加密后的业务数据进行解密时,需要先获取加密后的门限分量并对该加密后的门限分量进行解密,得到至少t个明文的门限分量,基于该至少t个明文的门限分量还原设备指纹,再利用设备指纹对加密后的业务数据加密密钥进行解密,得到明文的业务数据加密密钥,基于该明文的业务数据加密密钥对加密后的业务数据进行解密,得到明文的业务数据;
(b2)获取各加密后的门限分量分别对应的分量加密密钥,其中,若分量加密密钥为设备信息,则直接从对应的设备硬件处采集该设备硬件的设备信息,设备硬件可以是目标终端设备中的CPU、网卡、主板、硬盘、传感器等,例如,加密门限分量所用的分量加密密钥为网卡的属性信息,则直接从目标终端设备中的网卡处采集该网卡的属性信息即可,该属性信息可以是设备硬件的型号、容量、性能、地址、以及对该设备的详细描述等;
(b3)利用获取到的分量加密密钥,对对应的加密后的门限分量进行解密,得到至少指定数量的门限分量;
(b4)基于解密得到的至少指定数量的门限分量,还原针对目标终端设备生成的设备指纹;
(b5)利用还原得到的设备指纹,对加密后的业务数据加密密钥进行解密得到明文的业务数据加密密钥;
(b6)利用解密得到的业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
由此可知,攻击者需要同时获取加密后的业务数据加密密钥、所有加密后的门限分量、以及加密各门限分量所用的分量加密密钥,才能够破解出用于加密应用程序运行时所需的业务数据的业务数据加密密钥;并且将可随用随取的设备信息作为分量加密密钥,提高了设备指纹的安全性,进而提高了加密后的业务数据加密密钥的安全性,另外,上述步骤实现过程均在目标终端设备的本地实现,不需要引入中心服务器;
而针对目标终端设备需要使用业务数据加密密钥时,因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题,即使加密门限分量所用的设备信息中的个别设备信息发生变化,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够正确解密得到业务数据加密密钥,这样既能够保证业务数据加密密钥的安全性,又能够解决因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
图2为本说明书一个或多个实施例提供的设备指纹实现方法的第一种流程示意图,图2中的方法能够由终端设备执行,该终端设备可以是智能手机、平板电脑等移动终端,如图2所示,该方法至少包括以下步骤:
S201,获取目标终端设备的设备指纹,其中,该设备指纹是用于保护业务数据加密密钥的密钥加密密钥,利用明文的设备指纹对业务数据加密密钥进行加密存储,然后再对设备指纹进行安全保护,该设备指纹可以是基于目标终端设备中设备硬件的设备信息生成的,该设备指纹也可以根据一随机字符串生成的,该设备指纹还可以是基于设备硬件的设备信息和一随机字符串共同生成的。
S202,对上述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,n表示由t设备指纹分解得到的门限分量的总数,t表示n个门限分量中还原设备指纹所需的门限分量的个数,t小于或等于n;
其中,考虑到(t,n)门限秘密分享方式是指将一个秘密(例如一段数字)拆分给n个参与节点,单个参与节点无法获取到秘密,而基于至少t个参与节点得到的子秘密即可恢复出秘密,因此,基于(t,n)门限秘密分享方式将设备指纹秘密分享为n个门限分量,再对n个门限分量进行加密,后续只要能够解密得到至少t个门限分量即可恢复设备指纹;
S203,基于目标终端设备的设备信息,对门限分量进行加密得到加密后的门限分量;
具体的,在对门限分量进行加密时,可以将设备信息作为加密门限分量所用的分量加密密钥中的一个因子,其中,由于设备信息可直接从目标终端设备中对应的设备硬件处采集,可以采用随用随取的方式来获取设备信息,即分量加密密钥可以采用随用随取的方式获取,这样能够提高分量加密密钥的获取难度,进而提高了攻击者对加密后的门限分量的破解难度。
S204,将加密后的门限分量进行存储,具体的,可以将加密后的门限分量存储至第一指定存储位置,以便在需要使用业务数据时,基于该加密后的门限分量和对应的分量加密密钥,对加密后的业务数据进行解密得到明文的业务数据,其中,可以对每个门限分量均进行加密,也可以对部分门限分量进行加密,针对门限分量部分加密的情况,需要同时对加密后的门限分量和未进行加密的门限分量进行存储;
其中,为了进一步提高攻击者对业务数据加密密钥的获取难度,该第一指定存储位置可以包括多个子存储区域,每个子存储区域用于存储至少一个加密后的门限分量,通过将加密后的门限分量分散存储的方式,能够提高攻击者获取加密后的门限分量的难度,从而进一步提高攻击者获取设备指纹的难度;
其中,利用设备指纹对业务数据加密密钥进行加密后存储,再基于设备信息对该设备指纹以能够恢复的方式进行加密保护;具体的,实时获取设备信息加密得到虚拟的设备指纹,该虚拟的设备指纹包含多个加密后的门限分量,再实时获取设备信息对虚拟的设备指纹进行解密,再基于解密后的门限分量恢复设备指纹;
并且在对门限分量进行加密的过程中引入设备信息,借用不同终端设备的设备信息之间的差异性,攻击者在其他终端设备上无法准确地获取加密门限分量所用的设备信息,进而提高了加密后的门限分量的破解难度。
本说明书一个或多个实施例中,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
其中,需要预先为目标终端设备生成一用于对业务数据加密密钥进行加密的设备指纹,如图3所示,上述S201获取目标终端设备的设备指纹,具体包括:
S2011,利用预设字符串生成算法,生成随机字符串;
S2012,将生成的随机字符串确定为目标终端设备的设备指纹。
其中,由于通过上述步骤S202至S204能够保证针对目标终端设备生成的设备指纹的安全性,提高攻击者获取设备指纹的难度,并且可以通过对加密后的门限分量进行解密还原出设备指纹,因此,无需对设备指纹进行保存,而是当需要使用业务数据时,再对加密后的门限分量进行解密并实时恢复出设备指纹,实现了设备指纹的随用随恢复的效果。
进一步的,针对门限分量的加密过程,考虑到对n个门限分量进行加密时所用的n个分量加密密钥可以全部与设备信息有关,也可以部分与设备信息有关,为了提高每一个门限分量的破解难度,在对门限分量进行加密时均引入可以采用随用随取方式采集的设备信息作为分量加密密钥,即每个门限分量对应的分量加密密钥均与设备信息有关,具体的,如图4所示,上述S203基于目标终端设备的设备信息,对门限分量进行加密得到加密后的门限分量,具体包括:
S2031,从目标终端设备的设备信息中选取n组设备信息,对各门限分量进行加密,得到n个加密后的门限分量,其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息,该预设稳定条件可以是预设时间内设备信息保持不变。
具体的,在目标终端设备的设备信息中选取n组设备信息,每组设备信息作为一个门限分量的分量加密密钥,此时只要保证至少t组设备信息满足预设稳定条件,这样就能够保证至少t个门限分量能够正确解密得到。
对应的,针对对加密后的门限分量进行解密的过程,在上述S204将加密后的门限分量进行存储之后,还包括:
S205,获取目标终端设备当前状态的设备信息,其中,无论是对门限分量进行加密时所用的设备信息,还是对解密后的门限分量进行解密时所用的设备信息均是实时采集得到的,由于加密后的门限分量是利用选择的n组设备信息对明文的门限分量进行加密得到的,因此,在对加密后的门限分量进行解密时,需要采集目标终端设备中对应的设备硬件的当前状态的设备信息作为解密密钥;
S206,利用获取到的设备信息对相应的加密后的门限分量进行解密,得到至少t个门限分量;
具体的,依次使用当前采集的设备信息对相应的加密的门限分量进行解密;
若解密成功,则获取解密数据,即说明设备信息未发生变化,可以解密得到正确的明文的门限分量,若解密失败,则丢弃解密数据,即说明设备信息发生了变化,使用该设备信息无法解密得到对应的明文的门限分量;
当获取到至少t个解密成功的数据时停止解密,将获得的至少t个解密数据作为解密得到的门限分量;
S207,根据解密得到的至少t个门限分量,生成设备指纹。
具体的,将设备指纹分解为n个门限分量,得到门限分量1、门限分量2…门限分量n,再对每个门限分量进行加密得到加密后的门限分量,若还原设备指纹所需的门限分量的个数为t个,这样只要n个加密后的门限分量中有至少t个门限分量加密所用的分量加密密钥保持不变即可,能够基于至少t个分量加密密钥成功解密得到至少t个门限分量,基于至少t个解密后的门限分量恢复得到设备指纹,进而可以利用该设备指纹解密得到业务数据加密密钥,再利用该业务数据加密密钥解密得到的业务数据,实现允许加密门限分量所用的一部分设备信息发生变化,而不影响解密得到业务数据。
对应的,上述S2031从目标终端设备的设备信息中选取n组设备信息,对各门限分量进行加密,得到n个加密后的门限分量,具体包括:
步骤一,从目标终端设备的设备信息中选取n组设备信息,具体的,选取用于对n个门限分量进行加密的分量加密密钥;
步骤二,在选取的n组设备信息中,确定各门限分量对应的分量加密密钥,具体的,选取一组设备信息作为一个门限分量的分量加密密钥;
步骤三,针对每个门限分量,利用该门限分量对应的分量加密密钥,对该门限分量进行加密得到加密后的门限分量。
其中,加密门限分量所用的分量加密密钥可以是其他随机字符串,也可以是单一设备硬件的设备信息,还可以是多个设备硬件的设备信息的组合,又可以是基于本发明提供设备指纹实现方式的设备指纹,可以根据实际需求对分量加密密钥进行设定。优选地,为了简化分量加密密钥的复杂度,并且考虑到设备信息可以采用随用随取的方式来获取,能够提升分量加密密钥的安全性,因此,将各门限分量对应的分量加密密钥均与设备信息关联起来,从而需要选择n组设备信息作为门限分量的分量加密密钥;
对应的,上述步骤一从目标终端设备的设备信息中选取n组设备信息,具体包括:
采集目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个设备信息作为一组设备信息,得到n组设备信息,其中,每组设备信息可以包括一个设备信息,也可以包括多个设备信息,将一组设备信息确定为一个门限分量的分量加密密钥,即分别确定各门限分量对应的分量加密密钥。
具体的,在对门限分量进行加密的过程,记录每个门限分量与其所用的分量加密密钥的标识之间的对应关系,以便后续在对门限分量进行解密的过程中,准确地采集到解密各加密的门限分量所需的分量加密密钥;
其中,该分量加密密钥的标识可以是选用的设备信息对应的设备硬件的标识,例如,对门限分量n进行加密时所用的分量加密密钥为目标终端设备中网卡的设备信息,因此,门限分量n对应的分量加密密钥的标识为目标终端设备中网卡的标识XXXX,这样在对加密后的门限分量n进行解密时,从目标终端设备中的网卡处采集设备信息作为分量解密密钥,利用网卡的设备信息对加密后的门限分量n进行解密得到明文的门限分量n;
另外,分量加密密钥可以是单一的设备信息,还可以是多个设备信息的组合,例如,将目标终端设备中网卡的第一设备信息和CPU的第二设备信息的组合作为加密门限分量n的分量加密密钥,这样在对加密后的门限分量n进行解密时,分别从目标终端设备中的网卡处采集第一设备信息,以及从目标终端设备中的CPU处采集第二设备信息,将第一设备信息和第二设备信息的组合作为分量解密密钥,利用该分量解密密钥对加密后的门限分量n进行解密得到明文的门限分量n。
如图5所示,给出了设备指纹实现方法中加密门限分量的实现原理示意图,其中,基于设备指纹得到多个加密后的门限分量的过程,具体为:
(1)利用(t,n)门限秘密分享算法将针对目标终端设备生成的设备指纹,分解为多个门限分量,即分解为门限分量1、门限分量2…门限分量n;
(2)获取用于加密各门限分量的分量加密密钥,即获取设备信息1、设备信息2…设备信息n,其中,哪个门限分量对应于哪个设备信息可以是预先设定的,也可以是随机确定的;
(3)针对每个门限分量,利用该门限分量对应的分量加密密钥,对该门限分量进行加密得到加密后的门限分量,即利用设备信息1对门限分量1进行加密得到加密后的门限分量1,以及利用设备信息n对门限分量n进行加密得到加密后的门限分量n。
其中,上述设备指纹的主要目的是对业务数据加密密钥进行加密。因此,在上述S201获取目标终端设备的设备指纹之后,还包括:
利用获取到的设备指纹,对目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将得到的加密后的业务数据加密密钥进行存储,具体的,可以将该加密后的业务数据加密密钥存储至第二指定存储位置,其中,该第二指定存储位置可以与第一存储位置相同,也可以与第一存储位置不同,为了进一步提高攻击者对业务数据的破解难度,加密后的业务数据加密密钥与加密后的门限分量存储于不同的存储位置。
具体的,在确定不需要使用业务数据时,例如应用程序的运行不需要该业务数据时,可以利用业务数据加密密钥对业务数据进行加密,并且利用设备指纹对业务数据加密密钥进行加密,同时,对设备指纹采用上述方式进行安全保护;后续当应用程序的运行需要使用该业务数据时,先采用上述方式实时恢复得到设备指纹,再使用该设备指纹对加密后的业务数据加密密钥进行解密,再利用明文的业务数据加密密钥对加密后的业务数据进行解密得到业务数据即可。
其中,由于设备指纹是以加密后的门限分量的方式存储,攻击者无法准确地对加密后的门限分量进行解密,因此,无法获取到设备指纹,就无法准确地对加密后的业务数据加密密钥进行解密,保证了业务数据加密密钥的安全性。
具体的,在将得到的加密后的业务数据加密密钥进行存储之后,还包括:
步骤一,在确定需要使用业务数据时,获取对加密后的门限分量进行解密还原得到的设备指纹;
具体的,对加密后的门限分量进行解密还原设备指纹的过程具体包括:
(1)获取目标终端设备当前状态的设备信息,其中,在加密门限分量时使用了哪些目标终端设备中设备硬件的设备信息,此时,在对加密后的门限分量进行解密时,就需要实时从对应的设备硬件处采集所需的设备信息;
(2)利用获取到的设备信息对相应的加密后的门限分量进行解密,得到至少t个门限分量,具体的,根据门限分量加密时门限分量与设备信息(即分量加密密钥)的对应关系,确定使用哪组设备信息作为分量解密密钥来对加密后的门限分量进行解密,得到至少t个门限分量;
其中,可能存在部分设备信息发送变化,导致分量加密密钥发生变化,导致使用该分量加密密钥对加密后的门限分量进行解密,无法得到明文的门限分量,但是只要至少t个分量加密密钥保持不变即可解密得到至少t个门限分量;
具体的,依次使用当前采集的设备信息对相应的加密的门限分量进行解密;
若解密成功,则获取解密数据,即说明设备信息未发生变化,可以解密得到正确的明文的门限分量,若解密失败,则丢弃解密数据,即说明设备信息发生了变化,使用该设备信息无法解密得到对应的明文的门限分量;
当获取到至少t个解密成功的数据时停止解密,将获得的至少t个解密数据作为解密得到的门限分量;
(3)根据解密得到的至少t个门限分量,生成设备指纹,即基于至少t个明文的门限分量即可还原设备指纹。
步骤二,利用还原得到的设备指纹,对加密后的业务数据加密密钥进行解密得到业务数据加密密钥;
步骤三,利用解密得到的业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
本说明书一个或多个实施例中的设备指纹实现方法,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
对应上述图1至图5描述的设备指纹实现方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种设备指纹实现装置,图6为本说明书一个或多个实施例提供的设备指纹实现装置的第一种模块组成示意图,该装置用于执行图1至图5描述的设备指纹实现方法,如图6所示,该装置包括:
设备指纹获取模块601,用于获取目标终端设备的设备指纹;
门限分量生成模块602,用于对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
门限分量加密模块603,用于基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
门限分量存储模块604,用于将所述加密后的门限分量进行存储。
可选地,所述门限分量加密模块603,具体用于:
从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量;
其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息。
可选地,如图7所示,上述装置还包括:设备指纹还原模块605,用于:
获取所述目标终端设备当前状态的设备信息;
利用所述设备信息对相应的所述加密后的门限分量进行解密,得到至少t个门限分量;
根据解密得到的所述至少t个门限分量,生成所述设备指纹。
可选地,所述设备指纹获取模块601,具体用于:
利用预设字符串生成算法,生成随机字符串;
将生成的所述随机字符串确定为所述目标终端设备的设备指纹。
可选地,所述门限分量加密模块603,进一步具体用于:
从所述目标终端设备的设备信息中选取n组设备信息;
在选取的所述n组设备信息中,确定各所述门限分量对应的分量加密密钥;
针对每个所述门限分量,利用该门限分量对应的所述分量加密密钥,对所述门限分量进行加密得到加密后的门限分量。
可选地,所述门限分量加密模块603,更进一步具体用于:
采集所述目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个所述设备信息作为一组设备信息,得到n组设备信息。
可选地,上述装置还包括:业务密钥加密模块606,用于:
利用所述设备指纹,对所述目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将所述加密后的业务数据加密密钥进行存储。
可选地,上述装置还包括:业务密钥解密模块607,用于:
在确定需要使用业务数据时,获取对所述加密后的门限分量进行解密还原得到的设备指纹;
利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥。
可选地,上述装置还包括:业务数据解密模块608,用于:
利用解密得到的所述业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
本说明书一个或多个实施例中的设备指纹实现装置,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
需要说明的是,本说明书中关于设备指纹实现装置的实施例与本说明书中关于设备指纹实现方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应的设备指纹实现方法的实施,重复之处不再赘述。
进一步地,对应上述图1至图5所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种设备指纹实现设备,该设备用于执行上述的设备指纹实现方法,如图8所示。
设备指纹实现设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器801和存储器802,存储器802中可以存储有一个或一个以上存储应用程序或数据。其中,存储器802可以是短暂存储或持久存储。存储在存储器802的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括对设备指纹实现设备中的一系列计算机可执行指令。更进一步地,处理器801可以设置为与存储器802通信,在设备指纹实现设备上执行存储器802中的一系列计算机可执行指令。设备指纹实现设备还可以包括一个或一个以上电源803,一个或一个以上有线或无线网络接口804,一个或一个以上输入输出接口805,一个或一个以上键盘806等。
在一个具体的实施例中,设备指纹实现设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对设备指纹实现设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:
获取目标终端设备的设备指纹;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储。
可选地,计算机可执行指令在被执行时,所述基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量;
其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在将所述加密后的门限分量进行存储之后,还包括:
获取所述目标终端设备当前状态的设备信息;
利用所述设备信息对相应的所述加密后的门限分量进行解密,得到至少t个门限分量;
根据解密得到的所述至少t个门限分量,生成所述设备指纹。
可选地,计算机可执行指令在被执行时,所述获取目标终端设备的设备指纹,包括:
利用预设字符串生成算法,生成随机字符串;
将生成的所述随机字符串确定为所述目标终端设备的设备指纹。
可选地,计算机可执行指令在被执行时,所述从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息;
在选取的所述n组设备信息中,确定各所述门限分量对应的分量加密密钥;
针对每个所述门限分量,利用该门限分量对应的所述分量加密密钥,对所述门限分量进行加密得到加密后的门限分量。
可选地,计算机可执行指令在被执行时,所述从所述目标终端设备的设备信息中选取n组设备信息,包括:
采集所述目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个所述设备信息作为一组设备信息,得到n组设备信息。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在获取目标终端设备的设备指纹之后,还包括:
利用所述设备指纹,对所述目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将所述加密后的业务数据加密密钥进行存储。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在将所述加密后的业务数据加密密钥进行存储之后,还包括:
在确定需要使用业务数据时,获取对所述加密后的门限分量进行解密还原得到的设备指纹;
利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥。
可选地,计算机可执行指令在被执行时,还包含用于进行以下计算机可执行指令:
在利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥之后,还包括:
利用解密得到的所述业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
本说明书一个或多个实施例中的设备指纹实现设备,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
进一步地,对应上述图1至图5所示的方法,基于相同的技术构思,本说明书一个或多个实施例还提供了一种存储介质,用于存储计算机可执行指令,一种具体的实施例中,该存储介质可以为U盘、光盘、硬盘等,该存储介质存储的计算机可执行指令在被处理器执行时,能实现以下流程:
获取目标终端设备的设备指纹;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量;
其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在将所述加密后的门限分量进行存储之后,还包括:
获取所述目标终端设备当前状态的设备信息;
利用所述设备信息对相应的所述加密后的门限分量进行解密,得到至少t个门限分量;
根据解密得到的所述至少t个门限分量,生成所述设备指纹。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述获取目标终端设备的设备指纹,包括:
利用预设字符串生成算法,生成随机字符串;
将生成的所述随机字符串确定为所述目标终端设备的设备指纹。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息;
在选取的所述n组设备信息中,确定各所述门限分量对应的分量加密密钥;
针对每个所述门限分量,利用该门限分量对应的所述分量加密密钥,对所述门限分量进行加密得到加密后的门限分量。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,所述从所述目标终端设备的设备信息中选取n组设备信息,包括:
采集所述目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个所述设备信息作为一组设备信息,得到n组设备信息。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在获取目标终端设备的设备指纹之后,还包括:
利用所述设备指纹,对所述目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将所述加密后的业务数据加密密钥进行存储。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在将所述加密后的业务数据加密密钥进行存储之后,还包括:
在确定需要使用业务数据时,获取对所述加密后的门限分量进行解密还原得到的设备指纹;
利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥。
可选地,该存储介质存储的计算机可执行指令在被处理器执行时,还实现以下流程:
在利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥之后,还包括:
利用解密得到的所述业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
本说明书一个或多个实施例中的存储介质存储的计算机可执行指令在被处理器执行时,将目标终端设备中用于对业务数据加密密钥进行加密的设备指纹,分解为多个门限分量;在对门限分量进行加密的过程中再引入设备信息;最后对加密后的门限分量进行存储,以便后续基于加密后的门限分量还原出设备指纹。即使加密门限分量所用的设备信息中的个别设备信息发生变化,导致个别加密后的门限分量无法解密还原,只要保证指定数量的设备信息不变,就能够利用不变的设备信息解密得到指定数量的门限分量,进而基于该解密得到的指定数量的门限分量即可恢复得到设备指纹,从而保证能够基于该设备指纹正确解密得到业务数据加密密钥,这样对设备信息的可变性具有一定容忍度,既能够保证业务数据加密密钥的安全性,又能够避免因设备信息发生变化而导致无法解密得到业务数据加密密钥的问题。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字***“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的***、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书一个或多个时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个的实施例可提供为方法、***、或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个是参照根据本说明书一个或多个实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本领域技术人员应明白,本说明书一个或多个的实施例可提供为方法、***或计算机程序产品。因此,本说明书一个或多个可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书一个或多个可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书一个或多个可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书一个或多个,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于***实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书一个或多个的实施例而已,并不用于限制本说明书一个或多个。对于本领域技术人员来说,本说明书一个或多个可以有各种更改和变化。凡在本说明书一个或多个的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书一个或多个的权利要求范围之内。

Claims (20)

1.一种设备指纹实现方法,其特征在于,包括:
获取目标终端设备的设备指纹;其中,所述设备指纹用于在确定目标应用不需要使用业务数据时对所述业务数据的加密密钥进行加密且加密后的所述业务数据的加密密钥存储至第一存储位置;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储;其中,所述加密后的门限分量用于在确定所述目标应用需要使用所述业务数据时还原得到设备指纹且所述加密后的门限分量存储于第二存储位置,所述第二存储位置与所述第一存储位置不同,该设备指纹用于对加密后的业务数据加密密钥进行解密得到的业务数据加密密钥,该业务数据加密密钥用于对加密后的业务数据进行解密得到明文业务数据,其中,所述第二存储位置包括多个子存储区域,每个子存储区域用于存储至少一个加密后的门限分量。
2.根据权利要求1所述的方法,其特征在于,所述基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量;
其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息。
3.根据权利要求2所述的方法,其特征在于,在将所述加密后的门限分量进行存储之后,还包括:
获取所述目标终端设备当前状态的设备信息;
利用所述设备信息对相应的所述加密后的门限分量进行解密,得到至少t个门限分量;
根据解密得到的所述至少t个门限分量,生成所述设备指纹。
4.根据权利要求1所述的方法,其特征在于,所述获取目标终端设备的设备指纹,包括:
利用预设字符串生成算法,生成随机字符串;
将生成的所述随机字符串确定为所述目标终端设备的设备指纹。
5.根据权利要求2所述的方法,其特征在于,所述从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量,包括:
从所述目标终端设备的设备信息中选取n组设备信息;
在选取的所述n组设备信息中,确定各所述门限分量对应的分量加密密钥;
针对每个所述门限分量,利用该门限分量对应的所述分量加密密钥,对所述门限分量进行加密得到加密后的门限分量。
6.根据权利要求5所述的方法,其特征在于,所述从所述目标终端设备的设备信息中选取n组设备信息,包括:
采集所述目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个所述设备信息作为一组设备信息,得到n组设备信息。
7.根据权利要求1所述的方法,其特征在于,在获取目标终端设备的设备指纹之后,还包括:
利用所述设备指纹,对所述目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将所述加密后的业务数据加密密钥进行存储。
8.根据权利要求7所述的方法,其特征在于,在将所述加密后的业务数据加密密钥进行存储之后,还包括:
在确定需要使用业务数据时,获取对所述加密后的门限分量进行解密还原得到的设备指纹;
利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥。
9.根据权利要求8所述的方法,其特征在于,在利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥之后,还包括:
利用解密得到的所述业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
10.一种设备指纹实现装置,其特征在于,包括:
设备指纹获取模块,用于获取目标终端设备的设备指纹;其中,所述设备指纹用于在确定目标应用不需要使用业务数据时对所述业务数据的加密密钥进行加密且加密后的所述业务数据的加密密钥存储至第一存储位置;
门限分量生成模块,用于对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
门限分量加密模块,用于基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
门限分量存储模块,用于将所述加密后的门限分量进行存储;其中,所述加密后的门限分量用于在确定所述目标应用需要使用所述业务数据时还原得到设备指纹且所述加密后的门限分量存储于第二存储位置,所述第二存储位置与所述第一存储位置不同,该设备指纹用于对加密后的业务数据加密密钥进行解密得到的业务数据加密密钥,该业务数据加密密钥用于对加密后的业务数据进行解密得到明文业务数据,其中,所述第二存储位置包括多个子存储区域,每个子存储区域用于存储至少一个加密后的门限分量。
11.根据权利要求10所述的装置,其特征在于,所述门限分量加密模块,具体用于:
从所述目标终端设备的设备信息中选取n组设备信息,对所述门限分量进行加密,得到n个加密后的门限分量;
其中,选取的n组设备信息中至少包含t组满足预设稳定条件的设备信息。
12.根据权利要求11所述的装置,其特征在于,所述装置还包括:设备指纹还原模块,用于:
获取所述目标终端设备当前状态的设备信息;
利用所述设备信息对相应的所述加密后的门限分量进行解密,得到至少t个门限分量;
根据解密得到的所述至少t个门限分量,生成所述设备指纹。
13.根据权利要求10所述的装置,其特征在于,所述设备指纹获取模块,用于:
利用预设字符串生成算法,生成随机字符串;
将生成的所述随机字符串确定为所述目标终端设备的设备指纹。
14.根据权利要求11所述的装置,其特征在于,所述门限分量加密模块,进一步具体用于:
从所述目标终端设备的设备信息中选取n组设备信息;
在选取的所述n组设备信息中,确定各所述门限分量对应的分量加密密钥;
针对每个所述门限分量,利用该门限分量对应的所述分量加密密钥,对所述门限分量进行加密得到加密后的门限分量。
15.根据权利要求14所述的装置,其特征在于,所述门限分量加密模块,更进一步具体用于:
采集所述目标终端设备中至少n个设备组件的设备信息;
将采集到的至少一个所述设备信息作为一组设备信息,得到n组设备信息。
16.根据权利要求10所述的装置,其特征在于,所述装置还包括:业务密钥加密模块,用于:
利用所述设备指纹,对所述目标终端设备所用的业务数据加密密钥进行加密,得到加密后的业务数据加密密钥;
将所述加密后的业务数据加密密钥进行存储。
17.根据权利要求16所述的装置,其特征在于,所述装置还包括:业务密钥解密模块,用于:
在确定需要使用业务数据时,获取对所述加密后的门限分量进行解密还原得到的设备指纹;
利用还原得到的所述设备指纹,对所述加密后的业务数据加密密钥进行解密得到业务数据加密密钥。
18.根据权利要求17所述的装置,其特征在于,所述装置还包括:业务数据解密模块,用于:
利用解密得到的所述业务数据加密密钥,对加密后的业务数据进行解密得到所需的业务数据。
19.一种设备指纹实现设备,其特征在于,包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被所述处理器执行时使所述处理器:
获取目标终端设备的设备指纹;其中,所述设备指纹用于在确定目标应用不需要使用业务数据时对所述业务数据的加密密钥进行加密且加密后的所述业务数据的加密密钥存储至第一存储位置;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储;其中,所述加密后的门限分量用于在确定所述目标应用需要使用所述业务数据时还原得到设备指纹且所述加密后的门限分量存储于第二存储位置,所述第二存储位置与所述第一存储位置不同,该设备指纹用于对加密后的业务数据加密密钥进行解密得到的业务数据加密密钥,该业务数据加密密钥用于对加密后的业务数据进行解密得到明文业务数据,其中,所述第二存储位置包括多个子存储区域,每个子存储区域用于存储至少一个加密后的门限分量。
20.一种存储介质,用于存储计算机可执行指令,其特征在于,所述可执行指令在被处理器执行时实现以下流程:
获取目标终端设备的设备指纹;其中,所述设备指纹用于在确定目标应用不需要使用业务数据时对所述业务数据的加密密钥进行加密且加密后的所述业务数据的加密密钥存储至第一存储位置;
对所述设备指纹进行(t,n)门限秘密分享处理,生成n个门限分量,其中,t表示n个门限分量中还原所述设备指纹所需的门限分量的个数;
基于所述目标终端设备的设备信息,对所述门限分量进行加密得到加密后的门限分量;
将所述加密后的门限分量进行存储;其中,所述加密后的门限分量用于在确定所述目标应用需要使用所述业务数据时还原得到设备指纹且所述加密后的门限分量存储于第二存储位置,所述第二存储位置与所述第一存储位置不同,该设备指纹用于对加密后的业务数据加密密钥进行解密得到的业务数据加密密钥,该业务数据加密密钥用于对加密后的业务数据进行解密得到明文业务数据,其中,所述第二存储位置包括多个子存储区域,每个子存储区域用于存储至少一个加密后的门限分量。
CN201811389120.XA 2018-11-21 2018-11-21 一种设备指纹实现方法及装置 Active CN109560927B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811389120.XA CN109560927B (zh) 2018-11-21 2018-11-21 一种设备指纹实现方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811389120.XA CN109560927B (zh) 2018-11-21 2018-11-21 一种设备指纹实现方法及装置

Publications (2)

Publication Number Publication Date
CN109560927A CN109560927A (zh) 2019-04-02
CN109560927B true CN109560927B (zh) 2022-05-03

Family

ID=65866855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811389120.XA Active CN109560927B (zh) 2018-11-21 2018-11-21 一种设备指纹实现方法及装置

Country Status (1)

Country Link
CN (1) CN109560927B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110650010B (zh) * 2019-09-24 2022-04-29 支付宝(杭州)信息技术有限公司 一种非对称密钥中的私钥生成和使用方法、装置和设备
CN114531236B (zh) * 2022-03-02 2023-10-31 杭州华澜微电子股份有限公司 一种密钥的处理方法、装置及电子设备

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103986693A (zh) * 2014-04-22 2014-08-13 北京理工大学 一种特征信息与密钥绑定方法
CN104348800A (zh) * 2013-07-31 2015-02-11 北大方正集团有限公司 一种数字内容证书的生成及使用的方法和装置
CN104468842A (zh) * 2014-12-31 2015-03-25 国网甘肃省电力公司信息通信公司 电网设备状态信息云存储***及其数据上传与下载方法
WO2015198090A1 (en) * 2014-06-23 2015-12-30 Here Global B.V. Fingerprint collection/provision control based on detected errors
CN106027245A (zh) * 2016-07-22 2016-10-12 中国工商银行股份有限公司 密钥共享方法及装置
CN106407768A (zh) * 2015-07-29 2017-02-15 阿里巴巴集团控股有限公司 一种设备指纹的确定、对目标设备进行识别的方法和设备
CN106453437A (zh) * 2016-12-22 2017-02-22 ***股份有限公司 一种设备识别码获取方法及装置
CN107733869A (zh) * 2017-09-13 2018-02-23 ***股份有限公司 一种设备识别方法及装置
CN107819569A (zh) * 2017-12-14 2018-03-20 平安科技(深圳)有限公司 登录信息的加密方法及终端设备
CN108199836A (zh) * 2018-01-22 2018-06-22 北京大学 一种密钥与设备绑定、解绑定的方法及装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108718313A (zh) * 2018-05-31 2018-10-30 深圳市文鼎创数据科技有限公司 应用软件数据安全使用方法、终端设备及服务器

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104348800A (zh) * 2013-07-31 2015-02-11 北大方正集团有限公司 一种数字内容证书的生成及使用的方法和装置
CN103986693A (zh) * 2014-04-22 2014-08-13 北京理工大学 一种特征信息与密钥绑定方法
WO2015198090A1 (en) * 2014-06-23 2015-12-30 Here Global B.V. Fingerprint collection/provision control based on detected errors
CN104468842A (zh) * 2014-12-31 2015-03-25 国网甘肃省电力公司信息通信公司 电网设备状态信息云存储***及其数据上传与下载方法
CN106407768A (zh) * 2015-07-29 2017-02-15 阿里巴巴集团控股有限公司 一种设备指纹的确定、对目标设备进行识别的方法和设备
CN106027245A (zh) * 2016-07-22 2016-10-12 中国工商银行股份有限公司 密钥共享方法及装置
CN106453437A (zh) * 2016-12-22 2017-02-22 ***股份有限公司 一种设备识别码获取方法及装置
CN107733869A (zh) * 2017-09-13 2018-02-23 ***股份有限公司 一种设备识别方法及装置
CN107819569A (zh) * 2017-12-14 2018-03-20 平安科技(深圳)有限公司 登录信息的加密方法及终端设备
CN108199836A (zh) * 2018-01-22 2018-06-22 北京大学 一种密钥与设备绑定、解绑定的方法及装置

Also Published As

Publication number Publication date
CN109560927A (zh) 2019-04-02

Similar Documents

Publication Publication Date Title
CN108063756B (zh) 一种密钥管理方法、装置及设备
CN111539813B (zh) 业务行为的回溯处理方法、装置、设备及***
CN110162981B (zh) 数据处理方法及装置
CN112016120B (zh) 基于用户隐私保护的事件预测方法和装置
CN109886682B (zh) 区块链中实现合约调用的方法及节点、存储介质
US10963542B2 (en) Blockchain-based image processing method and apparatus
CN110008735B (zh) 区块链中实现合约调用的方法及节点、存储介质
CN107122634B (zh) 软件安装包的加固保护方法及装置
CN111342966B (zh) 一种数据的存储方法、数据的恢复方法、装置及设备
US10922422B2 (en) Blockchain-based image processing method and apparatus
CN110263505B (zh) 基于区块链的图片处理方法及装置
CN113076527B (zh) 一种基于区块链的数字资产处理方法及装置
CN109560927B (zh) 一种设备指纹实现方法及装置
CN112287376A (zh) 一种隐私数据的处理方法及装置
CN111934878A (zh) 一种基于区块链的数据加密与解密方法、设备及介质
KR101699176B1 (ko) Hdfs 데이터 암호화 및 복호화 방법
CN111934874A (zh) 一种基于区块链的数据加密与解密方法、设备及介质
CN115941336A (zh) 数据的处理方法、装置及设备
CN115758332A (zh) 一种交易分组方法和区块链节点
CN111641499A (zh) 一种基于区块链的私钥还原方法、装置、设备及介质
CN110750800A (zh) 数据安全处理方法、装置、设备及存储介质
CN110995447B (zh) 一种数据存证方法、装置、设备以及介质
CN113497710A (zh) 一种数据解密方法及设备
CN114564453A (zh) 一种ipfs文件加密与解密方法、设备及介质
CN115982742A (zh) 一种业务执行方法、装置、存储介质及电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Innovative advanced technology Co.,Ltd.

Address before: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant before: Advanced innovation technology Co.,Ltd.

Effective date of registration: 20201012

Address after: Cayman Enterprise Centre, 27 Hospital Road, George Town, Grand Cayman, British Islands

Applicant after: Advanced innovation technology Co.,Ltd.

Address before: A four-storey 847 mailbox in Grand Cayman Capital Building, British Cayman Islands

Applicant before: Alibaba Group Holding Ltd.

GR01 Patent grant
GR01 Patent grant