本发明涉及加密解密,尤其涉及一种文件加密和解密方法及系统。
背景技术:
1、为了解决文件在流转过程中泄露或遭到破环等问题,需对文件进行加密保存和权限控制,以保证文件存储安全和流转安全。
2、现有技术的加解密技术,对加密文件内容的密钥安全保存与分发处理并不合理,文件只关注于加解密本身,并不处理访问权限校验,缺乏多重文件的完整性检测等,因此,现有的文件加密和解密安全性较低。
3、因此,有必要提出一种新的技术方案。
技术实现思路
1、为解决现有技术中存在的技术问题,本发明公开了一种文件加密和解密方法,包括:
2、一方面,本发明提供一种文件加密和解密方法,所述方法包括:
3、获取待加密文件;
4、通过对称加密算法对文件进行加密运算;
5、设置授权权限信息,将授权权限信息写入文件尾部并加密保存,生成权限列表;
6、判断文件类型是否为加密文件;
7、访问加密文件尾部的权限列表并判断是否有权限打开所述加密文件;
8、通过加密文件整体长度和文件尾长度计算出密文起始位置;
9、通过对称加密算法对加密文件内容进行解密运算。
10、进一步地,若判断文件类型为加密文件,则访问加密文件尾部的权限列表并判断是否有权限打开加密文件。
11、进一步地,若判断有权限打开加密文件,则通过文件整体长度和文件尾长度计算出密文起始位置。
12、进一步地,还包括,
13、将解密出的明文并以字节流的方式存储在内存中,使得打开解密后的文件时读取内存中的明文内容,关闭解密后的文件时内存自动释放。
14、进一步地,若对解密后的文件进行再次授权,则更新解密文件内容和权限列表,生成新的加密文件。
15、进一步地,授权权限信息包括查看权限、编辑权限、复制权限、离线操作权限、打印权限、解密权限、授权权限、使用次数和使用时间。
16、进一步地,所述对称加密算法为国密sm4对称加密算法。
17、另一方面,本发明还提供一种文件加密和解密系统,包括,
18、获取模块,其用于获取待加密文件;
19、加密模块,其用于通过对称加密算法对文件进行加密运算;
20、授权模块,其用于设置授权权限信息,将授权权限信息写入文件尾部并加密保存,生成权限列表;
21、判断文件类型模块,其用于判断文件类型是否为加密文件;
22、访问和判断模块,其用于访问加密文件尾部的权限列表并判断是否有权限打开所述加密文件;
23、计算密文位置模块,其用于通过加密文件整体长度和文件尾长度计算出密文起始位置;
24、解密模块,其用于通过对称加密算法对加密文件内容进行解密运算。
25、再一方面,本发明还提供一种文件加密方法,其包括,
26、获取待加密文件;
27、通过对称加密算法对文件进行加密运算;
28、设置授权权限信息,将授权权限信息写入文件尾部并加密保存,生成权限列表。
29、又一方面,本发明还提供一种文件解密方法,其包括,
30、判断文件类型是否为加密文件;
31、访问加密文件尾部的权限列表并判断是否有权限打开所述加密文件;
32、通过加密文件整体长度和文件尾长度计算出密文起始位置;
33、通过对称加密算法对加密文件内容进行解密运算。
34、本发明文件加密和解密的方法,其所用到的加密算法为国密sm4对称加密算法,该算法运算速度快,执行效率高,安全强度高,可以有效保证文件内容的安全性,通过对文件进行加密和解密有效增强了文件安全性,方便对文件在流转过程中进行管控。
35、本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
1.一种文件加密和解密方法,其特征在于,所述方法包括:
2.根据权利要求1所述的文件加密和解密方法,其特征在于,若判断文件类型为加密文件,则访问加密文件尾部的权限列表并判断是否有权限打开加密文件。
3.根据权利要求2所述的文件加密和解密方法,其特征在于,若判断有权限打开加密文件,则通过文件整体长度和文件尾长度计算出密文起始位置。
4.根据权利要求1所述的文件加密和解密方法,其特征在于,还包括。
5.根据权利要求4所述的文件加密和解密方法,其特征在于,若对解密后的文件进行再次授权,则更新解密文件内容和权限列表,生成新的加密文件。
6.根据权利要求1所述的文件加密和解密方法,其特征在于,授权权限信息包括查看权限、编辑权限、复制权限、离线操作权限、打印权限、解密权限、授权权限、使用次数和使用时间。
7.根据权利要求1所述的文件加密和解密方法,其特征在于,所述对称加密算法为国密sm4对称加密算法。
8.一种文件加密和解密系统,其特征在于,包括,
9.一种文件加密方法,其特征在于,其包括,
10.一种文件解密方法,其特征在于,其包括,