用于云环境的数据存储方法和装置、及下载方法和装置制造方法

文档序号:7801125阅读:301来源:国知局
用于云环境的数据存储方法和装置、及下载方法和装置制造方法
【专利摘要】本发明公开了一种用于云环境的数据存储方法和装置、及下载方法和装置,该数据存储方法包括:获取用户私钥,然后,通过获取的该用户私钥对加密后的数据密钥进行解密,最后,通过解密后的该数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘上。该数据的下载方法包括:获取用户私钥,然后,通过获取的该用户私钥对加密后的数据密钥进行解密,最后,通过解密后的该数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。本发明借助用户私钥来对存储的数据密钥进行加密/解密,从而对云系统的数据存储和下载均提供了有效保护,防止数据被非法获取或篡改。
【专利说明】用于云环境的数据存储方法和装置、及下载方法和装置
【技术领域】
[0001]本发明涉及计算机领域,具体地,涉及一种用于云环境的数据存储方法和装置、及下载方法和装置。
【背景技术】
[0002]云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术及分布式数据系统,并借助于应用软件将网络中大量不同类型的存储设备集合起来协同工作,从而构成一个对外提供数据存储和业务访问功能的强大系统。具体地,如果云计算系统运算和处理的核心是大量数据的存储和管理,那么相应地,云计算系统就会配置大量的存储设备以此来保证系统的正常运行,那么,云计算系统就会转变成为一个云存储系统,因此,云存储是一个以数据存储和管理为核心的云计算系统。
[0003]目前,比较流行的云存储系统是云盘系统,该云盘系统面对的用户普遍是互联网用户。通常,对于每个用户,会进行用户名和密码的校验,在校验通过的情况下允许用户登录并使用云盘系统。但是,对于每个用户而言,其在云盘系统中保存的数据是未加密的,因此,一旦用户的用户名和密码被窃取、或者云盘系统被恶意攻击,非法用户将能够获取用户的数据。
[0004]因此,目前的相关技术对于用户存储在云系统中的数据安全问题尚未提出有效的解决方案,所以,有必要研发出一种能用于云环境下并保证用户数据存储安全的技术方案。

【发明内容】

