一种基于三维空间结构的数据拆分置乱和恢复方法

文档序号:6358065阅读:683来源:国知局
专利名称:一种基于三维空间结构的数据拆分置乱和恢复方法
技术领域
本发明涉及的是一种安全的用于分布式存储系统的数据分块和恢复算法,能够在分布式存储系统进行数据切分的过程当中置乱数据,保证用户数据的机密性。
背景技术
随着我国信息化程度越来越高,企事业单位对于信息数据和信息化系统依赖程度的不断增加,目前很多信息化系统都是分布式系统,结合当前的云计算,这对于分布式系统的安全提出了严峻的挑战,一方面,信息需要进行加密,另一方面,通过对信息的分块存储, 能够加快对于大文件的读写速度。在信息化系统中,越来越多的灾难和威胁所造成的信息系统破坏和业务中断都可能产生严重后果。分布式存储系统是对抗数据灾难的一种方式,大文件在存储的时候为了安全,以及存储简便的考虑,往往都需要进过分块,并对分块数据进行加密,然后将数据分发到不同的存储节点当中。而传统的分块方法只是单纯的将文件安装比特流进行分块,然后存储于信息系统中。对每一个分块再进行逐个加密,需要一定的时间才能完成加密(解密)的计算,因此,在分布式存储系统切块存储数据的同时,将数据分块与数据置乱加密两种方法有效的结合是一种新的方法。本方法将分块和置乱有效的结合起来,采用独立的一套安全机制,就能够达到预想的目标。

发明内容
一种基于三维空间结构的数据拆分置乱方法,其特征在于将L字节大小的文件按照η个字节进行切块,形成行数据,并按照切块依次取m个行数据构造拆分面mXn,形成

