基于双云端的数据安全存储方法、装置、设备及存储介质与流程

文档序号:16903251发布日期:2019-02-19 18:11阅读:192来源:国知局
基于双云端的数据安全存储方法、装置、设备及存储介质与流程

本发明属于云存储技术领域,尤其涉及一种基于双云端的数据安全存储方法、装置、设备及存储介质。



背景技术:

近年来,云存储在个人、企业及政府领域得到大规模且广泛的应用。云存储不仅为社会大众提供了近乎无限的、满足不同资源存储需求的存储容量,还为大量资源的共享提供了方便快捷的访问通道,云存储在信息社会中有着越来越重要的地位。然而,用户在积极拥护云存储提供的便利性的同时,也日益担心外包于云存储的数据安全性。

目前,市场上云存储服务是云存储服务提供商基于单云架构提供的服务(或称为数据单点存储服务),由于单个云架构下数据是单点存储,存在潜在硬件故障、内部及外部等不确定因素的威胁,从而造成云数据被篡改、被删除、以及数据丢失等现象。

近年来,主流云服务商陆续发生过云数据不可用现象,造成人们对云数据的安全性产生了质疑,因此,如何保证云数据的可用性和安全性,是亟待解决的问题。



技术实现要素:

本发明的目的在于提供一种基于双云端的数据安全存储方法、装置、设备及存储介质,旨在解决由于现有技术无法提供一种有效的数据云存储方法,导致云端存储的数据安全性低的问题。

一方面,本发明提供了一种基于双云端的数据安全存储方法,所述方法包括下述步骤:

当接收到管理员发送的数据存储请求时,应用网关将与所述数据存储请求对应的文件目录中的文件上传至第一云端和第二云端,对上传的每个文件进行摘要计算,并存储计算得到的、所述每个文件对应的文件基准摘要值;

所述应用网关对预设的安全检验周期进行监测,当监测到到达所述安全检验周期时,分别发送数据安全检验请求到所述第一云端和所述第二云端,所述数据安全检验请求包含所述文件基准摘要值;

所述第一云端和所述第二云端接收到所述数据安全检验请求后,根据所述文件基准摘要值,分别对与所述文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验;

当完成所述数据完整性检验后,所述应用网关对所述第一云端目录和所述第二云端目录中存储的文件进行数据同步。

优选地,分别对与所述文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验的步骤,包括:

所述第一云端和所述第二云端分别对所述第一云端目录和所述第二云端目录中的每个文件进行摘要计算,得到对应的摘要值;

所述第一云端和所述第二云端通过将所述摘要值和对应的所述文件基准摘要值进行比较,检验所述第一云端目录和所述第二云端目录中的每个文件的数据完整性。

优选地,所述应用网关对所述第一云端目录和所述第二云端目录中存储的文件进行数据同步的步骤,包括:

所述应用网关根据所述文件基准摘要值分别对所述第一云端目录和所述第二云端目录中存储的所述文件进行遍历,查找所述第一云端目录与所述第二云端目录中不一致的文件,得到对应的遍历结果;

所述应用网关根据所述遍历结果对所述第一云端目录和所述第二云端目录中的所述文件进行相互同步。

优选地,所述应用网关对所述第一云端目录和所述第二云端目录中存储的文件进行数据同步的步骤之后,还包括:

所述应用网关根据所述数据同步的同步结果对所述第一云端目录和所述第二云端目录中的错误文件进行定位并输出错误报告。

进一步优选地,所述应用网关根据所述数据同步的同步结果对所述第一云端目录和所述第二云端目录中的错误文件进行定位并输出错误报告的步骤,包括:

根据所述同步结果,所述第一云端和所述第二云端分别对所述第一云端目录和所述第二云端目录中已更新的文件进行数据完整性检验,得到对应的第一检验结果和第二检验结果;

根据所述第一检验结果和所述第二检验结果,所述第一云端和所述第二云端对所述第一云端目录和所述第二云端目录中的错误文件进行定位,得到对应的第一云端错误报告和第二云端错误报告;

所述应用网关接收所述第一云端和所述第二云端分别发送的所述第一云端错误报告和所述第二云端错误报告并输出。

另一方面,本发明提供了一种基于双云端的数据安全存储装置,所述装置包括:

文件上传单元,用于当接收到管理员发送的数据存储请求时,应用网关将与所述数据存储请求对应的文件目录中的文件上传至第一云端和第二云端,对上传的每个文件进行摘要计算,并存储计算得到的、所述每个文件对应的文件基准摘要值;

请求发送单元,用于所述应用网关对预设的安全检验周期进行监测,当监测到到达所述安全检验周期时,分别发送数据安全检验请求到所述第一云端和所述第二云端,所述数据安全检验请求包含所述文件基准摘要值;

