CN108810063B - 一种多云存储环境下数据的安全分发和修复方法、系统及介质 - Google Patents
一种多云存储环境下数据的安全分发和修复方法、系统及介质 Download PDFInfo
- Publication number
- CN108810063B CN108810063B CN201711164901.4A CN201711164901A CN108810063B CN 108810063 B CN108810063 B CN 108810063B CN 201711164901 A CN201711164901 A CN 201711164901A CN 108810063 B CN108810063 B CN 108810063B
- Authority
- CN
- China
- Prior art keywords
- data
- key
- repair
- user
- ciphertext
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Storage Device Security (AREA)
Abstract
本发明提供了一种多云存储环境下数据的安全分发和修复方法、系统及介质,该安全分发和修复方法包括:数据分发步骤:将数据信息分散到多云存储系统中;数据恢复步骤:在需要访问用户数据时,采用数据恢复技术根据获取的数据分片进行用户原数据的恢复;数据修复步骤:当某个公有云数据受损或无法访问时,采用数据修复过程对此节点数据进行修复。本发明的有益效果是:本发明具有存储机密性、可靠冗余性、低存储代价、支持单节点受损修复、高修复安全以及低修复代价。
Description
技术领域
本发明涉及数据处理技术领域,尤其涉及一种多云存储环境下数据的安全分发和修复方法、系统及介质。
背景技术
随着互联网技术的发展,数据量呈指数增长,海量数据时代来临。传统的本地存储方案难以满足用户的存储需求,而由于云存储系统具有较低的存储和运维费用,因此得到更广泛的推广和应用。例如,现在很多医疗记录、大型公司的系统信息和用户的金融消费记录等都逐渐向云平台转移。与此同时,一方面由于现在有很多云存储服务商可以选择而又各有特色,而用户更换云存储提供商时也会带来昂贵的成本;另一方面从数据机密性和隐私保护的角度考虑,用户也倾向于不将数据存储于单个云服务提供商中,因此,多云存储系统得到越来越广泛的研究和应用。
多云存储系统是采用数据分发技术将文件分为多份,然后分发到多个云服务提供商中,利用多种云服务商提供的存储平台协同进行数据存储。虽然相比于单云存储系统,多云存储系统在数据迁徙代价、可用性能上都有较大提升,但由于数据完全存储在云端服务器上,脱离了用户掌控,也会存在问题。
首先是数据的可用性问题。很有可能因为某个或某几个服务商的网络链路的不可靠性或者服务器宕机,导致用户数据分片的丢失或不可访问。我们希望一个好的多云存储方案能够抵抗一定数量的系统错误而维持数据的可用性。
其次是数据的机密性问题。虽然服务器提供商也许是可信的,但其内部的管理员可能会泄露用户数据给他人,并从中获取利益,侵害了用户隐私。在多云存储系统中,当存在移动的攻击者对多个云服务商同时攻击或者服务商之间勾结,同样会产生用户数据机密泄露的威胁,虽然相比单云系统要小得多。
最后是数据的存储和修复代价问题。数据存储在多云存储系统中,通常希望能够尽量实现存储代价的最小化,但有可能会影响到数据的可用性;而另一方面,由于云存储系统中设备失效经常发生,为了系统中数据的可用性和完整性,需要对受损的存储节点迅速进行修复。此时在修复时如何保证修复过程的安全性,即在数据修复过程中不泄露用户数据信息,以及降低单个节点的修复代价,也是多云存储系统在设计时需要考虑的因素之一。
而多云存储系统的多种性能除了依赖于各个云服务提供商内部的访问控制和数据保护协议外,更与系统采用的数据分发方案密切相关。目前多云存储系统中存在多种数据分发算法,当前常用的主要包括纠删码、秘密共享门限编码和局部修复再生码三种,这三种数据分发算法都存在一定的不足之处。其中,纠删码有较高的存储空间利用率,但是存储的机密性不足,数据修复的代价也较高;秘密共享算法有较高的数据存储机密性,可以有效保护数据安全,但是存储和数据修复的代价都较高;再生码具有较低的数据修复代价,且有较高的存储空间利用率,但是数据存储和修复中的机密性较差。
因此,如何设计出一个优化的方法,一方面提高系统数据的安全性与可用性,使得用户能更加信任云存储提供商;另一方面可以最小化存储代价和修复代价,一直是多云存储系统中研究的重点问题。
与本发明相关的背景技术1:
一种现有技术针对多云存储系统提出了一种基于门限的数据分发方案。采用一种或者结合多种数据分发算法编码生成数据分片。然后将分片对等地分发到多云存储系统中的云端服务器。在用户恢复拆分的数据文件时,读取各个服务器的数据片,若读取的数据块数目满足数据分发时的门限阈值参数,则可以恢复出用户数据。在此方案中,系统数据的安全性与可靠性仅通过门限来控制,门限值越高,则系统数据被攻击者破译的可能性越小。
例如针对一种(n,k)门限编码方法,为了增加系统安全性可以采用增加恢复门限阈值的方法,门限k越大则被攻击的难度越高。然而增加门限值的代价是造成系统数据冗余率n/k的降低,当k=n时,系统中只有一份数据备份,会造成系统可靠性急剧降低。而当算法降低门限参数值,最极端的情况可以取k=1。此时该算法是一种基于副本的分发方案。此时数据冗余度最高为n,却导致任意分片数据泄露都会造成用户数据泄露,数据机密性极低。因此,算法在确定门限阈值k时会存在一个关于系统数据机密性与可用性的权衡关系,此关系所对应的函数的不同取值形成了二维平面坐标系中的一条曲线,曲线的两个端点对应的具有最高存储机密性的系统和有最高数据冗余度的系统。
背景技术1的缺点:采用技术一通过门限编码方法在一定程度上保护了多云存储系统中数据的机密性与可用性,但该技术未充分利用多云系统中不同存储节点性质的多样性进行非对等的数据分发,例如私有云与公有云不同的存储特性,以及不同公有云服务商之间的服务差别,导致这些多云系统性能不能实现可靠性与机密性同时最优。
与本发明相关的背景技术2:
一种现有技术采用一种混合的多云存储系统方案,通过可靠云与公共云结合的方式进行数据存储。在存储数据时,对于数据量较小的元数据,为了增加其稳健性,将元数据以复制的方式存储在可靠信任的服务器上,此处可靠信任的服务器主要是本地的私有服务器;对于用户需要存储的文件,采用复制或者编码的方式存储在多云存储系统中的公有云服务器中。此技术在私有云上维护元数据的顺序是依据每个键的字节量,以避免私有云扩展的瓶颈问题,使其能够允许部分云中断问题的发生。
背景技术2的缺点:采用技术二利用多云存储系统环境下存储节点的多样性来进行混合的数据分发,将数据量小而重要的元数据存储在私有云上,提升了多云存储系统的可靠性。但是此技术问题在于,虽然私有云的可靠性比公有云高,但是在私有云仍有一定的概率发生存储故障,一旦此数据不可访问或受损,会造成用户数据永久的不可恢复问题。
与本发明相关的背景技术3:
一种现有技术采用一种具有可修复性的多云存储系统数据分发方案,此技术的编码基于功能性修复的再生码(FMSR)实现,可以解决单一节点数据永久性受损问题。当某个存储节点中的数据受损或丢失时,通过获取其他存储节点数据,经过代理服务器的计算对受损节点进行修复,而不需要恢复完整的原文件后再对受损节点重新编码分发。
背景技术3的缺点:采用技术三利用再生码的修复特性可以保证较低的修复带宽,减少修复成本,同时实现与普通MDS码(例如RAI D-6)同样的容错率。但是,此系统存在两方面的问题。一方面,需要额外的代理服务器做数据修复,维护代价较高;另一方面,此系统主要针对修复代价和成本问题的解决,并未考虑修复过程的安全性。
发明内容
本发明提供了一种多云存储环境下数据的安全分发和修复方法,包括如下步骤:数据分发步骤:将数据信息分散到多云存储系统中;数据恢复步骤:在需要访问用户数据时,采用数据恢复技术根据获取的数据分片进行用户原数据的恢复;数据修复步骤:当某个公有云数据受损或无法访问时,采用数据修复过程对此节点数据进行修复。
本发明还提供了一种多云存储环境下数据的安全分发和修复系统,包括:存储器、处理器以及存储在所述存储器上的计算机程序,所述计算机程序配置为由所述处理器调用时实现本发明所述的方法的步骤。
本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现本发明所述的方法的步骤。
本发明的有益效果是:本发明具有如下技术优势:存储机密性、可靠冗余性、低存储代价、支持单节点受损修复、高修复安全以及低修复代价。
附图说明
图1是本发明的数据分发步骤的流程图。
图2是本发明的数据恢复步骤的流程图。
图3是本发明的数据修复步骤的流程图。
具体实施方式
本发明公开了一种多云存储环境下数据的安全分发和修复方法,本发明利用再生码与可修复秘密共享算法,结合多云存储系统中不同节点服务器存储特性的差异,同时引入用户及公/私有云等多重角色,设计了一个多云存储环境下的数据的安全分发和修复方法,综合考虑了访问和修复中的多种问题。一方面,该方法可以实现分发得到的每个数据分片不体现关于原数据的任何有效信息,并且,实现每个数据分片的数据存储量与信息量的解耦,使安全而代价高的用户服务器只存储小而权重份额高的数据分片,而多云存储系统中的廉价云存储服务器存储大而权重份额低的数据分片。达到系统数据的机密性与可用性同时最优,同时最小化存储代价的目的。另一方面,该方法实现只有用户可以完成数据访问,而在无用户仅在私有服务器的参与下,可自行完成公有云受损节点的数据修复过程;修复过程仅完成此受损数据分片的修复,而不足以获取关于用户数据的任何有效信息,且修复时从网络上传输的数据量带宽与该受损节点的数据存储量相同,从而同时保证了修复安全性和低修复代价。
本发明主要解决在多云存储系统中,受损或不可访问的服务商数量过多,导致用户数据不可用;移动的攻击者对多个云服务商同时攻击或者服务商之间勾结,导致用户数据机密泄露;数据量的急剧增加导致过高的数据存储代价;如何对受损的存储节点进行高修复安全性和低修复代价的数据修复等问题。本发明可以提高多云存储系统的可靠性与机密性,最小化存储代价,同时可以实现无用户参与的受损数据修复(数据访问则必须用户在场以提高用户对其数据的管控力),一方面保证在修复过程中无数据泄露,确保节点修复的安全,另一方面降低网络修复带宽,保持较低的修复代价。
本发明所提出的方法在多云存储系统中引入了三种不同的角色,分别是一个私有服务器(pr_c),r个公有云(pub_c)与一个用户角色(hp-sever)。定义三种角色在系统中不同的存储和访问功能。
公有云(pub_c):公有云存储代价低,但数据的存储安全性也相对不高。其只提供用户数据分片的存储功能,可存储大量冗余数据。
用户(hp-sever):用户存储空间有限。用户存储小份额数据hp-share,只参与数据的恢复过程,不需要参加受损节点修复过程。同时保证,没有用户数据,恢复原数据的概率很低,保证数据存储安全性。
私有服务器(pr_c):私有服务器具有可计算性,相比于公有云,用户对其的可信任度较高。本发明提出私有服务器对受损节点的修复进行监管。同时,私有服务器只完成受损节点的数据修复,修复时不能恢复完整的原数据,保证数据修复的安全性。
为了实现分角色的数据存储和访问,首先对用户需要上传的文件A进行对称加密或者变换,将加密后形成的密文E与密钥S分别采用带有修复功能的再生码与有修复功能的秘密共享方法进行编码,分拆为r+2个数据分片,表示为{B1,B2...Br,Bx,Bw},其中,各个分片的权重weight(B1)=1,i∈[1,r],weight(Bx)=x,weight(Bw)=w·方法主要包括三个过程:数据分发,数据恢复和受损数据的修复。在数据分发过程中,将分片Bw分配给用户的hp-server,分片Bx分配给私有云pr_c,,其余的分片{B1,B2...Br}分别分配到r个独立的公有云服务器上。在数据恢复过程中,获取参与恢复节点上的全部数据份额α,满足参与者的权重和weight(Bsub)=∑weight(B1),Bj∈Bsub不小于门限t时,数据分片集合Bsub可重构原始数据。而在完成受损数据恢复过程,获取参与恢复者节点上的修复份额数据β,满足参与者的权重和weight(Bsub)=∑weight(B1),Bj∈Bsub不小于d的时,数据分片集合Bsub可恢复受损数据分片。
本发明中数据的安全分发和修复方法主要由四部分组成,数据安全分发和数据恢复、数据修复和阈值参数设计。首先采用数据分发技术,将数据A信息分散到多云存储系统中。在需要访问用户数据时,方法采用数据恢复技术根据获取的数据分片进行用户原数据的恢复。而当某个公有云数据受损或无法访问,方法采用数据修复过程对此节点数据进行修复。方法主要结合再生码(RC)和可修复秘密共享算法(Repairable Secret Sharing,RSS)以及对称加密算法(AES)实现。该发明的具体步骤为:
(1)数据分发:
系统有r个公有云pub-c服务器{P1,P2...Pr},一个私有云Px以及用户Pw。
1.首先对数据进行加密。针对用户需要上传的文件,生成随机密钥完成数据加密。E=Encipher(A,S),此加密算法具有完备的性质,非授权用户在无密钥时不能通过密文逆推出完整的用户数据。
2.针对通过AES加密后产生的密文E,采用再生码(r,k,d1)RC的编码方式,得到具体实现方法为:首先将密文数据E均等的拆分为k个数据块{{E1,E2,E3...Ek}}。然后采用一个再生码的生成矩阵GM进行编码。GM有rα行k列,rα个行向量对应着rα个冗余数据块。将生成矩阵GM按行分为r个子矩阵GMi(i=1,2…r),且GM=[GM1,GM2...GMk]T。将每个子矩阵GM1与密文原始数据块(E1,E2....Ek)相乘编码,得到存储节点i的α个冗余数据块,生成最终的r个冗余分片{c1,c2,c3...cp}。
3.针对存储量较少的密钥S,采用一种结合再生码的秘密共享修复算法(m,t,d2)R-SS编码处理。具体实现方案:先用(t,t)shamir秘密共享将密钥S无密钥编码为t份,ysub{y1,y2,y3…yt},然后,对ssub中的t份数据块,使用(m,t,d2)的再生码进行数据分拆。其中,再生码的生成矩阵为SM,SM有mα行t列,包含m个子矩阵SMi(i=1,2…m),SM=[SM1,SM2,...SMm]T。将每个子矩阵SMi与密钥S的通过秘密共享编码后构成的矩阵(y1,y2,y3...yt)相乘,获取存储节点i的α个冗余数据块,Si=SMi*ysub。得到最终的m个冗余的数据分片{s1,s2,s3...sm}。
4.将通过以上编码得到的数据Bi={Si,Ci},分发到各个公有云存储服务器Pi{i=1,2…r}中。将密钥分片Bx={Sr+1,Sr+2,…Sr+x}保存在私有服务器Pr中。最后将密钥分片Bw={Sr+X+1,Sr+X+2…Sr+x+w}保存在用户的hp-sever中。
(2)数据恢复:
用户访问多云存储系统上的数据。
1.首先,进行用户身份验证。然后查找数据的元文件,确定数据结构等参数;
2.用户访问hp-sever,获取w份密钥分片Bw={Sp+x+1,Sp+x+2…Sp+x+w},然后分步骤3/4两种情况访问数据;
3.若hp-share数据未丢失,用户再访问私有云Px获取密钥数据分片Bx{Sp+1,Sp+2…Sp+x}。若私有云数据未丢失,则用户需访问t-w-x个公有云服务器获取数据集{B1,B2…Bt-w-x},其中Bi={si,ci}。否则,用户访问t-w个公有云服务器获取数据集{B1,B2…Bt-w}。在用户访问数据时,从每个公有云上获取的数据量为α,即获取该存储节点上全部的数据分片。此时为了进行数据恢复,所需要的授权子集Csub={B1,B2...Bt-w,Bw}或者Csub={B1,B2...Bx,Bw,}。
4.若用户数据丢失,则此时为了进行数据恢复,所需要的授权子集Csub={B1,B2...BN}。
5.通过授权子集Csub中所获取的密文分片集合{C1,C2,C3...Ck},采用再生码进行数据恢复。首先从编码矩阵中选取k个不相关行向量构成k*k的编码矩阵G’,然后通过求逆运算得到矩阵的逆矩阵(G’)-1。最后,从授权子集中提取密文数据构成数据分片矩阵C,并通过矩阵相乘解码得到用户数据的密文E,E=(G’)-1*C=(E1,E2...Ek)。
6.对于密钥,与步骤5原理相同,通过再生码获取了t份的密钥分片{y1,y2,y3…yt}。然后利用拉格朗日插值公式,得到密钥S。
7.最后,利用AES解密算法,通过编码得到的密文E,与秘密共享得到的密钥S,解密源数据,A=Decipher(E,S)。
(3)单节点修复
当公有云数据受损需要进行单节点数据修复。
1.假设发生数据受损的服务器为Pi。首先此服务器向私有服务器发出修复请求。
2.私有服务器访问元数据和数据分片Bx={Sr+1,Sr+2...Sr+x},获得用于编码的生成矩阵GM和SM。然后私有服务器请求d1个公有云服务器上数据进行修复,每个服务器下载β量的修复数据块。假设每个修复数据块为B‘’i,则用于修复的总数据集合为C‘’sub={B‘’1,B‘’2...B‘’d}。
3.密文修复。在GM中,除去失效的子矩阵GMi,从剩余的d1个子矩阵中选取dβ个行向量组成一个候选矩阵CGM,其中每个冗余数据块对应着候选矩阵CGM中的每一行向量。然后随机生成一个α×dβ大小的RGM,GM’=RGM*CGM作为新的生成矩阵,原先GM中子矩阵GMi替换为GM’。最后计算修复矩阵RGM和这dβ个修复数据块的乘积,可以得到新的α个冗余数据块。。
4.密钥恢复。私有服务器需要获取本地密钥修复分片Bx,然后结合修复请求得到的的公有云服务器上的数据分片,可以满足门限d2进行数据修复。使用生成矩阵的候选矩阵SGM,利用与修复密文同样的原理,更新密钥的生成矩阵与密钥分片。
本发明在采用(r,k,d1)RC与(m,t,d2)RSS进行数据编码时,各参数之间需要满足部分限制条件,从而满足低存储和修复代价、高修复安全性等特点,同时保持存储的机密性和可用性等。下面主要通过描述受损数据修复和数据访问过程应该满足的访问和恢复需求,提出方法的阈值参数设计。
(1)访问需求1:降低用户访问数据的代价
用户进行数据访问时,首先需要提供数据分片Bx,再请求t-x-w个公有云服务器和1个私有服务器的数据分片Bx,则可以满足密钥恢复门限t。此时为了恢复完整的用户数据,用户在密钥恢复时所获取的数据分片应能同时满足密文的恢复门限k,进而解密得到用户的原文件,推知式(1)。
k=t-w-x (1)
通过此阈值限制,使用户在访问数据时,通过访问t-w-x个公有云与1个私有服务器即可恢复密钥S与密文C并解密得到用户数据的明文。
(2)访问需求2:多云存储系统中,任何存储节点(hp-sever、pub-c、pr-c)上的数据分片丢失,非永久性数据受损问题。原文件可以在系统中的冗余分片中得到恢复
当用户数据hp-share分片,即Bx丢失。由于Bx只包含权重为w的密钥分片,则此时方法应保证加密密钥仍可恢复。用户可访问私有服务器上的数据Bx,获取权重为x的密钥数据分片,最多可访问r个公有云数据分片Bi。数据分片Bi每个分片所含密钥权重为1。此时则仍可以满足密钥恢复门限t进行密钥的数据的恢复并对hp-share重新分发,推知式(2)。
t<=x+r (2)
1.当私有服务器数据Bx丢失,由于Bx只包含权重为x的密钥分片,则此时方法应保证加密密钥仍可恢复。用户最多可访问r个公有云的数据分片Bi,数据分片Bi每个分片所含密钥权重为1。结合用户权重为w的密钥分片,满足门限t恢复密钥并对私有服务器数据重新分发,推知式(3)。
t<=r+w (3)
2.公有云数据丢失。由于公有云数据分片Bi={Si,Ci},丢失的数据包含一份密钥与一份密文数据。对于密钥,通过以上两个高权重密钥分片丢失都可恢复的条件限制,则情况下丢失的密钥分片一定可恢复。而系统密文分片的冗余量r-1应仍满足密文恢复门限k,即满足k<=r-1,推知式(4)。
k<r (4)
(3)修复需求:提高单节点修复安全性
1.私有服务器提供分片Bx,即权重为x的密钥分片,实现对受损节点的数据修复。私有服务器最多允许向r-1个保留完整数据的公有云发送修复请求。每个公有云发送β数据量的修复分片给私有服务器,则一定可满足修复门限,并按照单节点修复过程完成修复。此时修复过程应包括密文的修复和密钥的修复,即必须同时达到密钥的恢复门限d1和密钥的恢复门限d2,推知如下两式。
d1<r (5)
d2<r+x (6)
且在私有服务器的修复过程中,访问一定数量的公有云修复分片,则可同时对受损节点的受损密文与受损密钥进行修复,推知式(7)。
d2=d1+x (7)
2.本发明引入私有服务器进行修复监管。应满足无私有服务器参与修复过程,即在修复时无法获取私有云数据Bx,公有云内部即使全部的r个pub_c服务器参与修复也无法满足密钥的修复门限d2进而完成数据修复,推知式(8)。
d2>=r (8)
最后,将式1-8分析总结得出式9,并给出多云存储环境下的数据的安全分发和修复方法的定义如下。
(r,w,x,k,d)数据的安全分发和修复方法:在一个多云存储系统中,包含r个公有云服务器,一个用户服务器hp-sever和一个私有服务器pr-c,采用(r,w,x,k,d)5个参数的数据的安全分发和修复方法。
1.编码方式,密文采用(r,k,d)-RC,即密文的恢复门限为k,修复门限为d1。密钥采用(m,t,d2)-RSS。密钥总份额m=x+w+r,恢复门限为t=w+x+k,修复门限为d2=d+x,且修复门限d2>=t。
2.数据分发:用户存储一份密钥分片,权重为w;私有服务器存储一份密钥分片,权重为x;公有云服务器存储一份密钥分片与一份密文分片,权重都为1。
3.符合方法门限参数的限制要求,总结得式(9)。
x+k<=w+k<=d<r<=d+x (9)
本发明实施例一
多云存储系统中存储不同的文件,由于类型不同,在存储机密性或访问代价等需求上差异较大。本方法在满足以上阈值参数条件的前提下,适当调节参数,使得方法适用于不同文件的存储需求。系统中存储的数据文件,可能是访问频率较高的文件类型,也可能是某种静态文件,其存储时间Tstor更长。下面主要对静态文件在实际存储场景中的方法参数设置进行分析。
在本场景中假设r=5,即有5个公有云服务器。静态文件存储需求有两点。
(1)提高修复安全性。防止在文件较长的存储周期内,非授权用户通过伪造数据修复请求,逐一修复各数据分片进而破解用户数据。因此需提高修复门限d,增加修复时所需要的数据分片数量提高修复安全性。
(2)提高数据存储机密性和可靠性。静态文件对于数据的访问时延和上传时延的要求降低。由于静态文件存储周期较长,文件更新频率较低,使得云端存储的不安全性提高。相比于云服务提供商,用户对hp-sever和私有服务器的信任度更高。因此需提高hp-server与私有服务器分片的信息量,增加权重w与x的值。
为了实现以上存储需求,针对此场景下的数据的分发和修复方法,需做以下针对性调整:首先由于在方法中应满足d<r=5,则为了提高修复安全性,修复门限值d取为极大值,设置d=4。然后在此基础上针对两种的用户分情况讨论。
Case1:针对具有较高移动性的用户。此类用户可能在key-盘上存储hp-share分片,而用户的高移动性一方面使hp-server的存储可靠性降低,另一方面也使得用户拒绝提高hp-share的数据信息量,产生信息泄露的潜在威胁。因此,在此情况下本方法可结合私有服务器与用户共同实现云端数据保护,设置w=x=2权重都相对较高。此时由方法门限条件推知,w+k<=d=4,k=2。因此可以采用(5,2,2,2,4)数据的安全分发和修复方法,实现此高移动性的用户场景下静态数据的存储保护。
Case2:针对企业的静态用户。此类用户的hp-share可能位于局域网内部的固定服务器或固态硬盘中,用户对hp-server的信任和依赖度较高,hp-share发生数据受损或被窃概率低。因此针对此情况的方法参数设计,hp-share数据分片权重w取最大极值,提高用户对云端数据掌控权。由于方法满足w+k<=d=4,则可设置w=3,此时k=1。同时,x<w=2。即可采用(5,3,2,1,4)数据的安全分发和修复方法,实现此静态用户对静态数据的云存储保护。
本发明还公开了一种多云存储环境下数据的安全分发和修复系统,包括:存储器、处理器以及存储在所述存储器上的计算机程序,所述计算机程序配置为由所述处理器调用时实现本发明所述的方法的步骤。
本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现本发明所述的方法的步骤。
本发明技术方案带来的有益效果:
本发明结合多云存储系统中不同节点服务器存储特性的差异,同时引入用户及公/私有云等多重角色,设计了一个多云存储环境下的数据的安全分发和修复方法。
具有以下优点:
(1)存储机密性。保证原始数据及各个云数据份额的机密性。即在通过本发明方法分发得到的任意存储节点的数据分片中,泄露任意少于门限量的数据分片,获取的原数据信息量为0。
(2)可靠冗余性。在公有云、私有服务器、用户各数据存储节点中,任意存储节点上的数据无法访问、丢失或受损,都可在系统中的冗余数据中得到恢复。
(3)低存储代价。存储数据量与信息量解耦,公有云的数据存储量最高,但是信息量最低,从而充分利用多云存储系统中的廉价云存储服务器。
在此基础上,方法增加如下特性。
(4)支持单节点受损修复。任意公有云上的存储节点发生数据受损,可以执行数据修复请求,获取其他存储节点上的冗余数据量,若满足修复门限d则可对此受损数据分片进行修复,实现无用户参与的数据修复。
(5)高修复安全。数据修复过程需要私有服务器的监管。公有云内部无法进行数据修复。同时满足私有服务器的修复不泄露用户数据信息,保证修复安全。
(6)低修复代价。对于受损节点的修复,网络上传输的修复数据量和该节点丢失的数据量基本相同,降低修复成本。
由于该方法对原文件来讲仅仅涉及到其上传时的加密和编码,源文件的访问管理、数据结构等都不受影响,用户在上传文件到云服务时具体操作无需关心,因此适应性广。
本发明在较小的操作代价下实现了一个高存储利用率、高数据安全性以及低修复代价的安全多云存储方案,无文件结构限制,系统只需要完成编码工作,额外开销小。
在多云存储系统中,不仅公有云、私有服务器与用户服务器之间存在性能差异,各云服务提供商之间也有差异,可以在本发明的基础上依据不同服务商的差异性进行数据块部署和访问修复,进一步提升多云存储系统的性能。同时,在本发明中使用的加密算法也可以是其他的安全加密算法。
以上内容是结合具体的优选实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。
Claims (9)
1.一种多云存储环境下数据的安全分发和修复方法,其特征在于,包括如下步骤:
数据分发步骤:将数据信息分散到多云存储系统中;
数据恢复步骤:在需要访问用户数据时,采用数据恢复技术根据获取的数据分片进行用户原数据的恢复;
数据修复步骤:当某个公有云数据受损或无法访问时,采用数据修复过程对此节点数据进行修复;
在所述数据分发步骤中,包括如下步骤:
加密文件步骤:针对用户需要上传的文件,生成随机密钥完成数据加密;
密钥采用R-SS码编码拆分步骤:针对存储量较少的密钥S,采用结合再生码的秘密共享修复算法R-SS编码处理;
分发步骤:分发数据到服务器端。
2.根据权利要求1所述的安全分发和修复方法,其特征在于,在所述密文采用RC码编码拆分步骤中,首先将密文数据E均等的拆分为k个数据块{{E1,E2,E3...Ek},然后采用一个再生码的生成矩阵GM进行编码,GM有rα行k列,rα个行向量对应着rα个冗余数据块,将生成矩阵GM按行分为r个子矩阵GMi(i=1,2…r),且GM=[GM1,GM2...GMk]T,将每个子矩阵GMi与密文原始数据块(E1,E2...Ek)相乘编码,得到存储节点i的α个冗余数据块,Ci=(E(i-1)α+ 1...Eiα)=GMi*E,生成最终的r个冗余分片{C1,C2,C3...Cr};
在所述密钥采用R-SS码编码拆分步骤中,先用(t,t)shamir秘密共享将密钥S无密钥编码为t份,ysub={y1,y2,y3...yt},然后,对Ssub中的t份数据块,使用(m,t,d2)的再生码进行数据分拆,其中,再生码的生成矩阵为SM,SM有mα行t列,包含m个子矩阵SMi(i=1,2…m),SM=[SM1,SM2,...SMm]T,将每个子矩阵SMi与密钥S的通过秘密共享编码后构成的矩阵(y1,y2,y3...yt)相乘,获取存储节点i的α个冗余数据块,Si=SMi*ysub,得到最终的m个冗余的数据分片{S1,S2,S3...Sm};
在所述分发步骤中,将通过编码得到的数据Bi={Si,Ci},分发到各个公有云存储服务器Pi{i=1,2…r}中,将密钥分片Bx={Sr+1,Sr+2,...Sr+x}保存在私有服务器Pr中,最后将密钥分片Bw={Sr+X+1,Sr+X+2...Sr+x+w}保存在用户的hp-sever中。
3.根据权利要求1所述的安全分发和修复方法,其特征在于,所述数据恢复步骤包括依次执行如下步骤:
首先,进行用户身份验证,然后查找数据的元文件,确定数据结构参数;用户访问hp-sever,获取w份密钥分片Bw={Sr+x+1,Sr+x+2…Sr+x+w};
判断hp-share数据是否丢失,若hp-share数据丢失,那么访问r个公有云服务器和私有云服务器获取数据;若hp-share数据未丢失,那么用户再访问私有云Px获取密钥数据分片Bx={Sr+1,Sr+2...Sr+x},判断私有云数据是否丢失,若未丢失,那么用户需访问t-w-x个公有云服务器获取数据集{B1,B2...Bt-w-x},其中Bi={si,Ci},否则,用户访问t-w个公有云服务器获取数据集{B1,B2...Bt-w};若用户数据丢失,则此时为了进行数据恢复,所需要的授权子集Csub={B1,B2...Bx},通过授权子集Csub中所获取的密文分片集合{C1,C2,C3...Ck},采用再生码进行数据恢复,从授权子集中提取密文数据构成数据分片矩阵C,并通过矩阵相乘解码得到用户数据的密文E,然后利用拉格朗日插值公式,得到密钥S,最后,利用AES解密算法,通过编码得到的密文E,与秘密共享得到的密钥S,解密源数据。
4.根据权利要求1所述的安全分发和修复方法,其特征在于,所述数据修复步骤包括:
发生数据受损的服务器向私有云服务器发出修复请求;
私有服务器访问元数据和数据分片Bx={Sr+1,Sr+2...Sr+x},获得用于编码的生成矩阵GM和SM,然后私有服务器请求d1个公有云服务器上数据进行修复,每个服务器下载β量的修复数据块,假设每个修复数据块为B‘’i,则用于修复的总数据集合为C‘’sub={B‘’1,B‘’2...B‘’d};
密文修复,在GM中,除去失效的子矩阵GMi,从剩余的d1个子矩阵中选取dβ个行向量组成一个候选矩阵CGM,其中每个冗余数据块对应着候选矩阵CGM中的每一行向量,然后随机生成一个α×dβ大小的RGM,GM’=RGM*CGM作为新的生成矩阵,原先GM中子矩阵GMi替换为GM’,最后计算修复矩阵RGM和这dβ个修复数据块的乘积,可以得到新的α个冗余数据块;
密钥恢复,私有服务器需要获取本地密钥修复分片Bx,然后结合修复请求得到的的公有云服务器上的数据分片,可以满足门限d2进行数据修复,使用生成矩阵的候选矩阵SGM,利用与修复密文同样的原理,更新密钥的生成矩阵与密钥分片
5.根据权利要求1所述的安全分发和修复方法,其特征在于,用户进行数据访问时,首先需要提供数据分片Bx,再请求t-x-w个公有云服务器和1个私有服务器的数据分片Bx,则可以满足密钥恢复门限t;此时为了恢复完整的用户数据,用户在密钥恢复时所获取的数据分片应能同时满足密文的恢复门限k,进而解密得到用户的原文件,推知式(1):
k=t-w-x (1)
通过此阈值限制,使用户在访问数据时,通过访问t-w-x个公有云与1个私有服务器即可恢复密钥S与密文C并解密得到用户数据的明文。
6.根据权利要求1所述的安全分发和修复方法,其特征在于,当用户数据Bw丢失,由于Bw只包含权重为w的密钥分片,用户可访问私有服务器上的数据Bx,获取权重为x的密钥数据分片,最多可访问r个公有云数据分片Bi,数据分片Bi每个分片所含密钥权重为1,此时则仍可以满足密钥恢复门限t进行密钥的数据的恢复并对hp-share重新分发;当私有服务器数据Bx丢失,由于Bx只包含权重为x的密钥分片,用户最多可访问r个公有云的数据分片Bi,数据分片Bi每个分片所含密钥权重为1,结合用户权重为w的密钥分片,满足门限t恢复密钥并对私有服务器数据重新分发;当公有云数据丢失,丢失的数据包含一份密钥与一份密文数据,对于密钥,通过两个高权重密钥分片丢失都可恢复的条件限制,则丢失的密钥分片一定可恢复,而系统密文分片的冗余量r-1应仍满足密文恢复门限k<=r-1。
7.根据权利要求1所述的安全分发和修复方法,其特征在于,包含r个公有云服务器,一个用户服务器hp-sever和一个私有服务器pr-c,采用(r,w,x,k,d)5个参数进行数据的安全分发和修复;编码方式:密文采用(r,k,d1)-RC,即密文的恢复门限为k,修复门限为d1,密钥采用(m,t,d2)-RSS,密钥总份额m=x+w+r,恢复门限为t=w+x+k,修复门限为d2=d+x,且修复门限d2>=t;所述数据分发步骤:用户存储一份密钥分片,权重为w,私有服务器存储一份密钥分片,权重为x,公有云服务器存储一份密钥分片与一份密文分片,权重都为1。
8.一种多云存储环境下数据的安全分发和修复系统,其特征在于,包括:存储器、处理器以及存储在所述存储器上的计算机程序,所述计算机程序配置为由所述处理器调用时实现权利要求1-7中任一项所述的方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序配置为由处理器调用时实现权利要求1-7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711164901.4A CN108810063B (zh) | 2017-11-21 | 2017-11-21 | 一种多云存储环境下数据的安全分发和修复方法、系统及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711164901.4A CN108810063B (zh) | 2017-11-21 | 2017-11-21 | 一种多云存储环境下数据的安全分发和修复方法、系统及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108810063A CN108810063A (zh) | 2018-11-13 |
CN108810063B true CN108810063B (zh) | 2021-01-15 |
Family
ID=64095078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711164901.4A Active CN108810063B (zh) | 2017-11-21 | 2017-11-21 | 一种多云存储环境下数据的安全分发和修复方法、系统及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108810063B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109947598B (zh) * | 2019-03-20 | 2021-03-23 | 浪潮商用机器有限公司 | 一种ssd微码备份方法、系统、设备及计算机存储介质 |
CN110430042B (zh) * | 2019-06-28 | 2022-11-22 | 中国人民解放军战略支援部队信息工程大学 | 一种在异构冗余系统中存储秘钥的装置及方法 |
CN110750382B (zh) * | 2019-09-18 | 2020-10-30 | 华中科技大学 | 用于提高数据修复性能的最小存储再生码编码方法及系统 |
CN110602147B (zh) * | 2019-10-09 | 2021-07-30 | 合肥中科深谷科技发展有限公司 | 一种基于云平台的数据加密安全存储方法、系统和存储介质 |
CN112291781A (zh) * | 2020-10-28 | 2021-01-29 | 国网山东省电力公司烟台市牟平区供电公司 | 一种5g可视化icmp报文加密系统 |
CN113067892B (zh) * | 2021-04-09 | 2022-07-15 | 北京理工大学 | 一种使用公有云实现安全云同步和云存储的方法 |
CN116260577B (zh) * | 2022-12-19 | 2023-12-08 | 佛山赛思禅科技有限公司 | 基于再生码的门限秘密共享方法及系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546755A (zh) * | 2011-12-12 | 2012-07-04 | 华中科技大学 | 云存储系统的数据存储方法 |
CN102752402A (zh) * | 2012-07-20 | 2012-10-24 | 广东威创视讯科技股份有限公司 | 一种云存储方法及系统 |
CN103688514A (zh) * | 2013-02-26 | 2014-03-26 | 北京大学深圳研究生院 | 一种最小存储再生码的编码和存储节点修复方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8775860B2 (en) * | 2010-07-20 | 2014-07-08 | Tata Consultancy Services Limited | System and method for exact regeneration of a failed node in a distributed storage system |
-
2017
- 2017-11-21 CN CN201711164901.4A patent/CN108810063B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102546755A (zh) * | 2011-12-12 | 2012-07-04 | 华中科技大学 | 云存储系统的数据存储方法 |
CN102752402A (zh) * | 2012-07-20 | 2012-10-24 | 广东威创视讯科技股份有限公司 | 一种云存储方法及系统 |
CN103688514A (zh) * | 2013-02-26 | 2014-03-26 | 北京大学深圳研究生院 | 一种最小存储再生码的编码和存储节点修复方法 |
Non-Patent Citations (1)
Title |
---|
《A Secure Erasure Code-Based CLoud Storage Systems with Secure Data Forwarding》;Hsiao-YingLin;《IEEE TRANSACTIONS AND DISTRIBTUED SYSTEMS》;20120630;全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108810063A (zh) | 2018-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108810063B (zh) | 一种多云存储环境下数据的安全分发和修复方法、系统及介质 | |
US20220368457A1 (en) | Distributed Storage System Data Management And Security | |
Li et al. | Secure distributed deduplication systems with improved reliability | |
US9547774B2 (en) | System and method for distributed deduplication of encrypted chunks | |
Zhou et al. | SecDep: A user-aware efficient fine-grained secure deduplication scheme with multi-level key management | |
US9483657B2 (en) | Secure online distributed data storage services | |
US9037856B2 (en) | System and method for distributed deduplication of encrypted chunks | |
US11082220B1 (en) | Securing recovery data distributed amongst multiple cloud-based storage services | |
KR20170110420A (ko) | 정보 보호 장치를 이용한 정보 문서 분산 저장 방법 | |
US10650160B2 (en) | Enhancing security for multiple storage configurations | |
Kumar et al. | Efficient and secure cloud storage for handling big data | |
Li et al. | Enabling secure and space-efficient metadata management in encrypted deduplication | |
CN108494552B (zh) | 支持高效收敛密钥管理的云存储数据去重方法 | |
CN112764677B (zh) | 一种在云存储中增强数据迁移安全性的方法 | |
Zhou et al. | An efficient encrypted deduplication scheme with security-enhanced proof of ownership in edge computing | |
Wei et al. | Expanstor: Multiple cloud storage with dynamic data distribution | |
KR101726512B1 (ko) | 코드 개인화를 통한 rs 코드의 보안 강화방법 | |
EP2375626A1 (en) | Data storage | |
Li et al. | A secure and reliable hybrid model for cloud-of-clouds storage systems | |
Feng | Secure Deduplication | |
Hegde et al. | A Survey on Proof of Retrievability and its Techniques | |
Bhavya et al. | DDEAS: Distributed Deduplication System with Efficient Access in Cloud Data Storage | |
Reddy et al. | Secure Data Deduplication over Distributed Cloud Server Framework with Effective User Revocation and Load Balancing. | |
CHANDRASHEKAR et al. | Supporting Secure File-Level and Block-Level Data De-Duplication In Cloud Computing | |
Debbarma et al. | Encryption With Private KEY for Data Security and Deduplication |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |