一种云存储加密方法、装置、设备及存储介质与流程

文档序号:17817598发布日期:2019-06-05 21:56
一种云存储加密方法、装置、设备及存储介质与流程

本发明涉及云计算数据中心的数据加密领域,特别涉及一种云存储加密方法、装置、设备及存储介质。



背景技术:

云存储是云计算数据中心信息存储的主要方式,它提供方便易用的存储空间,但是由于云存储客户担心自己的数据丢失,缺乏对云存储的信任,导致云存储推广普及变得困难。客户是否放心将私密数据存放到云中,是云存储是否能够得到广泛推广的关键所在。从目前诸多实例分析,云端数据的泄漏,从表面上看,是源于一些得到操作资源特权的人,如服务器管理人员或成功入侵服务器的黑客;从根源上来看,现在广泛存在的行业标准化,如编码机制、通用方法(如通用的加解密方法)等才是产生数据泄露的根源。

现有的数据中心安全手段分为两种:静态数据加密和动态数据加密。

静态数据加密是基于用户的数字证书进行认证和加密。用户使用数字证书进行认证和加密。用户使用数字证书向云管理系统进行身份认证,并使用对称密钥在本地加密云中存储的数据,同时使用证书公钥加密对称密钥,然后将加密后的数据传到云中进行存储。这些客户控制并保存密钥,当客户要获取数据时,先将云中密文下载到本地,再由客户自行解密该数据。该方法缺点是需要客户端具备较强的密码运算能力来实现加密功能,同时用户数据的加密密钥必须保管安全,一旦丢失,将无法恢复数据,且该方法只适用于客户自己生成的静态数据加密。

动态数据加密方法是在多租户的云计算应用模式下,客户租用云计算系统的计算能力,客户在云计算环境中产生的动态数据由云计算管理系统进行加密。该方法缺点是客户无法控制动态数据,一切依赖于云计算服务提供商,同时云计算管理系统需要提供一个统一、有效、可扩展的云计算密钥管理框架,用于为各类客户提供各种类型密钥的统一管理,实现各种密钥操作。



技术实现要素:

本发明实施例提供的技术方案,解决云计算数据中心的云存储安全性低的问题。

根据本发明实施例提供的一种云存储加密方法,包括:

虚拟密钥管理服务器从客户端获取待存储的客户数据和客户设置的用于加密所述客户数据的主密钥;

所述虚拟密钥管理服务器利用所述主密钥,生成用于加密的数据加密密钥;

所述虚拟密钥管理服务器利用所述数据加密密钥,对所述待存储的客户数据进行加密,得到客户数据密文,并将所述客户数据密文保存至存储服务器。

优选地,所述虚拟密钥管理服务器利用所述主密钥,生成用于加密的数据加密密钥包括:

所述虚拟密钥管理服务器利用所述待存储的客户数据,生成与所述主密钥配合的配对密钥;

所述虚拟密钥管理服务器利用所述主密钥和所述配对密钥,生成用于加密的数据加密密钥。

优选地,在生成与所述主密钥配合的所述配对密钥后,还包括:

所述虚拟密钥管理服务器利用所述主密钥,对所述配对密钥进行加密,得到所述配对密钥密文,并保存所述配对密钥密文。

优选地,在将所述客户数据密文保存至存储服务器之后,还包括:

所述虚拟密钥管理服务器从所述客户端获取所述主密钥,并利用所述主密钥,生成所述数据加密密钥;

所述虚拟密钥管理服务器从所述存储服务器获取所述客户数据密文,并利用所述数据加密密钥,对所述客户数据密文进行解密,得到所述客户数据,并发送给所述客户端。

优选地,所述利用所述主密钥,生成所述数据加密密钥包括:

所述虚拟密钥管理服务器获取已保存的所述配对密钥密文,并利用所述主密钥,对所述配对密钥密文进行解密,得到所述配对密钥;

所述虚拟密钥管理服务器利用所述主密钥和所述配对密钥,生成用于加密的数据加密密钥。

根据本发明实施例提供的一种云存储加密装置,包括:

获取模块,用于从客户端获取待存储的客户数据和客户设置的用于加密所述客户数据的主密钥;

密钥生成模块,用于利用所述主密钥,生成用于加密的数据加密密钥;

加解密模块,用于利用所述数据加密密钥,对所述待存储的客户数据进行加密,得到客户数据密文,并将所述客户数据密文保存至存储服务器。

优选地,所述密钥生成模块利用所述待存储的客户数据,生成与所述主密钥配合的配对密钥,并利用所述主密钥和所述配对密钥,生成用于加密的数据加密密钥。

优选地,所述加解密模块还用于在生成与所述主密钥配合的所述配对密钥后,利用所述主密钥,对所述配对密钥进行加密,得到所述配对密钥密文,并保存所述配对密钥密文。

根据本发明实施例提供的一种云存储加密设备,所述设备包括:处理器,以及与所述处理器耦接的存储器;所述存储器上存储有可在所述处理器上运行的云存储加密程序,所述云存储加密程序被所述处理器执行时实现上述的云存储加密方法的步骤。

根据本发明实施例提供的一种存储介质,其上存储有云存储加密程序,所述云存储加密程序被处理器执行时实现上述的云存储加密方法的步骤

本发明实施例提供的技术方案具有如下有益效果:

本发明实施例基于云计算虚拟化技术和数据加密技术,能够有效地管理用于加密的密钥,提高了云计算数据中心的认证安全性和密钥安全性,提高了云计算数据中心的云存储安全性。

附图说明

图1是本发明实施例提供的数据中心云存储加密方法流程图;

图2是本发明实施例提供的数据中心云存储加密装置框图;

图3是本发明实施例提供的虚拟密钥管理服务框架示意图;

图4是本发明实施例提供的分离密钥存储密钥关系示意图;

图5是本发明实施例提供的分离密钥存储服务工作流程示意图;

图6是另一实施例提供的实现原理示意图。

具体实施方式

以下结合附图对本发明的优选实施例进行详细说明,应当理解,以下所说明的优选实施例仅用于说明和解释本发明,并不用于限定本发明。

图1是本发明实施例提供的数据中心云存储加密方法流程图,如图1所示,步骤包括:

步骤S101:虚拟密钥管理服务器从客户端获取待存储的客户数据和客户设置的用于加密所述客户数据的主密钥。

所述主密钥由客户保管,在加密期间用于加密客户数据,在解密期间用于解密客户数据密文。

步骤S102:所述虚拟密钥管理服务器利用所述主密钥,生成用于加密的数据加密密钥。

步骤S102包括:所述虚拟密钥管理服务器利用所述待存储的客户数据,生成与所述主密钥配合的配对密钥,并利用所述主密钥和所述配对密钥,生成用于加密的数据加密密钥。

所述数据加密密钥以密文的形式存储在所述虚拟密钥管理服务器,具体地说,在生成与所述主密钥配合的所述配对密钥后,所述虚拟密钥管理服务器利用所述主密钥,对所述配对密钥进行加密,得到所述配对密钥密文,并保存所述配对密钥密文。

步骤S103:所述虚拟密钥管理服务器利用所述数据加密密钥,对所述待存储的客户数据进行加密,得到客户数据密文,并将所述客户数据密文保存至存储服务器。

具体加密时,采用对称解密算法,例如高级加密标准(AdvancedEncryption Standard,AES)对称加密算法。

在执行步骤S103之后,还包括解密步骤,具体为:首先所述虚拟密钥管理服务器从所述客户端获取所述主密钥,并利用所述主密钥,生成所述数据加密密钥,具体地说,所述虚拟密钥管理服务器利用所述主密钥,对在前保存的所述配对密钥密文进行解密,得到所述配对密钥,并利用所述主密钥和所述配对密钥,生成所述数据加密密钥。然后所述虚拟密钥管理服务器从所述存储服务器获取所述客户数据密文,并利用所述数据加密密钥,对所述客户数据密文进行解密,得到所述客户数据,并发送给所述客户端。

本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机可读取存储介质中。进一步说,本发明还可以提供一种存储介质,其上存储有云存储加密程序,所述云存储加密程序被处理器执行时实现上述的云存储加密方法的步骤。其中,所述的存储介质可以包括ROM/RAM、磁碟、光盘、U盘。

图2是本发明实施例提供的数据中心云存储加密装置框图,如图2所示,包括:

获取模块,用于从客户端获取待存储的客户数据和客户设置的用于加密所述客户数据的主密钥;

密钥生成模块,用于利用所述主密钥,生成用于加密的数据加密密钥;

加解密模块,用于利用所述数据加密密钥,对所述待存储的客户数据进行加密,得到客户数据密文,并将所述客户数据密文保存至存储服务器。

所述装置可以设置在虚拟密钥管理服务器上,其工作流程包括:

1.加密期间:获取模块从客户端获取待存储的客户数据和客户设置的用于加密所述客户数据的主密钥。密钥生成模块利用所述待存储的客户数据,生成与所述主密钥配合的配对密钥,并利用所述主密钥和所述配对密钥,生成用于加密的数据加密密钥。所述加解密模块利用所述主密钥,对所述配对密钥进行加密,得到所述配对密钥密文,并在本地保存所述配对密钥密文。所述加解密模块利用所述数据加密密钥,对所述待存储的客户数据进行加密,得到客户数据密文,并将所述客户数据密文保存至存储服务器。

2.解密期间:获取模块从客户端获取所述主密钥。所述密钥生成模块利用所述主密钥,对在前保存的所述配对密钥密文进行解密,得到所述配对密钥,并利用所述主密钥和所述配对密钥,生成所述数据加密密钥;所述加解密模块利用所述数据加密密钥,对从所述存储服务器获取的所述客户数据密文进行解密,得到所述客户数据,并发送给所述客户端。

本实施例提供一种云存储加密设备,所述设备包括:处理器,以及与所述处理器耦接的存储器;所述存储器上存储有可在所述处理器上运行的云存储加密程序,所述云存储加密程序被所述处理器执行时实现上述的云存储加密方法的步骤。

概括地说,由于数据中心安全的压力主要集中在两个方面:一是认证的安全问题,二是主密钥的安全问题,本发明实施例设计一套新的密钥管理方法分离密钥存储服务,该服务的核心是虚拟密钥管理服务,能够实现数据的真正意义上的私有化,保证云存储的数据安全。

图3是本发明实施例提供的虚拟密钥管理服务框架示意图,如图3所示,虚拟密钥管理服务器在云端服务器和存储服务器之间,以确保云端服务器和存储服务器间的每字节数据都被加密了,虚拟密钥管理服务使用虚拟专用数据库(Virtual Private Database,VPD)应用程序,VPD是使用加密算法解密任何磁盘或存储阵列的虚拟设备。在数据进行存储和读取操作时,VPD负责检索服务器配对密钥以及请求客户密钥,完成存储数据的加解密。数据加密流程如下:

1、客户向云服务器(即云端服务器)递交数据加解密申请;

2、云服务器验证客户的加密申请后,向虚拟密钥管理服务器发出数据加密指令;

3、虚拟密钥管理服务器在处理加密的过程中需要向客户请求主密钥;

4、客户通过对密钥请求的验证后返回主密钥,并将需加密的数据传输给虚拟密钥管理服务器;

5、虚拟密钥管理服务器依据主密钥产生数据加密密钥对客户数据进行加密并配对分配存储到对应的云存储服务器(即存储服务器)上,在此过程中主密钥和最终用于数据加密的密钥并不会以任何方式存放在服务器上,这是保证数据安全的关键;

6、数据加密存储完成后,云存储服务器向虚拟密钥服务器(即虚拟密钥管理服务器)返回验证信息;

7、虚拟密钥管理服务器向云服务器返回验证信息;

8、云服务器向客户返回验证信息。

在上述过程中,客户参与了每一次数据加解密的过程并起到了决定性作用,只有当客户持有主密钥来参与才能完成上述加解密过程,也就是说,当客户的数据完成加密存储之后,如需解密就必须提供主密钥,否则数据就不能被解密,于是客户成为唯一可以解密数据的人,实现了将数据存储到云端而又保证数据的完全私有化。

对于密钥的管理,本发明实施例设置两个密钥,一个交给客户保管,将它称为主密钥K,另一个交给虚拟密钥管理(Virtual Key Management,VKM)VKM服务,由VKM依据客户数据及生成规则(即密钥生成算法A)产生服务器配对密钥k,在数据进行加密之前,虚拟密钥管理服务请求客户主密钥,根据主密钥K与服务器配对密钥k依据本实施例所采用的安全算法B,产生新的数据加密密钥K’,对存储数据进行加密存储,数学表达式为E(K,k)=K'和EK'(M)=CM,即利用客户提供的主密钥K和虚拟密钥管理服务器根据待加密数据(即客户数据M、待存储数据M或明文M)及生成规则产生的服务器配对密钥k,生成数据加密密钥K’,然后利用数据加密密钥K’,对明文M进行加密,得到密文CM。

客户如果不能提供服务商提供的服务器配对密钥k,就无法解密数据,同样,如果服务商不提供客户持有的主密钥K,也无法解密数据,其密钥关系如图4所示。

除了将密钥分别交由客户和虚拟密钥管理服务保管外,为了解决服务器配对密钥k的安全问题,将服务器配对密钥通过客户的主密钥来加密,而主密钥只有客户本人保管,其数学式表达为EK(k)=Ck。

即使特权管理人员可以通过入侵服务器持有配对密钥k的存储密文Ck,但却不能读取密钥k,因为它已经被加密了,并且他所能入侵的程度仅限于此,因为遗留在服务器上的存储控制信息只有这么多,在不知道客户主密钥K以及配对密钥k’的情况下,特权管理人员无法获取最终的数据加密密钥K’,依据AES算法的安全性,入侵客户数据的企图无法得逞。服务商尚不能破解客户存储在云端的数据,那么黑客就更无能为力了,就算黑客侵入云端服务器,他所能窃取的也只是一堆毫无用处的密文,存储在云端的数据M就不会被泄漏,数据实现了真正意义上的私有化,达到了数据安全的条件,此外,通过使用客户的主密钥来加密服务器配对密钥,完全缓解了终端数据保护的压力,其工作原理如附图5所示。其中,图5所述算法A和算法B可以是MD5、RSA、DES、AES-256等现有成熟算法。

从上面的分析和对比中很容易发现分离密钥加密存储方案的巨大优势,在该套方案中,云端认证和客户数据加解密分离,在数据加密过程中将密钥实现了分离,这样主密钥成为了保证数据安全的唯一关键,而客户成了世界上唯一知晓主密钥的人,主密钥可以被存放在只有客户本人才知道的地方,实现了真正意义上的云端静态数据私有化。

以下实施例由客户端和服务器端组成,安装客户端后可以与服务器端进行交互,上传和下载数据,分别在服务器端物理主机上部署分离密钥存储服务,图6是另一提供的实现原理示意图,如图6所示,具体流程如下:

1)客户首次登录云服务器后上传加解密主密钥master s3key,记为K,虚拟密钥管理服务将其保存在服务器上,主密钥保存的形式可能是明文也可能是密文,其中加密函数为E。

2)数据加密时,虚拟密钥管理服务依据自身密钥生成算法产生加密配对密钥k,由云服务器对客户上传的需要加密存储数据M进行加密并存储到云存储服务器上。

3)虚拟密钥管理服务用客户主密钥依据加密算法对配对密钥k进行加密并存储到云服务器上。

4)数字解密时按照加密逆序过程进行。

尽管上文对本发明进行了详细说明,但是本发明不限于此,本技术领域技术人员可以根据本发明的原理进行各种修改。因此,凡按照本发明原理所作的修改,都应当理解为落入本发明的保护范围。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1