完整性检验单元,用于所述第一云端和所述第二云端接收到所述数据安全检验请求后,根据所述文件基准摘要值,分别对与所述文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验;以及

数据同步单元,用于当完成所述数据完整性检验后,所述应用网关对所述第一云端目录和所述第二云端目录中存储的文件进行数据同步。

优选地,所述完整性检验单元包括:

摘要计算单元,用于所述第一云端和所述第二云端分别对所述第一云端目录和所述第二云端目录中的每个文件进行摘要计算,得到对应的摘要值;以及

完整性检验子单元,用于所述第一云端和所述第二云端通过将所述摘要值和对应的所述文件基准摘要值进行比较,检验所述第一云端目录和所述第二云端目录中的每个文件的数据完整性。

优选地,所述数据同步单元包括:

文件遍历单元,用于所述应用网关根据所述文件基准摘要值分别对所述第一云端目录和所述第二云端目录中存储的所述文件进行遍历,查找所述第一云端目录与所述第二云端目录中不一致的文件,得到对应的遍历结果;以及

数据同步子单元,用于所述应用网关根据所述遍历结果对所述第一云端目录和所述第二云端目录中的所述文件进行相互同步。

优选地,所述装置还包括:

错误报告输出单元,用于所述应用网关根据所述数据同步的同步结果对所述第一云端目录和所述第二云端目录中的错误文件进行定位并输出错误报告。

进一步优选地,所述错误报告输出单元包括:

检验结果获得单元,用于根据所述同步结果,所述第一云端和所述第二云端分别对所述第一云端目录和所述第二云端目录中已更新的文件进行数据完整性检验,得到对应的第一检验结果和第二检验结果;

错误文件定位单元,用于根据所述第一检验结果和所述第二检验结果,所述第一云端和所述第二云端对所述第一云端目录和所述第二云端目录中的错误文件进行定位,得到对应的第一云端错误报告和第二云端错误报告;以及

报告输出子单元,用于所述应用网关接收所述第一云端和所述第二云端分别发送的所述第一云端错误报告和所述第二云端错误报告并输出。

另一方面,本发明还提供了一种计算设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述基于双云端的数据安全存储方法所述的步骤。

另一方面,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述基于双云端的数据安全存储方法所述的步骤。

本发明应用网关根据数据存储请求将对应文件目录中的文件上传至第一云端和第二云端,并存储上传的每个文件对应的文件基准摘要值,根据安全检验周期,应用网关定时发送包含文件基准摘要值的数据安全检验请求到第一云端和第二云端,第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验,当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步,从而保障了云数据的完整性、可用性以及双云端数据的一致性,并提高了云数据的安全性。

附图说明

图1是本发明实施例一提供的基于双云端的数据安全存储方法的实现流程图;

图2是本发明实施例二提供的基于双云端的数据安全存储装置的结构示意图;

图3是本发明实施例二提供的基于双云端的数据安全存储装置的优选结构示意图;以及

图4是本发明实施例三提供的计算设备的结构示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

以下结合具体实施例对本发明的具体实现进行详细描述:

实施例一:

图1示出了本发明实施例一提供的基于双云端的数据安全存储方法的实现流程,为了便于说明,仅示出了与本发明实施例相关的部分,详述如下:

在步骤s101中,当接收到管理员发送的数据存储请求时,应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端,对上传的每个文件进行摘要计算,并存储计算将得到的、每个文件对应的文件基准摘要值。

本发明实施例适用于多云端的数据安全存储平台、系统或设备,多云端为公有云或者公有云与私有云的组合,例如,个人计算机、服务器等。内部或外部用户通过预设的应用网关与预设的云存储服务器进行交互。当接收到管理员发送的数据存储请求时,应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端,并通过消息摘要(securehashalgorithm,sha)或者哈希消息认证码(hash-basedmessageauthenticationcode,hmac)或者其它摘要算法对上传的每个文件进行摘要计算,得到每个文件对应的文件基准摘要值(groundtruthmetadata),再将该文件基准摘要值进行存储,以实现数据外包,从而仅将文件对应的文件基准摘要值存储在应用网关,而文件本身储于第一云端和第二云端,降低了本地数据丢失或者被损坏时产生的风险,并降低了本地存储的硬件成本。其中,管理员为具有数据存储、数据访问等权限的用户,应用网关以目录树结构对文件基准摘要值进行存储,第一云端和第二云端以目录树结构对接收到的文件进行存储。

在应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端之后,优选地,根据用户发送的数据访问请求,应用网关将该数据访问请求重定位至第一云端或者第二云端,并将获得的、数据访问请求对应的访问文件的统一资源定位符(uniformresourcelocator,url)返回给用户,以实现用户访问云端的文件,从而提高了访问云数据的安全性。

在应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端之后,又一优选地,根据管理员发送的数据操作请求,应用网关将第一云端或者第二云端设置为待进行数据操作的目标云端,并对目标云端进行数据操作,从而保证目标云端数据是最新的,其中,数据操作包括文件/目录上传、文件/目录删除、文件/目录重命名、文件/目录拷贝和/或文件数据更新等操作。例如,用户通过应用网关将新文件上传到目标云端已存在的文件目录中,或者在目标云端创建新的文件目录,再上传文件到该目录,或者对目标云端的文件目录中的某个文件中的内容或数据进行修改或删除等。

在应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端时,优选地,通过预设的键值对结构(键,值)对数据或文件进行描述,其中,键(key)为文件名或者文件目录,值(value)为文件内容及文件元数据(metadata),从而提高对数据维护和管理的便利性和有序性。

在步骤s102中,应用网关对预设的安全检验周期进行监测,当监测到到达安全检验周期时,应用网关分别发送数据安全检验请求到第一云端和第二云端,数据安全检验请求包含文件基准摘要值。

在本发明实施例中,根据预设的安全检验周期(例如,48小时),应用网关定时发送数据安全检验请求到第一云端和第二云端,该数据安全检验请求中包含待进行数据安全检验的文件目录和该文件目录中文件对应的文件基准摘要值。

在步骤s103中,第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验。

在本发明实施例中,第一云端和第二云端分别接收到数据安全检验请求后,根据文件基准摘要值,第一云端对与该文件目录对应的第一云端目录中的文件进行数据完整性检验,第二云端对与该文件目录对应的第二云端目录中的文件进行数据完整性检验,以确定第一云端目录和第二云端目录中是否存在错误、重复、缺失的文件。

在第一云端和第二云端分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验时,优选地,第一云端和第二云端根据预设的摘要算法(例如sha、hmac算法)分别对第一云端目录和第二云端目录中的每个文件进行摘要计算,得到对应的摘要值,第一云端和第二云端通过将摘要值和对应的文件基准摘要值进行比较,检验第一云端目录和第二云端目录中的每个文件的数据完整性,从而提高对数据完整性检验的有效性。

在进行数据完整性检验之后,优选地,第一云端和第二云端分别根据对应的检验结果在第一云端目录和第二云端目录中以递归的方式定位、修复本云端存储的文件及目录,包括:上传完整的文件、下载缺失的文件、重命名已有文件、删除已有文件及目录,从而提高第一云端和第二云端存储的数据的完整性,以及与本地数据的一致性。

在步骤s104中,当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步。

在本发明实施例中,在应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步时,优选地,应用网关根据文件基准摘要值分别对第一云端目录和第二云端目录中存储的文件进行遍历,查找第一云端目录与第二云端目录中不一致的文件,得到对应的遍历结果,应用网关根据该遍历结果对第一云端目录和第二云端目录中的文件进行数据修复、复制、删除等更新操作,实现第一云端目录和第二云端目录文件的相互同步,以保证第一云端的第一云端目录中的文件和第二云端的第二云端目录中的文件是一致的,从而保障了双云端数据的一致性,提高了双云端数据的安全性。

在应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步之后,优选地,应用网关根据数据同步的同步结果对第一云端目录和第二云端目录中的错误文件进行定位并输出错误报告,从而根据数据同步的同步结果输出报告,提高对数据同步的监督程度。

在对第一云端目录和第二云端目录中的错误文件进行定位并输出错误报告时,优选地,根据同步结果,第一云端和第二云端分别对第一云端目录和第二云端目录中已更新的文件进行数据完整性检验,得到对应的第一检验结果和第二检验结果,根据第一检验结果和第二检验结果,第一云端和第二云端对第一云端目录和第二云端目录中的错误文件进行定位,得到对应的第一云端错误报告和第二云端错误报告,应用网关接收第一云端和第二云端分别发送的第一云端错误报告和第二云端错误报告并输出,以及时报告给用户,从而提高对双云端数据的管理程度,进而提高双云端数据的可用程度。

在本发明实施例中,应用网关根据数据存储请求将对应文件目录中的文件上传至第一云端和第二云端,并存储上传的每个文件对应的文件基准摘要值,应用网关定时发送包含文件基准摘要值的数据安全检验请求到第一云端和第二云端,第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验,当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步,从而保障了云数据的完整性、可用性以及双云端数据的一致性,并提高了云数据的安全性。

实施例二:

图2示出了本发明实施例二提供的基于双云端的数据安全存储装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分,其中包括:

