论文部分内容阅读
随着微软Office系列文档在桌面系统的广泛应用,其相关应用软件的安全问题引起了国内外信息安全界和攻击者的普遍关注,针对Word加密文档的破解就是其中的研究热点之一。传统的方法通常采用暴力破解,但随着Word文档加密口令长度的加长,密钥空间相应增大,很难在有效的时间内实现密钥空间的完全搜索。本文主要围绕Word加密文档破解方法和技术展开研究。首先,研究了Office复合文档格式,对Word文档二进制结构进行了解析,并深入剖析了Word文档的加密机制,利用加密机制中存在的缺陷,采用一种与口令长度无关的常量时间破解方案。其次,探讨和分析了时空折衷算法的原理和实现机制,借鉴其应用思想的基础上,提出了一种利用时空折衷算法快速破解Word文档的方法。时空折衷算法是一种使用预计算表快速逆转单向函数的方法,它由预计算阶段和在线阶段两个阶段组成。预计算阶段:迭代调用单向函数构建单向链,存储计算得到的一个大小远小于完整的字典的摘要。在线阶段:对于一个给定的具体逆转目标点,算法返回这一目标点的一个原象,所需时间远小于穷举搜索的时间。本文在彩虹表时空折衷算法的基础上,根据Word文档的加密机制,定义出破解Word文档的单向函数,由此设计了一种适合Word文档破解的时空折衷算法,并通过实验进行了测试和验证。最后,研究了MapReduce分布式编程模型及其开源实现Hadoop框架。针对时空折衷算法预计算阶段需花费大量时间构建表的问题,引入MapReduce技术,把预计算彩虹表的工作量分配给多个节点,在计算机集群上并发地生成彩虹链并存储于Hadoop分布式文件系统(HDFS),设计了一个基于Hadoop、采用MapReduce技术的时空折衷破解系统,能高效稳定地运行分布式任务。利用Hadoop分布式框架构建彩虹表,大大减少了构建彩虹表的时间并方便管理彩虹表文件;利用Hadoop集群搜索彩虹表,进一步提高了破解效率。在Word加密文档破解的研究中,本文融合口令长度无关的攻击方法与时空折衷算法,建立了一个Word加密文档的破解模型,结合实际应用,采用前沿的分布式框架实现了破解模型。论文研究成果对进一步破解Word文档具有一定的理论参考价值和实际应用价值。