权利要求
1.一种基于三维空间结构的数据拆分置乱方法,其特征在于将L字节大小的文件按照η个字节进行切块,形成行数据,并按照切块依次取m个行数据构造拆分面mXn,形成了个拆分面;使用给定的骑士巡游遍历路径的顺序对每个拆分面中字节数据的顺序mxn进行置乱;使用置乱后的k个拆分面构造三维立方体mXnXk;在三维立方体mXnXk中进行分块数据提取,将k个拆分面上属于(i,j)坐标的字节进行提取,构成mXn个分块数据; 将分块数据存储到分布式系统的不同存储节点。通过这种方法,将数据置乱和拆分统一在数据分块的过程中,所有的分块数据存储在分布式环境中的不同存储节点,能够保证存储系统中数据的机密性,并且在mXn的矩阵中有多条骑士巡游路径,任何攻击者即使获取到全部的数据块也无法破解数据信息,只有授权用户使用拆分参数(拆分面大小,骑士巡游路径)才能够正常恢复原始数据。设算法需要处理的文件大小为L字节,用户选取的拆分面为mXn(m和η都不能小于 5),拆分面中的每个坐标点(i,j)对应一个字节数据,记为彡i彡m,l彡j彡n),拆分使用的骑士巡游路径为P= ((X1^y1), (x2,y2),…,Umxn,ymXn)},则所有数据置乱分布在mXnXk的三维立方体中,其中Λ = ,对三维立方体中每个坐标点存放的数据用三维mxn坐标(X,y,ζ)进行表示,其中1彡X彡m,1彡y彡η,1彡Z彡k,从三维立方体中提取的 mXn个分块数据可以表示为Bij = [(i,j,l),(i,j,2),…,(i,j,k)],其中1彡i彡m, j < η。拆分面构造方法为将初始数据按照η个字节进行切块,形成行数据,并按照切块依次取m个行数据构造拆分面mX n,这样整个初始数据就构成了A个拆分面(若L不能mxn整除mXn,则最后一个拆分面使用“\0”字节补齐)。拆分面中数据置乱方法为将拆分面中的数据照行列顺序ail,a12,…,An^21A22,…, 依次放入骑士巡游路径遍历的坐标位置(例如使用8X8拆分面进行数据拆分,

图1 (a) 中的骑士巡游路径为(1,1), (2,3), (1,6),…,(5,1), (3,2),an置乱到(l,l),a12置乱到(2,3),......,a88置乱到(3,2)),使得所有拆分面上的数据位置发生了改变。三维立方体构造方法为将所有的拆分面按照k的顺序,在三维空间中进行合并,形成三维立方体mXnXk。分块数据提取规则在三维立方体mXnXk中,对应每个拆分面上的坐标点信息(i,j) 进行分块数据提取,最终生成mXn个分块数据,记为Bij= {(i,j,l),(i,j,2),…,(i,j, k)},其中1 < i <m,l < j Sn,每个分块数据包含所有拆分面中坐标(i,j)对应的字节数据。
2.根据权力要求1所述的基于信息加密和信息隐藏的方法,其具体方法步骤为(1)初始化算法,输入拆分面大小mXn,选择置乱使用的骑士巡游路径P={(Xl,Yl), (X2,Y2),…,Umxn,Yfflxn)},需要分块的文件的路径F,按照字节顺序读取需要拆分的文件F, 文件大小为L个字节;(2)如果m或η小于5,则提示用户重新输入拆分面大小,若重新输入的拆分面m或η 大于等于5,则执行步骤(3),否则,执行步骤O);(3)将初始数据分割为
3.这种文件拆分置乱方法的数据恢复方法的特征在于假设文件已经通过上述的拆分置乱方法进行了分块处理,用户已知拆分面的大小mXn以及骑士巡游路径,并获取所有拆分块,则可以进行数据恢复,恢复后的数据存放在文件F中。恢复规则为通过读取系统中存储的分块数据Bij= {(i,j,l),(i,j,2),…,(土,九!^,其中^士彡!!!,^」^!!, 将所有分块数据中的字节数据按照对应的坐标信息U,1,ζ)重构三维立方体mXnXk,并从其中恢复原始的k个拆分面,通过得到的骑士巡游路径遍历一遍拆分面上的数据,即为正确的字节数据序列,最后按照拆分面的顺序由j = 0到j = k依次输出正确字节数据序列,恢复原始文件。根据权力3要求的恢复方法,其具体方法步骤为(1)初始化恢复程序,设置恢复文件存放目录13 ,设置拆分置乱文件使用的拆分面大小mXn,拆分时使用的骑士巡游路径P= {(xi; Y1), (x2, y2),…,(xfflXn, yfflXn)};(2)在输出路径中生成空白的文件F;(3)从存储系统中读取该文件的分块数据块Bij={(i,j,l),(i,j,2),…,(i,j,k)}, 其中 i <m,l< j Sn ;(4)依次读取拆分块中的字节数据,并根据相应的坐标信息填充至三维立方体 mXnXk中,形成k个拆分面;(5)初始化计算的拆分面个数i= 1 ;(6)从三维立方体中读取第i个拆分面;(7)按照骑士巡游路径P={(xi; Y1), (x2,y2),…,Umxn,ymXn)}的顺序依次读取拆分面mXn上的数据,形成正确的字节序列;(8)将字节序列添加至文件F的末尾;(9)i增加1,若i< k,则执行步骤(6),否则执行步骤(10);(10)终止恢复程序,成功恢复原始文件至目录Ρ 中。
全文摘要
本发明提供一种基于三维空间结构的数据拆分置乱和恢复方法。这种方法的关键在于将数据信息拆分成数据块,隐藏在三维空间结构中,从而提高了存储数据的机密性。该方法根据数据拆分块大小和拆分块数目将数据分布到三维空间中,同时使用骑士巡游路径在三维空间的每个面上对字节数据置乱,使得数据置乱和拆分过程统一在数据分块过程中,提高了存储系统抵抗信息窃取者攻击的能力,有效地阻止非法用户访问或窃取存储数据信息,提高了分布式存储系统中数据的机密性。
文档编号G06F12/06GK102193877SQ20111009441
公开日2011年9月21日 申请日期2011年4月15日 优先权日2011年4月15日
发明者姚文斌, 盛宇伟, 陈钊 申请人:北京邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1