一种文档的加密管理方法和装置的制造方法_3

文档序号:9420368阅读:来源:国知局
的文件夹中存储完成加密的密文之后,本发明实施例提供的文档的加密管理方法还可以包括如下步骤:
D1、根据自定义配置的加密密码查看已有受保护加密的文档信息。
[0030]其中,文档在预置路径范围的文件夹中被加密存储之后,若需要查看文档,就可以通过加密密码来查看文档信息,上述对文档的自动加密可以保护文档被网络木马的非法盗取,而不影响系统的合法用户通过密码来查看受加密的文档。
[0031]在本发明的一些实施例中,加密算法具体可以为对称DES加密算法。接下来对文档采用对称DES加密算法进行文档加密进行举例说明。
[0032]本发明实施例采用的加密算法分为两大类:“对称式”和“非对称式”。对称式加密就是加密和解密使用同一个密钥,通常称之为“Sess1n Key ”这种加密技术目前被广泛采用,如DES加密标准就是一种典型的“对称式”加密法。非对称式加密就是加密和解密所使用的不是同一个密钥,通常有两个密钥,称为“公钥”和“私钥”,它们两个必需配对使用,否则不能打开加密文件。非对称加密的缺点是加解密速度要远远慢于对称加密。本发明需要对数据进行快速加密处理,对加密的时间有比较严格的要求。所以采用“对称式”加密的DES加密方式对文档进行加解密处理,其加解密的过程如。
[0033]首先对文档进行加密操作,主要包括:
1、生成KEY和IV
KEY和IV是对称加密生成加密串要求的两个变量。KEY就是自定义加密的简单串。IV是initializat1n vector的意思,IV就是初始化加密函数的变量。其中,System.Security.Cryptography.TripleDESCryptoServiceProvider 类是 dotnet 中实现 DES 算法的主要的类。TripleDESCryptoServiceProvider构造方法同时会初始化一组随机的KEY和IV。默认的TripleDESCryptoServiceProvider的key为24字节,IV为8字节,加密数据块为8字节。生成的KEY和IV在加密过程和解密过程都要使用。生成后要对KEY和IV进行统一保存管理。
[0034]2、字符串明文转成某一代码页对应的编码字节流
待加密的数据可能有两种形式,一种是二进制的数据,本身就是一组字节流,这样的数据可以跳过这一步,直接进入加密步骤。还有一种情况是字符串数据,字符串中同样的字符使用不同的代码页会生成不同的字节码,所以从字符串到字节流的转换是需要指定使用何种编码。
[0035]3、加密操作
DES算法把64位的明文输入块变为64位的密文输出块,它所使用的密钥也是64位,其算法主要分为两步:
(31)初始置换
其功能是把输入的64位数据块按位重新组合,并把输出分为L0、RO两部分,每部分各长32位,其置换规则为将输入的第58位换到第一位,第50位换到第2位……依此类推,最后一位是原来的第7位。L0、R0则是换位输出后的两部分,LO是输出的左32位,RO是右32位,例:设置换前的输入值为D1D2D3……D64,则经过初始置换后的结果为:L0=D58D50……D8 ;R0=D57D49......D7。
[0036](32)逆置换
经过16次迭代运算后,得到L16、R16,将此作为输入,进行逆置换,逆置换正好是初始置换的逆运算,由此即得到密文输出。
[0037]接下来对文档进行解密操作,主要包括如下:
1、解密操作
首先解密加密步骤生成的密文字节流,需要使用到加密步骤使用的同一组KEY和IV并将密文字节流解密成未加密的字节流。DES加密是以数据块为单位加密的,8个字节一个数据块,如果待加密明字节流的长度不是8字节的整数倍,算法先用值为“O”的字节补足8个字节,然后进行加密。
[0038]2、从编码字节流转成字符串明文。
[0039]由前述举例说明可知,本发明采用基于系统的文件夹实时监听功能,对系统指定的文件夹或某个分区乃至整个硬盘的各个分区进行动态实时监听。当用户创建某种特定格式或文件名含有敏感字符的文档并保存到受监听保护的文件夹时,文档文件名中所含有的敏感字符会根据用户自定义替换规则被自动隐藏或替换并根据已配置的加密规则进行加密保存。加密保护的时效性比较高,一旦文档保存后立即对文档进行加密保护。加密操作在用户保存文档后的毫秒级内实现自动加密。并且一旦功能部署后无需用户额外操作,可以实现用户操作和加密功能的无缝衔接。
[0040]前述实施例描述了本发明提供的文档的加密管理方法,接下来对应的文档的加密管理装置,请参阅如图2所示,文档的加密管理装置200包括:
实时监听模块201,用于实时监听处于预置路径范围的文件夹内的文档状态是否发生变化,所述文档状态发生变化包括:新创建文档、文档名称变更、文档内容修改、文档大小改变;
敏感字符处理模块202,用于当所述文件夹内存在状态变化的第一文档时,判断所述第一文档对应的文档名称中是否存在预置的敏感字符;当所述第一文档对应的文档名称中存在所述敏感字符时,根据预置的字符替换规则对所述第一文档对应的文档名称进行敏感字符替换,得到完成字符替换的第二文档;
加密模块203,用于按照预置的加密算法对所述第二文档进行加密,在所述文件夹中存储完成加密的密文。
[0041]其中,所述加密模块203,还用于所述敏感字符处理模块判断所述第一文档对应的文档名称中是否存在预置的敏感字符之后,当所述第一文档对应的文档名称中不存在所述敏感字符时,按照预置的加密算法对所述第一文档进行加密,在所述文件夹中存储完成加密的密文。
[0042]其中,若预置路径范围的文件夹为两个以上的文件夹时,所述文档状态发生变化还包括:文档存储路径改变。
[0043]其中,所述加密模块203,具体用于获取所述第二文档的类型属性,所述第二文档的类型属性和所述第一文档的类型属性相同;根据所述第二文档的类型属性确定用于所述第二文档加密的加密算法,其中,不同类型属性的文档设置有不同的加密算法。
[0044]其中,所述加密算法为对称DES加密算法。
[0045]通过前述对本发明的举例描述可知,首先实时监听处于预置路径范围的文件夹内的文档状态是否发生变化,文档状态发生变化包括:新创建文档、文档名称变更、文档内容修改、文档大小改变。当文件夹内存在状态变化的第一文档时,判断第一文档对应的文档名称中是否存在预置的敏感字符,当第一文档对应的文档名称中存在敏感字符时,根据预置的字符替换规则对第一文档对应的文档名称进行敏感字符替换,得到完成字符替换的第二文档,按照预置的加密算法对第二文档进行加密,在文件夹中存储完成加密的密文。本发明实施例中对预置路径范围的文件夹可以进行实时监听,监
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1