一种文件加密的方法和装置制造方法及图纸

技术编号:21273851 阅读:23 留言:0更新日期:2019-06-06 08:09
本发明专利技术属于文件加密算法技术领域,具体涉及一种随机性更高、保密性更高的文件加密的方法和装置。本发明专利技术包括:解析入口文件OFD/docx/xlsx.xml,获得文档元数据和文档文件位置和秘钥;解析文档文件Document.xml,获得文档文件内页面文件位置以及其他信息,包括文档内是否含有数字签名Signatures.xml或呈现在内容之上的注释Annotations.xml或标引信息。本发明专利技术维持原有的格式和解析方案,即使未经过改造的解析端程序也可正常识别文档的明文内容;保留原格式线性化或分段加载的机制;文件的关键内容被加密,用于网络传输时仍可维持安全性。

【技术实现步骤摘要】
一种文件加密的方法和装置
本专利技术属于文件加密算法
,具体涉及一种文件加密的方法和装置。
技术介绍
人类进入信息技术时代以来,文件信息的便捷获取和安全保障是一直存在的两面利弊,多种信息技术改进都是在这两个目标之间求得平衡。如何确保信息快捷便利地发布到具有权限的受众一直是信息技术研究的重点,信息安全不仅仅关系到国家的政治、经济、军事等领域,而且还与人们的日常生活与工作等密切相关。如何保证用户信息的隐私性和真实性早己成为处理此类问题的重要话题。基于现代密码技术的认证加密方案应运而生。与传统文字信息相比,多媒体信息在信息交流中表现出来的优点更多,其生动、直观、形象等特点,是受到人们重视的主要原因。数字文件和图像作为一种多媒体信息,自然也受到了人们的青睐。随着互联网的普及和网络带宽的增加,网络传输数字文件和图像具有很多优势,方便快捷,简单有效,几乎可以实时传输数字文件及图像,通讯速度也有较大提升。文档作为一种新兴的信息载体,已经融入到人们的生活之中,为人们的日常生活提供了各种各样的便利。如今,在网络上进行大量的文件传输有很多安全隐患。第一,网络环境存在一定隐患,防御网络攻击的能力薄弱。第二,在经济利益的诱惑下,黑客事件时常发生。第三,许多涉及到个人隐私、商业机密,甚至是国家安全的文件在网络上传输,如果这些信息被非法分子浏览、篡改或者恶意攻击,就会产生极其严重的后果。因此如何保障信息在网络上安全传输,愈发引起重视。文件是一种使用密码学保障文件安全的技术。目前,许多密码系统都是针对文本信息进行加密设计的。理论上讲,这些针对文本信息的密码系统也适用于包含图像的信息加密,但是这些加密系统不是针对数字图像设计,没有考虑数字图像独有的特性,所以加密效果并不十分理想。此外,随着计算机运算能力和处理速度的不断提高,密码破译分析方法不断创新,曾经十分安全的加密系统也变得容易破解了。为有效防止图像信息在网络传输中被攻击,李凯佳等人提出基于DNA-记忆元胞自动机与Hash函数的低延迟加密认证算法。为解决当前加密算法在像素置乱过程中存在大量的内在重复模式,像素只能在相同位水平之间互换,无法形成随机映射,导致算法安全性不佳的问题,李奇等人提出像素随机映射与改进的引力扩散的加密认证算法。光学加密将密文相位信息集中在纯相位掩码中存在轮廓显现问题,为了解决这个问题,张博等人提出相干叠加与模均等矢量分解的光学加密算法。信息安全面临着日益严峻的挑战,因此,为保障新时代文件的安全传输,对图像加密技术的要求也越来越高。图像加密就是把原始图像所表述的信息,经过一系列的变换,如置乱像素点或替代像素值,使之成为一种类似随机噪声的信息。因此,即使加密文件被截获,黑客也不能在短时间内破解这种类似于随机噪声的数据信息,原始文件的信息安全就得到了较好的保护。现如今,数字文件信息价值巨大,通过文件加密来保障数字图像信息的安全是一种重要的方案,因此文件加密的研究将会有巨大的价值意义。
技术实现思路
本专利技术的目的在于提供一种随机性更高、保密性更高的文件加密的方法。本专利技术的目的还在于提供一种文件加密装置。一种文件加密方法,包括如下步骤:(1)解析入口文件OFD/docx/xlsx.xml,获得文档元数据、文档文件位置和秘钥;(2)解析文档文件Document.xml,获得文档文件内页面文件位置以及其他信息,所述其他信息包括文档内是否含有数字签名Signatures.xml、呈现在内容之上的注释Annotations.xml或标引信息;(3)按需解析页面文件Page_N/Content.xml,按其内容呈现文档,每个页面文件中包含有多个字体、图像信息文档;相应的字体、图像信息的索引入口在PublicRes.xml或PageRes.xml中说明,内容由Res文件中的二进制数据提供,并将页面文件进行压缩封装;(4)加密,对形成压缩文件的明文分别加密,将各项加密形成的密件和新组成的解密入口文件封装到压缩文件中;将数据块作为对应明文加密后形成的密文,名称都采用小写,后缀名都使用.dat;解密入口文件即EncryptList.xml,记录解密所需的条件和明密文的对应关系以及文件在无法解开情况下的提示信息;(5)解密,当探测到对应的子文件有解密入口文件,即使用密件解密后的内容;解密入口文可采用xml或其他形式表示,内容包含两部分,一部分记录信息供解析端程序据此找到密码运算组件,另一部分记录包内的密文与其对应明文的配对关系;(5.1)进行解密解包时首先查找是否存在解密入口文件;(5.2)按照原有逻辑寻址包内文件,在解析其内容前先核对解密入口文件,一旦发现所需的文件出现在其配对关系中,则重新寻址对应的密件文件,将对应密件解密后的内容用作解析;(5.3)依据解密入口中的信息找不到解密入口文件或者解析端程序未执行时则使用明文代替。所述的解析入口文件包括:(1.1)运行系统初始化算法生成文档元数据和文档文件位置;(1.2)运行两次秘钥算法分别生成N个文档文件的主密钥和系统公钥组成秘钥;(1.3)运行N次StrucInit算法以初始化N个文档元数据和N个文档文件位置与N个文档文件的公私钥对的隐藏对应关系结构;(1.4)系统初始化算法的输入为安全参数a,输出为文档元数据和文档文件位置:Pa={b,α,αT,c,d,B1,B2,B3};其中,b是与安全参数a相关的素数,α,αT是阶为b的循环群,T为转置;c是α的生成元,d=α×α→αT的双线映射,上述参数为文档元数据;文档文件位置为:B1:{0,1}T→α;B2:αT→{0,1}logb;B3:αT→{0,1}c;B1,B2,B3对应为生成的文档文件三维数据库位置。所述的秘钥算法分别生成N个文档文件的主密钥MK和系统公钥PK包括:(1.2.1)初始化,生成主密钥MK和系统公钥PK;(1.2.2)生成秘钥Key:{MK,e,F},输入系统主密钥,用户标志e以及属性集F,生成该属性集对应的秘钥;其中F={F0,F1,F2,…,FN},F0是文档文件第一层中单独的属性集,F1,F2,…,FN是N个文档文件对应的N层的属性集;Fi={fi,1;f2i,2;…,fi,i};fi,i是属性集Fi的第i个属性,i≤N。所述的解析文档文件包括:(2.1)划分文档文件;(2.2)利用多个CPU线程并行建立各页面文件的结构,找出页面文件中所有标签的位置,忽略标签内容;(2.3)根据标签的位置,使用大量CPU线程并行解析标签的详细内容,包括标签名、属性、数字签名Signatures.xml、呈现在内容之上的注释Annotations.xml或标引信息。所述的对形成压缩文件的明文分别加密包括:(4.1)建立未加密的索引树,索引树建立规则St为:fr表示页面文件中关键字r在文档中出现的次数,ft表示表示页面文件d包含关键字r的数目,g表示整个文档文件中的页面文件数,索引树的第一个节点封装为解密入口文件EncryptList.xml;(4.2)对页面文件d中的关键字权重进行加密;将d随机拆分成两个向量如果St≤1,St>1,最终加密索引树上的结点是两个加密向量对I进行压缩并于解密入口文件形成映射。所述的解密包括:用户根据系统公钥PK对应的主密钥MK以及索引树建立本文档来自技高网
...

【技术保护点】
1.一种文件加密方法,其特征在于,包括如下步骤:(1)解析入口文件OFD/docx/xlsx.xml,获得文档元数据、文档文件位置和秘钥;(2)解析文档文件Document.xml,获得文档文件内页面文件位置以及其他信息,所述其他信息包括文档内是否含有数字签名Signatures.xml、呈现在内容之上的注释Annotations.xml或标引信息;(3)按需解析页面文件Page_N/Content.xml,按其内容呈现文档,每个页面文件中包含有多个字体、图像信息文档;相应的字体、图像信息的索引入口在PublicRes.xml或PageRes.xml中说明,内容由Res文件中的二进制数据提供,并将页面文件进行压缩封装;(4)加密,对形成压缩文件的明文分别加密,将各项加密形成的密件和新组成的解密入口文件封装到压缩文件中;将数据块作为对应明文加密后形成的密文,名称都采用小写,后缀名都使用.dat;解密入口文件即EncryptList.xml,记录解密所需的条件和明密文的对应关系以及文件在无法解开情况下的提示信息;(5)解密,当探测到对应的子文件有解密入口文件,即使用密件解密后的内容;解密入口文可采用xml或其他形式表示,内容包含两部分,一部分记录信息供解析端程序据此找到密码运算组件,另一部分记录包内的密文与其对应明文的配对关系;(5.1)进行解密解包时首先查找是否存在解密入口文件;(5.2)按照原有逻辑寻址包内文件,在解析其内容前先核对解密入口文件,一旦发现所需的文件出现在其配对关系中,则重新寻址对应的密件文件,将对应密件解密后的内容用作解析;(5.3)依据解密入口中的信息找不到解密入口文件或者解析端程序未执行时则使用明文代替。...

【技术特征摘要】
1.一种文件加密方法,其特征在于,包括如下步骤:(1)解析入口文件OFD/docx/xlsx.xml,获得文档元数据、文档文件位置和秘钥;(2)解析文档文件Document.xml,获得文档文件内页面文件位置以及其他信息,所述其他信息包括文档内是否含有数字签名Signatures.xml、呈现在内容之上的注释Annotations.xml或标引信息;(3)按需解析页面文件Page_N/Content.xml,按其内容呈现文档,每个页面文件中包含有多个字体、图像信息文档;相应的字体、图像信息的索引入口在PublicRes.xml或PageRes.xml中说明,内容由Res文件中的二进制数据提供,并将页面文件进行压缩封装;(4)加密,对形成压缩文件的明文分别加密,将各项加密形成的密件和新组成的解密入口文件封装到压缩文件中;将数据块作为对应明文加密后形成的密文,名称都采用小写,后缀名都使用.dat;解密入口文件即EncryptList.xml,记录解密所需的条件和明密文的对应关系以及文件在无法解开情况下的提示信息;(5)解密,当探测到对应的子文件有解密入口文件,即使用密件解密后的内容;解密入口文可采用xml或其他形式表示,内容包含两部分,一部分记录信息供解析端程序据此找到密码运算组件,另一部分记录包内的密文与其对应明文的配对关系;(5.1)进行解密解包时首先查找是否存在解密入口文件;(5.2)按照原有逻辑寻址包内文件,在解析其内容前先核对解密入口文件,一旦发现所需的文件出现在其配对关系中,则重新寻址对应的密件文件,将对应密件解密后的内容用作解析;(5.3)依据解密入口中的信息找不到解密入口文件或者解析端程序未执行时则使用明文代替。2.根据权利要求1所述的一种文件加密方法,其特征在于,所述的解析入口文件包括:(1.1)运行系统初始化算法生成文档元数据和文档文件位置;(1.2)运行两次秘钥算法分别生成N个文档文件的主密钥和系统公钥组成秘钥;(1.3)运行N次StrucInit算法以初始化N个文档元数据和N个文档文件位置与N个文档文件的公私钥对的隐藏对应关系结构;(1.4)系统初始化算法的输入为安全参数a,输出为文档元数据和文档文件位置:Pa={b,α,αT,c,d,B1,B2,B3};其中,b是与安全参数a相关的素数,α,αT是阶为b的循环群,T为转置;c是α的生成元,d=α×α→αT的双线映射,上述参数为文档元数据;文档文件位置为:B1:{0,1}T→α;B2:αT→{0,1}logb;B3:αT→{0,1}c;B1,B2,B3对应为生成的文档文件三维数据库位置。3.根据权利要求2所述的一种文件加密方法,其特征在于,所述的秘钥算法分别生成N个文档文件的主密钥MK和系统公钥PK包括:(1.2.1)初始化,生成主密钥MK和系统公钥PK;(1.2.2)生成秘钥Key:{MK,e,F},输入系统主密钥,用户标志e以及属性集F,生成该属性集对应的秘钥;其中F={F0,F1,F2,…,FN},F0是文档文件第一层中单独的属性集,F1,F2,…,FN是N个文档文件对应的N层的属性集;Fi={fi,1;f2i,2;…,fi,i};fi,i是属性集Fi的第i个属性,i≤N。4.根据权利要求2所述的一种文件加密方法,其特征在于,所述的解析文档文件包括:(2.1)划分文档文件;(2.2)利用多个CPU线程并行建立各页面文件的结构,找出页面文件中所有标签的位置,忽略标签内容;(2.3)根据标签的位置,使用大量CPU线程并行解析标签的详细内容,包括标签名、属性、数字签名Signatures.xml、呈现在内容之上的注释Annotations.xml或标引信息。5.根据权利要求1所述的一种文件加密方法,其特征在于,所述的对形成压缩文件的明文分别加密包括:(4.1)建立未加密的索引树,索引树建立规则St为:fr表示页面文件中关键字r在文档中出现的次数,ft表示表示页面文件d包含关键字r的数目,g表示整个文档文件中的页面文件数,索引树的第一个节点封装为解密入口文件EncryptList.xml;(4.2)对页面文件d中的关键字权重进行加密;将d随机拆分成两个向量如果St≤1,St>1,最终加密索引树上的结点是两个加密向量对I进行压缩并于解密入口文件形成映射。6.根据权利要求1所述的一种文件加密方法,其特征在于,所述的解密包括...

【专利技术属性】
技术研发人员:刘丹李海波丛培勇王少康陈亚军
申请(专利权)人:北京数科网维技术有限责任公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1