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

文档序号:7801016阅读:207来源:国知局
用于云环境的数据存储方法和装置、及下载方法和装置制造方法
【专利摘要】本发明公开了一种用于云环境的数据存储方法和装置、及下载方法和装置,该数据存储方法包括:服务器获取用户密钥和需要存储的数据,然后通过获取的上述用户密钥对获取的上述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。该数据下载方法包括:服务器获取用户密钥和需要下载的数据,然后通过获取的上述用户密钥对需要下载的数据进行解密,并将解密后的数据传输给用户。本发明通过在服务器侧对数据进行加密/解密,实现了云环境下数据的加密存储/下载,不仅保证了用户数据的安全性,同时通过数据的加密/解密过程在服务器侧执行,避免了占用用户过多的时间和存储空间。
【专利说明】用于云环境的数据存储方法和装置、及下载方法和装置
【技术领域】
[0001]本发明涉及计算机领域,具体来说,涉及一种用于云环境的数据存储方法和装置、及下载方法和装置。
【背景技术】
[0002]云存储是在云计算(cloud computing)概念上延伸和发展出来的一个新的概念,是指通过集群应用、网格技术及分布式数据系统,并借助于应用软件将网络中大量不同类型的存储设备集合起来协同工作,从而构成一个对外提供数据存储和业务访问功能的强大系统。具体地,如果云计算系统运算和处理的核心是大量数据的存储和管理,那么相应地,云计算系统就会配置大量的存储设备以此来保证系统的正常运行,那么,云计算系统就会转变成为一个云存储系统,因此,云存储是一个以数据存储和管理为核心的云计算系统。
[0003]目前,比较流行的云存储系统是云盘系统(例如百度云盘、360云盘等),该云盘系统面对的用户普遍是互联网用户。通常,对于每个用户,会进行用户名和密码的校验,在校验通过的情况下允许用户登录并使用云盘系统。但是,对于每个用户而言,其在云盘系统中保存的数据是未加密的,因此,保存在云端的数据可能被非法用户窃取或篡改。而为了提高数据的安全性,用户可以对保存在云端的数据进行加密。但是,在进行加密时,用户只能在本地客户端对需要存储的文件进行加密,然后再将加密后的数据上传到云系统的服务器上,如果需要加密的数据量较大,加密的过程就会占用很长时间,造成用户的长时间等待。另外,用户在本地客户端对数据进行加密时,必须预留足够的存储空间以存储加密后的数据,如果用户本地客户端的存储资源不足,将会导致无法加密过程无法进行。类似地,在用户从云端下载数据时,如果下载的数据是经过加密的,则用户需要在本地客户端对数据进行解密,同样会占用用户的时间和存储空间。
[0004]因此,在相关技术中,用户不论是在云端存储加密后的数据还是从云端下载加密后的数据,加密/解密过程都会占用用户的时间和存储空间,针对该问题,目前尚未提出有效的解决方案。

【发明内容】

[0005]针对相关技术中云端数据的加密存储和解密下载会占用用户的时间和存储空间的问题,本发明提出一种用于云环境的数据存储方法和装置、及下载方法和装置,能够保证在云端存储的数据安全性的同时,避免加密过程占用用户的时间和存储空间。
[0006]本发明的技术方案是这样实现的:
[0007]根据本发明的一个方面,提供了一种用于云环境的数据存储方法。
[0008]该数据存储方法包括:
[0009]服务器获取用户密钥,并且,上述服务器获取需要存储的数据;
[0010]然后上述服务器通过获取的上述用户密钥对获取的上述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。[0011]其中,上述用户密钥与用户的身份信息相对应,并且,在获取上述用户密钥之前,该数据存储方法进一步包括:
[0012]对上述用户进行身份认证;
[0013]并且,在上述用户通过身份认证的情况下,上述服务器获取与上述用户的身份信息所对应的用户密钥。
[0014]此外,在上述用户的身份信息出现变化的情况时,该数据存储方法进一步包括对变化后的用户身份信息重新分配对应的用户密钥。
[0015]此外,上述服务器获取需要存储的数据包括:
[0016]上述服务器获取被分割为多个分片的数据;
[0017]并且,对获取的上述需要存储的数据进行加密包括:
[0018]该服务器通过上述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,从而得到加密后的数据。
[0019]此外,在对需要存储的数据进行加密前,该数据存储方法进一步包括:
[0020]将获取的上述需要存储的数据保存在上述服务器的缓存中;
[0021]并且,在进行加密时,该服务器对上述缓存中保存的该需要存储的数据进行加密。
[0022]此外,上述服务器获取的上述需要存储的数据为通过数据传输加密工具进行预加密后的数据。
[0023]根据本发明的另一方面,提供了一种用于云环境的数据下载方法。
[0024]该数据下载方法包括:
[0025]服务器获取用户密钥,并且,上述服务器获取需要下载的数据;
[0026]然后上述服务器通过获取的上述用户密钥对获取的上述需要下载的数据进行解密,并将解密后的数据传输给用户。
[0027]其中,上述用户密钥与用户的身份信息相对应,并且,在获取上述用户密钥之前,该数据下载方法进一步包括:
[0028]对上述用户进行身份认证;
[0029]并且,在上述用户通过身份认证的情况下,上述服务器获取与上述用户的身份信息所对应的用户密钥。
[0030]此外,在上述用户的身份信息出现变化的情况时,该数据下载方法进一步包括对变化后的用户身份信息重新分配对应的用户密钥。
[0031]此外,上述服务器获取需要下载的数据包括:
[0032]上述服务器获取被分割为多个分片的数据;
[0033]并且,对获取的上述需要下载的数据进行解密包括:
[0034]该服务器通过上述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,从而得到解密后的数据。
[0035]此外,在对需要下载的数据进行解密前,该数据下载方法进一步包括:
[0036]将获取的上述需要下载的数据保存在上述服务器的缓存中;
[0037]并且,在进行解密时,该服务器对上述缓存中保存的该需要下载的数据进行解密。
[0038]此外,上述服务器获取的上述需要下载的数据为通过数据传输解密工具进行预加密后并被上述用户密钥再次加密的数据。[0039]根据本发明的再一个方面,提供了一种用于云环境的数据存储装置。
[0040]该数据存储装置包括:获取模块,用于获取用户密钥;接收模块,用于接收需要存储的数据;加密模块,用于通过获取的上述用户密钥对获取的上述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。
[0041]并且,上述用户密钥与用户的身份信息对应,该数据存储装置进一步包括:认证模块,用于在获取上述用户密钥之前,对上述用户进行身份认证;并且,上述获取模块还用于在该用户通过身份认证的情况下,获取与上述身份信息所对应的用户密钥。
[0042]此外,该数据存储装置进一步包括:更新模块,用于在上述用户身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
[0043]其中,上述接收模块还用于接收被分割为多个分片的数据;上述加密模块还用于通过上述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,得到加密后的数据。
[0044]此外,上述接收模块还用于在对需要存储的数据进行加密前,将接收的上述需要存储的数据保存在上述服务器的缓存中;并且,上述加密模块还用于对上述缓存中保存的上述需要存储的数据进行加密。
[0045]另外,上述接收模块接收的上述需要存储的数据为通过数据传输加密工具进行预加密后的数据。
[0046]根据本发明的又一个方面,提供了一种用于云环境的数据下载装置。
[0047]该数据下载装置包括:获取模块,用于获取用户密钥;数据处理模块,用于获取需要下载的数据;解密模块,用于通过获取的上述用户密钥对接收的上述需要下载的数据进行解密,并将解密后的数据传输给用户。
[0048]此外,上述用户密钥与用户的身份信息对应,并且,该数据下载装置进一步包括:认证模块,用于对上述用户进行身份认证;并且,上述获取模块还用于在上述用户通过身份认证的情况下,获取与上述用户的身份信息所对应的用户密钥。
[0049]并且,该数据下载装置进一步包括:更新模块,用于在上述用户的身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
[0050]其中,上述数据处理模块还用于获取被分割成多个分片的数据;并且,上述解密模块还用于通过上述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,得到解密后的数据。
[0051]此外,上述数据处理模块还用于获取需要下载的数据,并将获取的需要下载的数据保存在上述服务器的缓存中;并且,上述解密模块还用于对上述缓存中保存的上述需要下载的数据进行解密。
[0052]另外,上述数据处理模块获取的上述需要下载的数据为通过数据传输加密工具进行预加密后并被上述用户密钥再次加密的数据。
[0053]通过本发明的技术方案,能够在服务器侧实现数据的加密/解密,进而实现了数据的加密存储/下载,不仅保证了用户数据的安全性,同时通过数据的加密/解密过程在服务器侧执行,避免了占用用户过多的时间和存储空间。
【专利附图】