[0005]针对相关技术中不能保证云环境下用户数据安全存储的问题,本发明提出一种用于云环境的数据存储方法和装置、及下载方法和装置,能够有效地解决云环境下用户数据存储安全的问题,从而有效地避免在云环境下用户存储的数据可能被窃取的问题。
[0006]本发明的技术方案是这样实现的:
[0007]据本发明的一个方面,提供了一种用于云环境的数据存储方法。
[0008]该数据存储方法包括:
[0009]获取用户私钥;
[0010]通过获取的该用户私钥对加密后的数据密钥进行解密;
[0011]通过解密后的数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
[0012]其中,在获取该用户私钥之前,需要对用户身份进行认证,并且,在该用户通过身份认证的情况下,才会获取该用户对应的用户私钥。
[0013]其中,在获取上述用户私钥时,可以通过用户调用的webservice接口获取上述用户的用户私钥,并且,该webservice接口为跨平台接口。
[0014]此外,上述用户私钥预先保存在UKey中,并且从UKey中获取。
[0015]此外,在对需要存储的数据进行加密前,该数据存储方法进一步包括:[0016]通过获取需要存储的数据,并将获取的该数据保存在云系统的内存中;
[0017]并且,在进行加密时,在上述云系统的内存中对需要存储的数据进行加密。
[0018]据本发明的另一个方面,提供了一种用于云环境的数据下载方法。
[0019]该数据下载方法包括:
[0020]获取用户私钥;
[0021]通过获取的用户私钥对加密后的数据密钥进行解密;
[0022]并通过解密后的该数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
[0023]其中,在获取用户私钥之前,要对用户进行身份认证,并且,在该用户通过身份得到认证的情况下,才能获取该用户对应的用户私钥。
[0024]其中,在获取用户私钥时,可以通过用户调用的webservice接口获取用户的用户私钥。并且,该webservice接口为跨平台接口。
[0025]此外,上述用户私钥预先保存在UKey中,并且从UKey中获取。
[0026]另外,在对需要下载的数据进行解密前,可以将需要下载的上述数据,保存在云系统的内存中;并且,在进行解密时,在云系统的内存中对上述需要下载的数据进行解密。
[0027]根据本发明的再一个方面,提供了一种用于云环境的数据存储装置。
[0028]该数据存储装置包括:获取模块,用于获取用户私钥;解密模块,用于通过获取的该用户私钥对加密后的数据密钥进行解密;加密模块,用于通过解密后的该数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
[0029]并且,该数据存储装置进一步包括认证模块,用于在获取用户私钥之前,对用户进行身份认证,并且,上述获取模块用于在该用户通过身份认证的情况下,获取该用户对应的用户私钥。
[0030]此外,获取模块还用于通过用户调用的webservice接口获取上述用户的用户私钥,并且,该webservice接口为跨平台接口。
[0031]另外,上述用户私钥预先保存在UKey中,并且,上述获取模块用于从该UKey中获取上述用户私钥。
[0032]此外,该数据存储装置还包括接收模块,用于接收需要存储的数据,并将接收的数据保存在云系统的内存中;并且,上述加密模块还用于在该云系统的内存中对上述需要存储的数据进行加密。
[0033]根据本发明的又一个方面,提供了一种用于云环境的数据下载装置。
[0034]该数据下载装置包括:获取模块,用于获取用户私钥;第一解密模块,通过获取的该用户私钥对加密后的数据密钥进行解密;第二解密模块,通过解密后的该数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
[0035]并且,该数据下载装置进一步包括:认证模块,用于在获取该用户私钥之前,对用户进行身份认证,并且,上述获取模块用于在上述用户通过身份认证的情况下,获取该用户对应的用户私钥。
[0036]此外,该获取模块还用于通过用户调用的webservice接口获取上述用户的用户私钥,其中,该webservice接口为跨平台接口。
[0037]另外,上述用户私钥预先保存在UKey中,并且,上述获取模块用于从该UKey中获取上述用户私钥。
[0038]此外,该数据下载装置还包括数据处理模块,用于获取将需要下载的数据,并将需要下载的数据保存在云系统的内存中;并且,在进行解密时,上述第二解密模块用于在上述云系统的内存中对上述需要下载的数据进行解密。
[0039]本发明通过用户私钥(例如,可以将用户私钥保存在UKey中)来对存储的数据密钥进行加密,能够使得被存储的数据处于双重加密的状态,即使非法用户取得了用户保存的数据,也无法对数据进行解密并获取其中的内容,并且,如果非法用户不知道用户的私钥,也无法进行数据的存储,从而防止非法数据进入用户在云系统中的存储空间。
【专利附图】

【附图说明】
[0040]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0041]图1是根据本发明实施例的数据存储方法的流程图;
[0042]图2是根据本发明实施例的数据下载方法的流程图;
[0043]图3是根据本发明实施例的数据存储装置的框图;
[0044]图4是根据本发明实施例的数据下载装置的框图;
[0045]图5是根据本发明的实施例的数据存储系统的结构示意图;
[0046]图6是根据本发明的实施例的数据存储装置实现数据上传和存储的原理图。
【具体实施方式】
[0047]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0048]为了解决现有技术中存在的上述问题,本发明主要提出了以下改进:
[0049]1.服务跨平台调用;2.用户身份安全保证;3.数据加密存储;4.数据不落地加密存储。
[0050]下面将结合附图,详细描述本发明的具体实施例。
[0051]根据本发明的实施例,提供了一种用于云环境的数据存储方法。
[0052]如图1所示,根据本发明实施例的数据存储方法包括:
[0053]步骤S101,获取用户私钥;
[0054]步骤S103,通过获取的该用户私钥对加密后的数据密钥进行解密;
[0055]步骤S105,通过解密后的数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
[0056]在一个实施例中,在获取该用户私钥之前,身份认证服务器需要对用户身份进行认证,并且,在该用户通过身份认证的情况下,加密服务器才会获取该用户对应的用户私钥,其中,在获取上述用户私钥时,可以通过用户调用的webservice接口获取该上述用户的用户私钥,并且,该webservice接口为跨平台接口,其中,上述用户私钥预先保存在UKey中,并且webservice从UKey中获取。
[0057]在另一个实施例中,在对需要存储的数据进行加密前,本发明实施例的数据存储方法还包括:
[0058]通过加密服务器获取需要存储的数据,并将获取的该数据保存在云系统的内存中;
[0059]并且,在进行加密时,在上述云系统的内存中加密服务器对需要存储的数据进行加密。
[0060]据本发明的另一个实施例,提供了一种用于云环境的数据下载方法。
[0061]如图2所示,根据本发明实施例的数据下载方法包括:
[0062]步骤S201,获取用户私钥;
[0063]步骤S203,通过获取的用户私钥对加密后的数据密钥进行解密;
[0064]步骤S205,通过解密后的该数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
[0065]在一个实施例中,在获取用户私钥之前,身份认证服务器要对用户进行身份认证,并且,在该用户通过身份得到认证的情况下,加密服务器才能获取该用户对应的用户私钥,其中,在获取用户私钥时,可以通过用户调用的webservice接口获取该用户的用户私钥,并且,该webservice接口为跨平台接口,其中,上述用户私钥预先保存在UKey中,并且webservice 接口从 UKey 中获取。
[0066]在另一个实施例中,在对需要下载的数据进行解密前,加密服务器可以将需要下载的上述数据保存在云系统的内存中;并且,在进行解密时,在上述云系统的内存中对上述需要下载的数据进行解密。
[0067]通过以上的实施例可以看出,本发明为了解决云环境下数据安全存储问题,设计并实现了一套灵活、高效、可控、安全且面向服务为架构的数据存储解决方案,下面将对本发明的具体技术方案进行详细阐述。
[0068]本服务模型包括客户端和服务器端两部分,如图5所示,客户端主要为用户提供数据存储和身份认证的接口 ;服务器端包括身份认证服务器、数据加密服务器和数据存储服务器,其中,身份认证服务器通过从数据加密服务器获取的用户私钥对用户进行身份认证;数据加密服务器主要负责数据加密、向身份认证服务器传递用户私钥、向数据存储服务器传输加密文件;数据存储服务器主要负责数据的不落地存储。通过客户端和服务器端的协调工作,实现用户数据的上传和下载,具体地,如图6所示,客户端的用户通过调用服务器端发布的webservice服务(该webservice服务通过了 gsoap API(编译工具)的编译),在云环境下,服务器端根据客户端的用户的业务选择来对其进行业务处理:首先身份认证服务器对要用户身份进行安全认证,以此来保证用户身份的安全;在用户身份通过认证后,数据加密服务器对用户数据进行加密,然后加密服务器将加密后的数据传输给存储服务器,最后存储服务器完成用户数据的不落地存储。
[0069]由此可以看出,本发明的技术方案既保证了用户的身份安全,又保证了数据的安全存储,那么本发明的技术方案在实际应用中,可以参照以下步骤进行实现:(应当注意的是,本发明的数据加密存储方案可以选用不同的加密算法实现数据加密的目的,而身份认证则可以采用数字证书或公私钥认证的方式达到身份认证的结果。)
[0070]1.在云环境下用户存储数据的流程:
[0071](I)用户调用webservice上传数据接口 ;
[0072](2) webservice接口调用用户私钥传给加密服务器;
[0073](3)加密服务器通过用户私钥解密数据密钥并保存该数据密钥;
[0074](4)接口上传用户要存储的数据;
[0075](5)加密服务器使用解密后的数据密钥加密并上传上述需要存储的数据;
[0076](6)加密服务器将加密后的数据存储到物理磁盘阵列上面。
[0077]2.在云环境下用户下载数据的流程:
[0078](I)用户调用webservice下载数据接口;
[0079](2) webservice接口调用用户私钥传给加密服务器;
[0080](3)加密服务器通过用户私钥解密数据密钥并保存该数据密钥;
[0081](4)加密服务器读取云环境下用户磁盘中的数据;
[0082](5)加密服务器使用解密后的数据密钥将读取出来的磁盘数据进行解密;
[0083](6)加密服务器将解密出的数据传输给用户。
[0084]根据本发明的另一个实施例,提供了一种用于云环境的数据存储装置。
[0085]在一个实施例中,根据实施例的数据存储装置包括:获取模块31,用于获取用户私钥;解密模块32,用于通过获取的该用户私钥对加密后的数据密钥进行解密;加密模块33,用于通过解密后的该数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
[0086]并且,在一个实施例中,根据实施例的数据存储装置进一步包括认证模块(未示出),用于在获取用户私钥之前,对用户进行身份认证,并且,上述获取模块在该用户通过身份认证的情况下,获取该用户对应的用户私钥。
[0087]此外,在上述实施例中获取模块31还用于通过用户调用的webservice接口获取上述用户的用户私钥,其中,该webservice接口为跨平台接口。
[0088]另外,在一个实施例中,该用户私钥预先保存在UKey中,并且,上述获取模块31还用于从上述UKey中获取该用户私钥。
[0089]此外,在另一个实施例中,根据本发明的数据存储装置进一步包括:
[0090]接收模块(未示出),用于接收需要存储的数据,并将接收的上述数据保存在云系统的内存中;并且,上述加密模块33还用于在上述云系统的内存中对上述需要存储的数据进行加密。
[0091 ] 根据本发明的又一个实施例,提供了一种用于云环境的数据下载装置。
[0092]在一个实施例中,根据本发明实施例的数据下载装置包括:获取模块41,用于获取用户私钥;第一解密模块42,通过获取的该用户私钥对加密后的数据密钥进行解密;第二解密模块43,通过解密后的该数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
[0093]在另一个实施例中,根据本发明实施例的数据下载装置进一步包括:认证模块(未示出),用于在获取该用户私钥之前,对用户进行身份认证,并且,上述获取模块41用于在上述用户通过身份认证的情况下,获取该用户对应的用户私钥。[0094]此外,获取模块41还用于通过用户调用的webservice接口获取上述用户的用户私钥,其中,该webservice接口为跨平台接口。
[0095]另外,上述用户私钥预先保存在UKey中,并且,该获取模块41还用于从上述UKey中获取上述用户私钥。
[0096]此外,在另一个实施例中,根据本发明实施例的数据下载装置进一步包括:
[0097]数据处理模块(未示出),用于接收需要下载的数据,并将下载的上述数据保存在云系统的内存中;并且,在进行解密时,该第二解密模块43还用于在上述云系统的内存中对上述需要下载的数据进行解密。
[0098]综上所述,借助于本发明的上述技术方案,本发明通过使用webservice发布数据存储服务,实现了用户对数据存取的跨平台(例如windows、linux、java平台等)调用;另夕卜,通过用户私钥(例如,可以将用户私钥保存在UKey中)来对存储的数据密钥进行加密,能够使得被存储的数据处于双重加密的状态,即使非法用户取得了用户保存的数据,也无法对数据进行解密并获取其中的内容,并且,如果非法用户不知道用户的私钥,也无法进行数据的存储,从而防止非法数据进入用户在云系统中的存储空间;另外,本发明能够在云系统的内存中对数据进行加密,加密后再存储至云系统的物理磁盘,从而实现了数据的不落地加密存储;此外,本发明的方案还能够预先对用户进行认证,这样,即使非法用户窃取了用户存储用户私钥的UKey,但是因为不知道用户的用户名和密码,也无法对数据进行存取,从而进一步提高了用户数据的安全性。
[0099]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种用于云环境的数据存储方法,其特征在于,包括: 获取用户私钥; 通过获取的所述用户私钥对加密后的数据密钥进行解密; 通过解密后的所述数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
2.根据权利要求1所述的数据存储方法,其特征在于,在获取所述用户私钥之前,对用户进行身份认证,并且,在所述用户通过身份认证的情况下,获取所述用户对应的用户私钥。
3.根据权利要求1所述的数据存储方法,其特征在于,获取用户私钥包括: 通过用户调用的webservice接口获取所述用户的用户私钥。
4.根据权利要求3所述的数据存储方法,其特征在于,所述webservice接口为跨平台接口。
5.根据权利要求1所述的数据存储方法,其特征在于,所述用户私钥预先保存在UKey中,并且从所述UKey中获取。
6.根据权利要求1所述的存储方法,其特征在于,在对需要存储的数据进行加密前,所述数据存储方法进一步包括: 获取需要存储的数据,并将获取的所述数据保存在云系统的内存中; 并且,在进行加密时,在所述云系统的内存中对所述需要存储的数据进行加密。
7.一种用于云环境的数据下载方法,其特征在于,包括: 获取用户私钥; 通过获取的所述用户私钥对加密后的数据密钥进行解密; 通过解密后的所述数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
8.根据权利要求7所述的数据下载方法,其特征在于,在获取所述用户私钥之前,对用户进行身份认证,并且,在所述用户通过身份认证的情况下,获取所述用户对应的用户私钥。
9.根据权利要求7所述的数据下载方法,其特征在于,获取用户私钥包括: 通过用户调用的webservice接口获取所述用户的用户私钥。
10.根据权利要求9所述的数据下载方法,其特征在于,所述webservice接口为跨平台接口。
11.根据权利要求7所述的数据下载方法,其特征在于,所述用户私钥预先保存在UKey中,并且从所述UKey中获取。
12.根据权利要求7所述的数据下载方法,其特征在于,在对需要下载的数据进行解密前,所述数据下载方法进一步包括: 将需要下载的所述数据保存在云系统的内存中; 并且,在进行解密时,在所述云系统的内存中对所述需要下载的数据进行解密。
13.一种用于云环境的数据存储装置,其特征在于,包括: 获取模块,用于获取用户私钥; 解密模块,用于通过获取的所述用 户私钥对加密后的数据密钥进行解密;加密模块,用于通过解密后的所述数据密钥对需要存储的数据进行加密,并将加密后的数据存储至云系统中的物理磁盘。
14.根据权利要求13所述的数据存储装置,其特征在于,进一步包括: 认证模块,用于在获取所述用户私钥之前,对用户进行身份认证,并且,所述获取模块用于在所述用户通过身份认证的情况下,获取所述用户对应的用户私钥。
15.根据权利要求13所述的数据存储装置,其特征在于,所述获取模块用于通过用户调用的webservice接口获取所述用户的用户私钥。
16.根据权利要求15所述的数据存储装置,其特征在于,所述webservice接口为跨平台接口。
17.根据权利要求13所述的数据存储装置,其特征在于,所述用户私钥预先保存在UKey中,并且,所述获取模块用于从所述UKey中获取所述用户私钥。
18.根据权利要求13所述的存储装置,其特征在于,进一步包括: 接收模块,用于接收需要存储的数据,并将接收的所述数据保存在云系统的内存中; 并且,所述加密模块用于在所述云系统的内存中对所述需要存储的数据进行加密。
19.一种用于云环境的数据下载装置,其特征在于,包括: 获取模块,用于获取用户私钥; 第一解密模块,通过获取的所述用户私钥对加密后的数据密钥进行解密; 第二解密模块,通过解密后的所述数据密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。
20.根据权利要求19所述的数据下载装置,其特征在于,进一步包括: 认证模块,用于在获取所述用户私钥之前,对用户进行身份认证,并且,所述获取模块用于在所述用户通过身份认证的情况下,获取所述用户对应的用户私钥。
21.根据权利要求19所述的数据下载装置,其特征在于,所述获取模块还用于通过用户调用的webservice接口获取所述用户的用户私钥。
22.根据权利要求21所述的数据下载装置,其特征在于,所述webservice接口为跨平台接口。
23.根据权利要求19所述的数据下载装置,其特征在于,所述用户私钥预先保存在UKey中,并且,所述获取模块用于从所述UKey中获取上述用户私钥。
24.根据权利要求19所述的数据下载装置,其特征在于,进一步包括: 数据处理模块,用于获取将需要下载的数据,并将需要下载的数据保存在云系统的内存中; 并且,在进行解密时,所述第二解密模块用于在所述云系统的内存中对所述需要下载的数据进行解密。
【文档编号】H04L29/08GK103905557SQ201410143979
【公开日】2014年7月2日 申请日期:2014年4月9日 优先权日:2014年4月9日
【发明者】王健杰, 王军林, 唐明, 徐博, 成书晟 申请人:曙光云计算技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1