CN112636907B - 密钥管理方法、密钥使用方法、装置及设备 - Google Patents
密钥管理方法、密钥使用方法、装置及设备 Download PDFInfo
- Publication number
- CN112636907B CN112636907B CN202011511372.2A CN202011511372A CN112636907B CN 112636907 B CN112636907 B CN 112636907B CN 202011511372 A CN202011511372 A CN 202011511372A CN 112636907 B CN112636907 B CN 112636907B
- Authority
- CN
- China
- Prior art keywords
- key
- node
- user
- slices
- nodes
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
-
- 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/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computing Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Evolutionary Biology (AREA)
- Accounting & Taxation (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Finance (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- Technology Law (AREA)
- General Business, Economics & Management (AREA)
- Storage Device Security (AREA)
Abstract
本公开实施例提供一种密钥管理方法、密钥使用方法、装置及设备,该方法包括:接收用户端发送的注册请求,其中所述注册请求中包含所述用户的身份标识;生成所述身份标识对应的用户密钥;将所述用户密钥拆分为多个密钥切片;将所述密钥切片按照预设规则组合后发送至各密钥节点保存,其中所述各密钥节点包括可信机构节点和客户端节点。本公开实施例将用户密钥拆分成密钥切片,一部分在可信机构节点保存,一部分在客户端节点保存,既能使得用户密钥不易发生丢失;同时用户密钥分散在不同的密钥节点,所有节点被网络攻击的可能性极低,用户密钥不易泄露,保证用户密钥的安全性。
Description
技术领域
本公开实施例涉及金融科技(Fintech)的数据加密技术领域,尤其涉及一种密钥管理方法、密钥使用方法、装置及设备。
背景技术
随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(Fintech)转变,数据加密技术也不例外,但由于金融行业的安全性、实时性要求,也对数据加密技术提出了更高的要求。
目前,传统的金融级的数据的密钥管理,主要包括两种:第一种,使用用户密钥加密机构密钥对加解密用户数据,用户密钥客户端本地化保存,即用户密钥存于客户端且为唯一用户密钥;用户在存取数据进行加解密过程中均需要使用本地存储的唯一用户密钥。第二种,用户密钥托管保存,即将用户密钥托管于可信托管机构,用户在存取数据进行加解密过程中均需要向可信托管机构发起用户密钥使用请求。
然而,发明人发现现有的密钥管理至少存在如下技术问题:将用户密钥本地化保存时,容易丢失,且丢失后无法找回,造成用户密钥易丢失;而将用户密钥托管于可信托管机构,由于可信托管机构网络可能被攻击,造成用户密钥泄露。也即,传统的密钥管理存在已丢失,以及无法保证用户密钥的安全性的问题。
发明内容
本公开实施例提供一种密钥管理方法、密钥使用方法、装置及设备,既能够使得用户密钥不易丢失,又能保证用户密钥的安全性。
第一方面,本公开实施例提供一种密钥管理方法,包括:
接收用户端发送的注册请求,其中所述注册请求中包含所述用户的身份标识;
生成所述身份标识对应的用户密钥;
将所述用户密钥拆分为多个密钥切片;
将所述密钥切片按照预设规则组合后发送至各密钥节点保存,其中所述各密钥节点包括可信机构节点和客户端节点。
在一种可能的设计中,所述将所述密钥切片按照预设规则组合后发送至各密钥节点保存,包括:获取所有的密钥节点的设备活跃指标数据;采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点;根据设备活跃度等级确定各密钥节点保存的密钥切片数;根据所述密钥切片数确定对应的密钥切片组合,并将所述密钥切片组合发送至对应的密钥节点保存。
在一种可能的设计中,所述根据设备活跃度等级确定各密钥节点的密钥切片数,包括:根据各设备活跃度等级的密钥节点的类别数、组成所述用户密钥的密钥切片的数量和保存的密钥切片组合的密钥切片的数量的最小值,确定密钥段的步长;根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数。
在一种可能的设计中,所述根据各设备活跃度等级的密钥节点的类别数、组成所述用户密钥的密钥切片的数量和保存的密钥切片组合的密钥切片的数量的最小值,确定密钥段的步长,的公式为:
式中,l密钥段的步长,y为各设备活跃度等级的密钥节点的类别数;n为组成所述用户密钥的密钥切片的数量;i为密钥节点保存的密钥切片组合的密钥切片的数量的最小值;
所述根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数,的公式为:
式中,t为任一设备活跃度等级的密钥节点保存的密钥切片数;l为密钥段的步长;x为密钥节点的设备活跃度等级,其中密钥节点的活跃度越高对应的设备活跃度等级取值越小。
在一种可能的设计中,所述采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点,包括:
S1:采用变色龙聚类算法对所述设备活跃指标数据构建加权图,其中所述加权图的初始化簇个数为n,每个密钥节点的设备活跃指标数据为一个簇;
S2:采用变色龙聚类算法计算任意两个簇之间的结构相似度,并根据所述结构相似度对满足相似度条件的两个簇进行合并;
S3:计算合并后各个簇之间的引力系数,其中所述引力系数G的计算过程如下:
计算不同簇内任意两个节点的所有活跃度指标的边的权值指数ξi,j,公式如下:
式中,假设合并后簇的个数为k,每个簇使用Vi(i∈k)和Vj(j∈k),其中V指包含Vi、Vj的所有簇的集合;Vi为第i个簇,Vj为第j个簇;设cm为节点m所在的簇标号,cn为节点n所在的簇标号,Wm,n为节点m和节点n的设备活跃指标数据的边的权值;定义ξi,j为不同簇Vi、Vj内任意两个节点m和n所有活跃度指标的边的权值指数,距离越远指数越小;
根据权值指数ξi,j计算各个簇之间的引力系数G,公式如下:
式中,G为引力系数;k为合并后簇的个数;ξi,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数;
S4:对合并后的簇,重复执行步骤S2和S3,直至所述引力系数的值开始下降时,停止合并簇;
S5:将最终合并后的簇的密钥节点,确定为所述所有的密钥节点的设备活跃指标值的聚类结果;
S6:计算每个类别的密钥节点与簇点的欧式距离并进行排序,得到各设备活跃度等级的密钥节点。
第二方面,本公开实施例提供一种密钥使用方法,包括:
接收用户端发送的数据请求,其中所述数据请求中包含用户的身份标识;
根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点;
根据所述密钥切片重组得到所述用户的用户密钥;
根据所述用户密钥对所述数据请求对应的数据进行加密或解密。
在一种可能的设计中,所述可信机构节点包括可信中心机构节点和第三方可信机构节点;相应地,所述根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点,包括:根据所述身份标识,从可信中心机构节点请求并获取对应的密钥切片作为所述用户的可信中心机构密钥段;根据所述身份标识,从多个第三方可信机构节点和多个客户端节点获取各保存的对应的密钥切片,并进行重组得到时空存储密钥段;相应地,根据所述密钥切片重组得到所述用户的用户密钥,包括:根据所述时空存储密钥段和所述可信中心机构密钥段组合得到所述用户的用户密钥。
在一种可能的设计中,所述根据所述用户密钥对所述数据请求对应的数据进行加密或解密,包括:根据主密钥对所述用户密钥进行解密,得到所述用户密钥的密钥明文;根据所述用户密钥的密钥明文对内容密钥进行解密,得到文件维度随机盐因子;根据所述内容密钥和所述文件维度随机盐因子对所述用户请求的数据进行加密或解密。
在一种可能的设计中,每个密钥节点保存一个密钥切片组合,所述密钥切片组合包括多个不同的密钥切片,每个密钥节点保存的密钥切片组合不重复、且每个密钥组合不能组成完整的用户密钥;所述从多个密钥节点获取各密钥节点保存的对应的密钥切片,根据所述密钥切片重组得到所述用户的用户密钥,包括:向所有的密钥节点发送密钥切片获取请求;在接收到预设个数的密钥节点返回的密钥切片组合时,根据所述预设个数的密钥节点的密钥切片组合进行重组得到所述用户密钥。
在一种可能的设计中,所述密钥节点为包括客户端和可信机构节点组成的分布式系统节点;其中可信机构节点的数量记为m,组成所述用户密钥的密钥切片的数量为n,每个客户端或可信机构节点保存的密钥切片组合中的密钥切片的数量的最小值为i,则客户端的数量x需满足如下约束范围:
在一种可能的设计中,所述密钥节点保存的密钥切片组合中的密钥切片数与所述密钥节点的设备活跃度呈负相关。
第三方面,本公开实施例提供一种密钥管理装置,包括:
注册模块,用于接收用户端发送的注册请求,其中所述注册请求中包含所述用户的身份标识;
生成模块,用于生成所述身份标识对应的用户密钥;
拆分模块,用于将所述用户密钥拆分为多个密钥切片;
存储模块,用于将所述密钥切片按照预设规则组合后发送至各密钥节点保存。
第四方面,本公开实施例提供一种密钥使用装置,包括:
接收模块,接收用户端发送的数据请求,其中所述数据请求中包含用户的身份标识;
重组模块,用于根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点,并根据所述密钥切片重组得到所述用户的用户密钥;
处理模块,用于根据所述用户密钥对所述数据请求对应的数据进行加密或解密。
第五方面,本公开实施例提供一种服务端设备,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面、第二方面以及第二方面各种可能的设计所述的方法。
第六方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面、第二方面以及第二方面各种可能的设计所述的方法。
第七方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上第一方面以及第一方面、第二方面以及第二方面各种可能的设计所述的方法。
本公开实施例提供的密钥管理方法、密钥使用方法、装置及设备,该方法将用户密钥拆分成密钥切片,一部分在可信机构节点保存,一部分在客户端节点保存,使得用户密钥不易发生丢失,同时用户密钥分散在不同的密钥节点,所有节点被网络攻击的可能性极低,用户密钥不易泄露,保证用户密钥的安全性。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的密钥系统的系统架构示意图;
图2为本公开实施例提供的密钥管理方法的流程示意图一;
图3为本公开实施例提供的密钥管理方法的流程示意图二;
图4为本公开实施例提供的密钥使用方法的流程示意图;
图5为本公开实施例提供的重组用户密钥的原理示意图;
图6为本公开实施例提供的密钥管理装置的结构示意图;
图7为本公开实施例提供的密钥使用装置的结构示意图;
图8为本公开实施例提供的服务端设备的硬件结构示意图。
具体实施方式
为使本公开实施例的目的、技术方案和优点更加清楚,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本公开一部分实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
技术名词解释:
主密钥:System Master Key,主要作用是用来验证系统工作密钥是否合法,以及加密用户密钥、内容密钥等工作密钥,保证工作密钥的安全存储。
内容密钥:Content Key,数据存储加密密钥,内容密钥=HASH(客户维度内容密钥因子+文件维度内容密钥因子),按照生成模式拆分为客户维度内容密钥因子及文件维度内容密钥因子。
传统的用户密钥管理方式,主要包括两种:第一种,使用用户密钥加密机构密钥对加解密用户数据,用户密钥客户端本地化保存,即用户密钥存于客户端且为唯一用户密钥;用户在存取数据进行加解密过程中均需要使用本地存储的唯一用户密钥。第二种,用户密钥托管保存,即将用户密钥托管于可信托管机构,用户在存取数据进行加解密过程中均需要向可信托管机构发起用户密钥使用请求。然而,将用户密钥本地化保存时,容易丢失,且丢失后无法找回,造成用户密钥易丢失;而将用户密钥托管于可信托管机构,由于可信托管机构网络可能被攻击,造成用户密钥泄露,从而造成用户加解密数据时,数据被泄露,用户的用户密钥的安全性较低。
为了保证用户的用户密钥的安全性,本公开实施例提供如下技术构思:通过将用户密钥拆分为多个密钥切片,然后按照预设的组合规则将密钥切片进行组合后发送至可信机构节点和客户端节点组成的密钥节点分别保存。当用户需要请求数据时,从各密钥节点获取多个密钥切片组合后得到用户的用户密钥,根据用户密钥对数据进行加密或解密。将用户密钥拆分成多个密钥切片,一部分在可信机构节点保存,一部分在客户端节点保存,使得用户密钥不易发生丢失,同时用户密钥分散在不同的密钥节点,所有节点被网络攻击的可能性极低,用户密钥不易泄露,保证用户密钥的安全性。
图1为本公开实施例提供的密钥系统的系统架构示意图。如图1所示,本实施例提供的系统包括密钥节点101和服务端102。其中,密钥节点101可以为包括可信机构节点和客户端节点等。服务端102可以一台服务端或几台服务端组成的集群。
图2为本公开实施例提供的密钥管理方法的流程示意图一,本实施例的执行主体可以为图1所示的服务端,本实施例此处不做特别限制。如图2所示,该方法包括:
S201:接收用户端发送的注册请求,其中所述注册请求中包含所述用户的身份标识。
在本实施例中,用户端可以是上述密钥节点中的客户端,也可以是非密钥节点中的客户端,对此本公开不作任何限制。
用户的身份标识可以是用户的身份信息、手机号、银行卡号、编码账户等等。
S202:生成所述身份标识对应的用户密钥。
具体地,可以根据身份标识进行哈希计算,得到对应的用户密钥。
在本实施例中,保存身份标识与用户密钥的映射关系。
S203:将所述用户密钥拆分为多个密钥切片。
在本实施例中,可以将用户密钥根据密钥的长度进行等分,划分为多个密钥长度相等的密钥切片。
也可以将用户密钥进行不同长度的拆分,得到多个密钥长度不等的密钥切片。
S204:将所述密钥切片按照预设规则组合后发送至各密钥节点保存,其中所述各密钥节点包括可信机构节点和客户端节点。
在本实施例中,可以将密钥切片通过随机算法处理后随机地发送至各密钥节点保存。
也可以从各密钥切片选择不同的密钥切片进行按照组合,将组合后的密钥切片组合发送至各密钥节点保存。
其中,密钥切片组合中可以有预设个数、密钥切片组合不重复的密钥组合。
例如,预设个数可以是3个或4个。每个密钥组合不能组成完整的用户密钥,以保证用户密钥的安全。
从上述描述可知,通过将用户密钥拆分为多个密钥切片,然后按照预设的组合规则将密钥切片进行组合后发送至可信机构节点和客户端节点组成的密钥节点分别保存。将用户密钥拆分成多个密钥切片,一部分在可信机构节点保存,一部分在客户端节点保存,使得用户密钥不易发生丢失,同时用户密钥分散在不同的密钥节点,所有节点被网络攻击的可能性极低,用户密钥不易泄露,保证用户密钥的安全性。
图3为本公开实施例提供的密钥管理方法的流程示意图二,本实施例在上述实施例的基础上,本实施例对S204中如何将所述密钥切片按照预设规则组合后发送至各密钥节点保存的过程进行了详细说明。如图3所示,该方法包括:
S301:获取所有的密钥节点的设备活跃指标数据。
在本实施例中,设备活跃指标数据包括但不限于节点日实时在线时长、节点日平均在线时长、节点周平均在线时长、节点月平均在线时长、节点日在线峰值段、节点周在线峰值段、节点月在线峰值段和节点群体性时间抖动率等。
S302:采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点。
在本实施例中,预设算法可以是任何聚类算法,如变色龙聚类算法、K-Means均值聚类算法等等。
S303:根据设备活跃度等级确定各密钥节点保存的密钥切片数。
具体地,根据各设备活跃度等级的密钥节点的类别数、组成所述时空存储密钥段的密钥切片的数量和保存的钥切片组合的密钥切片的数量的最小值,确定密钥段的步长;根据所述保存的钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数。
其中,所述根据各设备活跃度等级的密钥节点的类别数、组成所述时空存储密钥段的密钥切片的数量和密钥节点保存的钥切片组合的密钥切片的数量的最小值,确定密钥段的步长,的公式为:
式中,l密钥段的步长,y为各设备活跃度等级的密钥节点的类别数;n为组成所述时空存储密钥段的密钥切片的数量;i为密钥节点保存的密钥切片组合的密钥切片的数量的最小值;
所述根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一设备活跃度等级,确定所述任一设备活跃度等级的密钥节点保存的密钥切片数,的公式为:
式中,t为任一设备活跃度等级的密钥节点保存的密钥切片数;l为密钥段的步长;x为密钥节点的设备活跃度等级,其中密钥节点的活跃度越高对应的设备活跃度等级取值越小。
在本实施例中,x为整数变量。
S304:根据所述密钥切片数确定对应的密钥切片组合,并将所述密钥切片组合发送至对应的密钥节点保存。
在本实施例中,从所有的密钥切片选出密钥切片数对应的密钥切片进行组合得到密钥切片组合。
从上述描述可知,通过设备活跃指标数据对密钥节点进行聚类,设备活跃度等级确定各密钥节点保存的密钥切片数,活跃度等级越低(密钥节点越活跃)的密钥节点保存较少的密钥切片,活跃度等级越高(密钥节点越不活跃)的密钥节点保存较多的密钥切片,以保证不同活跃度的密钥节点保存对应数量的密钥切片数。
在本公开一个实施例中,上述实施例的预设算法为改进后的变色龙聚类算法。由于,传统的变色龙聚类算法存在最小二分概念,且需要指定簇之间的相似度阈值,在处理设备活跃指标数据进行聚类时存在一定局限性,即对于满足相似度阈值的簇之间无法确定是否继续进行合并以形成更大的簇。本实施例提供的改进后的变色龙聚类算法,其具体计算过程如下:
S1:采用变色龙聚类算法对所述设备活跃指标数据构建加权图,其中每个密钥节点的设备活跃指标数据为一个初始化簇。
在本实施例中,计算任意两个密钥节点的设备活跃指标数据的边的权值,根据任意两个密钥节点的设备活跃指标数据的边的权值构建加权图。
假设,任意两个密钥节点为节点i和节点j,节点i和节点j的设备活跃指标数据的边的权值计算公式如下:
其中,
式中,n为初始化簇个数;f为设备活跃指标数据的个数,xif为第i个设备节点对应的f活跃度指标数据;xjf为第j个设备节点对应的f活跃度指标数据;xnf为第n个设备节点对应的f活跃度指标数据;Zi,f为第i个设备节点与剩余的n-1个节点在第f个活跃度指标数据的欧式距离;Zj,f为第j个设备节点与剩余的n-1个节点在第f个活跃度指标数据的欧式距离;Wi,j为节点i和节点j的设备活跃指标数据的边的权值。
其中,所述引力系数的物理含义为所述加权图中簇内部连接任意两个密钥节点的设备活跃指标值的边的比例,减去所述加权图中任意连接该两个密钥节点的设备活跃指标值的边的比例期望值。
S2:采用变色龙聚类算法计算任意两个簇之间的结构相似度,并根据所述结构相似度对满足相似度条件的两个簇进行合并。
在本实施例中,结构相似度对满足相似度条件可以是两个簇的相似度的差值在一定的范围内。
在本实施例中,由于一个初始化簇即对应一个密钥节点,因此任意两个簇之间的结构相似度为任意两个密钥节点之间的结构相似度,其计算公式如下:
式中,Si,j为任意两个密钥节点之间的结构相似度;Wi,r为第i个节点与除节点i之外的其他节点所有活跃度指标数据的边的权值;Wj,r为第j个节点与除节点j之外的其他节点所有活跃度指标数据的边的权值;r为第r个节点。
需要说明的是,对于合并后的簇,Wi,r为第i个簇与除簇i之外的其他簇所有活跃度指标数据的边的权值;Wj,r为第j个簇与除簇j之外的其他节点所有活跃度指标数据的边的权值。Wi,r和Wj,r可参考步骤S1中的Wi,j计算得到。
S3:计算合并后各个簇之间的引力系数,其中所述引力系数为所述加权图中簇内部连接任意两个节点的设备活跃指标值的边的比例,减去所述加权图中任意连接该两个节点的设备活跃指标值的边的比例期望值。
首先,计算不同簇内任意两个节点的所有活跃度指标的边的权值指数ξi,j,公式如下:
式中,假设合并后簇的个数为k,每个簇使用Vi(i∈k)和Vj(j∈k),其中V指包含Vi、Vj的所有簇的集合;Vi为第i个簇,Vj为第j个簇;设cm为节点m所在的簇标号,cn为节点n所在的簇标号,Wm,n为节点m和节点n的设备活跃指标数据的边的权值;定义ξi,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数,距离越远指数越小;
然后,根据权值指数ξi,j计算各个簇之间的引力系数G,公式如下:
式中,G为引力系数;k为合并后簇的个数;ξi,j为不同簇Vi、Vj内任意两个节点的所有活跃度指标的边的权值指数;
针对k个簇,定义一个k×k维的对称矩阵E,则定义各个簇内任意两个密钥节点之间的引力系数的计算公式为:
其中,
式中,G为引力系数;k为并后簇的个数;ξi,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数,距离越远指数越小;V指包含Vi、Vj的所有簇的集合;Vi为第i个簇,Vj为第j个簇;设cm为节点m所在的簇标号,cn为节点n所在的簇标号;Wm,n为节点m和节点n的设备活跃指标数据的边的权值。
这里,如果如果簇内部边的比例不大于任意连接边比例的期望值,则引力系数G等于0;引力系数G的上限为1,G越接近1,说明聚类结果越符合簇内连接紧密、簇外连接稀疏的标准,即聚类结果越好。
S4:对合并后的簇,重复执行步骤S2和S3,直至所述引力系数的值开始下降时,停止合并簇。
在本实施例中,通过合并簇,引力系数逐渐增大并接近1,继续合并,当力系数开始下降时,则停止合并。
S5:将最终合并后的簇的密钥节点,确定为所述所有的密钥节点的设备活跃指标值的聚类结果。
S6:计算每个类别的密钥节点与簇点的欧式距离并进行排序,得到各设备活跃度等级的密钥节点。
其中,计算每个类别的密钥节点与簇点的欧式距离可以参考上述S1中Zi,f进行计算。
例如,对2000个样本客户的1万余的设备节点活跃性因数进行聚类,最终根据活跃度大致分为5类,每类的主要的特点如下:
第1类:设备基本全天在线,且稳定度较高,随时可获取设备上的切片信息,属于最活跃客户。
第2类:设备日间基本在线,夜间较少在线,且稳定度较高,属于次级活跃客户
第3类:设备全天在线时长平均每日累计超过6小时,受特定时间驱动,存在在线品读抖动现象,属于活跃客户
第4类:设备在线无规律,平均每日累计在线少于6小时,受特定时间驱动,存在在线品读抖动现象,属于不活跃客户
第5类:设备在线无规律,平均每日累计在线少于4小时,不受特定时间驱动,不存在在线品读抖动现象,属于最不活跃客户。
从上述描述可知,本实施例提出一种改进的变色龙聚类算法,通过定义簇内节点的引力系数,用来判断簇之间是否需要继续进行合并,不需要人工指定相似度阈值,聚类结果更准确。
图4为本公开实施例提供的密钥使用方法的流程示意图。本实施例的执行主体可以为图1所示的服务端,本实施例此处不做特别限制。本实施例中,所述的密钥切片为图2实施例中所述的保存在各密钥节点的密钥切片。如图4所示,该方法包括:
S401:接收用户端发送的数据请求,其中数据请求中包含用户的身份标识。
在本实施例中,用户端可以是上述密钥节点中的客户端,也可以是非密钥节点中的客户端,对此本公开不作任何限制。
其中,数据请求可以是获取数据,可以是发送数据。用户的身份标识可以是用户的身份信息、手机号、银行卡号、编码账户等等。
S402:根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点。
在本实施例中,所述可信机构节点包括可信中心机构节点和第三方可信机构节点。具体地,根据所述身份标识,从可信中心机构节点请求并获取对应的密钥切片作为所述用户的可信中心机构密钥段;根据所述身份标识,从多个第三方可信机构节点和多个所述客户端节点获取各保存的对应的密钥切片,并进行重组得到时空存储密钥段。
具体地,访问可信中心机构的节点,查询预存的各身份标识与可信中心机构密钥段的对应关系,获取该身份标识对应的可信中心机构密钥段。
具体地,访问多个多个第三方可信机构节点和多个所述客户端节点组成的密钥节点,查询预存的各身份标识与密钥切片的对应关系,从多个密钥节点获取该身份标识对应的密钥切片,将密钥切片进行密钥重组,得到用户的时空存储密钥段。
S403:根据所述密钥切片重组得到所述用户的用户密钥。
具体地,根据所述时空存储密钥段和所述可信中心机构密钥段组合得到所述用户的用户密钥。
在本实施例中,将时空存储密钥段和可信中心机构密钥段进行密钥重组得到该用户的用户密钥。参考图5,图5为本公开实施例提供的重组用户密钥的原理示意图。
S404:根据所述用户密钥对所述数据请求对应的数据进行加密或解密。
在本实施例中,可以通过用户密钥对用户的数据请求对应的数据直接进行加密或解密,也可以通过其他密钥和用户密钥配合对用户的数据请求对应的数据进行加密或解密。
从上述描述可知,将用户密钥拆分成密钥切片,一部分在可信机构节点保存,一部分在客户端节点保存,使得用户密钥不易发生丢失,同时用户密钥分散在不同的密钥节点,所有节点被网络攻击的可能性极低,用户密钥不易泄露,保证用户用户数据加密和解密的稳定性、安全性。
在本公开的一个实施例中,上述步骤S404中,可以具体包括:
根据主密钥对所述用户密钥进行解密,得到所述用户密钥的密钥明文;
根据所述用户密钥的密钥明文对内容密钥进行解密,得到文件维度随机盐因子;
根据所述内容密钥和所述文件维度随机盐因子对所述用户请求的数据进行加密或解密。
其中,主密钥为MD5密钥,包括:子系统内置因子和子系统密钥因子。
用户密钥为哈希密钥。
内容密钥,为MD5密钥,包括:用户内容因子和文件随机盐内容因子。
从上述描述可知,本实施例未使用用户密钥直接对用户请求的数据进行加密或解密,而是使用主密钥对用户密钥进行解密,在使用密钥明文对内容密钥解密得到文件维度随机盐因子,根据内容密钥和文件维度随机盐因子对用户请求的数据进行加密或解密。由于用户密钥作为动态变量会定期做变更维护,采用本实施例在用户密钥发生变更时,对于已经加密的数据无需在使用用户密钥再次刷新,能够降低系统消耗,降低维护成本。
在本公开的一个实施例中,本实施中,每个密钥节点保存一个密钥切片组合,所述密钥切片组合包括多个不同的密钥切片,每个密钥节点保存的密钥切片组合不同、且每个密钥组合不能组成完整的用户密钥;上述步骤S402-S403,具体包括:
向所有的密钥节点发送密钥切片获取请求;
在接收到预设个数的密钥节点返回的密钥切片组合时,根据预设个数的密钥节点的密钥切片组合进行重组得到所述用户密钥。
在本实施例中,密钥节点的可信机构节点为活跃设备,通常情况下是每日24小时在线。客户端根据设备在线情况可以分为不同的客户端,即有的客户端能够及时响应密钥切片获取请求,有的客户端则不能及时响应密钥切片获取请求。
从上述描述可知,通过保存密钥切片组合,而不是单独的密钥切片,可以减低请求次数,避免访问过多的密钥节点;此外,每个密钥组合不能组成完整的用户密钥,以保证用户密钥安全性,避免单个密钥节点被攻击,即泄露用户密钥的情况出现。
在本公开的一个实施例中,所述密钥节点为包括客户端和可信机构节点组成的分布式系统节点;其中可信机构节点的数量记为m,组成所述用户密钥的密钥切片的数量为n,每个客户端或可信机构节点保存的密钥切片组合的密钥切片的数量的最小值为i,则客户端的数量x需满足如下约束范围:
下面,对客户端的数量x取值进行说明。
假设可信机构的数目m,密钥切片数切片数n,节点保存最小切片数i,用户客户端数x。
客户端和可信机构节点均属于组成的分布式系统节点,每个节点包保存密钥切片组合。例如,节点A保存切片1+切片2+切片3、节点B保存切片2+切片3+切片4。
式中m为可信机构数,i为每个客户端或可信机构节点保存的密钥切片数,因需保证机构端不可保存完整密钥,则必定需满足m*i<n。
其中,而获取(n-i-m)个不重复密钥段至多需要(n-i-m)*i次交互,论证过程如下:
1)密钥节点保存的密钥切片组合不重复,故每接收一个客户端节点回复对应的密钥切片组合中必定包含一个新的密钥切片;
2)存在冗余密钥切片回复,i个切片最多存在i-1个冗余噪声;
3)假设命中所有冗余噪声,才能获取一个有效回复,则至多需要(n-i-m)*i次交互回复后能获取所有不重复的密钥切片组合。
故x还需要满足(x≥(n-i-m)*i)的条件,故最终客户端节点数满足以下公式范围:
实例1、假设有m=2个可信机构节点,密钥切片n=10,每个密钥节点保存的密钥切片数i=4。
那么,2*4<10满足必要条件,还需要客户端节点的数量满足16≤x≤208,则在至多获得到16个客户端节点返回的密钥切片组合后,可以获得完整的用户密钥,密钥切片可以互不重复的排列组合方式存储于210个节点上(包括两个可信机构)。
假设每个密钥节点丢失密钥段的概率是50%,则至少194个节点及以上丢失密钥段才会导致用户密钥无法找回,概率大概为50%的194次方,因此基本上不可能丢失用户密钥。
从上述描述可知,通过设置则客户端节点的数量x需满足预设的约束范围,保证用户密钥基本不会丢失,进一步提高用户密钥的安全性。
在本公开的一个实施例中,所述密钥节点保存的密钥切片组合中的密钥切片数与所述密钥节点的设备活跃度呈负相关。
在本实施例中,密钥节点的设备活跃度越高,其密钥切片组合中保存的密钥切片数越少;密钥节点的设备活跃度越低,其密钥切片组合中保存的密钥切片数越高。
从上述描述可知,可以通过较少的对密钥节点请求,即可获取完整的用户密钥,降低请求次数,提高处理效率。
图6为本公开实施例提供的密钥管理装置的结构示意图。如图6所示,该密钥使用装置60包括:注册模块601、生成模块602、拆分模块603和存储模块604。
注册模块601,用于接收用户端发送的注册请求,其中所述注册请求中包含所述用户的身份标识;
生成模块602,用于生成所述身份标识对应的用户密钥;
拆分模块603,用于将所述用户密钥拆分为多个密钥切片;
存储模块604,用于将所述密钥切片按照预设规则组合后发送至各密钥节点保存。
在本公开的一个实施例中,所述存储模块604,包括:
获取单元,用于获取所有的密钥节点的设备活跃指标数据;
聚类单元,用于采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点;
密钥切片处理单元,用于根据设备活跃度等级确定各密钥节点保存的密钥切片数;
密钥切片保存单元,用于根据所述密钥切片数确定对应的密钥切片组合,并将所述密钥切片组合发送至对应的密钥节点保存。
在本公开的一个实施例中,所述密钥切片处理单元,用于根据各设备活跃度等级的密钥节点的类别数、组成所述用户密钥的密钥切片的数量和保存的密钥切片组合的密钥切片的数量的最小值,确定密钥段的步长;根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数。
在本公开的一个实施例中,所述所述聚类单元,具体用于S1:采用变色龙聚类算法对所述设备活跃指标数据构建加权图,其中所述加权图的初始化簇个数为n,每个密钥节点的设备活跃指标数据为一个簇;
S2:采用变色龙聚类算法计算任意两个簇之间的结构相似度,并根据所述结构相似度对满足相似度条件的两个簇进行合并;
S3:计算合并后各个簇内任意两个密钥节点之间的引力系数,其中所述引力系数G表示如下:
其中,
式中,G为引力系数;k为合并后簇的个数;ξj,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数,距离越远指数越小;V指包含Vi、Vj的所有簇的集合;Vi为第i个簇,Vj为第j个簇;设cm为节点m所在的簇标号,cn为节点n所在的簇标号;Wm,n为节点m和节点n的设备活跃指标数据的边的权值;
S4:对合并后的簇,重复执行步骤S2和S3,直至所述引力系数的值开始下降时,停止合并簇;
S5:将最终合并后的簇的密钥节点,确定为所述所有的密钥节点的设备活跃指标值的聚类结果;
S6:计算每个类别的密钥节点与簇点的欧式距离并进行排序,得到各设备活跃度等级的密钥节点。
本实施例提供的装置的各模块,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图7为本公开实施例提供的密钥使用装置的结构示意图。如图7所示,该密钥使用装置70包括:接收模块701、重组模块702和处理模块703。
接收模块701,接收用户端发送的数据请求,其中所述数据请求中包含用户的身份标识;
重组模块702,用于根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点,并根据所述密钥切片重组得到所述用户的用户密钥;
处理模块703,用于根据所述用户密钥对所述数据请求对应的数据进行加密或解密。
在本公开的一个实施例中,所述可信机构节点包括可信中心机构节点和第三方可信机构节点;所述重组模块702,具体用于根据所述身份标识,从可信中心机构节点请求并获取对应的密钥切片作为所述用户的可信中心机构密钥段;根据所述身份标识,从多个第三方可信机构节点和多个客户端节点获取各保存的对应的密钥切片,并进行重组得到时空存储密钥段;根据所述时空存储密钥段和所述可信中心机构密钥段组合得到所述用户的用户密钥。
在本公开的一个实施例中,所述处理模块703,具体用于根据主密钥对所述用户密钥进行解密,得到所述用户密钥的密钥明文;根据所述用户密钥的密钥明文对内容密钥进行解密,得到文件维度随机盐因子;根据所述内容密钥和所述文件维度随机盐因子对所述用户请求的数据进行加密或解密。
在本公开的一个实施例中,每个密钥节点保存一个密钥切片组合,所述密钥切片组合包括多个不同的密钥切片,每个密钥节点保存的密钥切片组合不重复、且每个密钥组合不能组成完整的用户密钥;所述组模块702,具体用于向所有的密钥节点发送密钥切片获取请求;在接收到预设个数的密钥节点返回的密钥切片组合时,根据所述预设个数的密钥节点的密钥切片组合进行重组得到所述用户密钥。
在本公开的一个实施例中,所述密钥节点为包括客户端和可信机构节点组成的分布式系统节点;其中可信机构节点的数量记为m,组成所述用户密钥的密钥切片的数量为n,每个客户端或可信机构节点保存的密钥切片组合中的密钥切片的数量的最小值为i,则客户端的数量x需满足如下约束范围:
在本公开的一个实施例中,所述密钥节点保存的密钥切片组合中的密钥切片数与所述密钥节点的设备活跃度呈负相关。
本实施例提供的装置的各模块,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,本实施例此处不再赘述。
图8为本公开实施例提供的服务端设备的硬件结构示意图。如图8所示,本实施例的服务端设备80包括:处理器801以及存储器802;其中
存储器802,用于存储计算机执行指令;
处理器801,用于执行存储器存储的计算机执行指令,以实现上述实施例中服务端所执行的各个步骤。具体可以参见前述方法实施例中的相关描述。
可选地,存储器802既可以是独立的,也可以跟处理器801集成在一起。
当存储器802独立设置时,该服务端设备还包括总线803,用于连接所述存储器802和处理器801。
本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上所述的密钥管理方法或密钥使用方法。
本公开实施例还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上所述的密钥管理方法或密钥使用方法。
在本公开所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。例如,以上所描述的设备实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案。
另外,在本公开各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。上述模块成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能模块的形式实现的集成的模块,可以存储在一个计算机可读取存储介质中。上述软件功能模块存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务端,或者网络设备等)或处理器执行本申请各个实施例所述方法的部分步骤。
应理解,上述处理器可以是中央处理单元(Central Processing Unit,简称CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(Application Specific Integrated Circuit,简称ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器,还可以为U盘、移动硬盘、只读存储器、磁盘或光盘等。
总线可以是工业标准体系结构(Industry Standard Architecture,简称ISA)总线、外部设备互连(Peripheral Component Interconnect,简称PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
上述存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific Integrated Circuits,简称ASIC)中。当然,处理器和存储介质也可以作为分立组件存在于电子设备或主控设备中。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本公开的技术方案,而非对其限制;尽管参照前述各实施例对本公开进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本公开各实施例技术方案的范围。
Claims (13)
1.一种密钥管理方法,其特征在于,包括:
接收用户端发送的注册请求,其中所述注册请求中包含用户的身份标识;
生成所述身份标识对应的用户密钥;
将所述用户密钥拆分为多个密钥切片;
将所述密钥切片按照预设规则组合后发送至各密钥节点保存,其中所述各密钥节点包括可信机构节点和客户端节点;
所述将所述密钥切片按照预设规则组合后发送至各密钥节点保存,包括:
获取所有的密钥节点的设备活跃指标数据;
采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点;
根据设备活跃度等级确定各密钥节点保存的密钥切片数;
根据所述密钥切片数确定对应的密钥切片组合,并将所述密钥切片组合发送至对应的密钥节点保存。
2.根据权利要求1所述的方法,其特征在于,所述根据设备活跃度等级确定各密钥节点的密钥切片数,包括:
根据各设备活跃度等级的密钥节点的类别数、组成所述用户密钥的密钥切片的数量和保存的密钥切片组合的密钥切片的数量的最小值,确定密钥段的步长;
根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数。
3.根据权利要求2所述的方法,其特征在于,所述根据各设备活跃度等级的密钥节点的类别数、组成所述用户密钥的密钥切片的数量和保存的密钥切片组合的密钥切片的数量的最小值,确定密钥段的步长的公式为:
式中,l密钥段的步长,y为各设备活跃度等级的密钥节点的类别数;n为组成所述用户密钥的密钥切片的数量;i为密钥节点保存的密钥切片组合的密钥切片的数量的最小值;
所述根据所述保存的密钥切片组合的密钥切片的数量的最小值和任一活跃度等级,确定所述任一活跃度等级的密钥节点保存的密钥切片数的公式为:
式中,t为任一设备活跃度等级的密钥节点保存的密钥切片数;l为密钥段的步长;x为密钥节点的设备活跃度等级,其中密钥节点的活跃度越高对应的设备活跃度等级取值越小。
4.根据权利要求1所述的方法,其特征在于,所述采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点,包括:
S1:采用变色龙聚类算法对所述设备活跃指标数据构建加权图,其中所述加权图的初始化簇个数为n,每个密钥节点的设备活跃指标数据为一个簇;
S2:采用变色龙聚类算法计算任意两个簇之间的结构相似度,并根据所述结构相似度对满足相似度条件的两个簇进行合并;
S3:计算合并后各个簇之间的引力系数,其中所述引力系数G的计算过程如下:
计算不同簇内任意两个节点的所有活跃度指标的边的权值指数ξi,j,公式如下:
式中,假设合并后簇的个数为k,每个簇使用Vi,i∈k和Vj,j∈k表示,其中V指包含Vi、Vj的所有簇的集合;Vi为第i个簇,Vj为第j个簇;设cm为节点m所在的簇标号,cn为节点n所在的簇标号,Wm,n为节点m和节点n的设备活跃指标数据的边的权值;定义ξi,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数,距离越远指数越小;
根据权值指数ξi,j计算各个簇之间的引力系数G,公式如下:
式中,G为引力系数;k为合并后簇的个数;ξi,j为不同簇Vi、Vj内节点m和n所有活跃度指标的边的权值指数;
S4:对合并后的簇,重复执行步骤S2和S3,直至所述引力系数的值开始下降时,停止合并簇;
S5:将最终合并后的簇的密钥节点,确定为所述所有的密钥节点的设备活跃指标值的聚类结果;
S6:计算每个类别的密钥节点与簇点的欧式距离并进行排序,得到各设备活跃度等级的密钥节点。
5.一种密钥使用方法,其特征在于,包括:
接收用户端发送的数据请求,其中所述数据请求中包含用户的身份标识;
根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点;
根据所述密钥切片重组得到所述用户的用户密钥;
根据主密钥对所述用户密钥进行解密,得到所述用户密钥的密钥明文;
根据所述用户密钥的密钥明文对内容密钥进行解密,得到文件维度随机盐因子;
根据所述内容密钥和所述文件维度随机盐因子对所述数据请求的数据进行加密或解密。
6.根据权利要求5所述的方法,其特征在于,所述可信机构节点包括可信中心机构节点和第三方可信机构节点;
所述根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点,包括:
根据所述身份标识,从可信中心机构节点请求并获取对应的密钥切片作为所述用户的可信中心机构密钥段;
根据所述身份标识,从多个第三方可信机构节点和多个客户端节点获取各保存的对应的密钥切片,并进行重组得到时空存储密钥段;
根据所述密钥切片重组得到所述用户的用户密钥,包括:
根据所述时空存储密钥段和所述可信中心机构密钥段组合得到所述用户的用户密钥。
7.根据权利要求5所述的方法,其特征在于,每个密钥节点保存一个密钥切片组合,所述密钥切片组合包括多个不同的密钥切片,每个密钥节点保存的密钥切片组合不重复、且每个密钥组合不能组成完整的用户密钥;
所述从多个密钥节点获取各密钥节点保存的对应的密钥切片,根据所述密钥切片重组得到所述用户的用户密钥,包括:
向所有的密钥节点发送密钥切片获取请求;
在接收到预设个数的密钥节点返回的密钥切片组合时,根据所述预设个数的密钥节点的密钥切片组合进行重组得到所述用户密钥。
9.根据权利要求5所述的方法,其特征在于,所述密钥节点保存的密钥切片组合中的密钥切片数与所述密钥节点的设备活跃度呈负相关。
10.一种密钥管理装置,其特征在于,包括:
注册模块,用于接收用户端发送的注册请求,其中所述注册请求中包含用户的身份标识;
生成模块,用于生成所述身份标识对应的用户密钥;
拆分模块,用于将所述用户密钥拆分为多个密钥切片;
存储模块,用于将所述密钥切片按照预设规则组合后发送至各密钥节点保存,其中所述各密钥节点包括可信机构节点和客户端节点;
所述存储模块,具体用于:
获取所有的密钥节点的设备活跃指标数据;
采用预设算法对所述所有的密钥节点的设备活跃指标数据进行聚类,得到各设备活跃度等级的密钥节点;
根据设备活跃度等级确定各密钥节点保存的密钥切片数;
根据所述密钥切片数确定对应的密钥切片组合,并将所述密钥切片组合发送至对应的密钥节点保存。
11.一种密钥使用装置,其特征在于,包括:
接收模块,接收用户端发送的数据请求,其中所述数据请求中包含用户的身份标识;
重组模块,用于根据所述身份标识,从多个密钥节点获取各密钥节点保存的对应的密钥切片,其中密钥节点包括可信机构节点和客户端节点,并根据所述密钥切片重组得到所述用户的用户密钥;
处理模块,用于根据所述用户密钥对所述数据请求对应的数据进行加密或解密;
所述处理模块,具体用于:
根据主密钥对所述用户密钥进行解密,得到所述用户密钥的密钥明文;
根据所述用户密钥的密钥明文对内容密钥进行解密,得到文件维度随机盐因子;
根据所述内容密钥和所述文件维度随机盐因子对所述数据请求的数据进行加密或解密。
12.一种服务端设备,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至4或5至9任一项所述的方法。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至4或5至9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511372.2A CN112636907B (zh) | 2020-12-18 | 2020-12-18 | 密钥管理方法、密钥使用方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011511372.2A CN112636907B (zh) | 2020-12-18 | 2020-12-18 | 密钥管理方法、密钥使用方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112636907A CN112636907A (zh) | 2021-04-09 |
CN112636907B true CN112636907B (zh) | 2023-04-18 |
Family
ID=75318147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011511372.2A Active CN112636907B (zh) | 2020-12-18 | 2020-12-18 | 密钥管理方法、密钥使用方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112636907B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019143850A1 (en) | 2018-01-17 | 2019-07-25 | Medici Ventures, Inc. | Multi-approval system using m of n keys to generate a transaction address |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108400868A (zh) * | 2018-01-17 | 2018-08-14 | 深圳市文鼎创数据科技有限公司 | 种子密钥的存储方法、装置及移动终端 |
CN111641636A (zh) * | 2020-05-28 | 2020-09-08 | 中国联合网络通信集团有限公司 | 物联网数据安全通信的方法、系统、设备及存储介质 |
US10785199B1 (en) * | 2017-11-27 | 2020-09-22 | Amazon Technologies, Inc. | Distribution of derived authentication keys to authentication servers based on trust level |
CN111934872A (zh) * | 2020-10-12 | 2020-11-13 | 百度在线网络技术(北京)有限公司 | 密钥处理方法、装置、电子设备以及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8391481B2 (en) * | 2009-12-31 | 2013-03-05 | International Business Machines Corporation | Rebinding of content title keys in clusters of devices with distinct security levels |
-
2020
- 2020-12-18 CN CN202011511372.2A patent/CN112636907B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10785199B1 (en) * | 2017-11-27 | 2020-09-22 | Amazon Technologies, Inc. | Distribution of derived authentication keys to authentication servers based on trust level |
CN108400868A (zh) * | 2018-01-17 | 2018-08-14 | 深圳市文鼎创数据科技有限公司 | 种子密钥的存储方法、装置及移动终端 |
CN111641636A (zh) * | 2020-05-28 | 2020-09-08 | 中国联合网络通信集团有限公司 | 物联网数据安全通信的方法、系统、设备及存储介质 |
CN111934872A (zh) * | 2020-10-12 | 2020-11-13 | 百度在线网络技术(北京)有限公司 | 密钥处理方法、装置、电子设备以及存储介质 |
Non-Patent Citations (2)
Title |
---|
Addressing Skewness in Iterative ML Jobs with Parameter Partition;Shaoqi Wang;《IEEE INFOCOM 2019 - IEEE Conference on Computer Communications》;20190617;全文 * |
Chameleon聚类算法研究;陈恒飞;《中国优秀硕士学位论文全文数据库 (信息科技辑)》;20180228;第四章 * |
Also Published As
Publication number | Publication date |
---|---|
CN112636907A (zh) | 2021-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11368300B2 (en) | Supporting a fixed transaction rate with a variably-backed logical cryptographic key | |
US10491576B1 (en) | System and method for security breach response using hierarchical cryptographic key management | |
US9384232B2 (en) | Confirming data consistency in a data storage environment | |
Zhu et al. | Dynamic audit services for integrity verification of outsourced storages in clouds | |
CN107220559B (zh) | 一种针对不可篡改文件的加密存储方法 | |
EP3602954A1 (en) | Method and system for hierarchical cryptographic key management | |
CN109241754B (zh) | 一种基于区块链的云文件重复数据删除方法 | |
WO2019166916A1 (en) | Computer implemented voting process and system | |
CA2936106A1 (en) | Encrypted data - data integrity verification and auditing system | |
CN112636907B (zh) | 密钥管理方法、密钥使用方法、装置及设备 | |
US20180121669A1 (en) | Extended security scrutiny of data access requests in a dispersed storage network | |
Wu et al. | Consensus mechanism of IoT based on blockchain technology | |
CN114422143B (zh) | 基于人工智能的数据动态加密方法、装置、设备及介质 | |
CN116488814A (zh) | 一种基于fpga的数据加密的安全计算方法 | |
Ukwuoma et al. | Post-quantum cryptography-driven security framework for cloud computing | |
Du et al. | Secure and verifiable keyword search in multiple clouds | |
IL292731A (en) | Privacy-secure batch retrieval through private information retrieval and secure multi-party computation | |
Wang et al. | Preserving identity privacy on multi‐owner cloud data during public verification | |
Xu et al. | FedG2L: a privacy-preserving federated learning scheme base on “G2L” against poisoning attack | |
Bini et al. | Secure image deduplication using SPIHT compression | |
JP2021148850A (ja) | 情報処理システム、情報処理方法、情報処理プログラム、秘密計算システム、秘密計算方法、及び、秘密計算プログラム | |
CN114415943B (zh) | 一种云端多副本数据的公开审计方法及审计系统 | |
CN117852019B (zh) | 基于密码学的数字资产流转方法及系统 | |
CN116781234B (zh) | 基于伪随机乱序加密的财务数据共享方法及装置 | |
US11418580B2 (en) | Selective generation of secure signatures in a distributed storage network |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |