数据加密方法、装置及存储介质

阅读: 评论:0

著录项
  • CN202211073104.6
  • 20220902
  • CN115459910A
  • 20221209
  • 海尔优家智能科技(北京)有限公司;青岛海尔科技有限公司;海尔智家股份有限公司
  • 高鑫
  • H04L9/08
  • H04L9/08

  • 北京市北三环中路甲29号院3号楼五层501号内502室
  • 北京(11)
  • 北京元中知识产权代理有限责任公司
  • 贺兆乐
摘要
本申请涉及数据安全领域,具体而言,涉及一种数据加密方法、装置及存储介质,该数据加密方法包括:接收客户端发送的数据加密申请指令;基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;通过所述明文密钥对请求数据进行加密,获取加密数据;保存所述加密数据和所述密文密钥至密钥管理服务器的数据库的方法,可以通过部署密钥管理服务器自主对数据进行加密,实现数据安全,并减少数据保护的成本。
权利要求

1.一种数据加密方法,其特征在于,包括:

接收客户端发送的数据加密申请指令;

基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;

通过所述明文密钥对请求数据进行加密,获取加密数据;

保存所述加密数据和所述密文密钥至密钥管理服务器的数据库。

2.根据权利要求1所述的方法,其特征在于,

所述基于所述申请指令,创建主密钥,包括:

根据接收到的请求数据的加密属性,确定主密钥的加密方式;

根据接收到的请求数据的应用场景,确定主密钥的加密类型;

基于所述加密方式和所述加密类型,创建主密钥。

6.根据权利要求2所述的方法,其特征在于,

所述基于所述申请指令,创建主密钥,还包括:

基于所述申请指令,发送密钥设置框至客户端;

响应于接收到用户输入的明文密钥,对所述请求数据进行加密处理,得到加密数据;

根据所述明文密钥,创建密文密钥;

保存所述密文密钥和所述加密数据至密钥管理服务器的数据库。

7.根据权利要求6所述的方法,其特征在于,

所述保存所述密文密钥和所述加密数据至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中,所述解密方法,包括:

响应于接收到使用加密数据的明文密钥,调用密钥管理服务器的数据库中存储的第一密文密钥;

接收使用加密数据的第二密文密钥;

响应于所述第一密文密钥与所述第二密文密钥相同,基于所述第二密文密钥对所述加密数据的解密;

返回请求数据至客户端。

3.根据权利要求1或2所述的方法,其特征在于,

所述保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,包括:

基于所述密钥对在密钥管理服务器中的配置,确定所述明文密钥和所述密文密钥的第一关系;

根据所述明文密钥与对所述请求数据加密后获取的加密数据,确定所述明文密钥和所述加密数据的第二关系;

根据所述第一关系和所述第二关系,确定所述密文密钥和所述所述加密数据的第三关系;

将所述第三关系持久化保存至密钥管理服务器的数据库中。

4.根据权利要求3所述的方法,其特征在于,

基于所述第三关系返回所述加密数据至客户端的方法,包括:

根据所述第三关系,确定密文密钥和加密数据的配置关系;

根据所述配置关系,确定所述加密数据的地址信息;

返回所述地址信息至客户端。

5.根据权利要求1-4所述的任意一种方法,其特征在于,

所述保存所述加密数据和所述密文密钥至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中所述解密方法,包括:

响应于接收到加密数据的使用申请,调用密文密钥;

根据所述第一关系,确定第一明文密钥;

获取客户端发送的第二明文密钥,响应于所述第一明文密钥和所述第二明文密钥相同,基于第二明文密钥对所述加密数据进行解密;

返回请求数据至客户端。

8.一种数据加密装置,其特征在于,包括:

接收模块,被配置为接收客户端发送的数据加密申请指令;

创建模块,被配置为基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;

获取模块,被配置为通过所述明文密钥对请求数据进行加密,获取加密数据;

保存模块,被配置为保存所述加密数据和所述密文密钥至密钥管理服务器的数据库。

9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行权利要求1至7中任一项所述的方法。

10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行权利要求1至7中任一项所述的方法。

说明书
技术领域

本申请涉及数据安全领域,具体而言,涉及一种数据加密方法、装置及存储介质。

随着互联网科技的不断发展,数据信息成为成为一个企业的无形资产,如何防止企业或个人敏感信息的泄露或窃取成为当前需要考虑的重中之重。当前,在应用开发过程中,可以调用服务来实现对数据的加解密,例如,云服务商阿里云和华为云,通过提供密钥管理服务实现一站式密钥管理和数据加密服务平台,实现简单、可靠、安全、合规的数据加密保护。但使用云服务商实现对数据的加密需要依赖第三方服务提供商,因此用户对数据的保护会缺乏自主性,也会产生高昂的成本。

本申请要解决的技术问题在于克服现有技术的不足,提供一种基于微服务架构的数据加密方法、装置及存储介质。

为解决上述技术问题,本申请采用技术方案的基本构思是:

根据本实施例的第一方面,提供一种数据加密方法,包括:接收客户端发送的数据加密申请指令;基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;通过所述明文密钥对请求数据进行加密,获取加密数据;保存所述加密数据和所述密文密钥至密钥管理服务器的数据库。

可选的,所述基于所述申请指令,创建主密钥,包括:根据接收到的请求数据的加密属性,确定主密钥的加密方式;根据接收到的请求数据的应用场景,确定主密钥的加密类型;基于所述加密方式和所述加密类型,创建主密钥。

可选的,所述保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,包括:基于所述密钥对在密钥管理服务器中的配置,确定所述明文密钥和所述密文密钥的第一关系;根据所述明文密钥与对所述请求数据加密后获取的加密数据,确定所述明文密钥和所述加密数据的第二关系;根据所述第一关系和所述第二关系,确定所述密文密钥和所述所述加密数据的第三关系;将所述第三关系持久化保存至密钥管理服务器的数据库中。

可选的,基于所述第三关系返回所述加密数据至客户端的方法,包括:根据所述第三关系,确定密文密钥和加密数据的配置关系;根据所述配置关系,确定所述加密数据的地址信息;返回所述地址信息至客户端。

可选的,所述保存所述加密数据和所述密文密钥至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中所述解密方法,包括:响应于接收到加密数据的使用申请,调用密文密钥;根据所述第一关系,确定第一明文密钥;获取客户端发送的第二明文密钥,响应于所述第一明文密钥和所述第二明文密钥相同,基于第二明文密钥对所述加密数据进行解密;返回请求数据至客户端。

可选的,所述基于所述申请指令,创建主密钥,还包括:基于所述申请指令,发送密钥设置框至客户端;响应于接收到用户输入的明文密钥,对所述请求数据进行加密处理,得到加密数据;根据所述明文密钥,创建密文密钥;保存所述密文密钥和所述加密数据至密钥管理服务器的数据库。

可选的,所述保存所述密文密钥和所述加密数据至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中,所述解密方法,还包括:响应于接收到使用加密数据的明文密钥,调用密钥管理服务器的数据库中存储的第一密文密钥;接收使用加密数据的第二密文密钥;响应于所述第一密文密钥与所述第二密文密钥相同,基于所述第二密文密钥对所述加密数据的解密;返回请求数据至客户端。

根据本实施例的第二方面,提供一种数据加密装置,包括:接收模块,被配置为接收客户端发送的数据加密申请指令;创建模块,被配置为基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;获取模块,被配置为通过所述明文密钥对请求数据进行加密,获取加密数据;保存模块,被配置为保存所述加密数据和所述密文密钥至密钥管理服务器的数据库。

可选的,所述创建模块采用如下方式基于所述申请指令,创建主密钥,包括:根据接收到的请求数据的加密属性,确定主密钥的加密方式;根据接收到的请求数据的应用场景,确定主密钥的加密类型;基于所述加密方式和所述加密类型,创建主密钥。

可选的,所述保存模块采用如下方式保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,包括:基于所述密钥对在密钥管理服务器中的配置,确定所述明文密钥和所述密文密钥的第一关系;根据所述明文密钥与对所述请求数据加密后获取的加密数据,确定所述明文密钥和所述加密数据的第二关系;根据所述第一关系和所述第二关系,确定所述密文密钥和所述所述加密数据的第三关系;将所述第三关系持久化保存至密钥管理服务器的数据库中。

可选的,所述保存模块采用如下方式基于所述第三关系返回所述加密数据至客户端的方法,包括:根据所述第三关系,确定密文密钥和加密数据的配置关系;根据所述配置关系,确定所述加密数据的地址信息;返回所述地址信息至客户端。

可选的,所述保存模块之后还采用如下方式保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,还包括对所述密文数据的解密,其中所述解密方法,包括:响应于接收到加密数据的使用申请,调用密文密钥;根据所述第一关系,确定第一明文密钥;获取客户端发送的第二明文密钥,响应于所述第一明文密钥和所述第二明文密钥相同,基于第二明文密钥对所述加密数据进行解密;返回请求数据至客户端。

可选的,所述所述创建模块还采用如下方式基于所述申请指令,创建主密钥,包括:基于所述申请指令,发送密钥设置框至客户端;响应于接收到用户输入的明文密钥,对所述请求数据进行加密处理,得到加密数据;根据所述明文密钥,创建密文密钥;保存所述密文密钥和所述加密数据至密钥管理服务器的数据库。

可选的,在所述保存模块采用如下方式保存所述密文密钥和所述加密数据至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中,所述解密方法,还包括:响应于接收到使用加密数据的明文密钥,调用密钥管理服务器的数据库中存储的第一密文密钥;接收使用加密数据的第二密文密钥;响应于所述第一密文密钥与所述第二密文密钥相同,基于所述第二密文密钥对所述加密数据的解密;返回请求数据至客户端。

根据本申请的第三方面,提供了一种电子设备,所述设备包括:处理器;用于存储处理器可执行指令的存储器,以执行本申请任一实施方式所述的方法。

根据本申请的第四方面,提供了一种计算机可读存储介质,其上储存有计算机程序指令,所述计算机程序指令被处理器执行时实现本申请任一实施方式所述的方法。

本申请的实施例提供的技术方案可以包括以下有益效果:

接收客户端发送的数据加密申请指令;基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥;通过所述明文密钥对请求数据进行加密,获取加密数据;保存所述加密数据和所述密文密钥至密钥管理服务器的数据库的方法,可以通过部署密钥管理服务器自主对数据进行加密,实现数据安全,并减少数据保护成本。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制公开。

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是根据本申请实施例的一种智能设备的交互方法的硬件环境示意图;

图2是根据本申请实施例的一种数据加密方法的流程图;

图3是根据本申请实施例的另一种数据加密方法的流程图;

图4是根据本申请实施例的一种数据加密服务交互流程示意图;

图5是根据本申请实施例的一种数据加密服务组件结构示意图;

图6是根据本申请实施例的一种数据加密整体架构示意图;

图7是根据本申请实施例的一种数据加密装置的框图;

图8是根据本申请实施例的一种电子装置的框图。

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元,取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

根据本申请实施例的一个方面,提供了一种智能家居设备的交互方法。该智能家居设备的交互方法广泛应用于智慧家庭(Smart Home)、智能家居、智能家用设备生态、智慧住宅(Intelligence House)生态等全屋智能数字化控制应用场景。可选地,在本实施例中,上述智能家居设备的交互方法可以应用于如图1所示的由终端设备102和服务器104所构成的硬件环境中。如图1所示,服务器104 通过网络与终端设备102进行连接,可用于为终端或终端上安装的客户端提供服务(如应用服务等),可在服务器上或独立于服务器设置数据库,用于为服务器 104提供数据存储服务,可在服务器上或独立于服务器配置云计算服务,用于为服务器104提供数据运算服务。

上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:WIFI(Wireless Fidelity,无线保真),蓝牙。终端设备102可以并不限定于为PC、手机、平板电脑、智能电视、智能影音、智能门锁等。

随着信息化的不断发展,数据信息成为企业的无形资产,企业数据信息不仅包括企业的重要数据,也包括个人的敏感数据,因此一个企业如何对于数据安全的处理成为衡量一个企业是否值得顾客青睐的重要指标。为了防止数据泄露和被窃取,某些特定数据需要进行加密存储,当前存在多种形式的数据加密形式,可以实现对数据加密的支持,但需要依赖第三方服务器的支持,因此,本申请提供了一种通过密钥管理实现数据加密的方法。

本申请下述实施例将结合附图,对本申请提供的一种数据加密方法进行说明。

实施例一

本实施例中的微服务架构可以应用于企业或个人对于数据安全的管理,可同时存在多个服务器,使得多个服务器共用一个服务库。

图2是根据本申请实施例的一种数据加密方法的流程图,如图2所示,包括步骤S201-S204。

在步骤S201中,接收客户端发送的数据加密申请指令。

其中,用户申请指令是指用户向密钥管理服务器发送的对请求数据进行加密和解密的指令,在密钥管理服务器接收到该申请指令时,会根据该申请指令在数据库中调用密钥,其中密钥管理服务是企业或个人基于数据安全创建的,并且基于企业或个人的需求,数据开发人员可以自主创建加解密方法,从而减少对于第三方服务器的依赖。

在步骤S202中,基于申请指令,创建主密钥,其中,主密钥包括明文密钥和密文密钥。

当用户需要对数据进行加密和解密操作时,会向密钥管理服务器发送加密和解密申请指令,其中,该申请指令包括对请求数据的加密类型、别名和应用场景等属性的指定。

本实施例中,根据该申请指令,创建主密钥的方法,包括以下步骤:

根据接收到的请求数据的加密属性,确定主密钥的加密方式;

根据接收到的请求数据的应用场景,确定主密钥的加密类型;

基于加密方式和加密类型,创建主密钥。

其中,加密属性是指客户端发送的请求数据的信息特征,包括但不限于,请求数据采集信息,请求数据传输信息,请求数据存储信息、请求数据访问信息、请求数据共享信息、请求数据开放信息和请求数据销毁信息等。根据获取的请求数据的特征信息,可以确定主密钥的加密方式。

本实施例中,主密钥的加密方式是指对该请求数据通过何种操作进行加密操作,用户根据请求数据的特征信息,可以确定该请求数据的加密等级,从而确定该请求数据的加密方式,例如:通过手势对请求数据进行加密、通过字符对请求数据进行加密、通过图形对请求数据进行加密、通过电子签名对请求数据进行加密、通过录入指纹对请求数据进行加密等,用户可以在客户端单独选择一种加密方式对请求数据进行加密,也可以通过组合的方式对请求数据进行加密;其中,密钥管理服务器对该请求数据的加密方式包括但不限于,直接明文保存、单向 HASH算法加密、特殊HASH算法加密、Pbkdf2、BCrypt、SCrypt和Argon2等。

应用场景是指该客户端发送的请求数据的用途,即客户端对该请求数据进行加密和解密的用途,包括但不限于,金融领域、医疗健康领域、社交网络领域、教育科学领域、体育领域、环保卫生领域、食品安全领域、生物数据领域、零售领域、电商领域、农牧领域和交通领域等。根据获取的请求数据的应用场景,可以确定主密钥的加密类型;基于不同应用场景对主密钥加密类型的不同选择,确定主密钥的加密类型;在该请求数据所处的应用场景需要对请求数据进行高级加密处理时,密钥管理服务器可以根据该申请指令,对请求数据进行高级加密处理,例如非对称加密;在该请求数据所处的应用场景需要对请求数据进行等级中度的加密处理时,密钥管理服务器可以根据该申请指令,对请求数据进行中级加密处理;在该请求数据所处的应用场景需要对请求数据进行等级较低的加密处理时,密钥管理服务器可以根据该申请指令,对请求数据进行低级加密处理,例如对称加密。

本实施例中,主密钥的加密类型是指对该请求数据通过何种形式进行加密操作,密钥管理服务器根据请求数据的应用场景,可以确定该请求数据的密钥对,从而确定该请求数据的加密类型,其中,本申请对于请求数据的加密类型包括但不限于对称加密和非对称加密两种形式。其中,加密类型是基于密钥对来进行区分的,密钥对包括公钥和私钥。响应于确定该加密类型属于对称加密,则公钥和私钥为相同的密钥;响应于确定该加密类型属于非对称加密,则公钥和私钥为不同的密钥。

其中,密钥对中的公钥和私钥均可以用作对请求数据进行加密,在公钥用作对请求数据加密的情况下,可以通过私钥进行解密,基于公钥对所有人公开,但私钥仅用户知晓,或被用户告知私钥的其他用户知晓,因此可以确保数据加密的安全性;在私钥用作对请求数据加密的情况下,可以通过公钥进行解密,基于此时公钥对所有人公开,因此,知晓该公钥的所有人均可实现对请求数据的解密操作,但由于当前数据泄露或数据伪造的情况,因此,用户可以基于该私钥实现身份验证,即当知晓该公钥的除用户之外的其他人实现对该请求数据的解密操作后,用户可以根据其他用户返回的解密数据进行验证,判断该请求数据是否为用户进行加密前的数据,因此可以对数据泄露和数据伪造的情况进行辨别,从而确保数据加密的安全性。

其中,本实施例中,数据的加密方式和加密类型的确定均包括两种实现形式,即方式一包括根据接收到的用户申请指令,密钥管理服务器可以根据该申请指令自主创建主密钥并返回给客户端;方式二包括当用户要对请求数据进行加密操作时,可以自主创建主密钥,并将该主密钥发送给密钥管理服务器。

根据确定的加密方式和加密类型,创建主密钥,从而实现对请求数据的加密操作。主密钥包括明文密钥和密文密钥,其中,明文密钥是用于对请求数据进行加密的密钥,密文密钥是用于对加密数据进行加密的密钥。密钥管理服务器保存密文密钥至数据库中,明文密钥用于对数据的加密和解密操作。其中,明文密钥和密文密钥之间通过对应关联建立联系,例如,当明文密钥为字符1,密文密钥为字符C时,响应于用户需要使用加密数据,在客户端输入明文密钥1;密钥管理服务器基于接收到的字符1,在数据库中确定与字符1相匹配的字符C,从而确定密文密钥。

本申请对于密钥管理服务器的部署包括主密钥的创建,其中,创建主密钥的方式可以通过用户自主创建,也可以通过密钥管理服务器创建,从而实现对数据进行加密。基于对密钥管理服务器的部署,从而减少了对第三方服务器的依赖;增加用户对于数据加密的自主性,从而增强了数据加密的安全性。

在步骤S203中,通过明文密钥对请求数据进行加密,获取加密数据。

基于对请求数据创建的明文密钥,实现对请求数据的加密操作,获取加密数据。其中,明文密钥可以是对称加密形式,也可以是非对称加密形式,若该明文密钥属于对称加密形式,则该明文密钥的公钥和私钥相同;若该明文密钥属于非对称加密形式,则该明文密钥的公钥和私钥不相同。

加密数据是指通过明文密钥对请求数据进行加密处理后得到的。

在步骤S204中,保存加密数据和密文密钥至密钥管理服务器的数据库。

本实施例中,密钥管理服务器保存密文密钥和加密数据至数据库中,其中,明文密钥用于当用户使用请求数据时,在客户端输入实现对请求数据的加密和解密操作,并不存储于密钥管理服务器中。

本实施例中,保存加密数据和密文密钥至密钥管理服务器的数据库的方法,包括以下步骤:

基于密钥对在密钥管理服务器中的配置,确定明文密钥和密文密钥的第一关系;

根据明文密钥与对请求数据加密后获取的加密数据,确定明文密钥和加密数据的第二关系;

根据第一关系和第二关系,确定密文密钥和加密数据的第三关系;

将第三关系持久化保存至密钥管理服务器的数据库中。

其中,第一关系用于确定明文密钥和密文密钥的关系,响应于接收到用户的数据加密申请指令,基于部署的密钥管理服务器,实现主密钥的调用,从而确定明文密钥和密文密钥;根据用户对该请求数据的加密方式和加密类型的确定,得到明文密钥和密文密钥的密钥对;基于明文密钥和密文密钥的密钥对的对应关系,确定明文密钥和密文密钥的关系。例如,明文密钥的密钥对中公钥为2,私钥为 3,密文密钥的密钥对中公钥为A,私钥为D;基于明文密钥和密文密钥的对应关系,确定明文密钥的公钥2和密文密钥的公钥A为对应关系,明文密钥的私钥 3和密文密钥的私钥D为对应关系;根据确定的公钥和私钥的对应关系,响应于接收到用户发送的明文密钥密钥对,可以在数据库中确定密文密钥的密钥对。

第二关系用于确定明文密钥与请求数据的关系,明文密钥用于用户在客户端实现对请求数据进行加密和解密操作。

第三关系用于确定密文密钥和加密数据的关系,根据第一关系确定明文密钥和密文密钥的对应关系;根据第二关系确定明文密钥和加密数据的对应关系;基于明文密钥和密文密钥的对应关系与明文密钥和加密数据的对应关系,可以得到密文密钥和加密数据的对应关系。即当用户需要使用加密数据时,响应于接收到用户输入的明文密钥,密钥管理服务器可以基于第一关系确定密文密钥;基于第三关系,响应于确定的密文密钥,密钥管理服务器可以确定加密数据。

本实施例中,基于第三关系返回加密数据至客户端的方法,包括以下步骤:

根据第三关系,确定密文密钥和加密数据的配置关系;

根据配置关系,确定加密数据的地址信息;

返回地址信息至客户端。

基于密钥管理服务器根据密文密钥确定加密数据,根据第三关系可以得到密文密钥和加密数据的配置关系,该配置关系即为地址信息,因而可以得到加密数据在密钥管理服务器的数据库中的存储地址信息,通过该确定的地址信息即可将加密数据返回至客户端,实现用户通过明文密钥对该加密数据进行解密操作,从而获取请求数据。

响应于确定密文密钥和加密数据,密钥管理服务器配置持久化到关系型数据库RDS中,并定期备份,从而防止密钥丢失;通过应用缓存和Redis缓存服务进行双重缓存,从而提高调用主密钥时接口的响应速度,其中,应用服务器部署在容器云上,从而方便用户研发人员可以实现数据库的伸缩扩容,从而提供稳定服务。

本实施例中,保存加密数据和密文密钥至密钥管理服务器的数据库之后,还包括对密文数据的解密,其中解密方法,包括以下步骤:

响应于接收到加密数据的使用申请,调用密文密钥;

根据第一关系,确定第一明文密钥;

获取客户端发送的第二明文密钥,响应于第一明文密钥和第二明文密钥相同,基于第二明文密钥对加密数据进行解密;

返回请求数据至客户端。

图3是根据本申请实施例的另一种数据加密方法的流程图,如图3所示,包括步骤S301-S304。

在步骤S301中,基于申请指令,发送密钥设置框至客户端。

在步骤S302中,响应于接收到用户输入的明文密钥,对请求数据进行加密处理,得到加密数据。

在步骤S303中,根据明文密钥,创建密文密钥。

在步骤S304中,保存密文密钥和加密数据至密钥管理服务器的数据库。

其中,本申请对于数据的加密不限通过密钥管理服务器创建主密钥,还可以由用户在客户端对请求数据进行自主创建主密钥,并将该主密钥返回密钥管理服务器,实现用户子主对请求数据加密。

本实施例中,在保存密文密钥和加密数据至密钥管理服务器的数据库之后,还包括解密方法,包括以下步骤:

响应于接收到使用加密数据的明文密钥,调用密钥管理服务器的数据库中存储的第一密文密钥;

接收使用加密数据的第二密文密钥;

响应于第一密文密钥与第二密文密钥相同,基于第二密文密钥对加密数据的解密;

返回请求数据至客户端。

图4是根据本申请实施例的一种数据加密服务交互流程示意图,如图4所示,本申请提供的数据加密方法的实现是基于密钥管理服务对密钥的集中管理实现加解密服务401和应用场景402的交互。

其中,密钥管理服务可以根据不同的应用场景创建相应的加密方法,从而确保数据加密的安全性。响应于接收到用户的数据加密申请指令,密钥管理服务基于该申请指令创建主密钥,以实现对请求数据的加解密服务,其中,该主密钥的创建是基于请求数据的应用场景创建的,包括明文密钥和密钥密钥;根据密钥管理服务器返回的明文密钥和密文密钥,用户可以通过明文密钥对该请求数据进行加密。从而得到加密数据;最后密钥管理服务将得到的加密数据和密文密钥进行持久化存储,从而防止数据的泄露和丢失,确保数据加密的安全性。

图5是根据本申请实施例的一种数据加密服务组件结构示意图,如图5所示,本申请提供的数据加密服务组件是基于对称加密和非对称加密实现对数据加密,应用于抽象工厂模式。其中,该数据加密服务组件包括:客户端501,分类工厂 502,分类器命名框5021,加密工厂503,创建主密钥框5031,对称加密工厂504,创建第一主密钥框5041,非对称加密工厂505,创建第二主密钥框5051,加密机 506,第一加解密框5061,对称加密507,第二加解密框5071,非对称加密508,第三加解密框5081。

如图5所示,本实施例中创建主密钥的加密类型包括对称加密和非对称加密两种。响应于接收到客户端发送的数据加密申请指令,分类工厂502对该申请指令进行处理,经过统一工程的处理,确定该申请指令与给定分类器命名对应的信息;并返回该申请指令在给定分类器中与给定分类器命名对应的信息至密钥管理服务器;通过该对应的信息判断该申请指令基于何种加密类型对数据进行加密;根据获取的该对应的信息,将该对应的信息输入加密工厂503和加密机506中;在该对应的信息表示该申请指令基于对称加密对数据进行加密的情况下,根据加密工厂503创建的对称密钥主密钥,对称加密工厂504接收该对称密钥主密钥,并基于该对称密钥主密钥创建对称密钥对,通过将该对称密钥对输入对称加密507中,实现对请求数据的加密操作和解密操作,其中在对称加密操作过程中,对请求数据的加密和解密所使用的公钥和私钥相同的;在该对应的信息表示该申请指令基于非对称加密对数据进行加密的情况下,根据加密工厂503创建的非对称密钥主密钥,非对称加密工厂505接收该非对称密钥主密钥,并基于该非对称密钥主密钥创建非对称密钥对,通过将该非对称密钥对输入非对称对称加密508 中,实现对请求数据的加密操作和解密操作,其中在非对称加密操作过程中,对请求数据的加密和解密所使用的公钥和私钥不相同的,因而可以避免黑客的侵入,从而提高数据安全性。

图6是根据本申请实施例的一种数据加密整体架构示意图,如图6所示,本申请提供的数据加密结构包括网关服务(gateway)601,第一服务器602,第二服务器603,第三服务器604,第四服务器605,缓存服务(Redis)606,关系型数据库(RDS)607。

如图6所示,网关服务601下包含多个服务器,构成微服务架构。其中,该应用服务部署于容器云上,可以实现对数据库的伸缩扩容,从而提供稳定服务。基于客户端发送的申请指令,可以确定请求数据的加密类型和别名等属性,基于该请求数据的应用场景,可以确定主密钥的类型,包括对称密钥和非对称密钥;从而实现对多个服务器的数据加密处理。响应于多个服务器的数据加密处理获取的密文密钥和加密数据,配置持久化到关系型数据库(RDS)607中,以实现密钥泄露或丢失。通过对数据信息进行应用内存和缓存服务(Redis)606的双重缓存,可以实现在用户使用加密数据的情况下,提高数据传输过程中接口的响应速度。

本实施例中,密钥管理服务器可以根据用户的主密钥配置,在第一次接受用户发送的数据加密申请指令的情况下,密钥管理服务器会将配置好的主密钥在内存和Redis缓存中进行双重缓存;在用户需要使用加密数据的情况下,密钥管理服务器先从内存中查主密钥配置,若该内存中不存在主密钥配置,则从Redis 缓存中查,若在Redis缓存中不存在主密钥配置,则从数据库中查。通过对数据进行双重缓存,可以更好地防止密钥泄露,从而提高数据的安全性。

实施例二

图7是根据本申请实施例的一种数据加密装置的框图,如图7所示,该装置 700包括接收模块701,创建模块702,获取模块703和保存模块704。

该接收模块701,被配置为接收客户端发送的数据加密申请指令。

该创建模块702,被配置为基于所述申请指令,创建主密钥,其中,所述主密钥包括明文密钥和密文密钥。

该获取模块703,被配置为通过所述明文密钥对请求数据进行加密,获取加密数据。

该保存模块704,被配置为保存所述加密数据和所述密文密钥至密钥管理服务器的数据库。

可选的,所述创建模块702采用如下方式基于所述申请指令,创建主密钥,包括:根据接收到的请求数据的加密属性,确定主密钥的加密方式;根据接收到的请求数据的应用场景,确定主密钥的加密类型;基于所述加密方式和所述加密类型,创建主密钥。

可选的,所述保存模块704采用如下方式保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,包括:基于所述密钥对在密钥管理服务器中的配置,确定所述明文密钥和所述密文密钥的第一关系;根据所述明文密钥与对所述请求数据加密后获取的加密数据,确定所述明文密钥和所述加密数据的第二关系;根据所述第一关系和所述第二关系,确定所述密文密钥和所述所述加密数据的第三关系;将所述第三关系持久化保存至密钥管理服务器的数据库中。

可选的,所述保存模块704采用如下方式基于所述第三关系返回所述加密数据至客户端的方法,包括:根据所述第三关系,确定密文密钥和加密数据的配置关系;根据所述配置关系,确定所述加密数据的地址信息;返回所述地址信息至客户端。

可选的,所述保存模块704之后还采用如下方式保存所述加密数据和所述密文密钥至密钥管理服务器的数据库,还包括对所述密文数据的解密,其中所述解密方法,包括:响应于接收到加密数据的使用申请,调用密文密钥;根据所述第一关系,确定第一明文密钥;获取客户端发送的第二明文密钥,响应于所述第一明文密钥和所述第二明文密钥相同,基于第二明文密钥对所述加密数据进行解密;返回请求数据至客户端。

可选的,所述所述创建模块702还采用如下方式基于所述申请指令,创建主密钥,包括:基于所述申请指令,发送密钥设置框至客户端;响应于接收到用户输入的明文密钥,对所述请求数据进行加密处理,得到加密数据;根据所述明文密钥,创建密文密钥;保存所述密文密钥和所述加密数据至密钥管理服务器的数据库。

可选的,在所述保存模块704采用如下方式保存所述密文密钥和所述加密数据至密钥管理服务器的数据库之后,还包括对所述密文数据的解密,其中,所述解密方法,还包括:响应于接收到使用加密数据的明文密钥,调用密钥管理服务器的数据库中存储的第一密文密钥;接收使用加密数据的第二密文密钥;响应于所述第一密文密钥与所述第二密文密钥相同,基于所述第二密文密钥对所述加密数据的解密;返回请求数据至客户端。

关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。

本申请还提供一种计算机可读存储介质,其上存储有计算机程序指令,该程序指令被处理器执行时实现本申请提供的数据加密方法的步骤。

图8是根据本申请实施例的一种电子设备装置的框图,如图8所示,所述电子设备包括存储器、处理器,所述存储器用于存储可在处理器上运行的计算机指令,所述处理器用于在执行所述计算机指令时实现本申请任一实施方式所述的数据加密方法本申请至少一个实施例还提出了一种计算机可读存储介质,其上存储有计算机程序,所述程序被处理器执行时实现本申请任一所述的数据加密方法本领域技术人员应明白,本申请一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本申请一个或多个实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请一个或多个实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请中的“和/或”表示至少具有两者中的其中一个,例如,“A和/或B”包括三种方案:A、B、以及“A和B”。

本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于数据处理设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的行为或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本申请中描述的主题及功能操作的实施例可以在以下中实现:数字电子电路、有形体现的计算机软件或固件、包括本申请中公开的结构及其结构性等同物的计算机硬件、或者它们中的一个或多个的组合。本申请中描述的主题的实施例可以实现为一个或多个计算机程序,即编码在有形非暂时性程序载体上以被数据处理装置执行或控制数据处理装置的操作的计算机程序指令中的一个或多个模块。可替代地或附加地,程序指令可以被编码在人工生成的传播信号上,例如机器生成的电、光或电磁信号,该信号被生成以将信息编码并传输到合适的接收机装置以由数据处理装置执行。计算机存储介质可以是机器可读存储设备、机器可读存储基板、随机或串行存取存储器设备、或它们中的一个或多个的组合。

本申请中描述的处理及逻辑流程可以由执行一个或多个计算机程序的一个或多个可编程计算机执行,以通过根据输入数据进行操作并生成输出来执行相应的功能。所述处理及逻辑流程还可以由专用逻辑电路—例如FPGA(现场可编程门阵列)或ASIC(专用集成电路)来执行,并且装置也可以实现为专用逻辑电路。

适合用于执行计算机程序的计算机包括,例如通用和/或专用微处理器,或任何其他类型的中央处理单元。通常,中央处理单元将从只读存储器和/或随机存取存储器接收指令和数据。计算机的基本组件包括用于实施或执行指令的中央处理单元以及用于存储指令和数据的一个或多个存储器设备。通常,计算机还将包括用于存储数据的一个或多个大容量存储设备,例如磁盘、磁光盘或光盘等,或者计算机将可操作地与此大容量存储设备耦接以从其接收数据或向其传送数据,抑或两种情况兼而有之。然而,计算机不是必须具有这样的设备。此外,计算机可以嵌入在另一设备中,例如移动电话、个人数字助理(PDA)、移动音频或视频播放器、游戏操纵台、全球定位系统(GPS)接收机、或例如通用串行总线(USB) 闪存驱动器的便携式存储设备,仅举几例。

适合于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、媒介和存储器设备,例如包括半导体存储器设备(例如EPROM、 EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动盘)、磁光盘以及CD ROM 和DVD-ROM盘。处理器和存储器可由专用逻辑电路补充或并入专用逻辑电路中。

虽然本申请包含许多具体实施细节,但是这些不应被解释为限制任何发明的范围或所要求保护的范围,而是主要用于描述特定发明的具体实施例的特征。本申请内在多个实施例中描述的某些特征也可以在单个实施例中被组合实施。另一方面,在单个实施例中描述的各种特征也可以在多个实施例中分开实施或以任何合适的子组合来实施。此外,虽然特征可以如上所述在某些组合中起作用并且甚至最初如此要求保护,但是来自所要求保护的组合中的一个或多个特征在一些情况下可以从该组合中去除,并且所要求保护的组合可以指向子组合或子组合的变型。

类似地,虽然在附图中以特定顺序描绘了操作,但是这不应被理解为要求这些操作以所示的特定顺序执行或顺次执行、或者要求所有例示的操作被执行,以实现期望的结果。在某些情况下,多任务和并行处理可能是有利的。此外,上述实施例中的各种系统模块和组件的分离不应被理解为在所有实施例中均需要这样的分离,并且应当理解,所描述的程序组件和系统通常可以一起集成在单个软件产品中,或者封装成多个软件产品。

由此,主题的特定实施例已被描述。其他实施例在所附权利要求书的范围以内。在某些情况下,权利要求书中记载的动作可以以不同的顺序执行并且仍实现期望的结果。此外,附图中描绘的处理并非必需所示的特定顺序或顺次顺序,以实现期望的结果。在某些实现中,多任务和并行处理可能是有利的。

以上所述仅为本申请一个或多个实施例的较佳实施例而已,并不用以限制本申请一个或多个实施例,凡在本申请一个或多个实施例的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请一个或多个实施例保护的范围之内。

本文发布于:2023-04-14 14:35:55,感谢您对本站的认可!

本文链接:https://patent.en369.cn/patent/1/87221.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 369专利查询检索平台 豫ICP备2021025688号-20 网站地图