一种云计算平台中文件保护方法及系统与流程

文档序号:29355735发布日期:2022-03-22 23:54阅读:68来源:国知局
一种云计算平台中文件保护方法及系统与流程

1.本发明涉及云存储技术领域,更具体的说,涉及云平台存储数据的安全性。


背景技术:

2.随着互联网的发展,以及大数据时代的到来,传统的数据存储方式已经满足不了个人以及企业的数据存储需求了。随之而来的是云存储的高速发展,将文件存放在云端,可以让使用变得更加方便,更节省成本。云存储是在云计算(cloud computing)概念上延伸和衍生发展出来的一个新的概念。云计算是分布式处理、并行处理和网格计算的发展,是透过网络将庞大的计算处理程序自动分拆成无数个较小的子程序,再交由多部服务器所组成的庞大系统经计算分析之后将处理结果回传给用户。云存储系统是一个多存储设备、多应用、多服务协同工作的集合体,任何一个单点的存储系统都不是云存储。
3.近几年各大互联网厂商也都相继推出了云服务,如阿里巴巴,腾讯,百度等,虽然数据云存储,为用户节省了成本,提高了使用便利性,但是也面临着相应的问题,比如:用户如何确保存储在云端的文件不会丢失,如何确保云存储文件的完整性,如何确保文件的机密性,防止文件在任何非授权情况下的泄露,如何确保文件的传播是安全的,一旦传播开来会不会有木马、病毒,从而导致用户遭受损失。


技术实现要素:

4.为解决上述问题,本发明提供了一种云计算平台中文件保护方法,包括以下步骤:
5.s1:在内存中创建一个字节数组缓存区,将文件字节数据写入到缓存区中,再将字节流存入到arraybyte[]中,获取数组长度n,并关闭资源;
[0006]
s2:根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,0为安全等级最低,以整数形式向上增加,等级数值越大安全性越高;
[0007]
s3:新建sl+1个数组,对于sl+1个数组中的第i个数组,其依次存储arraybyte[]中下标为d的元素,d=d+sl+1;所述i为小于等于sl+1的正整数,d的初始值为i-sl-2;
[0008]
s4:对得到的sl+1个数组分别进行分片,并,对每片进行编号,编号从0至sl,按照预设规则发送至云平台多个节点进行存储。
[0009]
优选地,所述按照预设规则发送至云平台多个节点进行存储,具体包括:
[0010]
获取云平台各个节点的安全等级和剩余存储空间,若节点的安全等级小于文件的安全等级,则不为该节点分配分片;反之,根据所述剩余存储空间将所述分片分配给剩余的节点。
[0011]
优选地,所述根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,具体为:
[0012]
s21,获取文件的类型,若为第一类型文件,则根据文件的重要性和设置者的偏好生成安全等级sl;若为其他类型文件,则执行s22;
[0013]
s22,获取文件的大小,按照文件的大小设置多个区间,每个区间有对应的权重,根
据所述权重和文件的重要性、设置者的偏好生成安全等级sl。
[0014]
优选地,所述根据文件的重要性和设置者的偏好生成安全等级sl,具体为:获取设置者历史对文件类型设置的安全级别,判断所述安全级别与文件的重要性是否匹配,如果匹配,则以所述文件的重要性作为所述安全等级sl;否则,取所述文件的重要性和设置者历史对文本类型设置的安全级别的最大值作为所述安全等级sl。
[0015]
优选地,所述将文件字节数据写入到缓存区中,具体为:
[0016]
对文件进行加密,将加密后的字节数据写入到缓存区中。
[0017]
此外,本发明还提供了一种云计算平台中文件保护系统,所述系统包括以下模块:
[0018]
字节流转换模块,用于在内存中创建一个字节数组缓存区,将文件字节数据写入到缓存区中,再将字节流存入到arraybyte[]中,获取数组长度n,并关闭资源;
[0019]
安全等级生成模块,用于根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,0为安全等级最低,以整数形式向上增加,等级数值越大安全性越高;
[0020]
编号混淆模块,用于新建sl+1个数组,对于sl+1个数组中的第i个数组,其依次存储arraybyte[]中下标为d的元素,d=d+sl+1;所述i为小于等于sl+1的正整数,d的初始值为i-sl-2;
[0021]
分片分发模块,用于对得到的sl+1个数组分别进行分片,并,对每片进行编号,编号从0至sl,按照预设规则发送至云平台多个节点进行存储。
[0022]
优选地,所述按照预设规则发送至云平台多个节点进行存储,具体包括:
[0023]
获取云平台各个节点的安全等级和剩余存储空间,若节点的安全等级小于文件的安全等级,则不为该节点分配分片;反之,根据所述剩余存储空间将所述分片分配给剩余的节点。
[0024]
优选地,所述根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,具体为:
[0025]
获取文件的类型,若为第一类型文件,则根据文件的重要性和设置者的偏好生成安全等级sl;若为其他类型文件,则获取文件的大小,按照文件的大小设置多个区间,每个区间有对应的权重,根据所述权重和文件的重要性、设置者的偏好生成安全等级sl。
[0026]
优选地,所述根据文件的重要性和设置者的偏好生成安全等级sl,具体为:获取设置者历史对文件类型设置的安全级别,判断所述安全级别与文件的重要性是否匹配,如果匹配,则以所述文件的重要性作为所述安全等级sl;否则,取所述文件的重要性和设置者历史对文本类型设置的安全级别的最大值作为所述安全等级sl。
[0027]
优选地,所述将文件字节数据写入到缓存区中,具体为:对文件进行加密,将加密后的字节数据写入到缓存区中。
[0028]
本发明结合了设置者偏好性、文件安全等级、文件字节流转换原理以及数组遍历方法,创建了一种不规则存储数据碎片的云计算平台中文件保护方法及系统。该方法在当前云平台存储的环境下,如果某个云平台节点数据丢失,或者被恶意窃取,攻击者由于不知道字节流分片规则,所以无法完整地还原初始文件,从而提高了文件存储的安全性,增加了云文件的可用性,方便了云平台存储文件的可传播性。
附图说明
[0029]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例。
[0030]
图1为本发明实施例提供的结构图;
[0031]
图2为本发明实施例提供的流程图。
具体实施方式
[0032]
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0033]
如图1所示,在第一个实施例中,本发明提供了一种云计算平台中文件保护方法,包括以下步骤:
[0034]
s1:在内存中创建一个字节数组缓存区,将文件字节数据写入到缓存区中,再将字节流存入到arraybyte[]中,获取数组长度n,并关闭资源;
[0035]
arraybyte[]中存储的是文件的字节数据或者经过转换后文件的字节数据,在一个具体实施例中,为了提高文件的安全性,可以根据文件类型判断是否对文件进行加密,然后将文件加密后的数据写入到缓存区中。例如对于doc格式、pdf格式、txt格式的文件,在将文件字节数据写入到缓存区中之前,先根据加密算法对文件加密。
[0036]
s2:根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,0为安全等级最低,以整数形式向上增加,等级数值越大安全性越高;
[0037]
不同类型的文件,要求的安全性不同,常见的资格证明、个人证件等多以pdf或者图片格式保存,这些常用的涉及关键性信息的文件类型和普通的电影格式文件的安全等级不同,而且由于电影格式的文件比较大,如果仍然同文本类型或者图片格式文件类型的文件保护方法相同,毫无疑问地,会对系统造成很大的压力,甚至造成服务器宕机,本发明不仅仅根据文件的重要性生成文件的安全等级,还根据文件的大小、文件的类型、文件的重要性以及设置者的偏好生成安全等级sl,这既保证了对文件的保护,也可以减轻系统压力。所述文件的类型为doc文件、pdf文件、txt文件、图片格式文件、视频格式文件。文件的重要性可以是文件的重要性等级。
[0038]
s3:新建sl+1个数组,对于sl+1个数组中的第i个数组,其依次存储arraybyte[]中下标为d的元素,d=d+sl+1;所述i为小于等于sl+1的正整数,d的初始值为i-sl-2;
[0039]
假设sl=2,则新建3个数组,对于第1个数组,d的初始值为1-2-2=-3,则将arraybyte[]中下标为0、3、6...的元素存储到第一个数组;对于第2个数组,d的初始值为2-2-2=-2,将arraybyte[]中下标为1、4、7...的元素存储到第二个数组;对于第3个数组,d的初始值为3-2-2=-1,将arraybyte[]中下标为2、5、8...的元素存储到第三个数组;
[0040]
再比如sl=4,则新建5个数组,对于第1个数组,d的初始值为1-4-2=-5,则将arraybyte[]中下标为0、5、10...的元素存储到第一个数组;对于第2个数组,d的初始值为2-4-2=-4,将arraybyte[]中下标为1、6、11...的元素存储到第二个数组;对于第3个数
组,d的初始值为3-4-2=-3,将arraybyte[]中下标为2、7、12...的元素存储到第三个数组;对于第4个数组,d的初始值为4-4-2=-2,将arraybyte[]中下标为3、8、13...的元素存储到第四个数组;对于第5个数组,d的初始值为5-4-2=-1,将arraybyte[]中下标为4、9、14...的元素存储到第五个数组。
[0041]
s4:对得到的sl+1个数组分别进行分片,并对每片进行编号,编号从0至sl,按照预设规则发送至云平台多个节点进行存储。
[0042]
为了防止恶意用户对数据的恢复,本发明进一步地,还对每个数组进行分片,例如当sl=2时,对第1、2、3个数组,分别将其分为多个片段,每个数组有3个片段,也即第一个数组分为3个片段,第二个数组分为3个片段,第三个数组分为3个片段,然后将每个片段分到多个节点。分片规则有多种,例如按照数组序号平分为3个片段,也可以采用其他方式分片,本发明对此不作具体限定。
[0043]
预设规则有多种,例如随机分配到多个节点,只需要在一个文本中记录分片和节点的对应关系即可。在一个实施例中,所述按照预设规则发送至云平台多个节点进行存储,具体包括:
[0044]
获取云平台各个节点的安全等级和剩余存储空间,若节点的安全等级小于文件的安全等级,则不为该节点分配分片;反之,根据所述剩余存储空间将所述分片分配给剩余的节点。
[0045]
云平台中不同的节点安全等级不同,有的节点是关键节点或者存储重要数据的节点,该节点的安全等级较高,反之,有些节点的安全等级较低;而且不同节点可用存储空间不同,在一个实施例中,根据节点的安全等级和剩余存储空间,对分片进行存储。
[0046]
优选地,所述根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,具体为:
[0047]
s21,获取文件的类型,若为第一类型文件,则根据文件的重要性和设置者的偏好生成安全等级sl;若为其他类型文件,则执行s22;第一类型文件包括但不限于doc文件、pdf文件、图片文件。
[0048]
s22,获取文件的大小,按照文件的大小设置多个区间,每个区间有对应的权重,根据所述权重和文件的重要性、设置者的偏好生成安全等级sl。
[0049]
设置者的偏好可以为设置者对应文件类型的历史设置偏好,也可以是设置者预先设置的偏好信息,例如对所有文件执行严格的安全等级或者对视频文件执行宽松安全等级等。
[0050]
在一个实施例中,所述根据文件的重要性和设置者的偏好生成安全等级sl,具体为:获取设置者历史对文件类型设置的安全级别,判断所述安全级别与文件的重要性是否匹配,如果匹配,则以所述文件的重要性作为所述安全等级sl;否则,取所述文件的重要性和设置者历史对文本类型设置的安全级别的最大值作为所述安全等级sl。
[0051]
优选地,所述将文件字节数据写入到缓存区中,具体为:对文件进行加密,将加密后的字节数据写入到缓存区中。
[0052]
在第二个实施例中,本发明还提供了一种云计算平台中文件保护系统,如图2所示,所述系统包括以下模块:
[0053]
字节流转换模块,用于在内存中创建一个字节数组缓存区,将文件字节数据写入
到缓存区中,再将字节流存入到arraybyte[]中,获取数组长度n,并关闭资源;
[0054]
安全等级生成模块,用于根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,0为安全等级最低,以整数形式向上增加,等级数值越大安全性越高;
[0055]
编号混淆模块,用于新建sl+1个数组,对于sl+1个数组中的第i个数组,其依次存储arraybyte[]中下标为d的元素,d=d+sl+1;所述i为小于等于sl+1的正整数,d的初始值为i-sl-2;
[0056]
分片分发模块,用于对得到的sl+1个数组分别进行分片,并,对每片进行编号,编号从0至sl,按照预设规则发送至云平台多个节点进行存储。
[0057]
优选地,所述按照预设规则发送至云平台多个节点进行存储,具体包括:
[0058]
获取云平台各个节点的安全等级和剩余存储空间,若节点的安全等级小于文件的安全等级,则不为该节点分配分片;反之,根据所述剩余存储空间将所述分片分配给剩余的节点。
[0059]
优选地,所述根据文件的大小、文件的类型、文件的重要性以及设置者的偏好,生成文件的安全等级sl,具体为:
[0060]
获取文件的类型,若为第一类型文件,则根据文件的重要性和设置者的偏好生成安全等级sl;若为其他类型文件,则获取文件的大小,按照文件的大小设置多个区间,每个区间有对应的权重,根据所述权重和文件的重要性、设置者的偏好生成安全等级sl。
[0061]
优选地,所述根据文件的重要性和设置者的偏好生成安全等级sl,具体为:获取设置者历史对文件类型设置的安全级别,判断所述安全级别与文件的重要性是否匹配,如果匹配,则以所述文件的重要性作为所述安全等级sl;否则,取所述文件的重要性和设置者历史对文本类型设置的安全级别的最大值作为所述安全等级sl。
[0062]
优选地,所述将文件字节数据写入到缓存区中,具体为:对文件进行加密,将加密后的字节数据写入到缓存区中。
[0063]
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0064]
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1