CN108139869A - 动态分布的备份方法和系统 - Google Patents

动态分布的备份方法和系统 Download PDF

Info

Publication number
CN108139869A
CN108139869A CN201680058205.2A CN201680058205A CN108139869A CN 108139869 A CN108139869 A CN 108139869A CN 201680058205 A CN201680058205 A CN 201680058205A CN 108139869 A CN108139869 A CN 108139869A
Authority
CN
China
Prior art keywords
server
data
storage
data block
block
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.)
Pending
Application number
CN201680058205.2A
Other languages
English (en)
Inventor
F·皮诺尔特
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ROBERTO GIORI CO Ltd
Original Assignee
ROBERTO GIORI CO Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ROBERTO GIORI CO Ltd filed Critical ROBERTO GIORI CO Ltd
Publication of CN108139869A publication Critical patent/CN108139869A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1446Point-in-time backing up or restoration of persistent data
    • G06F11/1458Management of the backup or restore process
    • G06F11/1464Management of the backup or restore process for networked environments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/062Securing storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Hardware Redundancy (AREA)

Abstract

本发明涉及计算机领域,并且尤其涉及在多个存储服务器上数据的分布存储。分布备份方法包括以下步骤:划分数据以获得数据块;针对每个数据块确定多个存储服务器中的一个相应存储服务器;以及将每个数据块存储在所确定的服务器处。根据本发明,相应服务器的确定是根据当前时刻进行的。它还随着用户的专用密钥而变。密钥被用来形成掩码。掩码根据当前时刻被移位。然后被移位的掩码和其补码被分别应用到两个服务器分布表中,以便针对每个数据块标识要使用的服务器。数据块在每个新的时刻能够调换服务器。

Description

