CN103259762B - 一种基于云存储的文件加密、解密方法及系统 - Google Patents
一种基于云存储的文件加密、解密方法及系统 Download PDFInfo
- Publication number
- CN103259762B CN103259762B CN201210034983.1A CN201210034983A CN103259762B CN 103259762 B CN103259762 B CN 103259762B CN 201210034983 A CN201210034983 A CN 201210034983A CN 103259762 B CN103259762 B CN 103259762B
- Authority
- CN
- China
- Prior art keywords
- file
- encryption
- burst
- cloud storage
- platform
- 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.)
- Active
Links
Landscapes
- Storage Device Security (AREA)
Abstract
本发明实施例公开一种基于云存储的文件加密、解密方法,包括:应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储;加密和解密平台对分片存储到云存储平台的文件进行分布式加密;加密和解密平台对分片存储到云存储平台的文件进行分布式解密;本发明实施例还提供一种基于云存储的文件加密、解密系统。根据本发明实施例的技术方案,减少了重复的文件分片和聚合过程,避免了计算能力的浪费,同时提高加密和解密的处理速度。
Description
技术领域
本发明实施例涉及计算机网络领域的文件处理技术,尤其涉及一种基于云存储的文件加密、解密方法及系统。
背景技术
随着科学研究、商业、外交和军事上的需要,对明文文件进行加密和对密文文件进行解密的需求越来越多,使用的加密算法和解密算法也越来越复杂,加密密钥和解密密钥也越来越长,导致加密和解密的计算时间越来越长。此外,在云计算环境中,文件被分片保存在多个云存储服务器中,如果某个云存储服务器上的信息落入敌对方手中,就有可能带来文件的部分失密。因此,对于云存储环境也需要实现对文件的分布式加密。
在云存储环境中,通过单一服务器对文件进行加密,再进行存储的做法,以及先获得密文文件,再使用单一服务器解密的做法,已经逐渐变得过时。加密系统和解密系统需要适应云存储分散保存文件的趋势,提供更强的分布式加密能力、解密能力和更方便的管理能力。
分布式的加密系统和解密系统是满足这些需求的可行方法,分布式加密系统和解密系统需要更深入地考虑云计算环境和云存储环境下,如何解决分布式加密和解密的新构架,以及提供分布式加密和解密便捷调度的实际商用能力,需要解决的问题包括如何重用云存储的分片能力、如何利用云存储服务器上的计算能力,调度分布式加密能力和解密能力等。
发明内容
有鉴于此,本发明实施例的主要目的在于提供一种基于云存储的文件加密、解密方法及系统,减少了重复的文件分片和聚合过程,避免了计算能力的浪费,同时提高加密和解密的处理速度。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明提供一种基于云存储的文件加密、解密方法,包括:
应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储;
加密和解密平台对分片存储到云存储平台的文件进行分布式加密。
上述方法中,该方法还包括:加密和解密平台对分片存储到云存储平台的文件进行分布式解密。
上述方法中,该方法还包括:应用终端从云存储平台读取存储的文件。
上述方法中,其特征在于,该方法还包括:应用终端删除云存储平台中存储的文件。
上述方法中,所述应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储为:
应用终端通过云存储平台的FAC向云存储平台的FLR发送写入文件的请求消息;FLR向FAC返回写入文件参数响应消息,告知可提供服务的FAS的列表和存储策略;
FAC根据存储策略对本地的文件进行分片处理,并按照预先配置的规则和可提供服务的FAS列表向可服务的FAS逐个写入文件分片;
FAS返回保存文件分片成功的响应消息给FAC,FAC向FLR发送携带注册信息的请求消息,向FLR申请记录注册;FLR记录请求消息中的注册信息,并通过FAC向用户终端返回写入文件成功的响应消息。
上述方法中,
所述存储策略包括分片大小、副本数量;
所述文件的每个分片的大小按照适合独立加密和解密的片段大小进行分割,或按照绝对大小进行分割;
所述注册信息包括原始文件名称、文件ID、文件存储信息;所述文件存储信息包括文件的副本数量、分片数量、分片ID、分片长度、分片存放位置。
上述方法中,所述加密和解密平台对分片存储到云存储平台的文件进行分布式加密为:
应用终端通过FAC向加密和解密平台的加密管理模块发起文件加密操作请求,加密管理模块从FLR读取文件存储信息,生成一个或多个文件分片的加密任务,并分派给一个或多个加密服务器;加密管理模块发送分片加密指令给一个或多个加密服务器,收到分片加密指令的一个或多个加密服务器从指定的FAS读取文件分片;
一个或多个加密服务器同时进行一个或多个文件分片的加密处理,生成一个或多个加密后的目标文件分片,并将自身加密后的目标文件分片保存到指定的FAS。
上述方法中,该方法还包括:
FAS向加密服务器返回保存目标文件分片成功的响应消息,加密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过加密服务器向加密管理模块返回文件分片的加密完成响应消息;所有分片都已经加密完成时,加密管理模块通过FAC向应用终端返回文件加密成功响应消息。
上述方法中,所述加密和解密平台对分片存储到云存储平台的文件进行分布式解密为:
应用终端通过FAC向加密和解密平台的解密管理模块发起文件解密操作请求,解密管理模块从FLR读取文件存储信息,生成一个或多个文件分片的解密任务,并分派给一个或多个解密服务器;解密管理模块发送分片解密指令给一个或多个解密服务器,收到分片解密指令的一个或多个解密服务器从指定的FAS读取文件分片;
一个或多个解密服务器同时进行一个或多个文件分片的解密处理,生成一个或多个解密后的目标文件分片,并将自身解密后的目标文件分片保存到指定的FAS。
上述方法中,该方法还包括:
FAS向解密服务器返回保存目标文件分片成功的响应消息,解密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过解密服务器向解密管理模块返回文件分片的解密完成响应消息;所有分片都已经解密完成时,解密管理模块通过FAC向应用终端返回文件解密成功响应消息。
本发明还提供一种基于云存储的文件加密、解密系统,包括:应用终端、云存储平台、加密和解密平台;其中,
应用终端,用于向云存储平台发起文件写入;
云存储平台,用于对文件进行分片存储;
加密和解密平台,用于对分片存储到云存储平台的文件进行分布式加密。
上述系统中,所述加密和解密平台还用于,对分片存储到云存储平台的文件进行分布式解密。
上述系统中,所述应用终端还用于,从云存储平台读取存储的文件。
上述系统中,所述应用终端还用于,删除云存储平台中存储的文件。
本发明实施例提供的基于云存储的文件加密、解密方法及系统,应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储;加密和解密平台对分片存储到云存储平台的文件进行分布式加密;加密和解密平台对分片存储到云存储平台的文件进行分布式解密;因此,能够减少重复的文件分片和聚合过程,避免了计算能力的浪费,同时提高加密和解密的处理速度。
附图说明
图1是本发明实施例实现基于云存储的文件加密、解密方法的流程示意图;
图2是本发明实施例中步骤101的具体实现方法的流程示意图;
图3是本发明实施例实现基于云存储的文件加密、解密方法的组网示例图;
图4是本发明实施例实现基于云存储的文件加密、解密方法的架构示例图;
图5是本发明实施例实现步骤102的具体实现方法的流程示意图;
图6是本发明实施例实现步骤103的具体实现方法的流程示意图;
图7是本发明实施例实现步骤104的具体实现方法的流程示意图;
图8是本发明实施例实现步骤105的具体实现方法的流程示意图;
图9是本发明实施例实现基于云存储的文件加密、解密系统的结构示意图。
具体实施方式
本发明实施例的基本思想是:应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储;加密和解密平台对分片存储到云存储平台的文件进行分布式加密;加密和解密平台对分片存储到云存储平台的文件进行分布式解密。
下面通过附图及具体实施例对本发明实施例再做进一步的详细说明。
本发明实施例提供一种基于云存储的文件加密、解密方法,图1是本发明实施例实现基于云存储的文件加密、解密方法的流程示意图,如图1所示,该方法包括以下步骤:
步骤101,应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储。
步骤102,加密和解密平台对分片存储到云存储平台的文件进行分布式加密。
步骤103,加密和解密平台对分片存储到云存储平台的文件进行分布式解密。
对分片存储到云存储平台的文件进行分布式解密后,该方法还可以包括:步骤104,应用终端从云存储平台读取存储的文件。
对分片存储到云存储平台的文件进行分布式加密后,或对分片存储到云存储平台的文件进行分布式解密后,该方法还可以包括:步骤105,应用终端删除云存储平台中存储的文件。
图2是本发明实施例中步骤101的具体实现方法的流程示意图,是应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储的具体实施方式,如图2所示,并结合图3和图4,该方法包括以下步骤:
步骤201,应用终端向云存储平台的文件存储客户端(FAC,File AccessClient)发送写入文件的请求消息;其中,所述请求消息中携带请求写入的全路径文件名称、文件大小等。
步骤202,云存储平台的FAC向云存储平台的文件位置记录器(FLR,FlieLocation Register)转发写入文件的请求消息。
步骤203,收到FAC发送的请求消息后,FLR向FAC返回写入文件参数响应消息,用于向FAC告知可提供服务的文件访问服务器(FAS,File AccessServer)的列表、存储策略等;其中,存储策略包括分片大小、副本数量等;文件的每个分片的大小可以完全一样也可以不一样,对文件的分片,优先按照适合独立加密和解密的片段大小进行分割,如按1024字节或其1024字节的倍数进行分片,也可以按照绝对大小进行分割,所述绝对大小可以是1M字节等。
步骤204,收到写入文件参数响应消息后,FAC根据其中的存储策略对本地的文件进行分片处理,并按照预先配置的规则和可提供服务的FAS列表向可服务的FAS逐个写入文件分片;所述预先配置的规则指的是应用终端配置的文件分片与FAS的对应关系,FAC需要根据该对应关系将文件分片写入到对应的可服务的FAS中。
步骤205,FAS返回保存文件分片成功的响应消息给FAC,该响应消息中携带文件分片的存储物理位置。
步骤206,收到文件分片成功的响应消息后,FAC向FLR发送请求消息,用于向FLR申请记录注册,所述请求消息中携带有注册信息,该注册信息包括原始文件名称、文件ID、文件存储信息等,其中文件存储信息包括文件的副本数量、分片数量、分片ID、分片长度、分片存放位置等。
步骤207,收到FAC的请求消息后,FLR记录请求消息中的注册信息。
步骤208,FLR向FAC返回写入文件记录成功的响应消息。
步骤209,FAC向应用终端返回写入文件成功的响应消息。
本发明实施例中的应用终端可以是文件下载客户端、写入文件的应用程序、加密和解密客户端、读取文件的应用程序和终端等;其中,文件下载客户端可以是将网络文件下载到本地并保存到云存储平台中的客户端,例如FTP、迅雷等下载软件,还可以是以URL形式将网络文件下载到本地但只提供URL参数,下载的网络文件保存到云存储平台中的客户端。写入文件的应用程序指的是写入云存储平台的应用程序,该应用程序可以通过多种途径和开放文件接口(如POSIX、CIFS、NFS等接口),将文件等写入云存储平台,该应用程序也包括任何希望调用加密和解密平台的应用程序。加密和解密客户端指的是发送请求以进行加密和解密的客户端,可以是包含移动终端、PC、机顶盒等终端上的客户端软件,也可以是Web服务器上部署的web应用,Web服务器将Web客户的加密和解密请求传递给加密和解密平台;加密和解密客户端从云存储平台中读取的文件可以是加密和解密前的源文件或加密和解密后的目标文件。读取文件的应用指的是读取云存储平台中文件的客户端应用程序,该客户端应用程序通过开放文件接口(如POSIX、CIFS、NFS等接口),从云存储平台中读取文件,进行文件查看、编辑等操作。终端包括移动终端、PC、机顶盒等终端上的客户端软件,该客户端软件从云存储平台中读取的文件可以是加密前的明文文件或解密后的目标文件。
图5是本发明实施例实现步骤102的具体实现方法的流程示意图,是加密和解密平台对分片存储到云存储平台的文件进行分布式加密的具体实施方式,如图5所示,并结合图3和图4,该方法包括以下步骤:
步骤501,应用终端向FAC发送请求消息,用于向FAC发起文件加密操作请求;请求消息中携带待加密的文件ID、加密密钥、算法标识等参数;这里,待加密的文件可以是一个或多个,即可以请求同时对多个文件进行加密操作。
步骤502,FAC向加密和解密平台的加密管理模块转发收到的请求消息,该请求消息中仍携带待加密的文件ID、加密密钥、算法标识等参数。
步骤503,收到请求消息后,加密管理模块根据请求消息中的待加密的文件ID,从FLR读取所述文件ID对应的文件存储信息。
步骤504,FLR通过响应消息返回文件存储信息给加密管理模块;其中,响应消息中携带的文件存储信息包括待加密文件的副本数量、分片数量、分片ID、分片大小、分片存放位置、加密参数等。
步骤505,加密管理模块收到响应消息后,根据实时监控的可用的加密服务器列表,生成一个或多个文件分片的加密任务,并将加密任务、以及对应的加密密钥和算法标识,分派给可用的加密服务器列表中的一个或多个加密服务器。
步骤506,加密管理模块发送分片加密指令给一个或多个加密服务器,该分片加密指令中携带待加密的文件分片的文件存储信息和加密后的目标文件分片的文件存储信息,以及对应的加密参数,该加密参数包括加密密钥和加密算法标识。
步骤507,收到分片加密指令的一个或多个加密服务器,根据分片加密指令中携带的内容进行解析执行,根据分片加密指令中的待加密的文件分片的文件存储信息和加密后的目标文件分片的文件存储信息,从指定的FAS读取文件分片。
步骤508,FAS返回文件分片给对应加密服务器。
步骤509,一个或多个加密服务器根据分片加密指令中携带的加密参数,可同时进行一个或多个文件分片的加密处理,生成一个或多个加密后的目标文件分片。
步骤510,加密成功后,加密服务器将自身加密后的目标文件分片保存到指定的FAS。该FAS与加密前的文件分片存放的FAS可以相同,也可以不同。
步骤511,FAS向加密服务器返回保存目标文件分片成功的响应消息。
步骤512,收到保存目标文件分片成功的响应消息后,加密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息。
步骤513,FLR对目标文件分片的文件存储信息保存成功后,返回保存成功响应消息给加密服务器。
步骤514,收到保存成功响应消息的加密服务器返回文件分片的加密完成响应消息给加密管理模块。
步骤515,加密管理模块判断是否所有文件分片的加密都已经完成,如果未完成,则继续等待各文件分片的加密完成;如果所有分片都已经加密完成,执行步骤516。
步骤516,加密管理模块向FAC返回文件加密成功响应消息;这里,所有加密后的目标文件分片此时并不需要聚合为一个文件。
步骤517,收到文件加密成功响应消息后,FAC向应用终端返回文件加密成功响应消息,至此加密操作完成。
图6是本发明实施例实现步骤103的具体实现方法的流程示意图,是加密和解密平台对分片存储到云存储平台的文件进行分布式解密的具体实施方式,如图6所示,并结合图3和图4,该方法包括以下步骤:
步骤601,应用终端向FAC发送请求消息,用于向FAC发起文件解密操作请求;请求消息中携带待解密的文件ID、解密密钥、算法标识等参数;这里,待解密的文件可以是一个或多个,即可以请求同时对多个文件进行解密操作。
步骤602,FAC向加密和解密平台的解密管理模块转发收到的请求消息,该请求消息中仍携带待解密的文件ID、解密密钥、算法标识等参数。
步骤603,收到请求消息后,解密管理模块根据请求消息中的待解密的文件ID,从FLR读取所述文件ID对应的文件存储信息。
步骤604,FLR通过响应消息返回文件存储信息给解密管理模块;其中,响应消息中携带的文件存储信息包括待解密文件的副本数量、分片数量、分片ID、分片大小、分片存放位置、解密参数等。
步骤605,解密管理模块收到响应消息后,根据实时监控的可用的解密服务器列表,生成一个或多个文件分片的解密任务,并将解密任务、以及对应的解密密钥和算法标识,分派给可用的解密服务器列表中的一个或多个解密服务器。
步骤606,解密管理模块发送分片解密指令给一个或多个解密服务器,该分片解密指令中携带待解密的文件分片的文件存储信息和解密后的目标文件分片的文件存储信息,以及对应的解密参数,该解密参数包括解密密钥和解密算法标识。
步骤607,收到分片解密指令的一个或多个解密服务器,根据分片解密指令中携带的内容进行解析执行,根据分片解密指令中的待解密的文件分片的文件存储信息和解密后的目标文件分片的文件存储信息,从指定的FAS读取文件分片。
步骤608,FAS返回文件分片给对应解密服务器。
步骤609,一个或多个解密服务器根据分片解密指令中携带的解密参数,可同时进行一个或多个文件分片的解密处理,生成一个或多个解密后的目标文件分片。
步骤610,解密成功后,解密服务器将自身解密后的目标文件分片保存到指定的FAS。该FAS与解密前的文件分片存放的FAS可以相同,也可以不同。
步骤611,FAS向解密服务器返回保存目标文件分片成功的响应消息。
步骤612,收到保存目标文件分片成功的响应消息后,解密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息。
步骤613,FLR对目标文件分片的文件存储信息保存成功后,返回保存成功响应消息给解密服务器。
步骤614,收到保存成功响应消息的解密服务器返回文件分片的解密完成响应消息给解密管理模块。
步骤615,解密管理模块判断是否所有文件分片的解密都已经完成,如果未完成,则继续等待各文件分片的解密完成;如果所有分片都已经解密完成,执行步骤616。
步骤616,解密管理模块向FAC返回文件解密成功响应消息;这里,所有解密后的目标文件分片此时并不需要聚合为一个文件。
步骤617,收到文件解密成功响应消息后,FAC向应用终端返回文件解密成功响应消息,至此解密操作完成。
在某些情况下,加密服务器和/或解密服务器与FAS可以集成为一个单元,即物理设备上重用,例如FAS在云存储能力负荷较低的场景。集成时,为了避免加密、解密能力和云存储能力对CPU、内存等资源的占用冲突,将集成的物理服务器虚拟化,为加密、解密能力和云存储能力提供单独的虚拟机,各自虚拟机界定对资源占用的范围,这个范围可以根据云存储和加密、解密需求,自适应的进行弹性在线调整资源分配。
图7是本发明实施例实现步骤104的具体实现方法的流程示意图,是应用终端从云存储平台读取存储的文件的具体实施方式,如图7所示,并结合图3和图4,该方法包括以下步骤:
步骤701,应用终端向FAC发送请求消息,用于向FAC发起读取文件请求;请求读取的文件可以是加密前的文件或解密前的文件,也可以是加密后的目标文件或解密后的目标文件。
步骤702,FAC向FLR转发收到的请求消息,用于向FLR发起读取文件请求。
步骤703,FLR向FAC返回读取文件信息响应消息,该读取文件信息响应消息中携带文件存储信息。
步骤704,FAC根据获得的文件存储信息从一个或多个FAS读取文件分片。
步骤705,FAS返回文件分片读取成功响应消息,其中携带文件分片。
步骤706,FAC对收到的文件分片进行管理,例如对各文件分片进行聚合得到一个完整文件,或对前后相连的多个文件分片进行聚合,得到一个文件块。
步骤707,FAC将聚合后得到的完整文件或文件块提供给应用终端。
图8是本发明实施例实现步骤105的具体实现方法的流程示意图,是应用终端删除云存储平台中存储的文件的具体实施方式,如图8所示,并结合图3和图4,该方法包括以下步骤:
步骤801,应用终端向FAC发送请求消息,用于向FAC发起删除文件请求。
步骤802,FAC向FLR转发请求消息,用于向FLR发起删除文件请求。
步骤803,FLR向FAC返回读取文件信息响应消息,读取文件信息响应消息中携带文件存储信息。
步骤804,FAC根据获得的文件存储信息,向一个或多个FAS下达删除文件分片的指令。
步骤805,收到指令的FAS进行删除文件分片的操作。
步骤806,FAS返回文件分片删除成功响应消息给FAC。
步骤807,待所有文件分片被删除后,FAC向应用终端返回删除文件成功响应消息。
为实现上述方法,本发明实施例还提供一种基于云存储的文件加密、解密系统,图9是本发明实施例实现基于云存储的文件加密、解密系统的结构示意图,如图9所示,该系统包括:应用终端91、云存储平台92、加密和解密平台93;其中,
应用终端91,用于向云存储平台92发起文件写入;
云存储平台92,用于对文件进行分片存储;
加密和解密平台93,用于对分片存储到云存储平台92的文件进行分布式加密。
所述加密和解密平台93还用于,对分片存储到云存储平台92的文件进行分布式解密。
所述应用终端91还用于,从云存储平台92读取存储的文件。
所述应用终端91还用于,删除云存储平台92中存储的文件。
其中,所述云存储平台92进一步包括:FAC 921、FLR 922、FAS 923。
其中,所述加密和解密平台93进一步包括:加密管理模块931、加密服务器932、解密管理模块933、解密服务器934;加密服务器912可以为一个或多个,解密服务器914可以为一个或多个。
具体的,所述应用终端91向云存储平台92发起文件写入,云存储平台92对文件进行分片存储为:应用终端通过云存储平台的FAC向云存储平台的FLR发送写入文件的请求消息;FLR向FAC返回写入文件参数响应消息,告知可提供服务的FAS的列表和存储策略;FAC根据存储策略对本地的文件进行分片处理,并按照预先配置的规则和可提供服务的FAS列表向可服务的FAS逐个写入文件分片;FAS返回保存文件分片成功的响应消息给FAC,FAC向FLR发送携带注册信息的请求消息,向FLR申请记录注册;FLR记录请求消息中的注册信息,并通过FAC向用户终端返回写入文件成功的响应消息。
具体的,所述存储策略包括分片大小、副本数量;所述文件的每个分片的大小按照适合独立加密和解密的片段大小进行分割,或按照绝对大小进行分割;所述注册信息包括原始文件名称、文件ID、文件存储信息;所述文件存储信息包括文件的副本数量、分片数量、分片ID、分片长度、分片存放位置。
具体的,所述加密和解密平台93对分片存储到云存储平台92的文件进行分布式加密为:应用终端通过FAC向加密和解密平台的加密管理模块发起文件加密操作请求,加密管理模块从FLR读取文件存储信息,生成一个或多个文件分片的加密任务,并分派给一个或多个加密服务器;加密管理模块发送分片加密指令给一个或多个加密服务器,收到分片加密指令的一个或多个加密服务器从指定的FAS读取文件分片;一个或多个加密服务器同时进行一个或多个文件分片的加密处理,生成一个或多个加密后的目标文件分片,并将自身加密后的目标文件分片保存到指定的FAS;FAS向加密服务器返回保存目标文件分片成功的响应消息,加密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过加密服务器向加密管理模块返回文件分片的加密完成响应消息;所有分片都已经加密完成时,加密管理模块通过FAC向应用终端返回文件加密成功响应消息。
具体的所述加密和解密平台93对分片存储到云存储平台92的文件进行分布式解密为:应用终端通过FAC向加密和解密平台的解密管理模块发起文件解密操作请求,解密管理模块从FLR读取文件存储信息,生成一个或多个文件分片的解密任务,并分派给一个或多个解密服务器;解密管理模块发送分片解密指令给一个或多个解密服务器,收到分片解密指令的一个或多个解密服务器从指定的FAS读取文件分片;一个或多个解密服务器同时进行一个或多个文件分片的解密处理,生成一个或多个解密后的目标文件分片,并将自身解密后的目标文件分片保存到指定的FAS;FAS向解密服务器返回保存目标文件分片成功的响应消息,解密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过解密服务器向解密管理模块返回文件分片的解密完成响应消息;所有分片都已经解密完成时,解密管理模块通过FAC向应用终端返回文件解密成功响应消息。
本发明实施例中提供的基于云存储的文件加密、解密方法及系统中,云存储平台中加密和解密的文件分片是分段存储的,因此可以被分布式执行操作的加密和解密服务器作为待加密和待解密文件而直接使用。同时,加密和解密后的目标文件分片也不必立即合成为一个目标文件,而是和加密和解密前的文件分片一样,分别存储在各个FAS中。在应用终端需要使用目标文件时,才会读取这些文件分片,并组成一个完整的目标文件或文件块提供给应用终端。
本发明实施例中提供的基于云存储的文件加密、解密系统具有对称性,加密流程和解密流程是一致的。每个文件分片均可根据获得的加密密钥或解密密钥进行加密或解密。所有文件分片的加密密钥或解密密钥,可以相同,也可以不同。各个文件分片的加密密钥和解密密钥,分别由加密管理单元和解密管理模块根据应用终端的原始密钥生成。各个文件分片的加密算法和解密算法,也分别由加密管理模块和解密管理模块根据应用终端的初始算法参数决定。这样,进行文件的加密时,不仅每个文件分片的加密密钥可以不同,加密算法也可以不同,可大大加强文件的安全性。
本发明实施例的技术方案具有以下技术效果:
1、由于有多个加密服务器或多个解密服务器同时参与文件的加密过程或解密过程,提高了加密和解密的速度,尤其适合长文本文件的加密和解密。
2、由于在云存储平台中的文件是经过加密后存储的,即使整个系统或部分FAS被攻击者获取,也无法获得文件或文件分片中的信息,除非能对文件进行解密,从而增强了系统的安全性。
3、每个文件分片的加密算法和加密密钥都可以不同,大大提高了整个文件的抗破解强度。
4、加密和解密平台运行在服务器端,避免了应用终端安装加密和解密软件,从而避免应用终端的不断升级,可降低用户的使用难度,减少运行成本。
以上所述,仅为本发明实施例的较佳实施例而已,并非用于限定本发明实施例的保护范围,凡在本发明实施例的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明实施例的保护范围之内。
Claims (13)
1.一种基于云存储的文件加密、解密方法,其特征在于,该方法包括:
应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储;
加密和解密平台对分片存储到云存储平台的文件进行分布式加密;
其中,所述加密和解密平台对分片存储到云存储平台的文件进行分布式加密为:
应用终端通过文件存储客户端FAC向加密和解密平台的加密管理模块发起文件加密操作请求,加密管理模块从文件位置记录器FLR读取文件存储信息,生成一个或多个文件分片的加密任务,并分派给一个或多个加密服务器;加密管理模块发送分片加密指令给一个或多个加密服务器,收到分片加密指令的一个或多个加密服务器从指定的文件访问服务器FAS读取文件分片;
一个或多个加密服务器同时进行一个或多个文件分片的加密处理,生成一个或多个加密后的目标文件分片,并将自身加密后的目标文件分片保存到指定的FAS。
2.根据权利要求1所述的方法,其特征在于,该方法还包括:加密和解密平台对分片存储到云存储平台的文件进行分布式解密。
3.根据权利要求2所述的方法,其特征在于,该方法还包括:应用终端从云存储平台读取存储的文件。
4.根据权利要求1至3中任一所述的方法,其特征在于,该方法还包括:应用终端删除云存储平台中存储的文件。
5.根据权利要求1所述的方法,其特征在于,所述应用终端向云存储平台发起文件写入,云存储平台对文件进行分片存储为:
应用终端通过云存储平台的FAC向云存储平台的FLR发送写入文件的请求消息;FLR向FAC返回写入文件参数响应消息,告知可提供服务的FAS的列表和存储策略;
FAC根据存储策略对本地的文件进行分片处理,并按照预先配置的规则和可提供服务的FAS列表向可服务的FAS逐个写入文件分片;
FAS返回保存文件分片成功的响应消息给FAC,FAC向FLR发送携带注册信息的请求消息,向FLR申请记录注册;FLR记录请求消息中的注册信息,并通过FAC向用户终端返回写入文件成功的响应消息。
6.根据权利要求5所述的方法,其特征在于,
所述存储策略包括分片大小、副本数量;
所述文件的每个分片的大小按照适合独立加密和解密的片段大小进行分割,或按照绝对大小进行分割;
所述注册信息包括原始文件名称、文件ID、文件存储信息;所述文件存储信息包括文件的副本数量、分片数量、分片ID、分片长度、分片存放位置。
7.根据权利要求1所述的方法,其特征在于,该方法还包括:
FAS向加密服务器返回保存目标文件分片成功的响应消息,加密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过加密服务器向加密管理模块返回文件分片的加密完成响应消息;所有分片都已经加密完成时,加密管理模块通过FAC向应用终端返回文件加密成功响应消息。
8.根据权利要求2所述的方法,其特征在于,所述加密和解密平台对分片存储到云存储平台的文件进行分布式解密为:
应用终端通过FAC向加密和解密平台的解密管理模块发起文件解密操作请求,解密管理模块从FLR读取文件存储信息,生成一个或多个文件分片的解密任务,并分派给一个或多个解密服务器;解密管理模块发送分片解密指令给一个或多个解密服务器,收到分片解密指令的一个或多个解密服务器从指定的FAS读取文件分片;
一个或多个解密服务器同时进行一个或多个文件分片的解密处理,生成一个或多个解密后的目标文件分片,并将自身解密后的目标文件分片保存到指定的FAS。
9.根据权利要求8所述的方法,其特征在于,该方法还包括:
FAS向解密服务器返回保存目标文件分片成功的响应消息,解密服务器向FLR发送保存目标文件分片的文件存储信息的请求消息;FLR对目标文件分片的文件存储信息保存成功后,通过解密服务器向解密管理模块返回文件分片的解密完成响应消息;所有分片都已经解密完成时,解密管理模块通过FAC向应用终端返回文件解密成功响应消息。
10.一种基于云存储的文件加密、解密系统,其特征在于,该系统包括:应用终端、云存储平台、加密和解密平台;其中,
应用终端,用于向云存储平台发起文件写入;
云存储平台,用于对文件进行分片存储;
加密和解密平台,用于对分片存储到云存储平台的文件进行分布式加密;
其中,加密和解密平台,用于对分片存储到云存储平台的文件进行分布式加密包括:
应用终端通过文件存储客户端FAC向加密和解密平台的加密管理模块发起文件加密操作请求,加密管理模块从文件位置记录器FLR读取文件存储信息,生成一个或多个文件分片的加密任务,并分派给一个或多个加密服务器;加密管理模块发送分片加密指令给一个或多个加密服务器,收到分片加密指令的一个或多个加密服务器从指定的文件访问服务器FAS读取文件分片;
一个或多个加密服务器同时进行一个或多个文件分片的加密处理,生成一个或多个加密后的目标文件分片,并将自身加密后的目标文件分片保存到指定的FAS。
11.根据权利要求10所述的系统,其特征在于,所述加密和解密平台还用于,对分片存储到云存储平台的文件进行分布式解密。
12.根据权利要求11所述的系统,其特征在于,所述应用终端还用于,从云存储平台读取存储的文件。
13.根据权利要求10至12中任一所述的系统,其特征在于,所述应用终端还用于,删除云存储平台中存储的文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210034983.1A CN103259762B (zh) | 2012-02-16 | 2012-02-16 | 一种基于云存储的文件加密、解密方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210034983.1A CN103259762B (zh) | 2012-02-16 | 2012-02-16 | 一种基于云存储的文件加密、解密方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103259762A CN103259762A (zh) | 2013-08-21 |
CN103259762B true CN103259762B (zh) | 2016-09-28 |
Family
ID=48963465
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210034983.1A Active CN103259762B (zh) | 2012-02-16 | 2012-02-16 | 一种基于云存储的文件加密、解密方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103259762B (zh) |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468664A (zh) * | 2013-09-18 | 2015-03-25 | 中兴通讯股份有限公司 | 一种上传文件到云存储系统的方法、下载方法及装置 |
CN104753870B (zh) * | 2013-12-30 | 2018-09-28 | 中国移动通信集团公司 | 一种数据传输方法和系统 |
CN103942107B (zh) * | 2014-04-23 | 2017-06-27 | 杭州电子科技大学 | 一种分布式加密系统 |
CN103942106B (zh) * | 2014-04-23 | 2017-04-12 | 杭州电子科技大学 | 一种分布式加密方法 |
CN105450387A (zh) * | 2014-08-20 | 2016-03-30 | 江苏威盾网络科技有限公司 | 一种基于混合加密的网络分布式存储方法 |
CN104580359B (zh) * | 2014-11-26 | 2018-09-28 | 上海斐讯数据通信技术有限公司 | 带存储功能的路由器中文件分片加密存储备份及下载方法 |
CN105791245B (zh) * | 2014-12-26 | 2019-09-03 | 北京航天测控技术有限公司 | 一种数据发送、接收方法和装置 |
CN106257858A (zh) * | 2015-06-19 | 2016-12-28 | 中兴通讯股份有限公司 | 一种远端存储设备的数据加密方法、装置及系统 |
CN106452770B (zh) * | 2015-08-12 | 2020-10-13 | 深圳市腾讯计算机系统有限公司 | 一种数据加密方法、解密方法、装置和系统 |
CN106612247A (zh) * | 2015-10-21 | 2017-05-03 | 中兴通讯股份有限公司 | 一种数据处理方法及存储网关 |
CN106059762B (zh) * | 2016-07-26 | 2019-05-14 | 江苏国泰新点软件有限公司 | 数据安全处理方法及装置 |
CN106686087A (zh) * | 2016-12-30 | 2017-05-17 | 先锋支付有限公司 | 一种区块链截断方法及分布式节点 |
CN106970854A (zh) * | 2017-03-30 | 2017-07-21 | 无锡华云数据技术服务有限公司 | 一种对象存储系统中的逻辑处理服务器 |
CN107220559B (zh) * | 2017-06-11 | 2023-07-07 | 南京安链数据科技有限公司 | 一种针对不可篡改文件的加密存储方法 |
CN107480543A (zh) * | 2017-08-07 | 2017-12-15 | 安徽优易思信息技术有限责任公司 | 一种数据的读取方法及装置 |
CN107493301A (zh) * | 2017-09-27 | 2017-12-19 | 郑州云海信息技术有限公司 | 一种数据访问系统 |
CN107995160A (zh) * | 2017-10-26 | 2018-05-04 | 常熟市第人民医院 | 一种基于云端管控的json数据包加密解密方法 |
CN109802832B (zh) * | 2017-11-17 | 2020-12-01 | 中移动信息技术有限公司 | 一种数据文件的处理方法、系统、大数据处理服务器和计算机存储介质 |
CN108390942A (zh) * | 2018-03-21 | 2018-08-10 | 山东超越数控电子股份有限公司 | 一种硬件加密的分布式云存储方法与装置 |
CN110430274A (zh) * | 2019-08-09 | 2019-11-08 | 西藏宁算科技集团有限公司 | 一种基于云存储的文件下载方法及系统 |
CN112613059A (zh) * | 2020-12-31 | 2021-04-06 | 鲁班(北京)电子商务科技有限公司 | 基于Fastdfs及CA的快速解密文件的方法及系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101087403A (zh) * | 2007-05-31 | 2007-12-12 | 吴彬 | 基于p2p技术上的分布式流媒体点播系统及其点播流媒体节目的实现方法 |
CN101361065A (zh) * | 2006-02-17 | 2009-02-04 | 谷歌公司 | 分布式模型的编码和自适应、可扩展访问 |
CN102088491A (zh) * | 2011-02-01 | 2011-06-08 | 西安建筑科技大学 | 一种面向分散式的云存储安全架构及其数据存取方法 |
CN102148798A (zh) * | 2010-02-04 | 2011-08-10 | 上海果壳电子有限公司 | 大容量数据包的高效并行安全加解密方法 |
CN201994961U (zh) * | 2011-02-01 | 2011-09-28 | 西安建筑科技大学 | 一种面向分散式的云存储安全架构 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2673554C (en) * | 2009-07-21 | 2017-01-03 | Ibm Canada Limited - Ibm Canada Limitee | Web distributed storage system |
-
2012
- 2012-02-16 CN CN201210034983.1A patent/CN103259762B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101361065A (zh) * | 2006-02-17 | 2009-02-04 | 谷歌公司 | 分布式模型的编码和自适应、可扩展访问 |
CN101087403A (zh) * | 2007-05-31 | 2007-12-12 | 吴彬 | 基于p2p技术上的分布式流媒体点播系统及其点播流媒体节目的实现方法 |
CN102148798A (zh) * | 2010-02-04 | 2011-08-10 | 上海果壳电子有限公司 | 大容量数据包的高效并行安全加解密方法 |
CN102088491A (zh) * | 2011-02-01 | 2011-06-08 | 西安建筑科技大学 | 一种面向分散式的云存储安全架构及其数据存取方法 |
CN201994961U (zh) * | 2011-02-01 | 2011-09-28 | 西安建筑科技大学 | 一种面向分散式的云存储安全架构 |
Non-Patent Citations (1)
Title |
---|
面向云存储的安全存储策略研究;林秦颖等;《计算机研究与发展》;20110215;第240页左栏第1行-第243页左栏第1行,附图1-2 * |
Also Published As
Publication number | Publication date |
---|---|
CN103259762A (zh) | 2013-08-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103259762B (zh) | 一种基于云存储的文件加密、解密方法及系统 | |
US11283780B2 (en) | Secure sharing and collaborative editing of documents in cloud based applications | |
JP6963613B2 (ja) | コンテナベースのオペレーティング・システムおよび方法 | |
US10425228B2 (en) | Receipt, data reduction, and storage of encrypted data | |
US9077541B2 (en) | Methods and systems for storage of large data objects | |
US9397832B2 (en) | Shared data encryption and confidentiality | |
US9037870B1 (en) | Method and system for providing a rotating key encrypted file system | |
EP2172868B1 (en) | Information security device and information security system | |
US11500988B2 (en) | Binding secure keys of secure guests to a hardware security module | |
US20160006564A1 (en) | Achieving storage efficiency in presence of end-to-end encryption using downstream decrypters | |
TWI496023B (zh) | 用於部分保全記憶體處理的軟體修改技術 | |
US11489660B2 (en) | Re-encrypting data on a hash chain | |
CN114041134A (zh) | 用于基于区块链的安全存储的系统和方法 | |
CN105825143A (zh) | 一种应用程序写入和读取数据的方法及装置 | |
CN114930328A (zh) | 将安全模块的安全对象绑定到安全访客 | |
CN111181905B (zh) | 文件加密方法及装置 | |
Zaman et al. | Distributed multi cloud storage system to improve data security with hybrid encryption | |
CN105893862A (zh) | 一种浏览器缓存数据的保护方法及装置 | |
US11201730B2 (en) | Generating a protected key for selective use | |
US11372983B2 (en) | Employing a protected key in performing operations | |
Mishra et al. | Improved cloud security approach with threshold cryptography | |
CN115242538A (zh) | 一种数据传输方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |