CN102185897B - 安全分散式虚拟存储池系统 - Google Patents
安全分散式虚拟存储池系统 Download PDFInfo
- Publication number
- CN102185897B CN102185897B CN 201110094381 CN201110094381A CN102185897B CN 102185897 B CN102185897 B CN 102185897B CN 201110094381 CN201110094381 CN 201110094381 CN 201110094381 A CN201110094381 A CN 201110094381A CN 102185897 B CN102185897 B CN 102185897B
- Authority
- CN
- China
- Prior art keywords
- module
- data
- iscsi
- read
- network
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
一种计算机技术领域的安全分散式虚拟存储池系统,针对虚拟计算环境和云计算中节点管理员不可信或者节点存在信息泄漏的给出的非密钥加密的安全强化方法。通过完整地给出一套高效的陪集编/解码方法,来全面提升虚拟化存储中的数据安全性,降低数据泄露的可能性。并附带给出了切实可行的计算机编程实现方法,该方法适用于当前大规模数据存储的中对读写带宽、反应时间的要求。能够显著改善现有虚拟化存储池中安全管理的安全性、透明性和可管理性。
Description
技术领域
本发明涉及的是一种计算机领域的装置,具体是一种在虚拟化环境中,基于陪集编码的安全分散式存储系统。
背景技术
计算资料虚拟化是当前信息技术行业重要基础的技术,广泛用于对物理资源的整合、对数据中心的集中调度与管理。利用虚拟化技术能够有效提升服务质量,减少系统下线时间。缩减IT基础设置的准备时间,提升IT投资的灵活性,促进按需配置。快速提供测试和开发环境,提高开发效率。
分散式虚拟化存储池是聚合企业物理存储资源,形成存储池,进而统一的管理与分配各个虚拟机所用的存储资源。目前国内外各信息技术公司不断加大投入推动存储池技术发展,携手制定存储池化技术应用的标准。近年分散式存储,因其在容灾、纠错、节能和高性能方面的优势,被广泛普及,成为虚拟计算与云计算中存储技术的发展趋势。
在虚拟计算与云计算环境中,用户的敏感数据被视为用户的隐私,需要对平台提供商与非授权用户严格保密。但各主机节点的数据被直接暴漏在节点管理员和拥有这些节点访问权限的访问者面前。如果节点管理员不可信,或者节点存在信息泄漏,那么用户的敏感数据将会被窃取。汇总现有技术文献的检索发现,当前虚拟化存储池的保密机制基于传统的密钥加密的方法,通过它的一些衍生物来解决,如OFB、CBC、CFB和CTR等。但是传统密钥加密技术有加密算法复杂、密钥保管困难、非绝对安全等问题。此外针对私钥加密,目前已存在多种有效的攻击方法。以CBC、CFB为代表的大批量数据加密机制,也存在着严重的错误扩散问题,不适用于网络化的存储池结构,如果密文在网络传输和存储过程中出现微小的错误(如1bit),可能造成大块数据的污染,这种污染是不可恢复的。本发明提供了一个有效的安全强化机制,它可以强化传统的密钥加密的分散式存储池,也可以单独用于强化非加密型的存储池的安全。
经现有技术文献的检索发现,相似的系统有Clevesafe(Dispersed Storage NetworkArchitecture.http://www.cleversafe.org/和http://www.cleversafe.com),它采用柯西-所罗门码(擦除码)来实现分散式存储,提升数据的整体安全性,当部分节点被攻破或破译后,剩余的数据仍然安全。这种系统在强化整体数据安全性的同时,却削弱了局部数据的安全性。
发明内容
本发明针对现有技术的不足,提供一种安全分散式虚拟存储池系统,将用户敏感数据编码后,分散存储到多个服务节点,在强化整体数据安全性的同时,依然保证局部数据的安全性。能够独立或基于现有密钥加密构架,加强虚拟化存储池的安全性。
本发明是通过以下技术方案实现的,本发明包括:工作于存储池服务器的iSCSI指令转换模块、数据安全拆分模块、数据读取模块和原子性控制模块以及工作于各个存储节点的物理驱动模块,其中:iSCSI指令转换模块将来自虚拟机的iSCSI指令转换成内部调用函数,同时将所述系统的处理结果转换成iSCSI指令反馈至虚拟机,数据安全拆分模块对数据进行拆分与编码,数据读取模块对来自物理驱动模块的数据进行解码和恢复,原子性控制模块对网络读操作和网络写操作的原子性进行监控,物理驱动模块分别连接存储池服务器和各个存储节点相连。
所述的iSCSI指令转换模块包括:iSCSI网络接口单元、块设备访问控制和SCSI模拟,其中:iSCSI网络接口单元负责与虚拟机中的iSCSI initator进行基于iSCSI工业标准的通信,块设备访问控制验证虚拟机身份并控制其读写虚拟硬盘的权限以实现不同用户间的数据访问隔离,SCSI模拟是完成对普通硬盘SCSI指令的模拟转换。
所述的数据安全拆分模块包括:数据块拆分模块、陪集编码的编码模块和节点通信模块,其中:数据块拆分模块依据iSCSI指令转换模块中转来的SCSI指令及所附的内存数据,实现数据的基本拆分,陪集编码模块完成对原始数据的安全编码并转给节点通信模块通知物理驱动模块存储到物理设备。
所述的数据读取模块包括:陪集编码的解码模块和数据块组合模块,其中:解码模块将从各存储节点中读回的数据解码还原成原始数据块,数据块组合模块完成数据块的整合。
所述的原子性控制模块包括:网络读控制和网络写控制,其中:网络读控制是监视与保证解码所需的数据全部从各存储节点读回后解码,网络写控制对每一次写操作进行事务型管理,监控每次所写的数据是否被正确的写入到每一个节点。
所述的物理驱动模块包括:池服务器通信模块和物理IO处理模块,其中:池服务器通信模块是存储池服务器与物理设备网络协同工作的通信桥梁,物理IO处理模块将池服务器的相关调用高效地转化成对物理设备的读写操作。
本发明通过以下方式进行工作:
首先在存储池服务器,数据块拆分模块在系统内部划分逻辑的硬盘块,通过上层SCSI和iSCSI等模块,向各个虚拟机提供所需大小的镜像或虚拟硬盘(iSCSI目标)。存储池服务器中的iSCSI指令转换模块通过高速网络接收虚拟机对虚拟硬盘的读写指令和写入数据,并将其转换抽象的内部块读写指令、标准的SCSI访问模式。
用户数据(即虚拟硬盘的数据)被划分成固定大小s byte的条带(大小一般为4096byte),用户对数据读写的最少单位是条带。每次从k个原始数据包中以某一读取规则抽取w个bit,构成k个迦罗华有限域GF(2w)中的元素。这k个元素转换成k维的向量,每次对这样的向量进行编码,最终编码后为n个数据切片。在这一步,如果不优化,每个条带将进行次编码,用户数据会被以这种方法分散到n个物理存储节点。转换成写指令,交给通信模块。在本系统中,存储池服务器与各个存储节点之间的通信使用二进制协议来完成对网络通信消息的编码(解码),并进一步发送给各个存储节点。最后交给n个物理驱动模块存储于n个物理节点。
经过安全分散以后,用户数据能够有效抵御底层攻击,攻击者必须攻陷全部n个物理存储节点,完全读取其中的数据,才能够得到部分或全部的原始数据。此外每一个存储节点的管理员也不能够得到单独恢复用户数据,从而提升了用户数据与底层平台的隔离性。
附图说明
图1为安全分散式虚拟化存储池构架。
图2为存储池中数据安全分散存储方法。
图3为安全分散式虚拟化存储池系统模块图。
具体实施方式
下面对本发明的实施例作详细说明,本实施例在以本发明技术方案为前提下进行实施,给出了详细的实施方式和具体的操作过程,但本发明的保护范围不限于下述的实施例。
如图1所示。本发明由物理存储端和池服务器端组成,而用户数据(虚拟硬盘)被安全地分散在多个物理存储节点,从而保证攻击者必须攻陷全部n个物理存储节点,完全读取其中的数据,才能够得到部分或全部的原始数据。具体实施方式包括:安全数据分散构架的实施、数据安全拆分的实现、解码矩阵的生成方法、编码与解码优化实施方式。
1.数据分散构架的实施
本构架是用户数据分散存储的基本组织方法。如前面提到的,存储池将企业分散的物理存储资源聚合起来,形成统一的虚拟化存储池,从而能够统一地分配与管理用户的存储资源。那么反过来看的话,本构架将使用户的数据分散存储于多台物理设备从而提升用户的数据安全性。
如图2所示,数据分散构架的实施包括iSCSI指令转换的实现、SCSI指令管理集的模拟、数据拆分模块接口、存储节点与池服务器的高带宽通信、跨操作系统的存储设备驱动。
其中iSCSI指令转换的依据互联网工程任务组(IETF)2004年04月公布的RFC 3720标准开发,并调用SCSI指令模拟模块完成内部的本地SCSI指令模拟。存储节点与池服务器的高带宽通信的实施依据目前标准的ASN.1协议来完成远程的指令传递、数据传输及节点监控。
所创建的iSCSI地址如下:
<domain-name>[:<port>]/<iSCSI Name>
2.数据安全拆分的实施方法
本模块是该发明的核心模块,其创新性在于能够有效的强化用户数据的安全性,并给出了一系列的机制,保证分散式存储的完全安全性和非完全安全性达到最高上限,最大可能地保证数据的安全性。其具体机制如下:
记q=2w。令M为用户数据(虚拟硬盘或虚拟机镜像)中的一个条带。M被看成一个k维向量,其分向量是GF(q)上均匀分布的元素。对给定的M=m,这一机制将M编码成X=x,并确保X=x这一事件均匀的分布于方程GXT=MT的解空间。
X是编码后的条带,可以被视为一个n维的向量。可以得到如下条件概率:
当用户写操作时,编码后的条带X的每一个分量被分存于n个物理节点,授权的用户如果需要读数据,通过计算GxT,可以还原出原始数据。
这额外的n-k元素是用来疑惑对手的,其对手可以拥有关于G及本安全机制的全部信息。
当对手只能获取μ个物理节点的数据时,记:
Zμ={Xt:t∈τ} (2)
由(3),得到如下条件概率:
进一步得到香农熵:
logq P(M=m|Zμ=(x1,x2,...,xμ))
=k-Λ (5)
当对手只有有限的能力能拿到n个物理节点上的μ份数据时,而且μ小于某个阈值e时,认为数据是绝对安全的,因为这种安全是信息论安全的,无论对手有无限的计算能力和时间,都是无法破解的。当μ大于某个阈值e时,数据依然是非完全安全的。
首先来介绍该方法绝对安全性的保证,对于已知的G,对手需要猜测n-μ个分量来试图恢复k维的M,他通过收集μ份数据,得到μ个分量。对手的疑惑度为:
Δμ:=minτ:|τ|=μH(M|Zμ) (6)
即是广义汉明重量:
当C是MDS码,显然有:
那么阈值e=n-k.当对手有能力获得n个物理节上的n-k份数据,他得不到用户数据的任何信息。这是因为他的疑惑度依然为k,这意味着他没有得到数据的任何东西。
其次,非完全安全性的保证条件。通常对对手有价值的仅是原始数据,即使是部分的原始数据,而不是含糊的信息。本发明对原始数据有更强的保护,当μ>n-k时,原始数据依然有可能不发生泄露。
令Lμ是敌手任取μ份数据时,泄露的最大原始数据量。记G的某个子矩阵,记为它满足剩余列可以组成另一个子矩阵,记为即有{l1,l2,...,lμ}∪{t1,t2,...,tμ}={1,2,...,n}.Rn-μ记为的全零行向量的集合,那么Lμ=max{zero(Rn-μ)},同时Li-1≥Li。
进一步,有Ln=k≥Ln-1......≥L3≥L2≥L1。如果G中有0元素的话,那么Ln-1≥1;否则Ln-1=0。
在本发明中,G采用范德蒙矩阵的变形形式,同时保证分散式存储的完全安全性和非完全安全性达到最高上限,能够最大可能的保证存储池中数据的安全性。具体实施方式,见后文。
3.编码与解码优化实施方法
从前文所述中,可以看出对每一个码字的编码与解码都需要n次的有限域乘法,然而有限域上的矩阵乘法有很高的计算/时间复杂度。本发明的首创性在于采用基于XOR转换的矩阵乘法来进行编解码。对于GF[2w]上的解码,把n×k的2w元的矩阵G先转换成wk×wn的二元矩阵;原始数据M转换成GF(2)上的元素表示。这样的话,每次解码与编码可以完成32或64个码字(取决与CPU的类型),其效率与单个码字的编解码相同。具体转换方法如下:
令p(X)为GF[2][X]上次数为w的不可约多项式,那么GF(2w)与GF[2][X]/(p(X))同态,GF(2w)上的元素能够表示为多项式其中fi∈GF(2)。
二进制矩阵的转换方法是把2w元的矩阵中每一个元素f,替换成一个w×w的二元矩阵τ(f),τ(f)的第i列是多项式Xi-1f mod p(X)的系数向量。
我们给出了具体的解码算法,其伪码形式如下:
其中,MFsize是有限域对应的乘法群的大小;W为对应上文中的w.ExpToF是一个表(数组)用于查找计算有限域中非零元素与乘法群生成元指数之间的对应关系。Ge表示G的二维数组,数组中存放的是矩阵G的对应元素的指数表示。Nsegs是数据包中的分片数。local_codeSlices为准备解码的编码数据包,为一个长整型数组。message是解码输出的结果。正如前面提到的,编码用n-k个额外的分量来疑惑敌手,因此这n-k个分量必须是完全随机的。令R=(r1,r2,...rn-k)是这n-k个分量,它可以用随机数来生成,那么X=(x1,...,xk,r1,...,rn-k)是GXT=mT的一个解。陪集编码的编码过程实际就是对G(x1,...,xk,r1,...,rn-k)T=mT方程求特解的过程。
记T=(G,Ik×k),它是一个k×(n+k)的矩阵,秩为rank(T)=t。显然存在一个k×k的非奇异矩阵A使得AK=(Ik×k,G#),也就是说T都过行变换能转换成(Ik×k,G#)形式。当G确定时,G#也是一个常量,可以事先计算得出。记T为存放着矩阵[G,Ik×k]的二维byte型数组,其中Ik×k是一个k×k的单位阵。
G#的计算机生成方法如下:
G#等于由T的第(k+1)到(k+n)列构成的子矩阵。
有了G#后,记encode_messages为将要被编码的输入数据,encode_packets为编码输出。编码的实现如下:
4.解码矩阵的生成方法
如前面介绍的,本发明中的安全编码的参数矩阵G,如果是一个没有零元素的MDS码生成矩阵的话,机制有最好的绝对保密和非绝对保密性。前者能达到的界是n-k,后者能达到n-1。
陪集编码中G,本发明选用类范德蒙矩阵,令α为乘法群GF(2w)-{0}的生成元,先得到一个初步的矩阵,记为:
G是一个范德蒙矩阵,因为范德蒙矩阵是满秩矩阵,因为它是一个MDS码的生成矩阵。因为gi,j(1≤i≤k,1≤j≤n)都是乘法群GF(2w)-{0}中的元素,因此非零。
如前述,G将会被转换wk×wn的二元矩阵,而解码的性能依赖于该二元矩阵中的“1”的个数。为了进一步优化解码性能,给出了如下的优化方法:
Claims (5)
1.一种安全分散式虚拟存储池系统,其特征在于,包括:工作于存储池服务器的iSCSI指令转换模块、数据安全拆分模块、数据读取模块和原子性控制模块以及工作于各个存储节点的物理驱动模块,其中:iSCSI指令转换模块将来自虚拟机的iSCSI指令转换成内部调用函数,同时将所述系统的处理结果转换成iSCSI指令反馈至虚拟机,数据安全拆分模块对数据进行拆分与编码,数据读取模块对来自物理驱动模块的数据进行解码和恢复,原子性控制模块对网络读操作和网络写操作的原子性进行监控,物理驱动模块分别连接存储池服务器和各个存储节点;
所述的数据安全拆分模块包括:数据块拆分模块、陪集编码的编码模块和节点通信模块,其中:数据块拆分模块依据iSCSI指令转换模块中转来的SCSI指令及所附的内存数据,实现数据的基本拆分,陪集编码模块完成对拆分后的数据的安全编码并转给节点通信模块通知物理驱动模块存储到物理设备。
2.根据权利要求1所述的安全分散式虚拟存储池系统,其特征是,所述的iSCSI指令转换模块包括:iSCSI网络接口单元、块设备访问控制模块和SCSI模拟,其中:iSCSI网络接口单元负责与虚拟机中的iSCSIinitator进行基于iSCSI工业标准的通信,块设备访问控制模块验证虚拟机身份并控制其读写虚拟硬盘的权限以实现不同用户间的数据访问隔离,SCSI模拟是完成对普通硬盘SCSI指令的模拟转换。
3.根据权利要求1所述的安全分散式虚拟存储池系统,其特征是,所述的数据读取模块包括:陪集编码的解码模块和数据块组合模块,其中:解码模块将从各存储节点中读回的数据解码还原成原始数据块,数据块组合模块完成数据块的整合。
4.根据权利要求1所述的安全分散式虚拟存储池系统,其特征是,所述的原子性控制模块包括:网络读控制和网络写控制,其中:网络读控制是监视与保证解码所需的数据全部从各存储节点读回后解码,网络写控制对每一次写操作进行事务型管理,监控每次所写的数据是否被正确的写入到每一个节点。
5.根据权利要求1所述的安全分散式虚拟存储池系统,其特征是,所述的物理驱动模块包括:池服务器通信模块和物理IO处理模块,其中:池服务器通信模块是存储池服务器与物理设备网络协同工作的通信桥梁,物理IO处理模块将池服务器的相关调用高效地转化成对物理设备的读写操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110094381 CN102185897B (zh) | 2011-04-14 | 2011-04-14 | 安全分散式虚拟存储池系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110094381 CN102185897B (zh) | 2011-04-14 | 2011-04-14 | 安全分散式虚拟存储池系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102185897A CN102185897A (zh) | 2011-09-14 |
CN102185897B true CN102185897B (zh) | 2013-08-21 |
Family
ID=44571967
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110094381 Expired - Fee Related CN102185897B (zh) | 2011-04-14 | 2011-04-14 | 安全分散式虚拟存储池系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102185897B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5915107B2 (ja) * | 2011-11-15 | 2016-05-11 | 株式会社バッファロー | 通信方法、通信機器、ストレージ機器、及び制御プログラム |
CN106549986A (zh) * | 2015-09-17 | 2017-03-29 | 南京中兴新软件有限责任公司 | 一种块存储服务方法和装置 |
CN106569906B (zh) * | 2016-10-20 | 2019-12-31 | 北京航空航天大学 | 基于稀疏矩阵的编码写入方法及装置 |
CN106603632A (zh) * | 2016-11-25 | 2017-04-26 | 国云科技股份有限公司 | 一种降低云平台启动风暴的虚拟机管理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101952814A (zh) * | 2008-02-20 | 2011-01-19 | 惠普开发有限公司 | 用于在虚拟环境中实施虚拟存储池的方法和系统 |
CN101986655A (zh) * | 2010-10-21 | 2011-03-16 | 浪潮(北京)电子信息产业有限公司 | 存储网络及该存储网络的数据读写方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8495417B2 (en) * | 2009-01-09 | 2013-07-23 | Netapp, Inc. | System and method for redundancy-protected aggregates |
-
2011
- 2011-04-14 CN CN 201110094381 patent/CN102185897B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101952814A (zh) * | 2008-02-20 | 2011-01-19 | 惠普开发有限公司 | 用于在虚拟环境中实施虚拟存储池的方法和系统 |
CN101986655A (zh) * | 2010-10-21 | 2011-03-16 | 浪潮(北京)电子信息产业有限公司 | 存储网络及该存储网络的数据读写方法 |
Non-Patent Citations (2)
Title |
---|
刘谦等.基于可信平台模块的虚拟机安全协议.《信息安全与技术》.2010,第49-55页. |
基于可信平台模块的虚拟机安全协议;刘谦等;《信息安全与技术》;20100831;第49-55页 * |
Also Published As
Publication number | Publication date |
---|---|
CN102185897A (zh) | 2011-09-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2020019341A1 (zh) | 区块链账户的处理方法、装置和存储介质 | |
Zhu et al. | Efficient provable data possession for hybrid clouds | |
CN106612172B (zh) | 云存储中一种可验证还原数据真实性的数据篡改恢复算法 | |
CN110213354A (zh) | 云存储数据机密性保护方法 | |
US10642992B2 (en) | Password augmented all-or-nothin transform | |
Hu et al. | Batch image encryption using generated deep features based on stacked autoencoder network | |
Bernstein et al. | Classic mceliece | |
CN102185897B (zh) | 安全分散式虚拟存储池系统 | |
CN108028751B (zh) | 用于移动主动秘密共享的系统、计算机可读介质和方法 | |
Dumas et al. | Foundations of coding: compression, encryption, error correction | |
CN116488814A (zh) | 一种基于fpga的数据加密的安全计算方法 | |
CN107645558A (zh) | 一种基于雾计算的三级安全云存储方法 | |
Guanghui et al. | Chaotic Image Encryption Based on Running‐Key Related to Plaintext | |
Aruna et al. | Medical healthcare system with hybrid block based predictive models for quality preserving in medical images using machine learning techniques | |
CN106919348A (zh) | 防暴力破解的分布式存储系统及存储方法 | |
CN110086789A (zh) | 一种数据传输的方法、装置、设备和介质 | |
Ghasemi | Resolving a common vulnerability in secret sharing scheme–based data outsourcing schemes | |
CN117714613A (zh) | 一种图像加密方法、装置、电子设备和存储介质 | |
CN112613018A (zh) | 一种基于区块链的数字证书使用系统 | |
Hu | Study of file encryption and decryption system using security key | |
Vershinin et al. | Associative steganography of text messages | |
CN116010984A (zh) | 一种关系型数据库数据多重加密存储方法、装置及设备 | |
Ji et al. | Proofs of retrievability with tag outsourcing based on Goppa codes | |
CN103986718A (zh) | 一种提高hdfs文件传输安全性和读取效率的方法 | |
Yu et al. | A compressible image encryption method based on nondegenerate hyperchaotic system and its implementation on ZYNQ |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20130821 Termination date: 20160414 |