具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
图1所示为根据本发明的第一较佳实施例提供的文件隐藏处理的方法的流程图。图2所示为根据本发明的第一较佳实施例提供的抛物线示意图。图3所示为根据本发明的第一较佳实施例提供的文件隐藏处理的系统的示意图。请一并参考图1至图3。如图1所示,本发明的第一较佳实施例提供的文件隐藏处理的方法包括步骤101~104。
步骤101:文件存储服务器接收客户端发送的文件,根据第一策略,生成加密文件并将所述加密文件发送至控制器。
具体而言,文件存储服务器根据第一策略,生成加密文件的过程为:文件存储服务器根据预设分割块数,通过分块算法,对所述文件进行分块后,进行组合;在组合后的文件块的首尾加上校验码(定义为:第一数据);利用MD5算法计算第一数据的文件签名(定义为:第二数据);组合主第一数据、备第一数据及第二数据,获得加密文件。其中,文件存储服务器根据预设分割块数,通过分块算法,对所述文件进行分块的方式为:取【v/i】余数,对所述文件进行分块,其中,v代表文件中的数据位序,i为预设分割块数。
举例而言,文件存储服务器接收到的待存储文件为“一种文件隐形加密存储的方法和系统”,若预设分割块数为3,所述3个分割数据块分别为余数为0的文件块1、余数为1的文件块2及余数为2的文件块3。文件存储服务器取【v/i】余数,例如:“一”在文件中的数据位序为1,则取【1/3】的余数为1,则将“一”放入余数为1的文件块2;“种”在文件中的数据位序为2,则取【2/3】的余数为2,则将“种”放入余数为2的文件块3;“文”在文件中的数据位序为3,则取【3/3】的余数为0,则将“文”放入余数为0的文件块1,以此类推,获得以下文件块:
余数为0的文件块1 |
文形存方系 |
余数为1的文件块2 |
一件加储法统 |
余数为2的文件块3 |
种隐密的和 |
组合上述三个文件块得到如下文件块:文形存方系一件加储法统种隐密的和。在所述组合后的文件块的首尾加上校验码,定义为第一数据:BEGIN文形存方系一件加储法统种隐密的和END。利用MD5算法计算第一数据的文件签名,并定义为第二数据,如下所示:57219DFEB567EE470DDA2824F0270A5E。组合主第一数据、备第一数据及第二数据,获得加密文件为:BEGIN文形存方系一件加储法统种隐密的和END BEGIN文形存方系一件加储法统种隐密的和END57219DFEB567EE470DDA2824F0270A5E。
步骤102:所述控制器获取文件存储服务器剩余存储空间大小及簇个数。
具体而言,所述控制器接收文件存储服务器发送的加密文件后,向文件存储服务器发送查询请求;所述文件存储服务器向所述控制器反馈查询响应,其中,所述查询响应中携带了文件存储服务器剩余存储空间大小及簇个数。于此,所述文件存储服务器根据预设的单个簇的存储空间大小及剩余存储空间大小,获得簇的个数。计算公式为,簇的个数=文件存储服务器剩余存储空间大小/单个簇的存储空间大小。
举例而言,若单个簇的存储空间大小为4K,文件存储服务器剩余存储空间大小4M,则簇的个数=4M/4K=1024。
步骤103:若文件存储服务器剩余存储空间大小大于或等于所述加密文件大小,则所述 控制器根据第二策略,获得文件分配表并将所述加密文件及所述文件分配表发送至文件存储服务器。
具体而言,控制器比较所述文件存储服务器剩余存储空间大小与加密文件大小,若文件存储服务器剩余存储空间大小小于所述加密文件大小,所述控制器向所述文件存储服务器发出报错信息,由文件存储服务器向客户端返回错误提示。
当控制器比较文件存储服务器剩余存储空间大小大于或等于所述加密文件大小时,控制器根据第二策略,获得文件分配表的过程为:所述控制器根据
获得文件分配表,其中,x≥1且x为正整数;y=ax
2+bx+c(a<0),x代表第几个簇,y代表x对应的值。
举例而言,假设加密文件大小为2M,文件存储服务器的剩余存储空间大小为4M,若单个簇的存储空间大小为4K,则文件存储服务器的剩余存储空间有1024个簇。函数y=ax
2+bx+c(a<0)的抛物线与x轴的交集的面积即为加密文件大小,即2M。于此,所述抛物线与x轴的交点坐标为(0,0)及(1024,0),由此可得所述抛物线表达式为y=a(x-0)(x-1024),即y=ax
2-1024ax。
于本实施例中,即
计算获得a=-3/512
2,则所述函数式y=-3/512
2x
2+3/256x。抛物线如图2所示。
于本实施例中, 则第1个簇上待存储的加密文件大小为 第2个簇上待存储的加密文件大小为 依次类推,第1024个簇上待存储的加密文件大小为 获得文件分配表如下:
簇 |
待存储的加密文件大小 |
1 |
0.00585556KB |
2 |
0.017551422KB |
… |
… |
512 |
2.999996185KB |
… |
… |
1024 |
0.00585556KB |
步骤104:所述文件存储服务器根据接收的所述文件分配表及所述加密文件,将所述加密文件存储在自身器剩余存储空间中的簇中。
具体而言,所述文件存储服务器根据接收的所述文件分配表及所述加密文件,将所述加 密文件存储在自身剩余存储空间中的簇中的过程为:所述文件存储服务器查询文件分配表中各个簇对应的待存储的加密文件大小,获取对应大小的加密文件依次存储到自身剩余存储空间的对应簇中。
如图3所示,本发明的第一较佳实施例提供的文件隐藏处理的系统包括客户端11、文件存储服务器12及控制器13,所述客户端11连接文件存储服务器12,所述文件存储服务器12连接控制器13。所述文件存储服务器12,用于接收客户端11发送的文件,根据第一策略,生成加密文件并将所述加密文件发送至控制器13,还用于根据接收的所述文件分配表及所述加密文件,将所述加密文件存储在自身剩余存储空间中的簇中,并向所述控制器13提供剩余存储空间大小及簇个数。所述控制器13,用于获取文件存储服务器12剩余存储空间大小及簇个数,还用于若文件存储服务器12剩余存储空间大小大于或等于所述加密文件大小,根据第二策略,获得文件分配表并将所述加密文件及所述文件分配表发送至文件存储服务器12。关于上述系统的操作流程同第一较佳实施例提供的方法所述,故于此不再赘述。
图4所示为根据本发明的第二较佳实施例提供的文件隐藏处理的方法的流程图。图5所示为根据本发明的第二较佳实施例提供的文件隐藏处理的系统的示意图。请一并参考图4及图5。如图4所示,本发明的第二较佳实施例提供的文件隐藏处理的方法包括步骤201~204。
步骤201:文件处理器接收客户端发送的文件,根据第一策略,生成加密文件并将所述加密文件发送至策略处理服务器。
具体而言,文件处理器根据第一策略,生成加密文件的过程为:文件处理器根据预设分割块数,通过分块算法,对所述文件进行分块后,进行组合;在组合后的文件块的首尾加上校验码(定义为:第一数据);利用MD5算法计算第一数据的文件签名(定义为:第二数据);组合主第一数据、备第一数据及第二数据,获得加密文件。其中,文件处理器根据预设分割块数,通过分块算法,对所述文件进行分块的方式为:取【v/i】余数,对所述文件进行分块,其中,v代表文件中的数据位序,i为预设分割块数。
举例而言,文件处理器接收到的待存储文件为“一种文件隐形加密存储的方法和系统”,若预设分割块数为3,所述3个分割数据块分别为余数为0的文件块1、余数为1的文件块2及余数为2的文件块3。文件处理器取【v/i】余数,例如:“一”在文件中的数据位序为1,则取【1/3】的余数为1,则将“一”放入余数为1的文件块2;“种”在文件中的数据位序为2,则取【2/3】的余数为2,则将“种”放入余数为2的文件块3;“文”在文件中的数据位序为3,则取【3/3】的余数为0,则将“文”放入余数为0的文件块1,以此类推,获得以下文件块:
余数为0的文件块1 |
文形存方系 |
余数为1的文件块2 |
一件加储法统 |
组合上述三个文件块得到如下文件块:文形存方系一件加储法统种隐密的和。在所述组合后的文件块的首尾加上校验码,定义为第一数据:BEGIN文形存方系一件加储法统种隐密的和END。利用MD5算法计算第一数据的文件签名,并定义为第二数据,如下所示:57219DFEB567EE470DDA2824F0270A5E。组合主第一数据、备第一数据及第二数据,获得加密文件为:BEGIN文形存方系一件加储法统种隐密的和END BEGIN文形存方系一件加储法统种隐密的和END57219DFEB567EE470DDA2824F0270A5E。
步骤202:所述策略处理服务器获取自身剩余存储空间大小及簇个数。
具体而言,所述策略处理服务器根据预设的单个簇的存储空间大小及自身剩余存储空间大小,获得簇的个数。计算公式为,簇的个数=策略处理服务器剩余存储空间大小/单个簇的存储空间大小。
举例而言,若单个簇的存储空间大小为4K,策略处理服务器剩余存储空间大小4M,则簇的个数=4M/4K=1024。
步骤203:若策略处理服务器剩余存储空间大小大于或等于所述加密文件大小,则所述策略处理服务器根据第二策略,获得文件分配表。
具体而言,策略处理服务器比较自身剩余存储空间大小与加密文件大小,若所述剩余存储空间大小小于所述加密文件大小,所述策略处理服务器向所述文件处理器发出报错信息,由文件处理器向客户端返回错误提示。
当策略处理服务器比较自身剩余存储空间大小大于或等于所述加密文件大小时,策略处理服务器根据第二策略,获得文件分配表的过程为:所述策略处理服务器根据
获得文件分配表,其中,x≥1且x为正整数;y=ax
2+bx+c(a<0),x代表第几个簇,y代表x对应的值。
举例而言,假设加密文件大小为2M,策略处理服务器的剩余存储空间大小为4M,若单个簇的存储空间大小为4K,则策略处理服务器的剩余存储空间有1024个簇。函数y=ax
2+bx+c(a<0)的抛物线与x轴的交集的面积即为加密文件大小,即2M。于此,所述抛物线与x轴的交点坐标为(0,0)及(1024,0),由此可得所述抛物线表达式为y=a(x-0)(x-1024),即y=ax
2-1024ax。
于本实施例中,即
计算获得a=-3/512
2,则所述函数式y=-3/512
2x
2+3/256x。于此,抛物线同样如图2所示。
于本实施例中, 则第1个簇上待存储的加密文件大小为 第2个簇上待存储的加密文件大小为 依次类推,第1024个簇上待存储的加密文件大小为 获得文件分配表如下:
簇 |
待存储的加密文件大小 |
1 |
0.00585556KB |
2 |
0.017551422KB |
… |
… |
512 |
2.999996185KB |
… |
… |
1024 |
0.00585556KB |
步骤204:所述策略处理服务器根据所述文件分配表及所述加密文件,将所述加密文件存储在自身剩余存储空间中的簇中。
具体而言,所述策略处理服务器根据所述文件分配表及所述加密文件,将所述加密文件存储在自身剩余存储空间中的簇中的过程为:所述策略处理服务器查询文件分配表中各个簇对应的待存储的加密文件大小,获取对应大小的加密文件依次存储在自身剩余存储空间的对应簇中。
如图5所示,本发明的第二较佳实施例提供的文件隐藏处理的系统包括客户端21、文件处理器22及策略处理服务器23,所述客户端21连接所述文件处理器22,所述文件处理器22连接策略处理服务器23。所述文件处理器22,用于接收客户端21发送的文件,根据第一策略,生成加密文件并将所述加密文件发送至策略处理服务器23。所述策略处理服务器23,用于获取自身剩余存储空间大小及簇个数,还用于若自身剩余存储空间大小大于或等于所述加密文件大小,根据第二策略获得文件分配表,并根据所述文件分配表及所述加密文件,将所述加密文件存储至自身剩余存储空间中的簇中。关于上述系统的操作流程同第二较佳实施例提供的方法所述,故于此不再赘述。
综上所述,根据本发明较佳实施例提供的文件隐藏处理的方法及系统,根据第一策略,生成加密文件。根据第二策略,获得文件分配表,并文件存储服务器或策略处理服务器将加密文件存储在自身剩余存储空间中的簇中,从而实现了数据安全性。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等 同替换、改进等,均应包含在本发明的保护范围之内。