动态分布的备份方法和系统
发明范围
本发明涉及计算机领域,并且更具体地涉及用于在包括多个存储服务器的计算机网络中存储用户相关数据的系统和方法。换句话说,它涉及网络上数据的分布或分配的存储或备份。
发明内容
使用广泛的计算机网络(如互联网)来保护数据存储的安全的想法并不新鲜。在新闻报道的文章《使用互联网作为分布存储系统》(http://www.lemondeinformatique.fr/actualites/lire-utiliser-internet-comme-systeme-de-stockage-reparti-22932.html),它已经表明,这个想法,对某些公司而言既雄心勃勃又简单,其在于将大量待存档数据划分成片段并将其分布存储在互联网上的所有可用资源上。这种被称为DSG(英文“dispersed storage grid”)的方案是基于70年代末在麻省理工学院开发的算法。它允许将数据划分成片段,并为每个片段比较再生成丢失段的可能性。该系统的可靠性将为其提供一个可用性记录:在一百万年内不到一小时的不可用性。
今天,云上的数据存储或备份被广泛使用。
然而,尽管有许多数据加密技术,但现有解决方案提出的对于用户特定数据的机密性而言,安全性水平可能不令人满意。特别是攻击者可以试图在所使用的存储服务器上取回构成初始秘密数据的数据块,而无法采取有效的对策,特别是因为访问该数据的递归性可能随着时间被复杂的间谍设备破坏数据密码。
文献US 2007/073990描述了在服务器上构成文件的块的分布式存储。服务器列表由与该文件关联的种子确定。每当添加或删除服务器时,会为可用服务器执行新的块分配,其时根据此新的分配,将块的重新分布仅限制在添加或删除的服务器所涉及的块内。
发明内容
因此本发明的目的是改善个人数据分布存储在多个服务器上时的安全性。
为此目的,本发明的第一方面涉及一种在包括多个存储服务器的计算机网络中存储与用户相关联的数据的方法,该方法包括以下步骤:
划分数据以获得多个数据块;
针对每个数据块确定多个存储服务器中的一个相应存储服务器,并且
将每个数据块存储在相应存储服务器处,
其特征在于相应服务器的确定和当前时刻有关。
尤其是,根据当前时刻的相应服务器的确定针对每个数据块来进行,以使得用于存储每个相应数据块的存储服务器在时间上周期性地变化。
相关地,本发明,根据第二方面,涉及一种用于在包括多个存储服务器的计算机网络中存储与用户相关联的数据的系统(其可以被集成在一个简单的用户终端中),该系统包括至少一个微处理器,被配置为在系统的执行环境中执行以下步骤:
划分数据以获得多个数据块;
针对每个数据块确定多个存储服务器中的一个相应服务器,以及
将每个数据块存储在相应存储服务器处,
其特征在于相应服务器的确定随着当前时刻而变化。
根据本发明的方法或系统因此增强了个人数据,例如加密或不加密的机密数据或个人程序,的安全性。
这种增强的安全性是通过用于存储由划分个人数据产生的每个数据块的存储服务器的时间相关性而获得的。结果是,用于存储特定数据块的存储服务器可以随时间变化,换而言之即根据一个或多个动态分布法则来确定。因此定位和取回数据块的任务对于恶意人来说大为复杂。
根据本发明的方法的可选特征在从属权利要求中被进一步定义。根据本发明的系统同样可以包括被配置为实现这些可选特征的装置。
在一种实现方式中,在每个新的时刻,针对每个数据块一个新的相应的存储服务器被确定,以便在每个新的时刻将数据块存储到一个新的存储服务器处。
这种设置明确规定了待使用服务器的确定对于时间的依赖性。
在一种特定实现方式中,该方法响应于访问与用户相关联的数据的请求还包括以下步骤:
标识在指定时刻存储数据块的存储服务器;
从由此被标识的各个存储服务器中取回数据块,以便重建所述数据;以及
在检测到基于所取回数据块重建的数据上的错误的情况下,标识在随后的时刻(紧接在给定时刻之后的时刻)存储数据块的新的存储服务器,然后从如此标识的各个新存储服务器中取回数据块以重建所述数据。
这种设置使得能够在时刻变化期间处理数据块的存储不连续性。实际上,根据在此时刻变化期间接收到的访问数据请求被处理得快慢,数据块可以根据适用于T+1时刻的新的分布存储方案,从一台服务器转移至另一台服务器。
因此,数据通过使用适用于T时刻的方案被重构,并且如果该数据有错误(缺乏相容性(cohérence),在重构数据中诸如用户身份等识别标准上的错误等),则通过使用适用于T+1时刻的方案继续进行重构。
在另一种实现方式中,相应服务器的确定还和与用户相关联的一个专用二进制密钥有关。重要的是,无论哪个密钥与用户关联,都以二进制形式使用该密钥。
这种设置使得可以根据每个用户对存储服务器的分布方案进行加密,并且因此对于恶意人员来说,用以识别每个数据块的存储位置的操作变得复杂。
根据一种特定实施方式,确定存储服务器的步骤包括在于将二进制密钥作为掩码应用于第一服务器分布表以标识要用于相应数据块的的存储服务器的步骤,所述第一服务器分布表将一个服务器关联到每个数据块。
对密钥的知识因此对于识别所使用的每个存储服务器而言变得必不可少。
根据一种特定特征,确定存储服务器的步骤还包括在于将二进制密钥的补码作为掩码应用于第二服务器分布表以标识要用于其他相应数据块的存储服务器的步骤。特别地,所述第二服务器分布表可以将一个服务器关联到每个数据块并且可以基于与第一服务器分布表相同的基本表形成。例如,通过重复(和连接)基本表来生成分布表,考虑到基本表的重复,第二分布表是第一分布表的继续。
这些设置使得可以以非常安全的方式确定待使用的存储服务器。
根据一种特定实施方式,由二进制密钥构成的掩码在被应用到第一或第二服务器分布表之前,相对于第一或第二服务器分布表移动根据当前时刻的数量的位置。当前时刻因此被用作掩码(用户的二进制密钥)应用中的干扰参考,增强了个人数据的分布存储的安全性。
根据另一种特定实施方式,该掩码是由二进制密钥的重复(可能是部分重复)以达到第一或第二服务器分布表的尺寸,即要存储的数据块的数量,而形成。
因此一个恶意的人将不得不知道用户的密钥来试图定位存储每个数据块的服务器。
根据又一特定实施方式,该方法还包括确定服务器分布基本表的步骤,通过复制该基本表来获得服务器分布表,
该方法其中确定基本表的步骤和与每个存储服务器相关联的性能指标和与每个存储服务器的地理位置相关联的置信指标有关。
因此,可以实施优先使用某些服务器的策略,以便例如优待性能好的和/或位于低地理风险(例如地震风险或地缘政治风险)的区域的服务器。
根据一个特定特征,基本表的长度和与存储服务器相关联的权重之和有关,与存储服务器相关的权重是基于所考虑的存储服务器的性能和置信指标而确定的。
根据另一特定特征,确定基本表的步骤包括以下步骤:
针对每个存储服务器,根据与所考虑的所述存储服务器相关联的权重,确定存储服务器在基本表中出现的重复频率(例如,通过标识符);
针对每个被反复考虑的服务器并根据其所确定的重复频率,通过重复进行服务器在基本表内的出现直至达到等于与所考虑服务器的权重的重复数目,来填充基本表。
基本表因此可以获得多个服务器的复杂和交织分布,其比例等于它们各自的权重,即它们的置信和性能指标。同时,重建这样的基本表对于恶意人员来说是复杂的,同时各服务器的特征确保服务器之间的公平性。
要注意的是,在形成基本表时,如果在另一个存储服务器的新重复期间(在基本表中的)某个位置已经被存储服务器的出现而占用,我们可以决定将这另一个存储服务器的出现移位到下一个空闲位置,然后从这个新位置上重新开始这个重复。为了达到预期的重复/出现次数而却到达了基本表的末尾,可以规定通过在基本表的开始处再次循环来继续该重复。例如,如果基本表的长度等于权重的总和,则有必要,为了填充整个基本表,每个服务器具有与其自身权重相等的出现次数。
在本发明的一种实施方式中,划分数据的步骤包括以下步骤:
将数据划分成数据基本块;
将基本块复制成重复块;
交织复制块以获得所述多个数据块。
这种设置使得能够引入形成初始个人数据的基本块的冗余,且由此可以改善在系统中存储的可靠性。
附图说明
本发明的其他特征和优点将在以下通过附图图示的说明中显现,其中:
—图1示出了其中可以,特别是以计算机程序的形式,实现本发明的硬件架构的例子;
—图2示出了包括其中可以实现本发明的多个存储服务器的计算机网络的示例;
—图3,借助于流程图,示出了根据本发明实现方式的数据分布备份方法的一般步骤;
—图4,以流程图形式,示出了用于确定图3的方法的存储服务器的步骤;
—图5示出了实施图4的步骤的一个示例;
—图6,以流程图形式,示出了用于确定图3方法的基本表的步骤;
—图7示出了实施图6的步骤的一个示例;
—图8,以流程图形式,示出了访问根据图3的方法备份的数据的方法的一般步骤的示例。
具体实施方式
图1示出了其中可以,特别是以计算机程序的形式实现本发明的硬件架构的一个示例。例如,这种硬件架构可以是设备或用户终端的一部分,例如车载或非车载电脑,手提电脑,移动终端,移动平板电脑,或者是提供数据分布备份和数据访问服务的服务器。
该硬件架构10特别包括一条通信总线其连接到:
—处理单元110,被标记为CPU(中央处理器Central Processing Unit),其可以包括一个或多个处理器;
—至少一个非易失性存储器120,例如ROM(只读存储器Read Only Memory),EEPROM(电可擦只读存储器Electrically Erasable read only memory)或者还有闪存Flash,用于存储用于实施本发明的计算机程序以及用于此的任何可能的参数;
—随机存取存储器130或高速缓冲存储器或易失性存储器,例如RAM(随机存取存储器Random-Access Memory),被配置为用于存储根据本发明实施模式的方法的可执行代码,并且用于存储适于至少暂时存储根据实施模式实施本发明的所需的变量和参数的寄存器;
—I/O(Input/Output)输入/输出接口140,例如屏幕,键盘,鼠标或诸如触摸屏或遥控器之类的其他指示设备,允许用户通过图形接口与系统交互;和
—适于通过计算机或通信网络与例如存储服务器交换数据的通信接口COM 150。
存储在非易失性存储器120中的程序指令代码被加载到RAM 130中以供CPU处理单元110执行。
非易失性存储器120还存储用户的机密信息,例如二进制形式的私钥。当然,为了改进这种私钥的保护,私钥可以被存储在芯片卡类的安全元件(Security Element缩写为SE)中,根据该硬件架构配备该系统或还配备在HSM(硬件安全模块)上。
本发明属于通信网络的存储服务器上的数据分布的备份(或存储)的范围,该通信网络通常是广泛的计算机网络,例如互联网。
图2示出了包括一组M个存储服务器Sx的计算机网络20的示例。在该图的非限制性示例中,呈现了四个(M=4)存储服务器S1、S2、S3和S4。服务器在同一个参考时钟上同步。
用户终端21,呈现图1的硬件架构,允许用户请求有时是保密的,加密或不加密的个人数据的备份,并且一旦在网络20中以分布方式存储了该个人数据,能够访问该个人数据。
用户终端21可以实施本发明来管理这样的个人数据的分布存储及其以后的访问。或者,用户终端21可以访问由网络20的一个服务器S提供的被分配数据的备份服务及该数据的后期访问服务。在这两种情况下,随后讨论的所有参数(置信度和性能指标,用户密钥等)可以存储在这样一个服务器S上,且如果需要,可以由用户终端取回(检索)。
数据的分布保护存储的一般原理包括划分数据以获得多个数据块;针对每个数据块,确定所述多个存储服务器中相应的一个存储服务器;并将每个数据块存储在相应的存储服务器上。
在这种情况下,本发明通过根据实时时刻,也就是说根据时间确定每个相应的服务器来提高根据这些解决方案存储的数据的保护并因此提高安全性。
这会导致每个数据块的定位会随时间而变化,这使得恶意人员对它们的取回(检索)变得更为困难。
图3借助于流程图示出了根据本发明实施模式的示例方法的一般步骤。这些步骤在根据本发明的系统中被实施,该系统可以是图2的用户终端21或服务器S。
在步骤30中,存储个人数据DATA的请求从用户(必要时经由用户终端21)被接收。
这个数据是个人的,因为它被关联到一个用户或一组用户。它可以由多个基本数据,例如机密数据组成。通常,个人数据被加密。
个人数据DATA形成尺寸为LENGTH的文件。
步骤31中,DATA数据被划分以获得多个数据块。这一步分解为三个子步骤:将数据DATA分成数据基本块D1-DNb;将基本块复制成复制块D'1-D'Nb以获得足够的冗余度;以及交织复制块以提高存储机制的可靠性。
数据DATA可以被分成Nb个固定尺寸Lfixe的块,适用于其时的任何数据DATA:Nb=┌LENGTH/Lfixe┐,其中┌┐是在有余数时时返回向上取整的整数部分(la partie entière par excès)的函数。
作为变型,数据DATA可以被分成多个相同尺寸Lvar的块,该块的尺寸是可变的,因为它可以取决于一个或多个参数,例如从以下参数中选定的参数:数据DATA的尺寸LENGTH、用户、数据分布备份和访问服务的运营商等。那么获得的块的数量是:
Nb=┌LENGTH/Lvar┐
长度可变的用户进一步提高了要备份的数据的安全性。
例如,块尺寸随着数据DATA的尺寸LENGTH的可变性可以遵循以下公式之一:
Lvar=┌Lmin+(LENGTH/Nbmax)┐,
其中Nbmax是预定义的参数且Lmin是预定义的最小整数尺寸。在此情况下,所获得的数据块数量Nb趋向于Nbmax且数据DATA尺寸很大;
当LENGTH<Nbmax2时,Lvar=√(LENGTH)
当LENGTH≥Nbmax2时,Lvar=LENGTH/Nbmax
在此情况下获得的数据块数量Nb值是min(┌√(LENGTH)┐,Nbmax),而因此倾向于Nbmax且数据DATA尺寸很大。
例如,根据用户的块的尺寸的可变性可以在于使用用户的唯一标识符ID(例如社会保险号码,护照或身份证号码等)在预定义的时间区间[0;Nbmax]执行标准化操作来计算这个长度:
Nb=ID–Nbmax.└ID/Nbmax┘,其中└┘是返回向下取整的整数部分(la partieentière par défaut)的函数,且结果是:
Lvar=┌LENGTH/Nb┐=┌LENGTH/(ID–Nbmax.└ID/Nbmax┘)┐。
或者,时间区间[0;Nbmax]的一个整数可以被随机分配给每个用户并用于定义Nb值。可变尺寸则直接来自:Lvar=┌LENGTH/Nb┐。
例如,随运营商而变的块尺寸的可变性可以在于根据预订或性能的选择而提供不同的数据划分级别(Nb值)。划分成大量的块的解决方法被证明更安全,但如后面所述需要更多的计算。此外,这种级别的划分可以为高级订户保留。
当然,这些不同的例子可以彼此组合以便产生数据DATA划分成数据块D1-DNb的可变长度。
在另一可选的方式下,这些数据块D1-DNb可以被复制以提供数据冗余,使得数据DATA的重建更可靠。在一种实现方式中,冗余定律可以是固定的,将复制的数量RD定义为固定数量,例如3。
根据另一种实施方式,应用的冗余定律可以是可变的,因为它可以依赖于一个或多个参数,例如根据被赋予M个服务器Si的置信指标CSi。例如,复制的整数量赋值为:
RD=RDmax+moy(CSi)i=1…M-└(∑CSi)/M+1┘
其中RDmin≤RD≤RDmax#RDmin和RDmax是两个预定值;且moy()是返回中间值或平均值的函数。
给定复制的数目RD,从n个基本块D1-DNb中获得Nb'=RD.Nb个块D'1-D'Nb
同样在另一可选的方式下,考虑到在D'1-D'Nb块的处理中发生的错误,m个D'1-D'Nb块可以被交织以提高备份系统的可靠性。
例如,所产生的数据块D'1-D'Nb的交织可以是深度P的单调的,这意味着每一组P个基本块Di被复制RD次。例如,当RD=3且P=4,我们认为每组4个块依次如下所示:
D1D2D3D4D1D2D3D4D1D2D3D4D5D6D7D8D5D6D7D8D5D6
或者,一种深度P的复杂交织可以被实施,这意味着对于每组P个基本块,它们的复制是混合的。例如当RD=3且P=6,
D1D4D2D5D3D6D5D2D4D1D6D3D6D1D3D4D2D5D8D10D7D9D11D12
步骤31之后,在步骤32处获得服务器Si的分布基本表,记录为TABLEE
基本表TABLEE由多个有序的LTABLE条目组成,每个条目标识其中一个Si服务器。
该基本表TABLEE可以是在系统的非易失性存储器中取回的预定义表格。或者,它可以根据下面描述的图6的方法确定,特别是以便促进服务器的置信度和/或高性能。
仅出于说明目的这里重现一个长度为LTABLE=21的基本表的示例,其中当M=4时仅显示服务器Si的索引i:
1 2 3 4 3 1 3 4 2 3 1 3 4 3 4 1 2 3 4 3 4
步骤32之后,在步骤33中获得用户的私钥。优先推荐从椭圆曲线获得密钥。这个密钥,标为K,以安全方式被存储在实施本发明的系统中,例如借助芯片卡类型的安全元件。
如稍后所解释的,私钥K用于确定用于存储每个块D’i的服务器。
随后在步骤34,根据当前时刻Tu,针对每个数据块D'i在多个存储服务器中确定相应的存储服务器。当前时刻以直接取决于所选时间单位的精度来定义。
例如,如果选择小时级别的时间单位,则时刻可以由当前小时来定义。在此情况下,一天被划分成24个连续时刻,由它们各自的小时时间Tu=0至23来标识。由于根据本发明的存储取决于时间,所以这样的时间单元允许每天24次修改块D'i的存储位置。
或者,可以使用日级别的时间单位,以便每月30或31次更改块D'i的存储位置。
与用于确定用于存储数据块的新位置的步骤31至35的处理时间相比,这些建议的时间单位提供了很长的优势。事实上,由此获得大于1000的比率(这种通过计算机装置进行的处理通常少于几秒),从而可以减少当接收到访问DATA数据的请求时与从一个时刻到下一个时刻的过渡过程相关的含糊不清风险。
然而,管理这些风险的机制可以如稍后参照图8所描述的那样实施。
步骤34,其实施模式在下面参照图4更详细地描述,其从而使得可以识别由初始数据DATA划分产生的每个数据块D'i的存储服务器,且这随着当前时刻Tu而变。
接着,在步骤35中,在由此确定的相应存储服务器上实际存储每个数据块。与存储服务器Si一起的安全化常规通信技术被优先实施。
该方法在步骤36中继续,其中系统等待下一个时刻,例如下一小时或随后一天的开始。当新的时刻到了,步骤31至35被重复以便为每个数据块D'i确定新的相应的存储服务器,并且因此在此新时刻期间将数据块存储在新的存储服务器上。最好,将数据块从在刚刚结束的旧时刻期间存储它们的旧存储服务器中擦除。
由此可见,数据DATA以块为单位的分布式备份是动态演变的,这使得数据块D'i的定位任务对于恶意人员来说非常困难。
应该注意的是,当步骤31,32和33的新执行不涉及当前时刻作为参数(例如分布基本表可能会随着时间而变化)时,可以简单地取回先前执行这些步骤的结果。
步骤35取决于当前时刻,这确保为每个被待备份的数据块标识的存储服务器随时间而变化。
图4示出了确定用于在当前时刻Tu备份数据块D'i的存储服务器的步骤34的实现。除了当前时刻Tu之外,该确定还考虑到私钥K,分布基本表TABLEE以及待备份的数据DATA的尺寸LENGTH。
第一步骤40在于通过复制基本表TABLEE以获得长度等于Nb'的表TABLE1(也就是说表TABLE1的长度与待备份的数据块D'i的数量相同),从基本表TABLEE中获得第一分布表TABLE1。
图5示出了对于M=4(4个服务器)及41个块D'i,因此获得的基本表TABLEE和第一分布表TABLE1的一个示例。
随后,下一步骤41在于基于私钥K和当前时刻Tu获得二进制掩码MASK。由于该掩码MASK将应用于第一个分布表TABLE1,因此它具有与其相同的尺寸Nb'。
在图5的例子中,私钥K以其二进制('1'和'0'序列)形式被使用,这里是一个32位的密钥。随后,掩码MASK通过重复二进制密钥K形成,直到达到服务器的第一个分布表的尺寸Nb'。在图中,九个粗体位来自密钥K的重复。
随后,在步骤42,将MASK掩码应用于服务器第一分布表TABLE1以标识将用于相应的数据块的一部分D'i的存储服务器。根据各实施模式,正是在此阶段当前时刻Tu被考虑以扰乱对要使用的存储服务器的标识。
尤其是,可以规定,将掩码MASK在被应用到该服务器分布表之前,相对于服务器第一分布表TABLE1的开端偏移为当前时刻Tu的函数的多个位置。
如图5所示,掩码MASK在被应用到表TABLE1之前被偏移Tu个位置(位移由K<<Tu表示);并且此掩码操作的结果RESULT1(掩码的'1'标识要保留的表TABLE1的服务器)仅标识要使用的存储服务器的一部分。
步骤43中,通过复制基本表TABLEE从基本表TABLEE中获得尺寸为Nb'的服务器第二分布表TABLE2。为了获得与第一表TABLE1不同的表TABLE2,第二分布表可以简单地是对于基本表的重复的第一分布表的延续,如图5所示。
随后,步骤44中,获得例如由第一掩码MASK的二进制补码(逐位)构成的第二掩码MASK2。第二掩码同样具有等于Nb'的尺寸。
步骤45中,第二掩码MASK2被以与步骤42中相同的方式应用于第二分布表TABLE2,以便标识将用于其他数据块D'i的存储服务器(那些步骤42不能标识的服务器)。事实上,使用第一个掩码的补码确保最终每个块D'i与相应的一个存储服务器相关联。
图5通过参考RESULT2标识该操作的结果。
当然,当全部数据块D'i没有都被分配相应的存储服务器时,其他方法可以被实施,例如使用基于私钥K和时刻Tu生成的其他掩码,以及掩码操作的重复进行。
图4的过程在步骤46中通过合并掩码操作的结果RESULT1和RESULT2而结束,以便获得Nb'个存储服务器定位的RESULT栅格。
因此该栅格标识将用于Nb'个数据块D'i中每一个的存储服务器Si
现在参照图6描述确定服务器分布基本表TABLEE的步骤32的实现,通过复制服务器分布基本表,服务器分布表TABLE1和TABLE2得以获得。
在该方法中,确定基本表的步骤是根据与每个存储服务器相关联的性能指标以及与每个存储服务器的地理位置相关联的置信指标的。
另外,我们假定附属于图2服务器Si的一组属性。
每个服务器Si与一个地理位置LSj=1...N相关联。两个服务器可以具有相同的位置LSj,其中N≤M。
置信指标CSj与每个位置LSj相关联。这个置信指标代表了有关已定位服务器的可访问性的局部稳定性。例如,这个置信指标可以如专利EP2 433 216中那样,例如在考虑地震、洪水、地缘政治等风险情况下,为所考虑的位置建立0(低置信度)至CSmax=10(强置信度)的梯度范围。当然,其他值的范围是可能的。
因此每个存储服务器Si与和其地理位置有关的置信指标CSi间接关联。
另外,性能指标PSi,例如根据对该服务器的访问性能和/或服务器自身的性能,与每个存储服务器Si相关联。
存在大量的技术使得可以扩展服务器性能,尤其是存储性能、内存性能、处理器性能,网络性能和处理性能。所以在这里就不详细描述了。
性能指标PSi优选地建立在从0(差的性能)到PSmax=10(非常高性能)的梯度范围内。当然,其他值也是可能的。
注意性能指标PSi可以随时间变化:PSi=f(Tu),在这种情况下,例如步骤32在每个新的时刻(在步骤36之后)被完全重新执行。
如图6所示,确定服务器分布基本表TABLEE的步骤开始于获得与每个存储服务器Si相关联的权重WSi的步骤60。这个权重尤其可以代表相关联的置信度和性能。同样,与一个存储服务器Si相关联的权重WSi可以基于所考虑的存储服务器的性能和置信指标来确定,例如通过组合与Si相关联的指标CSi和PSi
例如:对于权重在0至1变化时WSi=(CSi.PSi)/(CSmax.PSmax)。
或者,为了获得在0和CSmax之间或0和PSmax之间变化的权重,可以使用以下公式之一:
WSi=(CSi.PSi)/PSmax
WSi=(CSi.PSi)/CSmax
此外,若CSmax=PSmax,可以使用以下公式来定义存储服务器的性能和置信之间的平均值:
WSi=(CSi+PSi)/2。
设置WSi权重,步骤61包括根据与存储服务器相关联的权重之和来确定基本表的长度LTABLE。例如,LTABLE=∑i=1...M(WSi)。如果WSi取在0和10之间(CSmax=PSmax=10)的值,那么表长度最多为10M。
然后,在步骤62,索引'x'被初始化为1。该索引用于后面描述的算法循环中,用于处理所有存储服务器:x=1...M。
然后在步骤63,根据与所考虑的存储服务器Sx相关联的权重WSx为每个存储服务器确定重复频率Fx。如随后所用到的,Fx代表在分布基本表TABLEE中存储服务器Sx当创建时出现的频率。
因此,WSx权重越高(置信和/或性能好的服务器),可以选择越高的重复频率来优待置信和/或性能好的服务器。
例如,1/Fx=└(LTABLE/WSx)┘。换句话说,在表TABLEE内部在所有└(LTABLE/WSx)┘位置重复服务器Si
随后在接下来的步骤中,表TABLEE通过以频率Fx重复每个服务器Sx WSx次来形成。
例如在步骤64中,我们用TALBEE(x)=x初始化服务器Sx的TABLEE的填充。因此基本表TABLEE中的第一个位置告知服务器S1
如果表中的这个条目已经被使用,则取随后的第一个可用条目TABLEE(x)。
所告知的条目的位置被存储在变量'z'中。另外,将出现次数NBOCC计数器初始化为1。
然后在步骤65中检查是否Sx服务器的所有出现次数都已添加到TABLEE表中:《NBOCC=WSx?》。
在否定的情况下,步骤66规定告知在TABLEE表中服务器Sx的随后一次出现的情况。
为此,随后一个条目的位置被确定:
Z←(z+1/Fx)mod(LTABLE).
如果相应的条目TABLEE(z)已经被告知,则再次取随后的第一个可用条目(如果需要,循环回到表的开始处),在这种情况下,将其索引存储在变量z中。
随后,TABLEE(z)条目被告知以指示存储服务器Sx:TABLEE(z)=x,并且变量NBOCC递增。
该方法然后循环到步骤65以便在基本表TABLEE中的填入服务器Sx所有出现。
当所有这些出现都已经被公知(测试65的输出“是”)时,步骤67确定是否所有服务器已经被处理了:《x=M?》,在这种情况下,图6的过程结束。在否定的情况下,在循环回到步骤63之前,通过递增索引x来考虑随后一个存储服务器(步骤68)。
根据LTABLE的定义,TABLEE表中的所有条目最终告知一个存储服务器。
图7说明了M=4个服务器时图6的过程,其中权重WS1=4,WS2=3,WS3=8和WS4=6。基本表TABLEE通过针对每个重复考虑的服务器Si并根据其所确定的重复频率(Fi)在基本表内重复进行服务器的出现,直到达到等于与所考虑的服务器关联的权重WSi的重复数目NBOCC。
步骤61使得能够获得LTABLE=4+3+8+6=21
步骤63至66的第一循环(x=1)使得能够获得
1/F1=└(LTABLE/WS1)┘=└21/4┘=5
那么,得到TABLEE(1)=1,TABLEE(1+5=6)=1,TABLEE(6+5=11)=1且TABLEE(11+5=16)=1。因为在此阶段NBOCC=4=WS1,服务器S1的其他任何出现都不会被添加到分布基本表TABLEE中,特别是在图中按首字母缩写‘◆’标识的条目TABLEE(16+5=21)处。
在第二个循环(x=2)期间,1/F2=└21/3┘=7,则TABLEE(2)=2,TABLEE(2+7=9)=2。因为条目TABLEE(16)已经(针对服务器S1)被告知,所以该条目被掠过(图中的点‘●’)并且下一个可用条目被选择TABLEE(17)=3。此时NBOCC达到WS2=3,这将结束针对服务器S2的循环。我们在这里看到,与服务器S1相比,服务器S2的出现次数较少,这是由于前者具有较高权重(4对3)。
在第三次循环(x=3)期间,1/F3=└21/8┘=2,然后TABLEE(3)=3,TABLEE(5)=3,TABLEE(7)=3。由于TABLEE(9)条目已经(针对服务器S2)被告知,下一个可用条目被选择TABLEE(10)=3。然后,取得根据1/F3的出现次数:TABLEE(12)=3,TABLEE(14)=3。因为TABLEE(16)和TABLEE(17)条目已经被告知,所以下一个可用条目被选择TABLEE(18)=3。为了达到NBOCC=WS2=3的最后一次出现被告知:TABLEE(20)=3。
最终,在第四循环(x=4)期间,1/F4=└21/6┘=3,则TABLEE(4)=4,TABLEE(8)=4(由于TABLEE(7)已被告知),TABLEE(13)=4(由于TABLEE(11)至TABLEE(12)已被告知),,TABLEE(19)=4(由于TABLEE(16)至TABLEE(18)已被告知)。因为z+1/F4=22大于LTABLE,我们循环回到基本表TABLEE的开始处,在这里我们找到第一个可用的条目TABLEE(15)来告知服务器S4。最终,在最后一个可用条目TABLEE(21)中告知服务器S4的最后一次出现。
由此获得完整输入的基本表TABLEE,其可以被使用在上述步骤32中。
根据图3算法访问备份的数据的方法现在参照图8被描述。如上所述,该算法包括使得能够在接收到访问数据DATA的请求时管理与从一时刻到下一个时刻的转变过渡有关的模糊不清的风险的机制。
该算法通过接收用户U访问数据DATA的请求以步骤80开始。若必需,完成DATA数据的划分、冗余和交织(步骤31)的机制特别用于知晓要取回的数据块D'i的数目Nb'。
变量'loop'被初始化为0,以作为时间过渡的管理机制。
接收请求的时刻Tu被存储。
随后的步骤使得能够标识存储服务器,该存储服务器在此时刻存储形成要访问的数据DATA的数据块。
尤其是,在步骤81中,与步骤32类似地获得基本表TABLEE。随后在步骤82中,以类似于步骤33的方式获得用户的私钥K。随后在步骤83中,对于时刻Tu,以与步骤34类似的方式确定数据块D'i的存储服务器。
在步骤84中,通过常规机制(例如安全请求)从这些确定的存储服务器中取回数据块D'i。随后,在步骤85中,数据DATA基于由此取回的块D'i被重构。
下一个步骤86检查步骤85的结果的相容性。可以验证几个元素来标识可能的错误。例如,验证可以涉及用户U的识别,其必须与重构的DATA数据中所指示的相同(例如,如果数据DATA被加密,则使用用户U的公共密钥使得能够验证真实性)。根据另一个例子,可以执行校验和的验证(例如,如果DATA数据的结尾包含数据的余数的校验和)。可以进行其他验证,例如相对于存储的该用户所进行的操作的可追溯记录的最后一次存储的日期。
当在基于取回的数据块重建的数据上发现不相容或错误(测试87)的情况下,该方法在测试88中继续以验证是否在时刻Tu(循环=0)或在下一个时刻Tu+1(循环=1)测试数据。若loop=0,则在步骤89递增时刻Tu:Tu←Tu+1并回到步骤83以便标识在下一时刻(紧接在接收到访问请求的时刻之后的时刻)存储数据块的新的存储服务器,然后取回(步骤84)来自如此标识的相应新的存储服务器的数据块,以重建(步骤85)所述数据。
若loop=1(测试88),那么响应于用户请求将错误消息返回给用户(步骤90)。
在测试87中无错误的情况下,响应于用户请求将重建的数据返回给用户(步骤91)。
我们看到,如果在时刻Tu借助于块D'i分布方案DATA数据不能被正确地重建,则在后续的Tu+1时刻借助有效的分布方案来重建DATA数据。因此,即使访问请求在接近数据块D'i从服务器转移的过渡时刻时被接收,该方法也使得能够以安全的方式取回所述数据DATA。
刚刚描述的本发明的实施方式使得能够,在一个大型网络中,根据一个或多个动态分布规则确定虚拟的分布备份的位置。这种方案提供分布式的备份数据的高安全水平。各种机制可以提高这种安全性,例如数据块的冗余,使用用户的身份来改变某些参数。
上述示例仅是本发明的实施方式,但不限于此。

Claims (15)

1.一种用于在包括多个存储服务器(Si)的计算机网络(20)中存储与用户相关联的数据(DATA)的方法,所述方法包括以下步骤:
划分(31)数据以获得多个数据块(Di,D'i);
针对每个数据块确定(34)多个存储服务器中的一个相应存储服务器;以及
将每个数据块存储(35)在相应存储服务器处,
其特征在于针对每个数据块相应服务器的确定是根据当前时刻(Tu)进行的,以使得用于存储每个相应数据块的存储服务器在时间上周期性地变化。
2.根据权利要求1所述的方法,其中在每个新的时刻,针对划分所述数据而成的每个数据块确定新的相应的存储服务器,以便在每个新的时刻将数据块存储在新的存储服务器上。
3.根据权利要求2所述的方法,响应于访问与用户相关联的数据的请求,还包括以下步骤:
标识(83)在指定时刻(Tu)存储数据块的存储服务器;
从由此被标识的相应存储服务器取回(84)数据块(Di,D'i),以便重建所述数据(DATA);以及
在检测到基于取回的数据块重建的数据的错误的情况下,在随后的时刻标识存储数据块的新的存储服务器,然后从由此标识出的新的相应的数据服务器取回数据块,以便重建所述数据。
4.根据权利要求1至3中任一项所述的方法,其中相应服务器的确定此外还根据与用户相关联的二进制密钥(K)而进行。
5.根据权利要求4所述的方法,其中确定存储服务器的步骤包括在于将二进制密钥作为掩码(MASK)应用于第一服务器分布表(TABLE1)以标识将要用于相应数据块的一部分的存储服务器的步骤(42),所述第一服务器分布表将服务器与每个数据块相关联。
6.根据权利要求5所述的方法,其中确定存储服务器的步骤还包括在于将二进制密钥的补码作为掩码(MASK2)应用于第二服务器分布表(TABLE2)以标识将要用于其它相应数据块的存储服务器的步骤(45),所述第二服务器分布表将一个服务器与每个数据块相关联并且基于与第一服务器分布表相同的基本表(TABLEE)形成。
7.根据权利要求5或6所述的方法,其中由二进制密钥形成的掩码在被应用于第一或第二服务器分布表之前相对于第一或第二服务器分布表移位随当前时刻而变的数量的位置。
8.根据权利要求5至7中任一项所述的方法,其中掩码由二进制密钥的重复而形成,以达到第一或第二服务器分布表的尺寸(Nb')。
9.根据权利要求5至8中任一项所述的方法,其中还包括确定服务器分布基本表(TABLEE)的步骤(32),通过复制服务器分布基本表来获得服务器分布表,
其中确定基本表的步骤是根据与每个存储服务器相关联的性能指标(PSi)和与每个存储服务器的地理位置(LSi)相关联的置信指标(CSi)进行的。
10.根据权利要求9所述的方法,其中基本表的长度(LTABLE)随与存储服务器相关联的权重(WSi)之和而变化,与存储服务器相关联的权重基于所考虑的存储服务器的性能指标和置信指标被确定。
11.根据权利要求9或10所述的方法,其中确定基本表的步骤包括以下各步骤:
针对每个存储服务器,根据与所考虑的存储服务器相关联的权重确定(63)存储服务器在基本表中出现的重复频率(Fi);
通过针对每个被重复考虑的服务器并根据其所确定的重复频率来重复服务器在基本表内的出现直到达到(65)等于与所考虑的服务器相关联的权重的重复数量(NBOCC),来填充(64,66)基本表。
12.根据权利要求1至11中任一项所述的方法,其中划分数据的步骤包括以下步骤:
将数据(DATA)划分成基本数据块(Di);
将基本块复制成复制块;
交织复制块以获得所述多个数据块(D'i)。
13.一种在包括多个存储服务器(Si)的计算机网络(20)中存储与用户相关联的数据(DATA)的系统,所述系统包括至少一个微处理器(110),所述微处理器被配置为在系统的执行环境中执行以下步骤:
划分数据以获得多个数据块(Di,D'i);
针对每个数据块确定多个存储服务器中的一个相应存储服务器;以及
将每个数据块存储在相应存储服务器处,
其特征在于针对每个数据块相应服务器的确定根据当前时刻(Tu)进行,以使得用于存储每个相应数据块的存储服务器在时间上周期性地变化。
14.根据权利要求13所述的系统,其中微处理器还被配置用于确定在每个新的时刻并且针对划分所述数据而成的每个数据块的新的相应存储服务器,以便在每个新的时刻将数据块存储在新的存储服务器处。
15.根据权利要求13或14所述的系统,其中相应服务器的确定还根据与用户相关联的二进制密钥(K)进行。
CN201680058205.2A 2015-10-08 2016-10-07 动态分布的备份方法和系统 Pending CN108139869A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP15306582.6 2015-10-08
EP15306582.6A EP3153961A1 (fr) 2015-10-08 2015-10-08 Procédé et système de sauvegarde répartie dynamique
PCT/EP2016/074104 WO2017060495A1 (fr) 2015-10-08 2016-10-07 Procédé et système de sauvegarde répartie dynamique

Publications (1)

Publication Number Publication Date
CN108139869A true CN108139869A (zh) 2018-06-08

Family

ID=55027646

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680058205.2A Pending CN108139869A (zh) 2015-10-08 2016-10-07 动态分布的备份方法和系统

Country Status (5)

Country Link
US (1) US10678468B2 (zh)
EP (2) EP3153961A1 (zh)
CN (1) CN108139869A (zh)
BR (1) BR112018006134A2 (zh)
WO (1) WO2017060495A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309528A (zh) * 2020-03-23 2020-06-19 重庆忽米网络科技有限公司 一种基于云计算及分布式存储的数据协同备份系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003063423A1 (en) * 2002-01-24 2003-07-31 University Of Southern California Pseudorandom data storage
US20070073990A1 (en) * 2005-09-23 2007-03-29 Snaman William E Jr Distribution of data in a distributed shared storage system
CN203149553U (zh) * 2013-03-28 2013-08-21 中国大唐集团财务有限公司 一种带有数据安全校验的异地灾备系统
CN103916477A (zh) * 2014-04-09 2014-07-09 曙光云计算技术有限公司 用于云环境的数据存储方法和装置、及下载方法和装置
CN104255011A (zh) * 2012-03-09 2014-12-31 英派尔科技开发有限公司 云计算安全数据存储

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7096328B2 (en) * 2002-01-25 2006-08-22 University Of Southern California Pseudorandom data storage
US20060020569A1 (en) 2004-07-22 2006-01-26 Goodman Brian G Apparatus, system, and method for time-based library scheduling
US9178693B2 (en) * 2006-08-04 2015-11-03 The Directv Group, Inc. Distributed media-protection systems and methods to operate the same
FR2945644A1 (fr) 2009-05-18 2010-11-19 Alcatel Lucent Systeme de sauvegarde de donnees
KR101483127B1 (ko) * 2011-03-31 2015-01-22 주식회사 케이티 클라우드 스토리지 시스템에서 리소스를 고려한 자료분배방법 및 장치
US8732421B2 (en) * 2011-08-26 2014-05-20 Hitachi, Ltd. Storage system and method for reallocating data
WO2014010016A1 (ja) * 2012-07-09 2014-01-16 富士通株式会社 プログラム、データ管理方法、および情報処理装置
WO2014199553A1 (ja) * 2013-06-14 2014-12-18 日本電気株式会社 受付ノードによるデータ格納先の決定方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003063423A1 (en) * 2002-01-24 2003-07-31 University Of Southern California Pseudorandom data storage
US20070073990A1 (en) * 2005-09-23 2007-03-29 Snaman William E Jr Distribution of data in a distributed shared storage system
CN104255011A (zh) * 2012-03-09 2014-12-31 英派尔科技开发有限公司 云计算安全数据存储
CN203149553U (zh) * 2013-03-28 2013-08-21 中国大唐集团财务有限公司 一种带有数据安全校验的异地灾备系统
CN103916477A (zh) * 2014-04-09 2014-07-09 曙光云计算技术有限公司 用于云环境的数据存储方法和装置、及下载方法和装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111309528A (zh) * 2020-03-23 2020-06-19 重庆忽米网络科技有限公司 一种基于云计算及分布式存储的数据协同备份系统及方法

Also Published As

Publication number Publication date
BR112018006134A2 (pt) 2018-10-23
WO2017060495A1 (fr) 2017-04-13
EP3360034A1 (fr) 2018-08-15
US10678468B2 (en) 2020-06-09
US20180284991A1 (en) 2018-10-04
EP3153961A1 (fr) 2017-04-12

Similar Documents

Publication Publication Date Title
CN110602147B (zh) 一种基于云平台的数据加密安全存储方法、系统和存储介质
CN110024357B (zh) 使用分布式分类帐进行数据处理的系统和方法
CN103268460B (zh) 一种云存储数据完整性验证方法
CN108734028B (zh) 基于区块链的数据管理方法、区块链节点及存储介质
CN108111604A (zh) 区块链共识方法、装置和系统、标识信息处理方法和装置
CN104281794A (zh) 一种密码存储及验证的方法和装置
CN109286490A (zh) 支持密态数据去重和完整性验证方法及系统
CN110096551A (zh) 基于区块链的信用数据存储方法、装置、设备及介质
CN111245597A (zh) 密钥管理方法、系统及设备
CN109977684A (zh) 一种数据传输方法、装置及终端设备
CN109845183A (zh) 用于从客户端设备向云存储系统存储数据块的方法
CN106603561A (zh) 一种云存储中的块级加密方法及多粒度去重复方法
CN104219232B (zh) 一种块式分布式文件系统的文件安全控制方法
CN112000632B (zh) 密文的分享方法、介质、分享客户端及系统
CN109639436A (zh) 基于盐值的数据持有性验证方法及终端设备
CN106991148A (zh) 一种支持全更新操作的数据库验证系统及方法
CN108121904B (zh) 解锁方法、装置、电子设备及服务器
CN111026711A (zh) 基于区块链数据存储方法、装置、计算机设备及存储介质
CN108256351B (zh) 文件处理方法和装置、存储介质及终端
CN103199995A (zh) 一种文件加密的方法和装置
CN108139869A (zh) 动态分布的备份方法和系统
CN109460182A (zh) 一种数据存储、读取方法及装置
CN115118520B (zh) 数据处理方法、装置和服务器
Du et al. Secure and verifiable keyword search in multiple clouds
Liu et al. A blockchain-based verification for sharing data securely

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180608