文件上传单元21,用于当接收到管理员发送的数据存储请求时,应用网关将与数据存储请求对应的文件目录中的文件上传至第一云端和第二云端,对上传的每个文件进行摘要计算,并存储计算得到的、每个文件对应的文件基准摘要值;

请求发送单元22,用于应用网关对预设的安全检验周期进行监测,当监测到到达安全检验周期时,应用网关分别发送数据安全检验请求到第一云端和第二云端,数据安全检验请求包含文件基准摘要值;

完整性检验单元23,用于第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验;以及

数据同步单元24,用于当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步。

如图3所示,优选地,本发明实施例提供的基于双云端的数据安全存储装置还包括:

错误报告输出单元25,用于应用网关根据数据同步的同步结果对第一云端目录和第二云端目录中的错误文件进行定位并输出错误报告。

完整性检验单元23包括:

摘要计算单元231,用于第一云端和第二云端分别对第一云端目录和第二云端目录中的每个文件进行摘要计算,得到对应的摘要值;以及

完整性检验子单元232,用于第一云端和第二云端通过将摘要值和对应的文件基准摘要值进行比较,检验第一云端目录和第二云端目录中的每个文件的数据完整性。

数据同步单元24包括:

文件遍历单元241,用于应用网关根据文件基准摘要值分别对第一云端目录和第二云端目录中存储的文件进行遍历,查找第一云端目录与第二云端目录中不一致的文件,得到对应的遍历结果;以及

数据同步子单元242,用于应用网关根据遍历结果对第一云端目录和第二云端目录中的文件进行相互同步。

错误报告输出单元25包括:

检验结果获得单元251,用于根据同步结果,第一云端和第二云端分别对第一云端目录和第二云端目录中已更新的文件进行数据完整性检验,得到对应的第一检验结果和第二检验结果;

错误文件定位单元252,用于根据第一检验结果和第二检验结果,第一云端和第二云端对第一云端目录和第二云端目录中的错误文件进行定位,得到对应的第一云端错误报告和第二云端错误报告;以及

报告输出子单元253,用于应用网关接收第一云端和第二云端分别发送的第一云端错误报告和第二云端错误报告并输出。

在本发明实施例中,基于双云端的数据安全存储装置的各单元可由相应的硬件或软件单元实现,各单元可以为独立的软、硬件单元,也可以集成为一个软、硬件单元,在此不用以限制本发明。具体地,各单元的实施方式可参考前述实施例一的描述,在此不再赘述。

实施例三:

图4示出了本发明实施例三提供的计算设备的结构,为了便于说明,仅示出了与本发明实施例相关的部分。

本发明实施例的计算设备4包括处理器40、存储器41以及存储在存储器41中并可在处理器40上运行的计算机程序42。该处理器40执行计算机程序42时实现上述基于双云端的数据安全存储方法实施例中的步骤,例如图1所示的步骤s101至s104。或者,处理器40执行计算机程序42时实现上述各装置实施例中各单元的功能,例如图2所示单元21至24的功能。

在本发明实施例中,应用网关根据数据存储请求将对应文件目录中的文件上传至第一云端和第二云端,并存储上传的每个文件对应的文件基准摘要值,根据安全检验周期,应用网关定时发送包含文件基准摘要值的数据安全检验请求到第一云端和第二云端,第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验,当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步,从而保障了云数据的完整性、可用性以及双云端数据的一致性,并提高了云数据的安全性。

本发明实施例的计算设备可以为个人计算机、服务器。该计算设备4中处理器40执行计算机程序42时实现基于双云端的数据安全存储方法时实现的步骤可参考前述方法实施例的描述,在此不再赘述。

实施例四:

在本发明实施例中,提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行时实现上述基于双云端的数据安全存储方法实施例中的步骤,例如,图1所示的步骤s101至s104。或者,该计算机程序被处理器执行时实现上述各装置实施例中各单元的功能,例如图2所示单元21至24的功能。

在本发明实施例中,应用网关根据数据存储请求将对应文件目录中的文件上传至第一云端和第二云端,并存储上传的每个文件对应的文件基准摘要值,根据安全检验周期,应用网关定时发送包含文件基准摘要值的数据安全检验请求到第一云端和第二云端,第一云端和第二云端接收到数据安全检验请求后,根据文件基准摘要值,分别对与文件目录对应的第一云端目录和第二云端目录中的文件进行数据完整性检验,当完成数据完整性检验后,应用网关对第一云端目录和第二云端目录中存储的文件进行数据同步,从而保障了云数据的完整性、可用性以及双云端数据的一致性,并提高了云数据的安全性。

本发明实施例的计算机可读存储介质可以包括能够携带计算机程序代码的任何实体或装置、记录介质,例如,rom/ram、磁盘、光盘、闪存等存储器。

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

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