平码五不中公式规律
  • / 10
  • 下载费用:30 金币  

一种基于分区的文件加解密方法和装置.pdf

关 键 ?#21097;?/dt>
一种 基于 分区 文件 解密 方法 装置
  专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
摘要
申请专利号:

CN201310425533.X

申请日:

2013.09.17

公开号:

CN103914666A

公开日:

2014.07.09

当前法律状态:

驳回

有效性:

无权

法?#19978;?#24773;: 发明专利申请公布后的驳回IPC(主分类):G06F 21/78申请公布日:20140709|||实质审查的生效IPC(主分类):G06F 21/78申请日:20130917|||公开
IPC分类号: G06F21/78(2013.01)I 主分类号: G06F21/78
申请人: 亚欧宝龙信息安全技术(湖南)有限公司
发明人: 杨志坚; 成连
地址: 411300 湖南省韶山市科技创业服务中心5楼
优?#28909;ǎ?/td>
专利代理机构: 北京风雅颂专利代理有限公司 11403 代理人: 李弘;李翔
PDF完整版下载: PDF下载
法律状态
申请(专利)号:

CN201310425533.X

授权公告号:

||||||

法律状态公告日:

2018.04.06|||2014.08.06|||2014.07.09

法律状态类型:

发明专利申请公布后的驳回|||实质审查的生效|||公开

摘要

本发明公开了一种基于分区的文件加密方法和装置,包括步骤:创建受用户密码或/且密钥文件保护的文件加密分区:首先选择一个分区,包括分区头、文件区和空闲区;然后生成随机数并作为盐值存放于分区头的首部,生成文件加密密钥对文件区的文件数据进行加密;读取用户设置的密码或/且密钥文件,利用该密码或/且密钥文件以及所述的盐值生成用户加密密钥,并且根据生成的所述用户加密密钥对文件加密密钥进行加密,同时存放于分区头的尾部;加载文件加密分区:给所述文件加密分区分配一个盘符;加密分区使用完后,卸载文件加密分区:?#22836;?#25152;述文件加密分区的盘符。从而,本发明能够提高文件密码的强度以及加密强度。

权利要求书

权利要求书
1.  一种基于分区的文件加密方法,其特征在于,包括步骤:
创建受用户密码或/且密钥文件保护的文件加密分区:首先选择一个分区,包括分区头、文件区和空闲区;然后生成随机数并作为盐值存放于分区头的首部,生成文件加密密钥对文件区的文件数据进行加密;读取用户设置的密码或/且密钥文件,利用该密码或/且密钥文件以及所述的盐值生成用户加密密钥,并且根据生成的所述用户加密密钥对文件加密密钥进行加密,同时存放于分区头的尾部;
加载文件加密分区:给所述文件加密分区分配一个盘符;
加密分区使用完后,卸载文件加密分区:?#22836;?#25152;述文件加密分区的盘符。

2.  根据权利要求1所述的方法,其特征在于,所述的文件加密密?#23458;?#36807;内存中随机数生成器生成一组?#22336;?#24471;到,利用该一组?#22336;?#23545;文件区存储的文件数据进行多次加密。

3.  根据权利要求1所述的方法,其特征在于,在利用用户设置的密码或/且密钥文件以及所述的盐值生成用户加密密钥的过程中,?#19988;?#25454;PBKDF2算法生成用户加密密钥。

4.  根据权利要求3所述的方法,其特征在于,在根据生成的用户加密密钥对文件加密密钥进行加密的过程中,采用的加密算法是自动随机选择加密算法,或者是将加密算法全部提供给用户,让用户自己选择。

5.  根据权利要求1所述的方法,其特征在于,在所述加载文件加密分区?#20445;?#36824;设置有加密?#27431;?#31243;序,监控加密分区中文件调用状态,实时对文件进行加密。

6.  根据权利要求1至5?#25105;?#19968;项所述的方法,其特征在于,在创建受用户密码或/且密钥文件保护的文件加密分区?#20445;?#36824;包括生成填充随机数,使用所述的文件加密密钥对其进行加密,并写入所述分区的空闲区。

7.  一种基于分区的文件加密装置,其特征在于,包括:
加密分区创建单元,用于选择一个分区,包括分区头、文件区和空闲区;然后生成随机数并作为盐值存放于分区头的首部,生成文件加密密钥对文件区的文件数据进行加密;读取用户设置的密码或/且密钥文件,利用该密 码或/且密钥文件以及所述的盐值生成用户加密密钥,并且根据生成的所述用户加密密钥对文件加密密钥进行加密,同时存放于分区头的尾部;
加密分区加载单元,与加密分区创建单元相连,用于给所述文件加密分区分配一个盘符;
加密分区卸载单元,与加密分区加载单元相连,用于加密分区使用完后,?#22836;?#25152;述文件加密分区的盘符。

8.  根据权利要求7所述的装置,其特征在于,所述的加密分区创建单元在生成用户加密密钥的过程中,?#19988;?#25454;PBKDF2算法生成用户加密密钥。

9.  根据权利要求8所述的装置,其特征在于,所述的加密分区创建单元还包括生成填充随机数,使用所述的文件加密密钥对其进行加密,并写入所述分区的空闲区。

10.  根据权利要求7至9?#25105;?#19968;项所述的装置,其特征在于,所述加密分区加载单元还设置有加密?#27431;?#31243;序,监控加密分区中文件调用状态,实时对文件进行加密。

说明书

说明书一种基于分区的文件加解密方法和装置
技术领域
本发明涉及信息安全技术领域,特别是指一种基于分区的文件加解密方法和装置。
背景技术
网络的普及让信息的获取、共享和传递变得简单容易,同?#24065;?#22686;加了重要信息泄露的风险,因此各种各样的文件加密方法和工具层出不穷。有一些加密工具利用操作系统来改变文件(夹)的属?#28304;?#21040;加密的目的,这种方式严格来说不是加密,充其量说是保密一种方法,因为没有对文件(夹)进行真实的加密操作,而且这种方法依赖于具体的操作系统,一旦文件(夹)离开了原有操作系统,就能被其它系统显示出来。有的文件编辑器本身集成了加密工具,如PDF、WORD、EXCEL等编辑器,其实这些编辑器的加密功能比?#20808;酰?#25991;件常常被一些解密工具破解,原因一方面是由于加密机制过于简单,另一个很重要的原因是加密密钥简单。
发明内容
有鉴于此,本发明的目的在于提出一种基于分区的文件加解密方法和装置,能够提高文件密码的强度以及加解密强度。
基于上述目的本发明提供的基于分区的文件加密方法,包括步骤:
选择用于存储待加密文件的分区;
生成随机数作为盐值存放于所述分区的分区头首部,生成文件加密密钥并对该分区内的文件数据进行加密;
读取用户的密码和/或密钥文件,利用该密码和/或密钥文件以及所述的盐值生成用户加密密钥;
根据生成的所述用户加密密钥?#36816;?#36848;的文件加密密钥进行加密;
将加密后的文件加密密钥存放于分区头的尾部。
可选地,所述的文件加密密?#23458;?#36807;内存中随机数生成器生成一组?#22336;?#24471; 到;
所述对该分区内的文件数据进行加密为利用该一组?#22336;?#23545;文件区存储的文件数据进行一次或一?#25105;?#19978;的多次加密。
进一步地,所述的利用文件加密密钥?#28304;?#20648;的文件数据进行加密的过程中,任选一种加密算法,或者选择几种加密算法组合使用;和/或,在根据生成的用户加密密钥对文件加密密钥进行加密的过程中,采用的加密算法是自动随机选择加密算法,或者是将加密算法全部提供给用户,让用户自己选择。
进一步地,所述的基于分区的文件加密方法还包括生成填充随机数,使用所述的文件加密密钥对其进行加密,并写入所述分区的空闲区。
基于上述目的,本发明?#22266;?#20379;了基于分区的文件解密方法,包括步骤:
读取用户输入的密码和/或密钥文件;
?#19994;?#36890;过上述所述的加密方法得到的与所述密码和/或密钥文件相匹配的加密分区;
提取所述加密分区的盐值,利用该密码和/或密钥文件以及所述的盐值生成用户解密密钥;
根据所述用户解密密钥?#28304;?#25918;于分区头尾部的所述加密的文件加密密钥进行解密,得到文件解密密钥;
利用所述的文件解密密钥对加密的文件数据进行解密,得到该分区内文件数据。
可选地,所述提取所述加密分区的盐值包括:将用户输入的密码和/或密钥文件转化为一个解密密钥,将得到的解密密钥利用所述的加密算法对分区?#26041;?#34892;解密运算,若能够得到预先设置的盐值,则认证用户输入的密码和/或密钥文件正确;若不能得到盐值,则分区头不能被解密,显示输入错误,提示用户重新输入密码和/或密钥文件。
基于上述目的,本发明?#22266;?#20379;了基于分区的文件加密装置,包括:
加密分区选择单元,用于选择用于存储待加密文件的分区;
文件数据加密单元,与所述加密分区选择单元相连,用于生成随机数作为盐值存放于所述分区的分区头首部,生成文件加密密钥并对该分区内的文件数据进行加密;
文件加密密钥加密单元,与所述文件数据加密单元相连,用于读取用户的密码和/或密钥文件,利用该密码和/或密钥文件以及所述的盐值生成用户加密密钥;根据生成的所述用户加密密钥?#36816;?#36848;的文件加密密钥进行加密;将加密后的文件加密密钥存放于分区头的尾部。
可选地,所述的文件加密密钥加密单元在根据生成的用户加密密钥对文件加密密钥进行加密的过程中,采用的加密算法是自动随机选择加密算法,或者是将加密算法全部提供给用户,让用户自己选择。
进一步地,所述的文件数据加密单元还包括生成填充随机数,使用所述的文件加密密钥对其进行加密,并写入所述分区的空闲区。
基于上述目的,本发明?#22266;?#20379;了基于分区的文件解密装置,包括:
读取单元,用于读取用户输入的密码和/或密钥文件;
用户解密密钥生成单元,与所述读取单元相连,用于?#19994;?#36890;过上述所述的加密装置得到的与所述密码和/或密钥文件相匹配的加密分区;
文件解密密钥生成单元,与所述用户解密密钥生成单元相连,用于根据所述用户解密密钥?#28304;?#25918;于分区头尾部的所述加密的文件加密密钥进行解密,得到文件解密密钥;
获取文件数据单元,与所述文件解密密钥生成单元相连,用于利用所述的文件解密密钥对加密的文件数据进行解密,得到该分区内文件数据。
从上面所述可?#38053;?#20986;,本发明提供的基于分区的文件加解密方法和装置,通过在分区上写入随机生成的随机数,并且随机生成文件加密密钥对文件数据进行加密,最后利用读取用户设置的密码和/或密钥文件对文件加密密钥进行加密。因此,本发明明显提高了对文件数据加解密的复?#26377;裕?#30830;保了文件数据的安全性。
附图说明
图1为本发明实施例基于分区的文件加密方法的流程示意图;
图2为本发明实施例基于分区的文件加密方法的加密分区的结构示意图;
图3为本发明实施例基于分区的文件加密装置的结构示意图;
图4为本发明实施例基于分区的文件解密装置的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
参阅图1所示,为本发明实施例基于分区的文件加密方法的流程示意图。所述的基于分区的文件加密方法包括:
步骤101,选择一个用于存储待加密文件的分区,包括分区头、文件区和空闲区(如图2中所示的加密分区的结构示意图)。
步骤102,生成随机数,存放于分区头的首部作为加密分区的盐值。其中,所谓盐值是为了确保任何两个用户密码的散列值都不相同,在加密密码之前,在每个用户的密码中添加的一个唯一的值。较佳地,通过内存中随机数生成器生成随机数。
步骤103,生成文件加密密钥,对文件区存储的文件数据加密。
作为一个实施例,文件加密密钥的生成是通过内存中随机数生成器生成一个或者一组?#22336;?#24471;到。优选地,如果产生的是一组?#22336;?#23601;可以对文件区存储的文件数据进行多次加密,提高加密的复杂度,使得破解文件成为事实上的不可能。利用文件加密密钥?#28304;?#20648;的文件数据进行加密的过程中,用户可以任选一种加密算法,或者选择几种加密算法组合使用。较佳地,所述文件数据加密算法可以为DES、3DES、RC2、RC4、RC5、AES、Blowfish、Twofish、Rijndael、AES-256、Serpent之一或其组合。
需要说明的是,作为本发明的实施例,进行基于分区的文件加密?#20445;?#27493;骤102和步骤103可以按照上述次序进行,?#37096;?#20197;先进行步骤103,再进行步骤102。在本发明的另一个实施例中,?#37096;?#20197;同时进行步骤102和103。
步骤104:读取用户设置的密码和/或密钥文件,利用该密码和/或密钥文件以及所述的盐值生成用户加密密钥,并且根据生成的所述用户加密密钥对文件加密密钥进行加密,同时将加密后的文件加密密钥存放于分区头的尾部。
在本发明的一个实施例中,用户可以设置密码或者密钥文件,?#37096;?#20197;同时设置密码和密钥文件。在生成用户加密密钥的过程中,可以依据PBKDF2算 法生成。
较佳地,DK=PBKDF2(P,S,C,dkLen),其中DK是最终导出的加密密钥。参数P是用户输入的密码和/或密钥文件,若是用户输入的是密钥文件通常只取所述密钥文件的一部分例如密钥文件的前1KB;若用户同时输入密码和密钥文件,通常需要先对密码和密钥文件进行预处理例如异或操作。参数S是加密“盐值?#20445;?#21442;数C是对哈希值重复进行哈希迭代的次数。参数dkLen是导出密钥的长度,长度范围为64位-256位。另外,PBKDF2算法采用的哈希算法可以为:HMAC-SHA-512、HMAC-RIPEMD-160、MD4、MD5、SHA、RIPEMD、Whirlpool、HMAC-等等,用户可以任选一种。所谓哈希算法是将?#25105;?#38271;度的二进制值?#25104;?#20026;固定长度的?#38386;?#20108;进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要?#19994;?#25955;列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。
在本发明的另一个实施例中,根据生成的用户加密密钥对文件加密密钥进行加密,采用的加密算法可以是自动随机选择加密算法,?#37096;?#20197;将加密算法全部提供给用户,让用户自己选择。
另外,所述基于分区的文件加密方法还可以生成填充随机数,然后使用所述的文件加密密钥?#36816;?#36848;的填充随机数进行加密,并写入分区的空闲区。这样文件区和空闲区?#21152;?#21152;密的内容,无法辨别文件区和空闲区两者的界限,从而能够防止对分区中的文件区进行探测。其中,所述填充随机数可以通过内存中的随机生成器生成。
还有,本发明说明了对上述所述的基于分区的文件加密方法获得的加密分区进行解密,首先读取用户输入的密码和/或密钥文件;?#19994;?#36890;过上述所述的加密方法得到的与所述密码和/或密钥文件相匹配的加密分区;提取所述加密分区的盐值,利用该密码和/或密钥文件以及所述的盐值生成用户解密密钥;根据用户解密密钥?#28304;?#25918;于分区头尾部的所述加密的文件加密密钥进行解密,得到文件解密密钥;利用文件解密密钥对加密的文件数据进行解密,得到该分区内文件数据。
作为本发明的一个实施例,将用户输入的密码和/或密钥文件转化为一个 解密密钥,将得到的解密密钥利用所述的加密算法对分区?#26041;?#34892;解密运算,若能够得到预先设置的盐值,则认证用户输入的密码和/或密钥文件正确;若不能得到盐值,则分区头不能被解密,显示输入错误,提示用户重新输入密码和/或密钥文件。
参阅图3所示,为本发明实施例基于分区的文件加密装置的结构示意图。所述的基于分区的文件加密装置包括:
加密分区选择单元301,选择一个用于存储待加密文件的分区,包括分区头、文件区和空闲区(如图2中所示的加密分区的结构示意图)。
文件数据加密单元302,与加密分区选择单元301相连,其主要功能包括:
1)生成随机数,存放于分区头的首部作为加密分区的盐值。其中,所谓盐值是为了确保任何两个用户密码的散列值都不相同,在加密密码之前,在每个用户的密码中添加的一个唯一的值。较佳地,通过内存中随机数生成器生成随机数。
2)生成文件加密密钥,对文件区存储的文件数据加密:作为一个实施例,文件加密密钥的生成是通过内存中随机数生成器生成一个或者一组?#22336;?#24471;到。优选地,如果产生的是一组?#22336;?#23601;可以?#28304;?#20648;的文件数据进行多次加密,提高加密的复杂度,使得破解文件成为事实上的不可能。利用文件加密密钥?#28304;?#20648;的文件数据进行加密的过程中,用户可以任选一种加密算法,或者选择几种加密算法组合使用。较佳地,所述文件数据加密算法可以为DES、3DES、RC2、RC4、RC5、AES、Blowfish、Twofish、Rijndael、AES-256、Serpent之一或其组合。
3)还可以生成填充随机数,然后使用所述的文件加密密钥?#36816;?#36848;的填充随机数进行加密,并写入分区的空闲区。这样文件区和空闲区?#21152;?#21152;密的内容,无法辨别文件区和空闲区两者的界限,从而能够防止对分区中的文件区进行探测。其中,所述填充随机数可以通过内存中的随机生成器生成。
文件加密密钥加密单元303,与文件数据加密单元302相连,其主要功能包括:
读取用户设置的密码和/或密钥文件,利用该密码和/或密钥文件以及所 述的盐值生成用户加密密钥,并且根据生成的所述用户加密密钥对文件加密密钥进行加密,同时将加密后的文件加密密钥存放于分区头的尾部。
在本发明的一个实施例中,用户可以设置密码或者密钥文件,?#37096;?#20197;同时设置密码和密钥文件。在生成用户加密密钥的过程中,可以依据PBKDF2算法生成。
较佳地,DK=PBKDF2(P,S,C,dkLen),其中DK是最终导出的加密密钥。参数P是用户输入的密码和/或密钥文件,若是用户输入的是密钥文件通常只取所述密钥文件的一部分例如密钥文件的前1KB;若用户同时输入密码和密钥文件,通常需要先对密码和密钥文件进行预处理例如异或操作。参数S是加密“盐值?#20445;?#21442;数C是对哈希值重复进行哈希迭代的次数。参数dkLen是导出密钥的长度,长度范围为64位-256位。另外,PBKDF2算法采用的哈希算法可以为:HMAC-SHA-512、HMAC-RIPEMD-160、MD4、MD5、SHA、RIPEMD、Whirlpool、HMAC-等等,用户可以任选一种。所谓哈希算法是将?#25105;?#38271;度的二进制值?#25104;?#20026;固定长度的?#38386;?#20108;进制值,这个小的二进制值称为哈希值。哈希值是一段数据唯一且极其紧凑的数值表示形式。如果散列一段明文而且哪怕只更改该段落的一个字母,随后的哈希都将产生不同的值。要?#19994;?#25955;列为同一个值的两个不同的输入,在计算上是不可能的,所以数据的哈希值可以检验数据的完整性。
在本发明的另一个实施例中,根据生成的用户加密密钥对文件加密密钥进行加密,采用的加密算法可以是自动随机选择加密算法,?#37096;?#20197;将加密算法全部提供给用户,让用户自己选择。
另外,当加载所述文件加密分区?#20445;?#32473;所述文件加密分区分配一个盘符。还可以设置有加密?#27431;?#31243;序,监控加密分区中文件调用状态,实时对文件进行加密。
当卸载所述文件加密分区?#20445;?#25509;收用户的卸载命令,检测是否有未保存的文件,如没有,则卸载加密分区,?#22836;?#25152;述文件加密分区的盘符;如有,提示用户选择选择强制卸载或者等待卸载,接收到等待卸载命令的,待文件保存后再进行卸载,接收到强制卸载命令的,强制卸载加密分区,?#22836;?#25152;述文件加密分区的盘符。
参阅图4所示,为本发明实施例基于分区的文件解密装置的结构示意 图,所述的基于分区的文件解密装置包括依次相连的读取单元401、用户解密密钥生成单元402、文件解密密钥生成单元403和获取文件数据单元404。
在实施例中,读取单元401读取用户输入的密码和/或密钥文件,用户解密密钥生成单元402?#19994;?#36890;过上述所述的加密装置得到的与读取单元401的密码和/或密钥文件相匹配的加密分区。文件解密密钥生成单元403根据用户解密密钥?#28304;?#25918;于分区头尾部的所述加密的文件加密密钥进行解密,得到文件解密密钥。最后,获取文件数据单元404利用文件解密密钥对加密的文件数据进行解密,得到该分区内文件数据。
作为本发明的另一个实施例,用户解密密钥生成单元402将用户输入的密码和/或密钥文件转化为一个解密密钥,将得到的解密密钥利用所述的加密算法对分区?#26041;?#34892;解密运算,若能够得到预先设置的盐值,则认证用户输入的密码和/或密钥文件正确;若不能得到盐值,则分区头不能被解密,显示输入错误,提示用户重新输入密码和/或密钥文件。
根据上面所描述地,本发明提出的基于分区的文件加解密方法和装置,创造性的提出了随机生成随机数和文件加密密钥,利用用户设置的密码和/或密钥文件及其所述的随机数生成用户加密密钥,并且?#36816;?#36848;的文件加密密钥进行加密;对文件数据进行了复杂的加密工作,并且加密过程中的文件加密密钥和用户加密密钥的生成也更为随机、复杂,因而在很大程度上提高了文件数据的安全性;高效率地利用了内存随机数生成器,使其生成随机数和文件加密密钥;而且,生成填充随机数,利用文件加密密钥?#36816;?#36848;填充随机数进行加密并写入空闲区,进一步提高了加密强度;与此同?#20445;?#29992;户可以任选一种或者几种算法进行文件加密,还可以任选?#25105;?#19968;种哈希算法生成用户加密密钥,使得文件数据的加密更为灵活,破解也更为不易;最后,整个所述的基于分区的文件加解密方法和装置简便、紧凑,易于实现。
所属领域的普通技术人员应当理解:以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

关于本文
本文标题:一种基于分区的文件加解密方法和装置.pdf
链接地址:http://www.pqiex.tw/p-6115787.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - ?#20122;?#38142;接 - 网站客服 - 联系我们

[email protected] 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备17046363号-1 
 


收起
展开
平码五不中公式规律 利用断组赚钱 吉林十一选五推荐 广东11选5开奘结果 安徽11选5专家推荐号码 山西11选5中奖规则 白山棋牌游戏官网 天天棋牌 qq分分彩app 中原福彩官方手机客户端下载 海南飞鱼在线观看