CN114157488A - 密钥获取方法、装置、电子设备及存储介质 - Google Patents
密钥获取方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114157488A CN114157488A CN202111472385.8A CN202111472385A CN114157488A CN 114157488 A CN114157488 A CN 114157488A CN 202111472385 A CN202111472385 A CN 202111472385A CN 114157488 A CN114157488 A CN 114157488A
- Authority
- CN
- China
- Prior art keywords
- branch
- user
- ciphertext
- core
- key
- 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
Images
Classifications
-
- 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
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/045—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供密钥获取方法、装置、电子设备及存储介质,属于数据安全技术领域。应用于分支管理端;分支管理端隶属核心管理端,分支管理端下设用户端,核心管理端向分支管理端提供核心端对称密钥密文和核心端密文内容,方法包括:接收核心端授权文件输入时,通过内嵌私钥解密核心端授权文件,得到授权分支端信息及解密核心端对称密钥密文的分支端私钥;授权分支端信息与分支管理端本地设备信息匹配时,据授权用户端信息生成加密分支端对称密钥的用户端私钥;向用户端下发通过内嵌私钥加密用户端私钥和授权用户端信息生成的分支端授权文件,使用户端通过用户端私钥解密分支端对称密钥密文及通过解密的分支端对称密钥解密分支端密文内容得到明文内容。
Description
技术领域
本发明属于数据安全技术领域,特别是涉及一种密钥获取方法、装置、电子设备及存储介质。
背景技术
随着社会的发展和科技的进步,数据安全问题越来越备受关注。为了保证数据安全,往往是通过加密算法对数据进行加密。
相关技术中,在对数据进行加密过程中,对于一个账号对应的一对密钥对,是通过服务器分发和管理的,而由于服务器和登录该账号的客户端之间往往是通过网络传输数据的,则密钥对也是通过网络传输的。
但是,在密钥对的传输是通过网络进行传输时,一旦隔离网络,将导致无法实现密钥对传输和分发。
发明内容
有鉴于此,本发明提供一种密钥获取方法、装置、电子设备及存储介质,以便解决相关技术存在的无法满足隔离网络情况下密钥的传输和分发的技术问题。
第一方面,提供了一种密钥获取方法,应用于分支管理端;所述分支管理端隶属于核心管理端,所述分支管理端下设有用户端,所述核心管理端用于向所述分支管理端提供核心端对称密钥密文和核心端密文内容,所述方法包括:
在接收到核心端授权文件的输入时,通过内嵌私钥解密所述核心端授权文件,得到分支端私钥和授权分支端信息;所述分支端私钥用于解密所述核心端对称密钥密文得到预设的核心端对称密钥;所述核心端对称密钥用于解密所述核心端密文内容得到明文内容;
在所述授权分支端信息与所述分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥;所述用户端私钥用于加密预设的分支端对称密钥得到分支端对称密钥密文;所述分支端对称密钥用于对所述明文内容进行加密得到分支端密文内容;
通过所述内嵌私钥加密所述用户端私钥和所述授权用户端信息,生成分支端授权文件;
向所述用户端下发所述分支端授权文件,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到所述分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到所述明文内容。
第二方面,提供了一种密钥获取方法,应用于用户端;所述用户端隶属于第一方面所述分支管理端,所述分支管理端用于向所述用户端提供分支端对称密钥密文和分支密文内容,所述方法包括:
在接收到分支端授权文件的输入时,解析所述分支端授权文件,得到授权用户端信息;
在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到明文内容。
第三方面,提供了一种密钥获取装置,应用于分支管理端;所述分支管理端隶属于核心管理端,所述分支管理端下设有用户端,所述核心管理端用于向所述分支管理端提供核心端对称密钥密文和核心端密文内容,所述装置包括:
解密分支端私钥模块,用于在接收到核心端授权文件的输入时,通过内嵌私钥解密所述核心端授权文件,得到分支端私钥和授权分支端信息;所述分支端私钥用于解密所述核心端对称密钥密文得到预设的核心端对称密钥;所述核心端对称密钥用于解密所述核心端密文内容得到明文内容;
生成用户端私钥模块,用于在所述授权分支端信息与所述分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥;所述用户端私钥用于加密预设的分支端对称密钥得到分支端对称密钥密文;所述分支端对称密钥用于对所述明文内容进行加密得到分支端密文内容;
生成分支端授权文件模块,用于通过所述内嵌私钥加密所述用户端私钥和所述授权用户端信息,生成分支端授权文件;
下发分支端授权文件模块,用于向所述用户端下发所述分支端授权文件,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到所述分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到所述明文内容。
第四方面,提供了一种密钥获取装置,应用于用户端;所述用户端隶属于第一方面所述的分支管理端,所述分支管理端用于向所述用户端提供分支端对称密钥密文和分支密文内容,所述装置包括:
解析分支端授权文件模块,用于在接收到分支端授权文件的输入时,解析所述分支端授权文件,得到授权用户端信息;
获取用户端私钥模块,用于在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到预设的分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到明文内容。
第五方面,提供了一种电子设备,该电子设备包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现第一方面和/或第二方面所述的密钥获取方法。
第六方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现第一方面和/或第二方面所述的密钥获取方法。
本发明实施例提供的技术方案带来的有益效果至少包括:
本申请实施例提供的一种密钥获取方法、装置、电子设备及存储介质,通过在接收到核心端授权文件的输入时,通过内嵌私钥解密核心端授权文件,从而得到授权分支端信息,以及用于解密核心端对称密钥密文的分支端私钥;然后在该授权分支端信息与分支管理端的本地设备信息相匹配时,可以根据预先输入的授权用户端信息,自动生成用于加密预设的分支端对称密钥的用户端私钥;从而可以通过内嵌私钥加密该用户端私钥和该授权用户端信息,以生成分支端授权文件,然后向用户端下发该分支端授权文件,以使得该用户端可以通过该用户端私钥解密分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密分支端密文内容得到明文内容。这样,可以节约密钥分发的步骤,解决各个核心管理端、分支管理端及用户端,在网络隔离情况下的密钥对的分发问题,使得在网络隔离情况下,能够通过预先输入的授权分支端信息或授权用户端信息,就可以自动得到分支端私钥或用户端私钥,无需核心管理端与分支管理端之间、分支管理端与用户端之间或各个用户端之间频繁更新密钥,就可以实现各个核心管理端、分支管理端及用户端的加密过程,不仅节约了成本,还加快了后续加密数据的速度,使得对数据的加密处理更加稳定,加密结果更加精准。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1是本发明实施例提供的一种密钥获取方法步骤流程图;
图2是本发明实施例提供的一种密钥分发管理的流程图;
图3是本发明实施例提供的一种文档加密管理的流程图;
图4是本发明实施例提供的一种密钥获取方法逻辑流程图;
图5是本发明实施例提供的另一种密钥获取方法步骤流程图;
图6是本发明实施例提供的另一种密钥获取方法逻辑流程图;
图7是本发明实施例提供的再一种密钥获取方法步骤流程图;
图8是本发明实施例提供的再一种密钥获取方法逻辑流程图;
图9是本发明实施例提供的又一种密钥获取方法逻辑流程图;
图10是本发明实施例提供的一种密文数据格式示意图;
图11是本发明实施例提供的一种密钥获取装置结构框图;
图12是本发明实施例提供的另一种密钥获取装置结构框图;
图13是本发明实施例提供的再一种密钥获取装置结构框图;
图14是本发明实施例提供的一种电子设备结构框图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
随着社会的发展和科技的进步,数据安全问题越来越备受关注。存储在介质上的明文内容和在网络上传输的明文内容已不再安全,尽管现在有很多数据防泄漏的手段,但是依然无法防护通过非法获取介质、闯入系统等手段窃取数据或者文件,给客户或者企业带来了巨大的损失。所以除了传统的防泄漏手段以外,应当使用加密算法对存储在设备或者介质上的数据、文件使用加密算法进行加密,这样就算数据或文件被窃取,没有密钥或解密方法的情况下,无法打开文件和查看内容。
相关技术中常用的加密算法往往是商密算法,商密算法可以包括:商密二号(SM2)算法、商密三号(SM3)算法、商密四号(SM4)算法、商密九号(SM9)算法等,其中,SM2算法是基于椭圆曲线密码的公钥密码算法标准,其秘钥长度256bit,包含数字签名和公钥加密,用于替换RSA/DH/ECDSA/ECDH等算法。可以满足电子认证服务系统等应用需求;SM3算法适用于数字签名和验证、消息认证码的生成与验证以及随机数的生成的算法,可以满足电子认证服务系统等应用需求;SM4算法是分组对称密码算法,用于替代DES/AES等算法,SM4算法与AES算法具有相同的加密长度、分组长度,都是128bit,适用于密码应用中使用分组密码的需求;SM9是一种标识密码标准,SM9算法作为标识密码算法,设计思想是以实体的有效标识(如邮件地址、手机号码、QQ号、身份证码、硬件序列号、mac地址、用户名等)作为公钥,用户无需申请和交换证书,从而大大降低安全系统的复杂性。SM9的加密强度等同于3072位密钥的RSA加密算法,安全程度较高。
参见图1所示,相关的基于服务器的密钥分发和管理方案,是在系统的控制台新建账户的时候同时生成该用户的密钥对,用户在客户端登录成功以后,客户端向服务器发送消息申请本用户密钥对,服务器收到请求后,进行用户的验证,验证成功以后,将该用户的密钥对加密传输返回给客户端,客户端将密钥对进行保存,在使用点对点加密功能的时候,向服务器发出请求,申请获取目标用户的加密公钥,服务器收到请求后,将申请的用户的加密公钥返回给申请者。申请者使用目标用户的加密公钥对文件或者数据进行加密。加密后的数据只有目标用户可以解密和打开查看。这样,需要在方案中设置密钥的申请和收发模块,以实现用户申请时的认证、查询、计算等功能,早晨系统比较复杂;并且由于密钥的传输是通过网络进行传输,不排除密钥被窃取的可能,造成密钥传输的安全性不足。而且一旦隔离网络,该方案就无法满足隔离网络情况下密钥的传输和分发场景,也无法满足隔离网络情况下点对点加密功能公钥的获取场景。
为了解决上述问题,本申请提出一种密钥获取方法、装置、电子设备及存储介质,以使得核心管理端根据分支管理端的分支端标识(例如:工号)、分支端名称(例如:姓名)或者本地设备信息(例如:硬件信息)等授权分支端信息,通过SM9算法生成分支端私钥,并将分支端私钥和对应的授权分支端信息写入核心端授权文件后加密发送给分支管理端,分支管理端使用核心端授权文件对软件和系统进行激活,同时获得了当前分支管理端的分支端私钥的信息,至此完成分支管理端密钥的分发。分支管理端根据用户端的用户端标识(例如:工号)、用户端名称(例如:姓名)或者本地设备信息(例如:硬件信息)等授权用户端信息,通过SM9算法生成用户端私钥,并将用户端私钥和对应的授权用户端信息写入用户端授权文件后加密发送给用户端,用户端使用用户端授权文件对软件和系统进行激活,同时获得了当前用户端的用户端私钥的信息,至此完成用户端密钥的分发。用户端程序还包括点对点加密功能,在点对点加密的时候使用用户端标识(例如:工号)、用户端名称(例如:姓名)或者本地设备信息(例如:硬件信息)等第二用户端信息作为公钥进行sm9算法加密,加密后的用户端授权文件或者第一用户端密文数据只有第二用户端激活了的程序才能够解密和查看。这样,本申请可以解决各个核心管理端、分支管理端及用户端,在网络隔离情况下的密钥对的分发问题,以免在网络隔离情况下无法获取核心管理端、分支管理端或用户端加密数据的密钥,造成无法实现加密过程。
本申请技术的软件组成有三部分,为核心管理系统、分支管理系统和用户端软件。核心管理系统是顶级管理系统,主要负责对所有分支管理系统进行管理、核心端授权文件下发、明文文件授权、分支管理端的授权管理。分支管理系统主要负责对所有用户端和用户的管理、用户端授权文件下发、明文文件再授权、用户端的授权管理。用户端主要实现明文文件的点对点加密、明文文件解密等功能。
本申请技术按照业务主要分为两部分:公钥基础设施(Public KeyInfrastructure,PKI)体系建设和文档加密管理。其中,公钥基础设施是一个包括硬件、软件、人员、策略和规程的集合,用来实现基于公钥密码体制的密钥和证书的产生、管理、存储、分发和撤销等功能,PKI体系建设为密钥的管理提供了方案,以授权文件的方式实现分支端私钥、用户端私钥在核心管理端、分支管理端和用户端之间的传输,使用SM9算法生成公私钥对,解决了公钥频繁传输问题,实现了断网情况下密钥的传输。简化了密钥管理和分发模块的设计和开发,降低了系统设计和开发的复杂性;而整个文档加密管理分为核心管理端文档授权、分支管理端再授权、用户端管控和点对点加密。通过SM9算法进行对称密钥的加密,简化了点对点加密时去服务器频繁获取公钥的步骤,只要知道对方的用户名就可以进行点对点加密。
例如,图1是本发明实施例提供的一种密钥获取方法步骤流程图,图2是本发明实施例提供的一种密钥分发管理的流程图,图3是本发明实施例提供的一种文档加密管理的流程图。该方法应用于核心管理端,参见图2-3所示,核心管理端下设有分支管理端,参见图1所示,该方法包括:
步骤101,在接收到授权文件的输入时,通过核心管理端的内嵌私钥解密该授权文件,得到授权核心端信息。
本申请实施例中,内嵌私钥是核心管理端的内嵌的授权信息私钥;授权文件可以是核心管理系统预设的,也可以是根据用户预先输入的内容得到的;授权核心端信息可以是核心管理端的设备信息(例如:核心端标识),也可以是核心管理端的硬件信息(例如:核心端mac地址),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,核心管理端在接收到授权文件的输入时,使用核心管理端的内嵌私钥解密授权文件得到授权核心端信息。
示例地,核心管理端在接收到导入的授权文件时,使用核心管理端的内嵌的授权信息私钥解密授权文件得到核心端mac地址的授权核心端信息。
步骤102,在授权核心端信息与核心管理端的本地设备信息相匹配时,根据预先输入的授权分支端信息,生成分支端私钥。
本申请实施例中,分支端私钥用于加密预设的核心端对称密钥得到核心端对称密钥密文;核心端对称密钥用于对明文内容进行加密得到核心端密文内容;本地设备信息可以是核心端的设备信息(例如:核心端标识),也可以是核心端的硬件信息(例如:核心端mac地址),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,核心管理端判断授权核心端信息与核心管理端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活核心管理端的核心管理系统;核心管理端接收用户输入的需要新建并授权的分支管理端,通过核心管理系统新建该分支管理端,并为该分支管理端生成包括分支端标识、分支端名称、分支端设备地址等信息的授权分支端信息,然后核心管理端可以根据授权分支端信息中的分支端标识、分支端名称或分支端设备地址生成分支端私钥。
本申请实施例中,相匹配条件可以是授权核心端信息与本地设备信息一致或相等,也可以是授权核心端信息中的字符串之和等于本地设备信息的字符串之和,具体可以根据实际需求确定,此处不做限定。
示例地,授权核心端信息包括:核心端设备地址(例如:核心端MAC地址);本地设备信息包括:核心端本地设备地址(例如:核心端本地MAC地址);核心管理端判断授权核心端信息与核心管理端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活核心管理端的核心管理系统;核心管理端接收用户输入的需要新建并授权的分支管理端,通过核心管理系统新建该分支管理端,并为该分支管理端生成包括分支端标识(ID)、分支端名称、分支端设备地址(例如:分支端MAC地址)等信息的授权分支端信息,然后核心管理端可以根据分支端名称生成分支端私钥,并将分支端私钥保存到本地数据库。
可选地,授权核心端信息包括:核心端设备地址;本地设备信息包括:核心端本地设备地址;授权分支端信息至少包括:分支端名称;步骤102可以包括:
步骤A,在核心端设备地址与核心端本地设备地址相同时,通过第四预设延长码延长分支端名称,得到分支端私钥。
本申请实施例中,第四预设延长码可以是用户基于实际经验进行设置(例如:5个字符),也可以是核心管理系统默认的字符串(例如:10个字符),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,核心管理端判断授权核心端信息是否与核心管理端本地设备信息一致,一致的话成功激活核心管理端的核心管理系统;核心管理端接收用户输入的需要新建并授权的分支管理端,通过核心管理系统新建该分支管理端,并为该分支管理端生成包括分支端标识、分支端名称、分支端设备地址等信息的授权分支端信息,然后核心管理端可以通过第四预设延长码和预设延长算法延长授权分支端信息中的分支端名称,得到分支端私钥。
本申请实施例中,预设延长算法可以是SM9算法,能够简化核心端公钥的分发步骤,解决了隔离网络情况下密钥无法及时同步和分发的问题。
示例地,授权核心端信息包括:核心端设备地址(例如:核心端MAC地址);本地设备信息包括:分支端本地设备地址(例如:核心端本地MAC地址);核心管理端判断核心端MAC地址是否与核心管理端的核心端本地MAC地址一致,一致的话成功激活核心管理端的核心管理系统;核心管理端接收用户输入的需要新建并授权的分支管理端,通过核心管理系统新建该分支管理端,并为该分支管理端生成包括分支端标识(ID)、分支端名称、授权设备信息(例如:分支端MAC地址)等信息的授权分支端信息,然后核心管理端可以通过第四预设延长码和SM9算法延长授权分支端信息中的分支端名称,得到分支端私钥,并将分支端私钥保存到本地数据库。
步骤103,通过核心管理端的内嵌私钥加密分支端私钥和授权分支端信息,生成核心端授权文件。
本申请实施例中,核心管理端通过核心管理端的内嵌私钥加密分支端私钥,以及包括分支端标识、分支端名称、分支端MAC地址的授权分支端信息,生成核心端授权文件。
示例性地,核心管理端通过将核心端名称、分支端私钥,以及包括分支端标识、分支端名称、分支端MAC地址的授权分支端信息的字符串进行合并,然后核心管理端再将合并后的字符串通过内嵌的授权信息私钥进行加密生成核心端授权文件。
可选地,授权分支端信息还包括:分支端标识、分支端设备地址;步骤103可以包括:
步骤B1,合并分支端标识、分支端名称、分支端设备地址、核心端名称及分支端私钥,得到核心端授权信息。
本申请实施例中,核心管理端通过对分支端标识、分支端名称、分支端MAC地址、分支端私钥以及核心端名称执行合并操作,可以得到核心端授权信息。
示例性地,核心管理端通过将分支端标识、分支端名称、分支端MAC地址、分支端私钥以及核心端名称的字符串进行合并操作,可以得到核心端授权信息。
步骤B2,通过内嵌私钥加密核心端授权信息,生成核心端授权文件。
本申请实施例中,核心管理端通过核心管理端的内嵌私钥和预设加密算法加密核心端授权信息,可以得到核心端授权文件。
本申请实施例中,预设加密算法可以是SM4算法,还可以是DES、AES等算法,具体可以根据实际需求确定,此处不做限定。
示例性地,核心管理端通过核心管理端内嵌的授权信息私钥和SM4算法加密核心端授权信息,可以得到核心端授权文件。
步骤104,向分支端下发核心端授权文件,以使得分支端通过分支端私钥解密核心端对称密钥密文得到核心端对称密钥。
本申请实施例中,为了保证核心端对称密钥的安全性和唯一性,核心端对称密钥是使用核心管理端硬件智能密码钥匙(UKEY)生成的对称密钥,一文一密;智能密码钥匙,是一款支持基于身份标识的密码系统(Identity-Based Cryptograph,IBC)和PKI“双模式”的智能密码钥匙,可内置SM2、SM3、SM4、SM9等各种算法,支持PKI和IBC的各种丰富应用;核心端对称密钥用于解密核心端密文内容得到明文内容。
本申请实施例中,核心管理端将核心端授权文件通过硬件介质下发给的分支管理端。
示例性地,核心管理端将核心端授权文件通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的分支管理端。
本申请实施例通过在接收到授权文件的输入时,通过内嵌私钥解密授权文件,从而得到授权核心端信息;然后在该授权核心端信息与核心管理端的本地设备信息相匹配时,可以根据预先输入的授权分支端信息,自动生成用于加密预设的核心端对称密钥的分支端私钥;从而可以通过内嵌私钥加密该分支端私钥和该授权分支端信息,以生成核心端授权文件,然后向用户端下发该核心端授权文件,以使得该分支管理端可以通过该分支端私钥解密核心端对称密钥密文得到核心端对称密钥,再通过核心端对称密钥解密核心端密文内容得到明文内容。这样,使用核心端授权文件保存分支端私钥的方式对分支端私钥进行保护和分发,可以节约密钥分发的步骤,解决各个核心管理端、分支管理端,在网络隔离情况下的密钥对的分发问题,使得在网络隔离情况下,能够通过预先输入的授权分支端信息,就可以自动得到分支端私钥,无需核心管理端与分支管理端之间频繁更新密钥,就可以实现各个核心管理端、分支管理端的加密过程,不仅节约了成本,还加快了后续加密数据的速度,使得对数据的加密处理更加稳定,加密结果更加精准。
步骤105,在接收到待加密的明文内容的输入时,计算明文内容的核心端明文哈希值。
本申请实施例中,在接收到待加密的明文内容的输入时,核心管理端通过预设哈希算法计算该明文内容的核心端明文哈希值。
本申请实施例中,预设哈希算法可以是SM3算法,还可以是SHA1、SHA256、MD5等算法,具体可以根据实际需求确定,此处不做限定。
示例地,参见图4所示,在接收到待加密的明文内容的输入时,核心管理端使用SM3算法计算该明文内容的核心端明文哈希值S1。
步骤106,通过预设的核心端对称密钥加密明文内容,得到核心端密文内容。
本申请实施例中,核心管理端通过智能密码钥匙生成预设的核心端对称密钥,然后通过该核心端对称密钥和预设加密算法加密该明文内容,得到核心端密文内容。
示例地,参见图4所示,所有待加密的文件,都是由核心管理端首次加密该文件的明文内容,核心管理端使用硬件UKEY生成核心端对称密钥Key1,可以保证生成的核心端对称密钥的唯一性,一文一密保证每个文件的明文内容的核心端对称密钥的唯一性,则使用该核心端对称密钥Key1和SM4算法对该文件的明文内容进行加密,可以得到唯一的核心端密文内容S2。
步骤107,根据预先输入的目标分支端信息生成核心端公钥。
本申请实施例中,目标分支端信息可以包括:目标分支端名称,还可以包括:目标分支端标识(ID)、目标分支端设备地址(例如:目标分支端mac地址)等,具体可以根据实际需求确定,此处不做限定。
本申请实施例中,在核心管理端接收到该用户预先输入的分支管理端的包括目标分支端名称、目标分支端标识、目标分支端设备地址等目标分支端信息时,核心管理端根据目标分支端名称、目标分支端标识或目标分支端设备地址生成核心端公钥。
示例地,参见图4所示,核心管理端的核心管理系统的操作员可以选择加密后的核心端密文内容要分发的分支管理端,在核心管理端接收到该操作员预先输入的该分支管理端的包括目标分支端名称、目标分支端标识(ID)、目标分支端设备地址(例如:目标分支端mac地址)等目标分支端信息时,核心管理端根据目标分支端名称生成核心端公钥Key2。
可选地,目标分支端信息包括:目标分支端名称;步骤107可以包括:
步骤C,通过第五预设延长码延长目标分支端名称,得到核心端公钥。
本申请实施例中,第五预设延长码可以与第四预设延长码相同,即第五预设延长码可以是用户基于实际经验进行设置(例如:5个字符),也可以是核心管理系统默认的字符串(例如:10个字符),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,在核心管理端接收到该用户预先输入的目标分支端名称时,核心管理端通过第五预设延长码和预设延长算法延长该目标分支端名称,得到核心端公钥。
示例地,参见图4所示,核心管理端的核心管理系统的操作员可以选择加密后的核心端密文内容要分发的分支管理端,在核心管理端接收到该操作员预先输入的该分支管理端的目标分支端名称时,核心管理端通过使用SM9算法和第五预设延长码延长该目标用户端名称,得到核心端公钥Key2。
步骤108,通过核心端公钥对核心端对称密钥进行加密,得到核心端对称密钥密文。
本申请实施例中,核心管理端通过预设加密算法和核心端公钥对核心端对称密钥进行加密,得到核心端对称密钥密文。
示例性地,参见图4所示,核心管理端使用SM9算法和目标分支端名称加延作为核心端公钥Key2对核心管理端对称密钥进行加密,得到核心端对称密钥密文S3。至此使用了SM3、SM9、SM4等算法组合方式,可以保护待加密文件的完整性、保密性、安全性。
步骤109,向分支管理端下发核心端明文哈希值、核心端密文内容和核心端对称密钥密文。
本申请实施例中,核心管理端通过硬件介质向分支管理端下发核心端明文哈希值、核心端密文内容和核心端对称密钥密文,以使得分支管理端通过分支端私钥解密该核心端对称密钥密文得到核心端对称密钥,再通过核心端对称密钥解密该核心端密文内容得到明文内容。
示例性地,核心管理端将该核心管理端的核心端标识(ID)、核心端名称、核心端明文哈希值、核心端密文内容和核心端对称密钥密文的字符串合并后,通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的分支管理端。
可选地,步骤109可以包括:
步骤D1,合并核心端密文内容、核心端对称密钥密文、核心端明文哈希值、核心端标识及核心端名称,得到核心端密文数据。
本申请实施例中,核心管理端通过对核心端密文内容、核心端对称密钥密文、核心端明文哈希值、核心端标识和核心端名称执行合并操作,可以得到核心端密文数据。
示例性地,核心管理端通过将核心端密文内容、核心端对称密钥密文、核心端明文哈希值、核心端标识和核心端名称的字符串进行合并操作,可以得到核心端密文数据,至此在核心管理端完成原始的待加密的文档的加密,加密的操作记录保存到核心管理系统的日志数据库中,核心端密文数据也保存到日志数据库中,另外原始的待加密的文档和核心端密文数据也保存到核心管理端的本地数据库中。
步骤D2,向分支管理端下发核心端密文数据。
本申请实施例中,核心管理端通过硬件介质向分支管理端下发核心端密文数据,以使得分支管理端通过分支端私钥解密该核心端密文数据中的核心端对称密钥密文得到核心端对称密钥,再通过核心端对称密钥解密该核心端密文数据中的核心端密文内容得到明文内容。
示例性地,核心管理端将核心端密文数据通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的分支管理端,参见图10所示,核心端密文数据的格式为:将核心端密文内容填入密文内容数据处,将核心端对称密钥密文填入对称密钥密文数据处,将核心端明文哈希值填入明文哈希值数据处,将核心端标识和核心端名称填入其他数据处。
本申请实施例通过在接收到待加密的明文内容的输入时,计算明文内容的核心端明文哈希值,再通过预设的核心端对称密钥加密明文内容,得到核心端密文内容,再根据预先输入的目标分支端信息生成核心端公钥,既简化了公钥分发的步骤和频繁访问服务器带来的损耗,又解决了网络隔离场景下公钥分发的问题,而通过核心端公钥对核心端对称密钥进行加密,可以得到核心端对称密钥密文,最后向分支管理端下发核心端明文哈希值、核心端密文内容和核心端对称密钥密文,可以使得分支管理端可以通过分支端私钥解密该核心端对称密钥密文得到核心端对称密钥,再通过核心端对称密钥解密该核心端密文内容得到明文内容。这样,就可以实现各个核心管理端、分支管理端的加密过程,不仅节约了成本,还加快了后续加密数据的速度,使得对数据的加密处理更加稳定,加密结果更加精准。
例如,图5是本发明实施例提供的另一种密钥获取方法步骤流程图,该方法应用于分支管理端,参见图2-3所示,分支管理端隶属于上述核心管理端,分支管理端下设有用户端,核心管理端用于向分支管理端提供核心端对称密钥密文和核心端密文内容,参见图4所示,该方法包括:
步骤201,在接收到核心端授权文件的输入时,通过分支管理端的内嵌私钥解密该核心端授权文件,得到分支端私钥和授权分支端信息。
本申请实施例中,内嵌私钥是分支管理端的内嵌的授权信息私钥;核心端授权文件是核心管理端下发的;分支端私钥用于解密核心端对称密钥密文得到预设的核心端对称密钥;核心端对称密钥用于解密核心端密文内容得到明文内容;授权分支端信息可以是分支端管理的设备信息(例如:分支端标识),也可以是分支管理端的硬件信息(例如:分支端mac地址),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,分支管理端在接收到核心端授权文件的输入时,使用分支管理端的内嵌私钥解密该核心端授权文件得到分支端私钥和授权分支端信息。
示例地,分支管理端在安装的时候导入的核心端授权文件,而在分支管理端接收到核心端授权文件的输入时,使用分支管理端的内嵌的授权信息私钥解密该核心端授权文件,得到分支端私钥和包括分支端mac地址的授权分支端信息。
步骤202,在授权分支端信息与分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥。
本申请实施例中,用户端私钥用于加密预设的分支端对称密钥得到分支端对称密钥密文;分支端对称密钥用于对明文内容进行加密得到分支端密文内容;本地设备信息可以是分支端的设备信息(例如:分支端标识),也可以是分支端的硬件信息(例如:分支端mac地址),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,分支管理端判断授权分支端信息与分支管理端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活分支管理端的分支管理系统;分支管理端接收用户输入的需要新建并授权的用户端,通过分支管理系统新建该用户端,并为该用户端生成包括用户端标识、用户端名称、用户端设备地址等信息的授权用户端信息,然后分支管理端可以根据授权用户端信息中的用户端标识、用户端名称或用户端设备地址生成用户端私钥。
本申请实施例中,相匹配条件可以是授权分支端信息与本地设备信息一致或相等,也可以是授权分支端信息中的字符串之和等于本地设备信息的字符串之和,具体可以根据实际需求确定,此处不做限定。
示例地,授权分支端信息包括:分支端设备地址(例如:分支端MAC地址);本地设备信息包括:分支端本地设备地址(例如:分支端本地MAC地址);分支管理端判断授权分支端信息与分支管理端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活分支管理端的分支管理系统;分支管理端接收用户输入的需要新建并授权的用户端,通过分支管理系统新建该用户端,并为该用户端生成包括用户端标识(ID)、用户端名称、用户端设备地址(例如:用户端MAC地址)等信息的授权用户端信息,然后分支管理端可以根据用户端名称生成用户端私钥,并将用户端私钥保存到本地数据库。
可选地,授权分支端信息包括:分支端设备地址;本地设备信息包括:分支端本地设备地址;授权用户端信息至少包括:用户端名称;步骤202可以包括:
步骤E,在分支端设备地址与分支端本地设备地址相同时,通过第一预设延长码延长用户端名称,得到用户端私钥。
本申请实施例中,第一预设延长码可以是用户基于实际经验进行设置(例如:5个字符),也可以是分支管理系统默认的字符串(例如:10个字符),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,分支管理端判断授权分支端信息是否与分支管理端本地设备信息一致,一致的话成功激活分支管理端的分支管理系统;分支管理端接收用户输入的需要新建并授权的用户端,通过分支管理系统新建该用户端,并为该用户端生成包括用户端标识、用户端名称、用户端设备地址等信息的授权用户端信息,然后分支管理端可以通过第一预设延长码和预设延长算法延长授权用户端信息中的用户端名称,得到用户端私钥。
本申请实施例中,预设延长算法可以是SM9算法,能够简化分支端公钥的分发步骤,解决了隔离网络情况下密钥无法及时同步和分发的问题。
示例地,授权分支端信息包括:分支端设备地址(例如:分支端MAC地址);本地设备信息包括:分支端本地设备地址(例如:分支端本地MAC地址);分支管理端判断分支端MAC地址是否与分支管理端的分支端本地MAC地址一致,一致的话成功激活分支管理端的分支管理系统;分支管理端接收用户输入的需要新建并授权的用户端,通过分支管理系统新建该用户端,并为该用户端生成包括用户端标识(ID)、用户端名称、用户端设备地址(例如:用户端MAC地址)等信息的授权用户端信息,然后分支管理端可以通过第一预设延长码和SM9算法延长授权用户端信息中的用户端名称,得到用户端私钥,并将用户端私钥保存到本地数据库。
步骤203,通过分支管理端的内嵌私钥加密用户端私钥和授权用户端信息,生成分支端授权文件。
本申请实施例中,分支管理端通过分支管理端的内嵌私钥加密用户端私钥,以及包括用户端标识、用户端名称、用户端MAC地址的授权用户端信息,生成分支端授权文件。
示例性地,分支管理端通过将分支端名称、用户端私钥,以及包括用户端标识、用户端名称、用户端MAC地址的授权用户端信息的字符串进行合并,然后分支管理端再将合并后的字符串通过内嵌的授权信息私钥进行加密生成分支端授权文件。
可选地,授权用户端信息还包括:用户端标识、用户端设备地址;步骤203可以包括:
步骤F1,合并用户端标识、用户端名称、用户端设备地址、分支端名称及用户端私钥,得到分支端授权信息。
本申请实施例中,分支管理端通过对用户端标识、用户端名称、用户端MAC地址、用户端私钥以及分支端名称执行合并操作,可以得到分支端授权信息。
示例性地,分支管理端通过将用户端标识、用户端名称、用户端MAC地址、用户端私钥以及分支端名称的字符串进行合并操作,可以得到分支端授权信息。
步骤F2,通过内嵌私钥加密分支端授权信息,生成分支端授权文件。
本申请实施例中,分支管理端通过分支管理端的内嵌私钥和预设加密算法加密分支端授权信息,可以得到分支端授权文件。
本申请实施例中,预设加密算法可以是SM4算法,还可以是DES、AES等算法,具体可以根据实际需求确定,此处不做限定。
示例性地,分支管理端通过分支管理端内嵌的授权信息私钥和SM4算法加密分支端授权信息,可以得到分支端授权文件。
步骤204,向用户端下发分支端授权文件,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥。
本申请实施例中,为了保证分支端对称密钥的安全性和唯一性,分支端对称密钥是使用分支管理端硬件智能密码钥匙(UKEY)生成的对称密钥,一文一密,分支端对称密钥用于解密分支端密文内容得到明文内容。
本申请实施例中,分支管理端将分支端授权文件通过硬件介质下发给的用户端。
示例性地,分支管理端将分支端授权文件通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的用户端。
本申请实施例通过在接收到核心端授权文件的输入时,通过内嵌私钥解密该核心端授权文件,从而得到授权分支端信息,以及用于解密核心端对称密钥密文的分支端私钥;然后在该授权分支端信息与分支管理端的本地设备信息相匹配时,可以根据预先输入的授权用户端信息,自动生成用于加密预设的分支端对称密钥的用户端私钥;从而可以通过设备内嵌私钥加密该用户端私钥和该设备授权用户端信息,以生成分支端授权文件,然后向用户端下发该分支端授权文件,以使得该用户端可以通过该用户端私钥解密分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密分支端密文内容得到明文内容。这样,使用分支端授权文件保存用户端私钥的方式对用户端私钥进行保护和分发,可以节约密钥分发的步骤,解决各个分支管理端、用户端,在网络隔离情况下的密钥对的分发问题,使得在网络隔离情况下,能够通过预先输入的授权用户端信息,就可以自动得到用户端私钥,无需分支管理端与用户端之间频繁更新密钥,就可以实现各个核心管理端、分支管理端的加密过程,不仅节约了成本,还加快了后续加密数据的速度,使得对数据的加密处理更加稳定,加密结果更加精准。
步骤205,在接收到核心端密文数据的输入时,通过分支端私钥,解密核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥。
本申请实施例中,在接收到核心端密文数据的输入时,通过分支端私钥解密核心端授权文件得到的分支端私钥,解密核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥。
示例地,参见图6所示,核心管理端加密后的核心端密文数据经U盘、光盘、刻盘等硬件介质和保密箱运输到分支管理端,分支管理端进行再授权,分支管理端的分支管理系统读取核心端密文数据,在接收到待加密的明文内容的输入时,通过分支端私钥Key1解密核心端密文数据中的核心端对称密钥密文,解密成功后可以得到预设的核心端对称密钥Key2。
步骤206,通过核心端对称密钥,解密核心端密文数据中的核心端密文内容,得到明文内容。
本申请实施例中,分支管理端通过解密得到的核心端对称密钥,解密核心端密文数据中的核心端密文内容,得到明文内容。
示例地,参见图6所示,分支管理端读取核心端密文数据中的核心端密文内容Data1,使用核心端对称密钥Key2的明文解密核心端密文内容Data1,得到明文内容的数据Data2。
步骤207,计算明文内容的核心端明文哈希值。
本申请实施例中,分支管理端通过预设哈希算法计算该明文内容的分支端明文哈希值。
本申请实施例中,预设哈希算法可以是SM3算法,还可以是SHA1、SHA256、MD5等算法,具体可以根据实际需求确定,此处不做限定。
示例地,参见图6所示,分支管理端使用SM3算法计算该明文内容Data2的分支端明文哈希值S1。
步骤208,通过预设的分支端对称密钥加密明文内容,得到分支端密文内容。
本申请实施例中,分支管理端通过智能密码钥匙生成预设的分支端对称密钥,然后通过该分支端对称密钥和预设加密算法加密该明文内容,得到分支端密文内容。
示例地,参见图6所示,分支管理端的操作员可以使用硬件UKEY生成分支端对称密钥Key4,可以保证生成的分支端对称密钥Key4的唯一性,一文一密保证每个文件的明文内容的分支端对称密钥Key4的唯一性,则使用该分支端对称密钥Key4和SM4算法对该文件的明文内容Data2进行加密,可以得到唯一的分支端密文内容S3。
步骤209,在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥。
本申请实施例中,目标用户端信息可以包括:目标用户端名称,还可以包括:目标用户端标识(ID)、目标用户端设备地址(例如:目标用户端mac地址)等,具体可以根据实际需求确定,此处不做限定。
本申请实施例中,在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相同或核心端明文哈希值和分支端明文哈希值之差小于预设哈希值阈值时,分支管理端根据预先接收到的用户预先输入的用户端的包括目标用户端名称、目标用户端标识、目标用户端设备地址等目标用户端信息时,分支管理端根据目标用户端名称、目标用户端标识或目标用户端设备地址生成用户端公钥。
示例地,参见图6所示,分支管理端的分支管理系统的操作员可以选择加密后的分支端密文内容要分发的用户端,分支管理端读取核心端密文数据中的核心端明文哈希值S2,在核心端明文哈希值S2和分支端明文哈希值S1相同时,分支管理端根据预先接收到的该操作员预先输入的该用户端的包括目标用户端名称的目标用户端信息生成分支端公钥Key3。
可选地,目标用户端信息包括:目标用户端名称;步骤209可以包括:
步骤G,在核心端明文哈希值和分支端明文哈希值相同时,通过第二预设延长码延长目标用户端名称,得到分支端公钥。
本申请实施例中,第二预设延长码可以与第一预设延长码相同,即第二预设延长码可以是用户基于实际经验进行设置(例如:5个字符),也可以是核心管理系统默认的字符串(例如:10个字符),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,在分支管理端确定核心端明文哈希值和分支端明文哈希值相同时,分支管理端就通过第二预设延长码和预设延长算法延长,接收到的预先输入的目标用户端名称,得到分支端公钥。
示例地,参见图6所示,分支管理端的分支管理系统的操作员可以选择加密后的分支端密文内容要分发的用户端,分支管理端读取核心端密文数据中的核心端明文哈希值S2,在核心端明文哈希值S2和分支端明文哈希值S1相同时,分支管理端就通过第二预设延长码和SM9算法,延长接收到的该操作员预先输入的用户端的目标用户端名称,得到分支端公钥Key3。
步骤210,通过分支端公钥对分支端对称密钥进行加密,得到分支端对称密钥密文。
本申请实施例中,分支管理端通过预设加密算法和分支端公钥对分支端对称密钥进行加密,得到分支端对称密钥密文。
示例性地,参见图6所示,分支管理端使用SM9算法和目标用户端名称加延作为的分支端公钥Key3对分支管理端对称密钥Key4进行加密,得到分支端对称密钥密文S4。至此使用了SM3、SM9、SM4等算法组合方式,可以保护待加密文件的完整性、保密性、安全性。
步骤211,向用户端下发分支端明文哈希值、分支端密文内容和分支端对称密钥密文。
本申请实施例中,分支管理端通过硬件介质向用户端下发分支端明文哈希值、分支端密文内容和分支端对称密钥密文,以使得用户端通过用户端私钥解密该分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密该分支端密文内容得到明文内容。
示例性地,分支管理端将该分支管理端的分支端标识(ID)、分支端名称、分支端明文哈希值、分支端密文内容和分支端对称密钥密文的字符串合并后,通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的用户端。
可选地,步骤211可以包括:
步骤H1,合并分支端密文内容、分支端对称密钥密文、分支端明文哈希值、分支端标识及分支端名称,得到分支端密文数据。
本申请实施例中,分支管理端通过对分支端密文内容、分支端对称密钥密文、分支端明文哈希值、分支端标识和分支端名称执行合并操作,可以得到分支端密文数据。
示例性地,分支管理端通过将分支端密文内容、分支端对称密钥密文、分支端明文哈希值、分支端标识和分支端名称的字符串进行合并操作,可以得到分支端密文数据,至此在分支管理端完成待加密的文档的再授权,加密的操作记录保存到分支管理系统的日志数据库中,分支端密文数据也保存到日志数据库中。
步骤H2,向用户端下发分支端密文数据。
本申请实施例中,分支管理端通过硬件介质向用户端下发分支端密文数据,以使得用户端通过用户端私钥解密该分支端密文数据中的分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密该分支端密文数据中的分支端密文内容得到明文内容。
示例性地,分支管理端将分支端密文数据通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要下发给的用户端,参见图10所示,分支端密文数据的格式为:将分支端密文内容填入密文内容数据处,将分支端对称密钥密文填入对称密钥密文数据处,将分支端明文哈希值填入明文哈希值数据处,将分支端标识和分支端名称填入其他数据处。
本申请实施例通过在接收到核心端密文数据的输入时,通过分支端私钥,解密核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥;通过核心端对称密钥,解密核心端密文数据中的核心端密文内容,得到明文内容;计算明文内容的分支端明文哈希值,再通过预设的分支端对称密钥加密明文内容,得到分支端密文内容,再在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥,既简化了公钥分发的步骤和频繁访问服务器带来的损耗,又解决了网络隔离场景下公钥分发的问题,而通过分支端公钥对分支端对称密钥进行加密,可以得到分支端对称密钥密文,最后向用户端下发分支端明文哈希值、分支端密文内容和分支端对称密钥密文,可以使得用户端可以通过用户端私钥解密该分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密该分支端密文内容得到明文内容。这样,就可以实现各个分支管理端、用户端的加密解密过程,不仅节约了成本,还加快了后续加密解密数据的速度,使得对数据的加密解密处理更加稳定,加密解密结果更加精准。
例如,图7是本发明实施例提供的另一种密钥获取方法步骤流程图,该方法应用于用户端,参见图2-3所示,该用户端隶属于上述分支管理端,分支管理端用于向用户端提供分支端对称密钥密文和分支密文内容,参见图5所示,该方法包括:
步骤301,在接收到分支端授权文件的输入时,解析该分支端授权文件,得到授权用户端信息。
本申请实施例中,分支端授权文件是分支管理端下发的;授权用户端信息可以是用户端的设备信息(例如:用户端标识),也可以是用户端的硬件信息(例如:用户端mac地址),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,用户端在接收到分支端授权文件的输入时,用户端解析该分支端授权文件得到授权用户端信息。
示例地,用户端在安装的时候导入的分支端授权文件,而在用户端接收到分支端授权文件的输入时,用户端解析该分支端授权文件,得到包括用户端mac地址的授权用户端信息,并保存到本地数据库。
步骤302、在授权用户端信息与用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
本申请实施例中,用户端判断授权用户端信息与用户端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活用户端;在用户端接收到解密请求后,就从用户端解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
本申请实施例中,相匹配条件可以是授权用户端信息与本地设备信息一致或相等,也可以是授权用户端信息中的字符串之和等于本地设备信息的字符串之和,具体可以根据实际需求确定,此处不做限定。
示例地,授权用户端信息包括:用户端设备地址(例如:用户端MAC地址);本地设备信息包括:用户端本地设备地址(例如:用户端本地MAC地址);用户端判断授权用户端信息与用户端本地设备信息之间是否满足相匹配条件,如果满足的话成功激活用户端,在用户端接收到解密请求后,就从用户端解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
可选地,授权用户端信息包括:用户端设备地址;本地设备信息包括:用户端本地设备地址;步骤302可以包括:
步骤I,在用户端设备地址与用户端本地设备地址相同时,从解析后的分支端授权文件中获取用户端私钥。
本申请实施例中,用户端判断授权用户端信息是否与用户端本地设备信息一致,一致的话成功激活用户端,在用户端接收到解密请求后,就从用户端解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
示例地,授权用户端信息包括:用户端设备地址(例如:用户端MAC地址);本地设备信息包括:用户端本地设备地址(例如:用户端本地MAC地址);用户端判断用户端MAC地址是否与用户端的用户端本地MAC地址一致,一致的话成功激活用户端,在用户端接收到解密请求后,就从用户端解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
本申请实施例通过在接收到分支端授权文件的输入时,解析分支端授权文件,得到授权用户端信息;在授权用户端信息与用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。这样,使用分支端授权文件保存用户端私钥的方式对用户端私钥进行保护和分发,可以节约密钥分发的步骤,解决各个分支管理端、用户端,在网络隔离情况下的密钥对的分发问题,使得在网络隔离情况下,能够通过预先输入的授权用户端信息,就可以自动得到用户端私钥,无需分支管理端与用户端之间频繁更新密钥,就可以实现各个分支管理端、用户端的加密解密过程,不仅节约了成本,还加快了后续加密解密数据的速度,使得对数据的加密解密处理更加稳定,加密解密结果更加精准。
步骤303,在接收到分支端密文数据的输入时,通过用户端私钥解密分支端密文数据中的分支端对称密钥密文,得到预设的分支端对称密钥。
本申请实施例中,在用户端的操作员选中文件,并且右键选择解密后,用户端会接收到分支端密文数据的输入,此时用户端通过用户端私钥解密分支端密文数据中的分支端对称密钥密文,得到预设的分支端对称密钥。
示例地,参见图8所示,在用户端的操作员选中文件,并且右键选择解密后,用户端会接收到分支端密文数据的输入,此时用户端通过读取用户端私钥Key1解密分支端密文数据中的分支端对称密钥密文,解密成功后得到预设的分支端对称密钥Key2。
步骤304,通过分支端对称密钥,解密分支端密文数据中的分支端密文内容,得到明文内容。
本申请实施例中,在用户端解密成功分支端对称密钥密文后,从分支端密文数据中的读取分支端密文内容,通过该分支端对称密钥解密该分支端密文内容,得到明文内容。
示例地,参见图8所示,在用户端解密成功分支端对称密钥密文后,从分支端密文数据中的读取分支端密文内容Data3,通过分支端对称密钥Key2解密分支端密文内容Data1,得到明文内容Data2。
步骤305,计算明文内容的用户端明文哈希值。
本申请实施例中,在用户端解密成功分支端密文内容后,用户端使用预设哈希算法计算明文内容的用户端明文哈希值。
本申请实施例中,预设哈希算法可以是SM3算法,还可以是SHA1、SHA256、MD5等算法,具体可以根据实际需求确定,此处不做限定。
示例地,参见图8所示,在用户端解密成功分支端密文内容后,用户端使用SM3算法对明文内容Data2进行计算,得到用户端明文哈希值S1。
步骤306,在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,将明文内容存储到明文文件中。
本申请实施例中,在用户端计算得到的用户端明文哈希值后,用户端从分支端密文数据中读取分支端明文哈希值,在分支端明文哈希值和用户端明文哈希值相同或分支端明文哈希值和用户端明文哈希值之差小于预设哈希值阈值时,将明文内容存储到明文文件中。
示例地,在用户端计算得到的用户端明文哈希值S1后,用户端从分支端密文数据中读取分支端明文哈希值S2,在分支端明文哈希值S2和用户端明文哈希值S1相同或分支端明文哈希值S2和用户端明文哈希值S1之差小于预设哈希值阈值S时,将明文内容Data2存储到明文文件中。
可选地,步骤306可以包括:
步骤J,在用户端明文哈希值与分支端密文数据中的分支端明文哈希值相同时,将明文内容存储到明文文件中。
本申请实施例中,在用户端计算得到的用户端明文哈希值后,用户端从分支端密文数据中读取分支端明文哈希值,在用户端明文哈希值与分支端明文哈希值相同时,将明文内容存储到明文文件中。
示例地,参见图8所示,在用户端计算得到的用户端明文哈希值S1后,用户端从分支端密文数据中读取分支端明文哈希值S2,用户端明文哈希值S1与分支端明文哈希值S2相等时,将明文内容Data2存储到明文文件中,否则结束。终端解密流程结束。
本申请实施例通过在接收到分支端密文数据的输入时,通过用户端私钥解密分支端密文数据中的分支端对称密钥密文,得到预设的分支端对称密钥;通过分支端对称密钥,解密分支端密文数据中的分支端密文内容,得到明文内容,计算明文内容的用户端明文哈希值;在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,将明文内容存储到明文文件中。这样,在网络隔离情况下,可以实现各个用户端的解密过程,不仅节约了成本,还加快了解密数据的速度,使得对数据的解密处理更加稳定,解密结果更加精准。
步骤307,用户端至少包括:第一用户端和第二用户端;第一用户端用于向第二用户端提供第一用户端对称密钥密文和第一用户端密文内容;用户端私钥至少包括:第二用户端私钥;在接收到第一用户端和第二用户端的点对点加密请求时,通过预设的第一用户端对称密钥加密明文内容,得到第一用户端密文内容。
本申请实施例中,在第一用户端和第二用户端的点对点加密请求时,用户端通过智能密码钥匙生成预设的第一用户端对称密钥,然后通过该第一用户端对称密钥和预设加密算法加密该明文内容,得到第一用户端密文内容。
示例地,参见图9所示,分支管理端加密后的分支端密文数据经U盘、光盘、刻盘等硬件介质和保密箱运输到用户端,用户端进行再授权,用户端的操作员可以使用硬件UKEY生成第一用户端对称密钥Key1,可以保证生成的第一用户端对称密钥Key1的唯一性,一文一密保证每个文件的明文内容的第一用户端对称密钥Key1的唯一性,则使用该第一用户端对称密钥Key1和SM4算法对该文件的明文内容进行加密,可以得到唯一的第一用户端密文内容S2。
步骤308,根据预先输入的第二用户端信息,生成第一用户端公钥。
本申请实施例中,第二用户端信息可以包括:第二用户端名称,还可以包括:第二用户端标识(ID)、第二用户端设备地址(例如:第二用户端mac地址)等,具体可以根据实际需求确定,此处不做限定。
本申请实施例中,第一用户端根据预先接收到的用户预先输入的第二用户端的包括第二用户端名称、第二用户端标识、第二用户端设备地址等第二用户端信息时,第一用户端根据第二用户端名称、第二用户端标识或第二用户端设备地址生成第一用户端公钥。
示例地,参见图9所示,第一用户端的操作员可以选择加密后的第一用户端密文内容要分发的第二用户端,在第一用户端接收到的该操作员预先输入的包括第二用户端名称的第二用户端信息时,第一用户端可以根据预先输入的该第二用户端名称的生成第一用户端公钥Key2。
可选地,第二用户端信息至少包括:第二用户端名称;步骤308可以包括:
步骤K,通过第三预设延长码延长第二用户端名称得到第一用户端公钥。
本申请实施例中,第三预设延长码可以是用户基于实际经验进行设置(例如:5个字符),也可以是分支管理系统默认的字符串(例如:10个字符),具体可以根据实际需求确定,此处不做限定。
本申请实施例中,第一用户端接收用户输入的需要再授权的第二用户端的第二用户端信息,然后第一用户端可以通过第三预设延长码和预设延长算法延长第二用户端信息中的第二用户端名称,得到第一用户端公钥。
本申请实施例中,预设延长算法可以是SM9算法,能够简化分支端公钥的分发步骤,解决了隔离网络情况下密钥无法及时同步和分发的问题。
示例地,参见图9所示,第一用户端接收用户输入的需要再授权的第二用户端的包括第二用户端标识(ID)、第二用户端名称、第二用户端设备地址(例如:第二用户端MAC地址)等信息的第二用户端信息,然后第一用户端可以通过第三预设延长码和SM9算法,延长第二用户端信息中的第二用户端名称,得到第一用户端公钥Key2。
步骤309,通过第一用户端公钥对第一用户端对称密钥进行加密,得到第一用户端对称密钥密文。
本申请实施例中,第一用户端通过预设加密算法和第一用户端公钥对第一用户端对称密钥进行加密,得到第一用户端对称密钥密文。
示例性地,参见图9所示,第一用户端使用SM9算法和第二用户端名称加延作为第一用户端公钥Key2对第一用户端对称密钥Key1进行加密,得到第一用户端对称密钥密文S3。至此使用了SM3、SM9、SM4等算法组合方式,可以保护待加密文件的完整性、保密性、安全性。
步骤310,向第二用户端发送第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文。
本申请实施例中,第一用户端通过硬件介质向第二用户端下发第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文,以使得第二用户端通过第二用户端私钥解密第一用户端对称密钥密文得到第一用户端对称密钥,第一用户端对称密钥用于解密第一用户端密文内容得到明文内容。
示例性地,第一用户端将该第一用户端的第一用户端标识(ID)、第一用户端名称、第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文的字符串合并后,通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要发送给的第二用户端。
可选地,步骤310可以包括:
步骤L1,合并第一用户端密文内容、第一用户端对称密钥密文、第一用户端明文哈希值、第一用户端标识及第一用户端名称,得到第一用户端密文数据。
本申请实施例中,第一用户端通过对第一用户端密文内容、第一用户端对称密钥密文、第一用户端明文哈希值、第一用户端标识和第一用户端名称执行合并操作,可以得到第一用户端密文数据。
示例性地,第一用户端通过将第一用户端密文内容、第一用户端对称密钥密文、第一用户端明文哈希值、第一用户端标识和第一用户端名称的字符串进行合并操作,可以得到第一用户端密文数据,至此在第一用户端完成待加密的文档的再授权,加密的操作记录保存到第一用户端的日志数据库中,第一用户端密文数据也保存到日志数据库中。
步骤L2,向第二用户端发送第一用户端密文数据。
本申请实施例中,第一用户端通过硬件介质向第二用户端下发第一用户端密文数据,以使得第二用户端通过第二用户端私钥解密该第一用户端密文数据中的第一用户端对称密钥密文得到第一用户端对称密钥,再通过第一用户端对称密钥解密该第一用户端密文数据中的第一用户端密文内容得到明文内容。
示例性地,第一用户端将第一用户端密文数据通过U盘、光盘、刻盘等硬件介质和保密箱等人工渠道运输到要发送给的第二用户端,参见图10所示,第一用户端密文数据的格式为:将第一用户端密文内容填入密文内容数据处,将第一用户端对称密钥密文填入对称密钥密文数据处,将第一用户端明文哈希值填入明文哈希值数据处,将第一用户端标识和第一用户端名称填入其他数据处。
本申请实施例通过在接收到第一用户端和第二用户端的点对点加密请求时,通过预设的第一用户端对称密钥加密明文内容,得到第一用户端密文内容;根据预先输入的第二用户端信息生成第一用户端公钥;通过第一用户端公钥对第一用户端对称密钥进行加密,得到第一用户端对称密钥密文;向第二用户端发送第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文,以使得第二用户端通过第二用户端私钥解密第一用户端对称密钥密文得到第一用户端对称密钥,第一用户端对称密钥用于解密第一用户端密文内容得到明文内容。这样,就可以实现各个用户端之间的点对点加密过程,不仅节约了成本,还加快了后续点对点加密数据的速度,使得对数据的点对点加密处理更加稳定,点对点加密结果更加精准。
参照图11,示出了本申请实施例的一种密钥获取装置结构框图,该装置400应用于核心管理端,参见图2-3所示,核心管理端下设有分支管理端,参见图11所示,装置400该包括:
解密授权文件模块401,用于在接收到授权文件的输入时,通过核心管理端的内嵌私钥解密该授权文件,得到授权核心端信息。
生成分支端私钥模块402,用于在授权核心端信息与核心管理端的本地设备信息相匹配时,根据预先输入的授权分支端信息,生成分支端私钥。
生成核心端授权文件模块403,用于通过核心管理端的内嵌私钥加密分支端私钥和授权分支端信息,生成核心端授权文件。
下发核心端授权文件模块404,用于向分支端下发核心端授权文件,以使得分支端通过分支端私钥解密核心端对称密钥密文得到核心端对称密钥。
计算核心端明文哈希值模块405,用于在接收到待加密的明文内容的输入时,计算明文内容的核心端明文哈希值。
生成核心端密文内容模块406,用于通过预设的核心端对称密钥加密明文内容,得到核心端密文内容。
生成核心端公钥模块407,用于根据预先输入的目标分支端信息生成核心端公钥。
生成核心端对称密钥密文模块408,用于通过核心端公钥对核心端对称密钥进行加密,得到核心端对称密钥密文。
下发核心端密文模块409,用于向分支管理端下发核心端明文哈希值、核心端密文内容和核心端对称密钥密文。
可选地,授权核心端信息包括:核心端设备地址;本地设备信息包括:核心端本地设备地址;授权分支端信息至少包括:分支端名称;生成分支端私钥模块402,还用于:
在核心端设备地址与核心端本地设备地址相同时,通过第四预设延长码延长分支端名称,得到分支端私钥。
可选地,授权分支端信息还包括:分支端标识、分支端设备地址;生成核心端授权文件模块403,还用于:
合并分支端标识、分支端名称、分支端设备地址、核心端名称及分支端私钥,得到核心端授权信息;通过内嵌私钥加密核心端授权信息,生成核心端授权文件。
可选地,目标分支端信息包括:目标分支端名称;生成核心端公钥模块407,还用于:
通过第五预设延长码延长目标分支端名称,得到核心端公钥。
可选地,下发核心端密文模块409,还用于:
合并核心端密文内容、核心端对称密钥密文、核心端明文哈希值、核心端标识及核心端名称,得到核心端密文数据;向分支管理端下发核心端密文数据。
本申请实施例通过在接收到待加密的明文内容的输入时,计算明文内容的核心端明文哈希值,再通过预设的核心端对称密钥加密明文内容,得到核心端密文内容,再根据预先输入的目标分支端信息生成核心端公钥,既简化了公钥分发的步骤和频繁访问服务器带来的损耗,又解决了网络隔离场景下公钥分发的问题,而通过核心端公钥对核心端对称密钥进行加密,可以得到核心端对称密钥密文,最后向分支管理端下发核心端明文哈希值、核心端密文内容和核心端对称密钥密文,可以使得分支管理端可以通过分支端私钥解密该核心端对称密钥密文得到核心端对称密钥,再通过核心端对称密钥解密该核心端密文内容得到明文内容。这样,就可以实现各个核心管理端、分支管理端的加密过程,不仅节约了成本,还加快了后续加密数据的速度,使得对数据的加密处理更加稳定,加密结果更加精准。
参照图12,示出了本申请实施例的另一种密钥获取装置结构框图,该装置500应用于分支管理端,参见图2-3所示,分支管理端隶属于上述核心管理端,分支管理端下设有用户端,核心管理端用于向分支管理端提供核心端对称密钥密文和核心端密文内容,参见图12所示,该装置500包括:
解密分支端私钥模块501,用于在接收到核心端授权文件的输入时,通过分支管理端的内嵌私钥解密该核心端授权文件,得到分支端私钥和授权分支端信息。
生成用户端私钥模块502,用于在授权分支端信息与分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥。
生成分支端授权文件模块503,用于通过分支管理端的内嵌私钥加密用户端私钥和授权用户端信息,生成分支端授权文件。
下发分支端授权文件模块504,用于向用户端下发分支端授权文件,以使得用户端通过用户端私钥解密分支端对称密钥密文得到分支端对称密钥。
解密核心端对称密钥密文模块505,用于在接收到核心端密文数据的输入时,通过分支端私钥,解密核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥。
解密核心端密文内容模块506,用于通过核心端对称密钥,解密核心端密文数据中的核心端密文内容,得到明文内容。
计算核心端明文哈希值模块507,用于计算明文内容的核心端明文哈希值。
生成分支端密文内容模块508,用于通过预设的分支端对称密钥加密明文内容,得到分支端密文内容。
生成分支端公钥模块509,用于在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥。
生成分支端对称密钥密文模块510,用于通过分支端公钥对分支端对称密钥进行加密,得到分支端对称密钥密文。
下发分支端密文模块511,用于向用户端下发分支端明文哈希值、分支端密文内容和分支端对称密钥密文。
可选地,授权分支端信息包括:分支端设备地址;本地设备信息包括:分支端本地设备地址;授权用户端信息至少包括:用户端名称;生成用户端私钥模块502,还用于:
在分支端设备地址与分支端本地设备地址相同时,通过第一预设延长码延长用户端名称,得到用户端私钥。
可选地,授权用户端信息还包括:用户端标识、用户端设备地址;生成分支端授权文件模块503,还用于:
合并用户端标识、用户端名称、用户端设备地址、分支端名称及用户端私钥,得到分支端授权信息;通过内嵌私钥加密分支端授权信息,生成分支端授权文件。
可选地,目标用户端信息包括:目标用户端名称;生成分支端公钥模块509,还用于:
在核心端明文哈希值和分支端明文哈希值相同时,通过第二预设延长码延长目标用户端名称,得到分支端公钥。
可选地,下发分支端密文模块510,还用于:
合并分支端密文内容、分支端对称密钥密文、分支端明文哈希值、分支端标识及分支端名称,得到分支端密文数据;向用户端下发分支端密文数据。
本申请实施例通过在接收到核心端密文数据的输入时,通过分支端私钥,解密核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥;通过核心端对称密钥,解密核心端密文数据中的核心端密文内容,得到明文内容;计算明文内容的分支端明文哈希值,再通过预设的分支端对称密钥加密明文内容,得到分支端密文内容,再在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥,既简化了公钥分发的步骤和频繁访问服务器带来的损耗,又解决了网络隔离场景下公钥分发的问题,而通过分支端公钥对分支端对称密钥进行加密,可以得到分支端对称密钥密文,最后向用户端下发分支端明文哈希值、分支端密文内容和分支端对称密钥密文,可以使得用户端可以通过用户端私钥解密该分支端对称密钥密文得到分支端对称密钥,再通过分支端对称密钥解密该分支端密文内容得到明文内容。这样,就可以实现各个分支管理端、用户端的加密解密过程,不仅节约了成本,还加快了后续加密解密数据的速度,使得对数据的加密解密处理更加稳定,加密解密结果更加精准。
参照图13,示出了本申请实施例的另一种密钥获取装置结构框图,该装置600应用于用户端,参见图2-3所示,该用户端隶属于上述分支管理端,分支管理端用于向用户端提供分支端对称密钥密文和分支密文内容,用户端至少包括:第一用户端和第二用户端;第一用户端用于向第二用户端提供第一用户端对称密钥密文和第一用户端密文内容;用户端私钥至少包括:第二用户端私钥;参见图13所示,该装置600包括:
解析分支端授权文件模块601,用于在接收到分支端授权文件的输入时,解析该分支端授权文件,得到授权用户端信息。
获取用户端私钥模块602,用于在授权用户端信息与用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得用户端通过用户端私钥解密分支端对称密钥密文得到预设的分支端对称密钥,分支端对称密钥用于解密分支端密文内容得到明文内容。
解密分支端对称密钥密文模块603,用于在接收到分支端密文数据的输入时,通过用户端私钥解密分支端密文数据中的分支端对称密钥密文,得到预设的分支端对称密钥。
解密分支端密文内容模块604,用于通过分支端对称密钥,解密分支端密文数据中的分支端密文内容,得到明文内容。
计算用户端明文哈希值模块605,用于计算明文内容的用户端明文哈希值。
存储明文内容模块606,用于在核心端密文数据中的核心端明文哈希值和分支端明文哈希值相匹配时,将明文内容存储到明文文件中。
生成用户端密文内容模块607,用于在接收到第一用户端和第二用户端的点对点加密请求时,通过预设的第一用户端对称密钥加密明文内容,得到第一用户端密文内容。
生成用户端公钥模块608,用于根据预先输入的第二用户端信息,生成第一用户端公钥。
生成用户端对称密钥密文模块609,用于通过第一用户端公钥对第一用户端对称密钥进行加密,得到第一用户端对称密钥密文。
发送用户端密文模块610,用于向第二用户端发送第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文。
可选地,授权用户端信息包括:用户端设备地址;本地设备信息包括:用户端本地设备地址;获取用户端私钥模块602,还用于:
在用户端设备地址与用户端本地设备地址相同时,从解析后的分支端授权文件中获取用户端私钥。
可选地,存储明文内容模块606,还用于:
在用户端明文哈希值与分支端密文数据中的分支端明文哈希值相同时,将明文内容存储到明文文件中。
可选地,第二用户端信息至少包括:第二用户端名称;生成用户端公钥模块608,还用于:
通过第三预设延长码延长第二用户端名称得到第一用户端公钥。
可选地,发送用户端密文模块610,还用于:
合并第一用户端密文内容、第一用户端对称密钥密文、第一用户端明文哈希值、第一用户端标识及第一用户端名称,得到第一用户端密文数据;向第二用户端发送第一用户端密文数据。
本申请实施例通过在接收到第一用户端和第二用户端的点对点加密请求时,通过预设的第一用户端对称密钥加密明文内容,得到第一用户端密文内容;根据预先输入的第二用户端信息生成第一用户端公钥;通过第一用户端公钥对第一用户端对称密钥进行加密,得到第一用户端对称密钥密文;向第二用户端发送第一用户端明文哈希值、第一用户端密文内容和第一用户端对称密钥密文,以使得第二用户端通过第二用户端私钥解密第一用户端对称密钥密文得到第一用户端对称密钥,第一用户端对称密钥用于解密第一用户端密文内容得到明文内容。这样,就可以实现各个用户端之间的点对点加密过程,不仅节约了成本,还加快了后续点对点加密数据的速度,使得对数据的点对点加密处理更加稳定,点对点加密结果更加精准。
本发明实施例提供的图像处理装置能够实现图1至图9的方法实施例实现的各个过程,为避免重复,这里不再赘述。
参见图14所示,本发明实施例还提供一种电子设备700,包括处理器701、存储器702,处理器、存储器及存储在存储器上并可在处理器上运行的计算机程序,计算机程序被处理器执行时实现上述密钥获取方法的实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供一种可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现上述的密钥获取方法的实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
其中,处理器为上述实施例中的电子设备中的处理器。可读存储介质,包括计算机可读存储介质,如计算机只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、磁碟或者光盘等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。
Claims (19)
1.一种密钥获取方法,其特征在于,应用于分支管理端;所述分支管理端隶属于核心管理端,所述分支管理端下设有用户端,所述核心管理端用于向所述分支管理端提供核心端对称密钥密文和核心端密文内容,所述方法包括:
在接收到核心端授权文件的输入时,通过内嵌私钥解密所述核心端授权文件,得到分支端私钥和授权分支端信息;所述分支端私钥用于解密所述核心端对称密钥密文得到预设的核心端对称密钥;所述核心端对称密钥用于解密所述核心端密文内容得到明文内容;
在所述授权分支端信息与所述分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥;所述用户端私钥用于加密预设的分支端对称密钥得到分支端对称密钥密文;所述分支端对称密钥用于对所述明文内容进行加密得到分支端密文内容;
通过所述内嵌私钥加密所述用户端私钥和所述授权用户端信息,生成分支端授权文件;
向所述用户端下发所述分支端授权文件,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到所述分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到所述明文内容。
2.根据权利要求1所述的方法,其特征在于,所述授权分支端信息包括:分支端设备地址;所述本地设备信息包括:分支端本地设备地址;所述授权用户端信息至少包括:用户端名称;所述在所述授权分支端信息与所述分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥,包括:
在所述分支端设备地址与所述分支端本地设备地址相同时,通过第一预设延长码延长所述用户端名称,得到所述用户端私钥。
3.根据权利要求2所述的方法,其特征在于,所述授权用户端信息还包括:用户端标识、用户端设备地址;所述通过所述内嵌私钥加密所述用户端私钥和所述授权用户端信息,生成分支端授权文件,包括:
合并所述用户端标识、所述用户端名称、所述用户端设备地址、所述分支端名称及所述用户端私钥,得到分支端授权信息;
通过所述内嵌私钥加密所述分支端授权信息,生成分支端授权文件。
4.根据权利要求3所述的方法,其特征在于,在所述向所述用户端下发所述分支端授权文件,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到所述分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到所述明文内容之后,所述方法还包括:
在接收到核心端密文数据的输入时,通过所述分支端私钥,解密所述核心端密文数据中的核心端对称密钥密文,得到预设的核心端对称密钥;
通过所述核心端对称密钥,解密所述核心端密文数据中的核心端密文内容,得到明文内容;
计算所述明文内容的分支端明文哈希值;
通过预设的分支端对称密钥加密所述明文内容,得到分支端密文内容;
向所述用户端下发所述分支端明文哈希值、所述分支端密文内容和所述分支端明文哈希值。
5.根据权利要求4所述的方法,其特征在于,在所述通过预设的分支端对称密钥加密所述明文内容,得到分支端密文内容之后,所述方法还包括:
在所述核心端密文数据中的核心端明文哈希值和所述分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥;
通过所述分支端公钥对所述分支端对称密钥进行加密,得到分支端对称密钥密文。
6.根据权利要求5所述的方法,其特征在于,所述目标用户端信息包括:目标用户端名称;所述在所述核心端密文数据中的核心端明文哈希值和所述分支端明文哈希值相匹配时,根据预先输入的目标用户端信息生成分支端公钥,包括:
在所述核心端明文哈希值和所述分支端明文哈希值相同时,通过第二预设延长码延长所述目标用户端名称,得到所述分支端公钥。
7.根据权利要求6所述的方法,其特征在于,所述向所述用户端下发所述分支端明文哈希值、所述分支端密文内容和所述分支端明文哈希值,包括:
合并所述分支端密文内容、所述分支端对称密钥密文、所述分支端明文哈希值、所述分支端标识及所述分支端名称,得到分支端密文数据;
向所述用户端下发所述分支端密文数据。
8.一种密钥获取方法,其特征在于,应用于用户端;所述用户端隶属于权利要求1至7中任一项所述分支管理端,所述分支管理端用于向所述用户端提供分支端对称密钥密文和分支密文内容,所述方法包括:
在接收到分支端授权文件的输入时,解析所述分支端授权文件,得到授权用户端信息;
在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到明文内容。
9.根据权利要求8所述的方法,其特征在于,所述授权用户端信息包括:用户端设备地址;所述本地设备信息包括:用户端本地设备地址;所述在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,包括:
在所述用户端设备地址与所述用户端本地设备地址相同时,从解析后的分支端授权文件中获取用户端私钥。
10.根据权利要求9所述的方法,其特征在于,所述在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥之后,所述方法还包括:
在接收到分支端密文数据的输入时,通过所述用户端私钥解密所述分支端密文数据中的分支端对称密钥密文,得到预设的分支端对称密钥;
通过所述分支端对称密钥,解密所述分支端密文数据中的分支端密文内容,得到明文内容。
11.根据权利要求10所述的方法,其特征在于,所述分支端密文数据还包括:分支端明文哈希值;在所述通过所述分支端对称密钥,解密所述分支端密文数据中的分支端密文内容,得到明文内容之后,所述方法还包括:
计算所述明文内容的用户端明文哈希值;
在所述核心端密文数据中的核心端明文哈希值和所述分支端明文哈希值相匹配时,将所述明文内容存储到明文文件中。
12.根据权利要求11所述的方法,其特征在于,所述在所述核心端密文数据中的核心端明文哈希值和所述分支端明文哈希值相匹配时,将所述明文内容存储到明文文件中,包括:
在所述用户端明文哈希值与所述分支端密文数据中的分支端明文哈希值相同时,将所述明文内容存储到明文文件中。
13.根据权利要求12所述的方法,其特征在于,所述用户端至少包括:第一用户端和第二用户端;所述第一用户端用于向所述第二用户端提供第一用户端对称密钥密文和第一用户端密文内容;所述用户端明文哈希值至少包括:第一用户端明文哈希值;所述用户端私钥至少包括:第二用户端私钥;在所述通过所述分支端对称密钥,解密所述分支端密文数据中的分支端密文内容,得到明文内容之后,所述方法还包括:
在接收到所述第一用户端和所述第二用户端的点对点加密请求时,通过预设的第一用户端对称密钥加密所述明文内容,得到第一用户端密文内容;
根据预先输入的第二用户端信息生成第一用户端公钥;
通过所述第一用户端公钥对所述第一用户端对称密钥进行加密,得到第一用户端对称密钥密文;
向所述第二用户端发送所述第一用户端明文哈希值、所述第一用户端密文内容和所述第一用户端对称密钥密文,以使得所述第二用户端通过所述第二用户端私钥解密所述第一用户端对称密钥密文得到所述第一用户端对称密钥,所述第一用户端对称密钥用于解密所述第一用户端密文内容得到所述明文内容。
14.根据权利要求13所述的方法,其特征在于,所述第二用户端信息至少包括:第二用户端名称;所述根据预先输入的第二用户端信息生成第一用户端公钥文,包括:
通过第三预设延长码延长所述第二用户端名称得到第一用户端公钥。
15.根据权利要求14所述的方法,其特征在于,所述向所述第二用户端发送所述第一用户端明文哈希值、所述第一用户端密文内容和所述第一用户端对称密钥密文,以使得所述第二用户端通过所述第二用户端私钥解密所述第一用户端对称密钥密文得到所述第一用户端对称密钥,所述第一用户端对称密钥用于解密所述第一用户端密文内容得到所述明文内容,包括:
合并所述第一用户端密文内容、所述第一用户端对称密钥密文、所述第一用户端明文哈希值、第一用户端标识及第一用户端名称,得到第一用户端密文数据;
向所述第二用户端发送所述第一用户端密文数据。
16.一种密钥获取装置,其特征在于,应用于分支管理端;所述分支管理端隶属于核心管理端,所述分支管理端下设有用户端,所述核心管理端用于向所述分支管理端提供核心端对称密钥密文和核心端密文内容,所述装置包括:
解密分支端私钥模块,用于在接收到核心端授权文件的输入时,通过内嵌私钥解密所述核心端授权文件,得到分支端私钥和授权分支端信息;所述分支端私钥用于解密所述核心端对称密钥密文得到预设的核心端对称密钥;所述核心端对称密钥用于解密所述核心端密文内容得到明文内容;
生成用户端私钥模块,用于在所述授权分支端信息与所述分支管理端的本地设备信息相匹配时,根据预先输入的授权用户端信息,生成用户端私钥;所述用户端私钥用于加密预设的分支端对称密钥得到分支端对称密钥密文;所述分支端对称密钥用于对所述明文内容进行加密得到分支端密文内容;
生成分支端授权文件模块,用于通过所述内嵌私钥加密所述用户端私钥和所述授权用户端信息,生成分支端授权文件;
下发分支端授权文件模块,用于向所述用户端下发所述分支端授权文件,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到所述分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到所述明文内容。
17.一种密钥获取装置,其特征在于,应用于用户端;所述用户端隶属于权利要求1至7中任一项所述分支管理端,所述分支管理端用于向所述用户端提供分支端对称密钥密文和分支密文内容,所述装置包括:
解析分支端授权文件模块,用于在接收到分支端授权文件的输入时,解析所述分支端授权文件,得到授权用户端信息;
获取用户端私钥模块,用于在所述授权用户端信息与所述用户端的本地设备信息相匹配时,从解析后的分支端授权文件中获取用户端私钥,以使得所述用户端通过所述用户端私钥解密所述分支端对称密钥密文得到预设的分支端对称密钥,所述分支端对称密钥用于解密所述分支端密文内容得到明文内容。
18.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至15中任一项所述的密钥获取方法。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至15中任一项所述的密钥获取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111472385.8A CN114157488B (zh) | 2021-12-03 | 2021-12-03 | 密钥获取方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111472385.8A CN114157488B (zh) | 2021-12-03 | 2021-12-03 | 密钥获取方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114157488A true CN114157488A (zh) | 2022-03-08 |
CN114157488B CN114157488B (zh) | 2023-06-16 |
Family
ID=80452689
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111472385.8A Active CN114157488B (zh) | 2021-12-03 | 2021-12-03 | 密钥获取方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114157488B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115913560A (zh) * | 2022-09-08 | 2023-04-04 | 北京中宏立达科技发展有限公司 | 一种密件授权和使用的系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130114810A1 (en) * | 2010-07-23 | 2013-05-09 | Nippon Telegraph And Telephone Corporation | Cryptographic system, cryptographic communication method, encryption apparatus, key generation apparatus, decryption apparatus, content server, program, and storage medium |
US20180034641A1 (en) * | 2016-08-01 | 2018-02-01 | Institute For Development And Research In Banking Technology (Idrbt) | SYSTEM AND METHOD FOR PROVIDING SECURE COLLABORATIVE SOFTWARE AS A SERVICE (SaaS) ATTESTATION SERVICE FOR AUTHENTICATION IN CLOUD COMPUTING |
CN109218018A (zh) * | 2018-09-14 | 2019-01-15 | 西安电子科技大学 | 一种基于身份的无人机密钥管理与组网认证系统及方法 |
CN109327467A (zh) * | 2018-11-20 | 2019-02-12 | 北京交通大学 | Rssp-ii安全通信协议密钥管理机制的管理方法 |
CN110383755A (zh) * | 2017-01-05 | 2019-10-25 | 皇家飞利浦有限公司 | 网络设备和可信第三方设备 |
US20200076798A1 (en) * | 2018-08-28 | 2020-03-05 | Ofer A. LIDSKY | Systems and methods for user authentication based on a genetic sequence |
CN112332986A (zh) * | 2020-12-06 | 2021-02-05 | 武汉卓尔信息科技有限公司 | 一种基于权限控制的私有加密通信方法及系统 |
CN112434313A (zh) * | 2020-11-11 | 2021-03-02 | 北京邮电大学 | 数据共享方法、系统、电子设备及存储介质 |
-
2021
- 2021-12-03 CN CN202111472385.8A patent/CN114157488B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130114810A1 (en) * | 2010-07-23 | 2013-05-09 | Nippon Telegraph And Telephone Corporation | Cryptographic system, cryptographic communication method, encryption apparatus, key generation apparatus, decryption apparatus, content server, program, and storage medium |
US20180034641A1 (en) * | 2016-08-01 | 2018-02-01 | Institute For Development And Research In Banking Technology (Idrbt) | SYSTEM AND METHOD FOR PROVIDING SECURE COLLABORATIVE SOFTWARE AS A SERVICE (SaaS) ATTESTATION SERVICE FOR AUTHENTICATION IN CLOUD COMPUTING |
CN110383755A (zh) * | 2017-01-05 | 2019-10-25 | 皇家飞利浦有限公司 | 网络设备和可信第三方设备 |
US20200076798A1 (en) * | 2018-08-28 | 2020-03-05 | Ofer A. LIDSKY | Systems and methods for user authentication based on a genetic sequence |
CN109218018A (zh) * | 2018-09-14 | 2019-01-15 | 西安电子科技大学 | 一种基于身份的无人机密钥管理与组网认证系统及方法 |
CN109327467A (zh) * | 2018-11-20 | 2019-02-12 | 北京交通大学 | Rssp-ii安全通信协议密钥管理机制的管理方法 |
CN112434313A (zh) * | 2020-11-11 | 2021-03-02 | 北京邮电大学 | 数据共享方法、系统、电子设备及存储介质 |
CN112332986A (zh) * | 2020-12-06 | 2021-02-05 | 武汉卓尔信息科技有限公司 | 一种基于权限控制的私有加密通信方法及系统 |
Non-Patent Citations (3)
Title |
---|
ZHUN ZHANG ETAL.: "High-Efficiency Parallel Cryptographic Accelerator for Real-Time Guaranteeing Dynamic Data Security in Embedded Systems", 《MICROMACHINES》, vol. 12, no. 5 * |
姚雪: "边缘计算网络身份认证协议设计与分析", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》, no. 5 * |
陈昭智;郑建德;: "一种基于身份分层结构加密算法的广播加密方案", 厦门大学学报(自然科学版), no. 03 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115913560A (zh) * | 2022-09-08 | 2023-04-04 | 北京中宏立达科技发展有限公司 | 一种密件授权和使用的系统 |
CN115913560B (zh) * | 2022-09-08 | 2023-06-16 | 北京中宏立达科技发展有限公司 | 一种密件授权和使用的系统 |
Also Published As
Publication number | Publication date |
---|---|
CN114157488B (zh) | 2023-06-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109495274B (zh) | 一种去中心化智能锁电子钥匙分发方法及系统 | |
US6266420B1 (en) | Method and apparatus for secure group communications | |
US6260142B1 (en) | Access and storage of secure group communication cryptographic keys | |
CA2267395C (en) | Method and system for managing keys for encrypted data | |
KR100734162B1 (ko) | 공중/개인키 쌍들의 안전한 분배 방법 및 장치 | |
EP1676281B1 (en) | Efficient management of cryptographic key generations | |
CN110771089A (zh) | 提供前向保密性的安全通信 | |
US20090097657A1 (en) | Constructive Channel Key | |
US20110145576A1 (en) | Secure method of data transmission and encryption and decryption system allowing such transmission | |
US20100005318A1 (en) | Process for securing data in a storage unit | |
CN101123495A (zh) | 一种数据加密、解密系统和方法 | |
CA2463034A1 (en) | Method and system for providing client privacy when requesting content from a public server | |
KR20050037244A (ko) | 인증서를 이용한 기기 인증 방법 및 상기 방법을 이용하여기기 인증을 수행하는 디지털 컨텐츠 처리 기기 | |
CN112804205A (zh) | 数据加密方法及装置、数据解密方法及装置 | |
KR20170047717A (ko) | 서버 및 이에 의한 스마트홈 환경의 관리 방법, 스마트홈 환경의 가입 방법 및 스마트 기기와의 통신 세션 연결 방법 | |
US20080098214A1 (en) | Encryption/decryption method, method for safe data transfer across a network, computer program products and computer readable media | |
EP1501238B1 (en) | Method and system for key distribution comprising a step of authentication and a step of key distribution using a KEK (key encryption key) | |
CN113382002B (zh) | 数据请求方法、请求应答方法、数据通信系统及存储介质 | |
CN108809936A (zh) | 一种基于混合加密算法的智能移动终端身份验证方法及其实现系统 | |
CN101325483B (zh) | 对称密钥更新方法和对称密钥更新装置 | |
CN110740116B (zh) | 一种多应用身份认证的系统及方法 | |
JPH10154977A (ja) | 利用者認証装置およびその方法 | |
US7360238B2 (en) | Method and system for authentication of a user | |
CN114157488B (zh) | 密钥获取方法、装置、电子设备及存储介质 | |
CN112787822B (zh) | 一种大属性集下的基于sm9的属性加密方法及系统 |
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 |