【附图说明】[0054]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0055]图1是根据本发明实施例的数据存储方法的流程图;
[0056]图2是根据本发明实施例的用户身份同步的流程图;
[0057]图3是根据本发明实施例的用户身份更改的流程图;
[0058]图4是根据本发明的一具体实施例的数据存储方法的流程图;
[0059]图5是根据本发明实施例的数据下载方法的流程图;
[0060]图6是根据本发明的一具体实施例的数据下载方法的流程图;
[0061]图7是能够实现根据本发明实施例的数据存储和下载方案的系统结构图;
[0062]图8是根据本发明实施例的数据存储装置的框图;
[0063]图9是根据本发明实施例的数据下载装置的框图。
【具体实施方式】
[0064]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0065]根据本发明的实施例,提供了一种用于云环境的数据存储方法。
[0066]如图1所示,根据本发明实施例的数据存储方法包括:
[0067]步骤S101,服务器获取用户密钥,并且,该服务器还获取需要存储的数据;
[0068]步骤S103,上述服务器通过获取的该用户密钥对获取的该需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。
[0069]应当注意的是,在步骤SlOl中,上述服务器可以先获取用户密钥,之后获取需要存储的数据,也可以先获取需要存储的数据,之后获取用户密钥,还可以同时获取需要存储的数据和用户密钥,而具体的步骤顺序,则可以根据实际情况或实际需要进行确定。
[0070]在一个实施例中,用户密钥与用户的身份信息相对应,并且,服务器在获取该用户密钥之前,需要对上述用户进行身份认证,并且,在该用户通过身份认证的情况下,上述服务器才能获取与上述用户身份信息所对应的用户密钥。
[0071]在上述实施例中,上述服务器在获取用户密钥之前,当客户端创建(注册)一个用户(账户)的时候,服务器端不仅需要保存用户的用户名和密码(用户身份信息),还需要进一步分配并保存与该用户相对应的用户密钥。
[0072]在实际应用中,可以由不同的服务器来实现用户的注册和用户密钥的分配与保存。例如,可以由客户端服务器来保存用户的身份信息,由缓存加密服务器来为用户分配并保存密钥。如图2所示,创建用户以及分配保存用户密钥的具体过程如下:
[0073]首先,创建用户;
[0074]用户提交用户名和密码;
[0075]之后,客户端服务器保存用户名和密码;[0076]将上述用户名和密码发送到缓存加密服务器;
[0077]缓存加密服务器为用户分配密钥。
[0078]另外,在一个优选实施例中,可以将用户的身份信息以及用户密钥都同步至缓存加密服务器,通过这种用户身份的同步,可以避免服务器每次对用户需要存储数据进行加密时,都需要去其他的服务器上获取该用户的对应用户密钥,从而有效地提高了数据的存储速度,进一步避免了用户需要长时间等待的问题。
[0079]其中,在上述实施例中,如果用户的身份信息出现了变化(例如,用户名或密码更改),则上述缓存加密服务器需要对变化后的用户身份信息重新分配对应的用户密钥,通过对用户密钥的实时更新可以提高数据存储的安全性。其中,如果用户身份信息出现变化,即,如图3所示,用户被删除或更改,则需要同步删除或更改缓存加密服务器中保存的用户密钥,如果缓存加密服务器中进一步保存了用户身份信息,则对应的用户身份信息同样需要删除或更改,保证缓存加密服务器上保存的用户身份信息与当前的用户身份信息同步。
[0080]应当注意的是,在上述实施例中,保存用户名和密码的服务器与分配密钥的服务器由不同的服务器来执行,实际上,上述过程也可以由同一服务器来完成,或由更多的服务器协作完成,具体可以根据实际情况或实际需要来确定每个服务器侧的处理过程需要由哪个服务器来完成,例如,上述缓存加密服务器还能够在上传(存储)数据时完成对数据的加密;对于下载数据时的数据解密,同样可以由缓存加密服务器来完成,也可以由其他为用户解密的服务器来完成;而客户端服务器还可以用于根据用户名和密码对用户身份进行认证,本发明并不限于这里所列举的服务器的具体执行方式。
[0081]在另一个实施例中,为了达到服务器加密和用户数据传输的同步,当上述服务器在获取需要存储的数据时,该服务器可以获取被分割成为多个分片的数据;并且,在对获取的上述需要存储的数据进行加密时,该服务器可以借助上述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,从而得到加密后的数据。
[0082]具体地,假设客户端需要上传一个大文件,考虑到服务器性能,客户端在传输文件的时候可以把文件切割成若干个数据片来传输,这样当一个数据片到达加密服务器的时候,加密服务器就可以对该数据片进行加密,随着数据片的不断传输和加密,当全部数据片都到达并被加密完成后,加密服务器再将加密完成的所有数据片进行组装,最后形成一个完整的加密文件,由此也可以提高在云环境下的大文件加密存储速度。
[0083]在实际应用中,用户存储(上传)数据的具体过程如图4所示:
[0084]首先用户上传文件;
[0085]之后,客户端服务器读取文件并输入字节流;
[0086]并将字节流分片处理并将分片的数据传输给缓存加密服务器;
[0087]然后,缓存加密服务器获取用户密钥;
[0088]之后,通过获取的用户密钥去加密分片的数据直到加密到文件末尾;
[0089]最后将加密完的分片数据进行重组并保存到物理磁盘。
[0090]在另一个实施例中,在对需要存储的数据进行加密前,可以将获取的需要存储的数据保存在服务器的缓存中;并且,在进行加密时,该服务器对缓存中保存的需要存储的数据再进行加密,由于需要存储的数据在缓存中进行了加密,因此,避免了数据在加密前被保存在硬盘中从而被盗取或篡改的可能性,进一步提高了数据存储的安全性。[0091]此外,在一个实施例中,服务器获取的需要存储的数据为通过数据传输加密工具(例如ssl、vpn、https等)进行预加密后的数据,这样就保证了用户数据的传输安全。
[0092]根据本发明的实施例,还提供了一种用于云环境的数据下载方法。
[0093]如图5所示,根据本发明实施例的数据下载方法包括:
[0094]步骤S501,服务器获取用户密钥,并且,该服务器还获取需要下载的数据;
[0095]步骤S503,上述服务器通过获取的该用户密钥对获取的该需要下载的数据进行解密,并将解密后的数据传输给用户。
[0096]应当注意的是,在步骤S501中上述服务器可以先获取用户密钥,之后获取需要下载的数据,也可以先获取需要下载的数据,之后在获取用户密钥,还可以同时获取需要存储的数据和用户密钥,而具体的步骤顺序,则可以根据实际情况或实际需要进行确定。
[0097]在一个实施例中,用户密钥与用户的身份信息相对应,并且,服务器在获取该用户密钥之前,需要对上述用户进行身份认证,并且,在该用户通过身份认证的情况下,上述服务器才能获取与上述用户身份信息所对应的用户密钥。
[0098]在上述实施例中,上述服务器在获取用户密钥之前,当客户端创建(注册)一个用户(账户)的时候,服务器端不仅需要保存用户的用户名和密钥(用户身份信息)还需要进一步分配并保存与该用户相对应的用户密钥。
[0099]在实际应用中,可以由不同的服务器来实现用户的注册和用户密钥的分配与保存。例如,可以由客户端服务器来保存用户的身份信息,由缓存加密服务器来为用户分配并保存密钥,创建用户以及分配保存用户密钥的具体过程可以参照图2所示,这里不再重复。
[0100]另外,在一个优选实施例中,可以将用户的身份信息以及用户密钥都同步至缓存加密服务器,通过这种用户身份的同步,可以避免服务器每次对用户需要下载的数据进行解密时,都需要去其他的服务器上获取该用户的对应用户密钥,从而有效地提高了数据的下载速度,进一步避免了用户需要长时间等待的问题。
[0101]其中,在上述实施例中,如果用户的身份信息出现了变化(例如,用户名或密码更改),则上述缓存加密服务器需要对变化后的用户身份信息重新分配对应的用户密钥,通过对用户密钥的实时更新可以提高数据下载的安全性。其中,如果用户身份信息出现变化,则需要同步删除或更改缓存加密服务器中保存的用户密钥,如果缓存加密服务器中进一步保存了用户的身份信息,则对应的用户身份信息同样需要删除或更改,保证缓存加密服务器上保存的用户身份信息与当前的用户身份信息同步。
[0102]应当注意的是,在本发明中,保存用户名和密码的服务器与分配密钥的服务器由不同的服务器来执行,实际上,上述过程也可以由同一服务器来完成,或由不同的服务器协作完成,具体可以根据实际情况或实际需要来确定每个服务器侧的处理过程需要由哪个服务器来完成,例如,上述缓存加密服务器还能够完成对数据的加密;对于下载数据时的数据解密,同样可以由缓存加密服务器来完成,也可以由其他为用户解密的服务器来完成;而客户端服务器还可以用于根据用户名和密码对用户身份进行认证,本发明并不限定这里所列举的服务器的具体执行方式。
[0103]在另一个实施例中,为了达到服务器解密和用户数据下载的同步,当上述服务器在获取需要下载的数据时,该服务器可以获取被分割成为多个分片的数据;并且,在对获取的上述需要下载的数据进行解密时,该服务器可以借助上述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,从而得到解密后的数据。
[0104]具体地,假设客户端需要下载一个大文件,考虑到服务器性能,客户端在传输文件的时候可以把文件切割成若干个数据片来传输,这样当一个数据片到达解密服务器的时候,解密服务器就可以对该数据片进行解密,随着数据片的不断传输和解密,当全部数据片都到达并被解密完成后,解密服务器再将解密完成的所有数据片进行组装,最后形成一个完整的解密文件,由此也可以提高在云环境下的大文件解密下载速度。
[0105]在实际应用中,用户下载数据的具体过程如图6所示:
[0106]首先,用户请求下载文件;
[0107]之后,数据存储服务器读取磁盘上用户的文件字节流;
[0108]并将字节流分片处理并将分片的数据传输给缓存加密服务器;
[0109]然后,缓存加密服务器获取用户密钥;
[0110]之后通过获取的用户密钥去解密分片的数据直到解密到文件末尾;
[0111]最后将解密完的分片数据进行重组并传输给用户。
[0112]应当注意的是,在上述实施例中,用于存储需要下载的数据的服务器与对加密文件进行解密的服务器由不同的服务器来执行,实际上,上述过程也可以由同一服务器来完成,或由更多的服务器协作完成,具体可以根据实际情况或实际需要来确定每个服务器侧的处理过程需要由哪个服务器来完成,例如,上述缓存加密服务器还能够在上传数据时完成对数据的加密;而对于下载数据时,同样也可以由其他服务器来获取用户密钥,之后将用户密钥提供给缓存加密服务器,本发明并不限于这里所列举的服务器的具体执行方式。
[0113]在另一个实施例中,在对需要下载的数据进行解密前,可以将获取的需要下载的数据保存在服务器的缓存中;并且,在进行解密时,该服务器对缓存中保存的需要下载的数据再进行解密。由此,可以避免在硬盘中对数据解密而造成的数据被盗取或篡改的可能性,从而进一步提高了数据下载的安全性。
[0114]此外,在一个实施例中,服务器获取的需要下载的数据为通过数据加密工具(例如ssl、vpn、https等)进行预加密后并被所述用户密钥再次加密的数据,由此可见,本发明实现了对用户数据存储的双重加密,保证了用户数据的安全存储。
[0115]为了更好地理解本发明的上述实施例,下面通过本发明的网络拓扑图,来对本发明的技术方案进行详细介绍。
[0116]如图7所示,客户端用户可以上传或下载自己的数据,就上传而言,当用户数据在网络传输时,本发明借助vpn (虚拟专用网络)来对该数据进行加密传输,进而保证了用户数据的传输安全性;当用户数据到达云环境下的缓存加密服务器时,该服务器借助该用户的用户密钥对该用户数据进行加密,进而实现了用户数据的缓存加密,其中,对数据加密的方式可以采用普通的3DES或者AES算法,也可以采用加密文件系统等加密方式;通过缓存加密服务器加密完成的加密文件将存储在大型存储服务器中的物理磁盘上进行保存,从而实现了服务器端的加密存储。
[0117]根据本发明的一个实施例,提供了一种用于云环境的数据存储装置。
[0118]如图8所示,根据本发明实施例的数据存储装置包括:获取模块81,用于获取用户密钥;接收模块82,用于接收需要存储的数据;加密模块83,用于通过获取的上述用户密钥对获取的上述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。[0119]在一个实施例中,用户密钥与用户的身份信息相对应,并且,该数据存储装置进一步包括:认证模块(未示出),用于在获取上述用户密钥之前,对上述用户进行身份认证;并且,上述获取模块81还用于在上述用户通过身份认证的情况下,获取与上述身份信息所对应的用户密钥。
[0120]在另一个实施例中,该数据存储装置进一步包括:更新模块(未示出),用于在上述用户身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
[0121]此外,上述实施例中的接收模块82还用于接收被分割为多个分片的数据;上述加密模块83还用于通过上述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,得到加密后的数据。
[0122]另外,上述接收模块82还用于在对需要存储的数据进行加密前,将接收的上述需要存储的数据保存在上述服务器的缓存中;并且,上述加密模块83还用于对上述缓存中保存的上述需要存储的数据进行加密。
[0123]此外,上述接收模块82接收的上述需要存储的数据为通过数据传输加密工具进行预加密后的数据。
[0124]根据本发明的另一个实施例,提供了一种用于云环境的数据下载装置。
[0125]如图9所示,根据本发明实施例的数据下载装置包括:获取模块91,用于获取用户密钥;数据处理模块92,用于获取需要下载的数据;解密模块93,用于通过获取的上述用户密钥对接收的上述需要下载的数据进行解密,并将解密后的数据传输给用户。
[0126]在一个实施例中,用户密钥与用户的身份信息相对应,并且,该数据下载装置进一步包括:认证模块(未示出),用于在获取上述用户密钥之前,对上述用户进行身份认证;并且,上述获取模块91还用于在上述用户通过身份认证的情况下,获取与上述身份信息所对应的用户密钥。
[0127]在另一个实施例中,该数据下载装置进一步包括:更新模块(未示出),用于在上述用户身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
[0128]此外,上述实施例中的数据处理模块92还用于获取被分割为多个分片的数据;上述解密模块93还用于通过上述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,得到解密后的数据。
[0129]另外,上述数据处理模块92还用于获取需要下载的数据,并将获取的需要下载的数据保存在上述服务器的缓存中;并且,上述解密模块93还用于对上述缓存中保存的上述需要下载的数据进行解密。
[0130]此外,上述数据处理模块92获取的上述需要下载的数据为通过数据传输加密工具进行预加密后并被上述用户密钥再次加密的数据。
[0131]综上所述,借助于本发明的上述技术方案,能够在服务器侧实现数据的加密/解密,进而实现了数据的加密存储/下载,不仅保证了数据的安全性,同时使数据的加密/解密过程在服务器侧执行(例如,在服务器的缓存中进行加密/解密),避免占用用户客户端的存储空间和时间;并且,通过让服务器将加密后的数据直接进行保存,能够避免用户在数据加密过程中的长时间等待,用户只要将数据上传至云端即可;而通过服务器对需要下载的数据进行解密,能够借助于服务器较高的处理性能,提高解密的速度,缩短等待时间,提高用户体验。另外,本发明可以借助于数据传输加密工具(例如ssl、vpn、https等),从而保证了数据在传输过程中的安全性;另外,本发明通过分片数据加密/解密并将加密/解密后的每个分片数据进行重组的方式,提高了云环境下数据加密/解密的效率。
[0132]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种用于云环境的数据存储方法,其特征在于,包括: 服务器获取用户密钥,并且,所述服务器获取需要存储的数据; 所述服务器通过获取的所述用户密钥对获取的所述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。
2.根据权利要求1所述的数据存储方法,其特征在于,所述用户密钥与用户的身份信息对应,并且,在获取所述用户密钥之前,所述数据存储方法进一步包括: 对所述用户进行身份认证; 并且,在所述用户通过身份认证的情况下,所述服务器获取与所述用户的身份信息所对应的用户密钥。
3.根据权利要求2所述的数据存储方法,其特征在于,在所述用户的身份信息出现变化的情况下,所述数据存储方法进一步包括: 对变化后的用户身份信 息重新分配对应的用户密钥。
4.根据权利要求1所述的数据存储方法,其特征在于,所述服务器获取所述需要存储的数据包括: 所述服务器获取被分割为多个分片的数据; 并且,对获取的所述需要存储的数据进行加密包括:所述服务器通过所述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,得到加密后的数据。
5.根据权利要求1所述的数据存储方法,其特征在于,在对需要存储的数据进行加密前,所述数据存储方法进一步包括: 将获取的所述需要存储的数据保存在所述服务器的缓存中; 并且,在进行加密时,所述服务器对所述缓存中保存的所述需要存储的数据进行加密。
6.根据权利要求1所述的数据存储方法,其特征在于,所述服务器获取的所述需要存储的数据为通过数据传输加密工具进行预加密后的数据。
7.一种用于云环境的数据下载方法,其特征在于,包括: 服务器获取用户密钥,并且,所述服务器获取需要下载的数据; 所述服务器通过获取的所述用户密钥对获取的所述需要下载的数据进行解密,并将解密后的数据传输给用户。
8.根据权利要求7所述的数据下载方法,其特征在于,所述用户密钥与用户的身份信息对应,并且,在获取所述用户密钥之前,所述数据下载方法进一步包括: 对所述用户进行身份认证; 并且,在所述用户通过身份认证的情况下,所述服务器获取与所述用户的身份信息所对应的用户密钥。
9.根据权利要求8所述的数据下载方法,其特征在于,在所述用户的身份信息出现变化的情况下,所述数据下载方法进一步包括: 对变化后的用户身份信息重新分配对应的用户密钥。
10.根据权利要求7所述的数据下载方法,其特征在于,所述服务器获取所述需要下载的数据包括: 所述服务器获取被分割成多个分片的数据;并且,对获取的所述需要下载的数据进行解密包括: 所述服务器通过所述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,得到解密后的数据。
11.根据权利要求7所述的数据下载方法,其特征在于,在对需要下载的数据进行解密前,所述数据下载方法进一步包括: 将获取的需要下载的数据保存在所述服务器的缓存中; 并且,在进行解密时,所述服务器对所述缓存中保存的所述需要下载的数据进行解密。
12.根据权利要求7所述的数据下载方法,其特征在于,所述服务器获取的所述需要下载的数据为通过数据传输加密工具进行预加密后并被所述用户密钥再次加密的数据。
13.一种用于云环境的数据存储装置,其特征在于,包括: 获取模块,用于获取用户密钥; 接收模块,用于接收需要存储的数据; 加密模块,用于通过获取的所述用户密钥对获取的所述需要存储的数据进行加密,并将加密后的数据存储至云系统的物理磁盘。
14.根据权利要求13所述的数据存储装置,其特征在于,所述用户密钥与用户的身份信息对应,所述数据存储装置进一步包括: 认证模块,用于在获取所述用户密钥之前,对所述用户进行身份认证; 并且,所述获取模块用于在所述用户通过身份认证的情况下,获取与所述身份信息所对应的用户密钥。
15.根据权利要求14所述的数据存储装置,其特征在于,所述数据存储装置进一步包括: 更新模块,用于在所述用户身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
16.根据权利要求13所述的数据存储装置,其特征在于,所述接收模块还用于接收被分割为多个分片的数据;所述加密模块还用于通过所述用户密钥对每个分片的数据分别进行加密,并将加密后的所有分片的数据进行重组,得到加密后的数据。
17.根据权利要求13所述的数据存储装置,其特征在于,所述接收模块还用于在对需要存储的数据进行加密前,将接收的所述需要存储的数据保存在所述服务器的缓存中;并且,所述加密模块用于对所述缓存中保存的所述需要存储的数据进行加密。
18.根据权利要求13所述的数据存储装置,其特征在于,所述接收模块接收的所述需要存储的数据为通过数据传输加密工具进行预加密后的数据。
19.一种用于云环境的数据下载装置,其特征在于,包括: 获取模块,用于获取用户密钥; 数据处理模块,用于获取需要下载的数据; 解密模块,用于通过获取的所述用户密钥对接收的所述需要下载的数据进行解密,并将解密后的数据传输给用户。
20.根据权利要求19所述的数据下载装置,其特征在于,所述用户密钥与用户的身份信息对应,并且,所述数据下载装置进一步包括: 认证模块,用于对所述用户进行身份认证;并且,所述获取模块还用于在所述用户通过身份认证的情况下,获取与所述用户的身份信息所对应的用户密钥。
21.根据权利要求20所述的数据下载装置,其特征在于,所述数据下载装置进一步包括: 更新模块,用于在所述用户的身份信息出现变化的情况下,对变化后的用户身份信息重新分配对应的用户密钥。
22.根据权利要求19所述的数据下载装置,其特征在于,所述数据处理模块还用于获取被分割成多个分片的数据;并且,所述解密模块还用于通过所述用户密钥对每个分片的数据分别进行解密,并将解密后的所有分片的数据进行重组,得到解密后的数据。
23.根据权利要求19所述的数据下载装置,其特征在于,所述数据处理模块还用于获取需要下载的数据,并将获取的需要下载的数据保存在所述服务器的缓存中;并且,所述解密模块还用于对所述缓存中保存的所述需要下载的数据进行解密。
24.根据权利要求19所述的数据下载装置,其特征在于,所述数据处理模块获取的所述需要下载的数据为通过数据传输加密工具进行预加密后并被所述用户密钥再次加密的数据。
【文档编号】H04L29/08GK103916477SQ201410140879
【公开日】2014年7月9日 申请日期:2014年4月9日 优先权日:2014年4月9日
【发明者】王健杰, 王军林, 唐明, 徐博, 成书晟 申请人:曙光云计算技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1