为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

RAR文件格式的研究

2019-04-18 8页 doc 29KB 57阅读

用户头像

is_421808

暂无简介

举报
RAR文件格式的研究RAR文件格式的研究 [摘要] 随着科技的发展,RAR文件的使用已经渗透到人们生活,越来越多的工具被开发出来处理压缩文件,例如Winrar,zip,gzip等等,这些工具都为用户提供了良好的管理界面环境。RAR文件中蕴藏着丰富的个人信息,发掘分析其中的有用线索是调查取证的重要手段,而其首要条件就是需要对RAR文件进行格式解析。本文利用RAR实验室提供的Unrar程序对rar数据文件进行格式解析,从而为证据信息获取提供重要手段。 [关键词] Winrar文件  压缩文件  格式分析  加密解密  Unrar The Rese...
RAR文件格式的研究
RAR文件格式的研究 [摘要] 随着科技的发展,RAR文件的使用已经渗透到人们生活,越来越多的工具被开发出来处理压缩文件,例如Winrar,zip,gzip等等,这些工具都为用户提供了良好的管理界面环境。RAR文件中蕴藏着丰富的个人信息,发掘分析其中的有用线索是调查取证的重要手段,而其首要条件就是需要对RAR文件进行格式解析。本文利用RAR实验室提供的Unrar程序对rar数据文件进行格式解析,从而为证据信息获取提供重要手段。 [关键词] Winrar文件  压缩文件  格式分析  加密解密  Unrar The Research of Rar Files’ Format Abstract With the rapid development and application of computer and network,the usage of RAR files using computer more and more furious, more and more tools which come out for dealing with compressed files, such as winrar, zip, pzip etc. These tools all provide a friendly user-interface. There are rich personal information containing in RAR files. Analyzing and extracting the useable clues is very significant for case-investigation and evidence-gaining. But chiefly you have to parse the file format of RAR files. RAR lab privides the unrar functions which can be used to do the parsing work. These functions will be an important information-gaining tools. Key Words Winrar Files  Compressed-File  Formats analysis Encryption-and-decryption  Unrar function 目录 引言    1 第一章    RAR简介    2 第二章    RAR 2.1 实例    3 2.2 文件块结构    3 2.2.1 标记块    4 2.2.2 压缩文件头    4 2.2.3 文件头    5 2.2.4 结尾块    8 2.2.5 旧风格的块类型    8 第三章    RAR文件解压    11 3.1 压缩文件处理步骤    11 3.2 压缩文件处理流程图    13 第四章    加密RAR文件数据的处理    14 4.1 密钥的生成    14 4.2 源数据的恢复    14 第五章    Unrar源程序分析    15 5.1 典型函数分析    15 5.1.1 RAR外围处理函数    15 5.1.2 文件头处理函数    18 5.1.3 RAR文件数据处理函数    20 5.1.4 其余处理函数    22 5.2 RAR解压缩的代码    24 第六章    与展望    26 致谢语    27 参考文献    28 引言 随着科学技术水平的快速发展,越来越多的科研和应用部门对数据压缩和解压缩技术提出了更高的要求。RAR作为现在最流行的数据压缩软件而备受关注,RAR的压缩技术,密钥生成技术,加解密技术成为大家热衷研究的课。 很多人都有过这样的经历:用RAR对自己的文件或文档进行有效地管理,对一些较重要的进行加密处理,可是一段时间之后需要使用时,却忘记了密码,用过各种手段之后不得不以失败告终。同样针对网络犯罪,传输经过加密后的RAR压缩文件,这时对RAR信息的取证极为重要,从中挖掘、捕获直接的犯罪信息成为调查取证的重要手段。 利用RAR文件进行取证,首要的任务就是要解析RAR文件的数据格式以及解压的方法,将经过加密的二进制文件数据还原成为的文本文档格式。 本文分为六个部分: 第一章 RAR简介 第二章 RAR压缩文件格式分析 第三章 RAR文件解压流程 第四章 加密RAR文件中数据的处理 第五章 Unrar源程序分析 第六章 总结与展望 第一章    RAR简介 RAR是一种专利文件格式,用于数据压缩与归档打包,开发者尤金·罗谢尔(Eugene Roshal),所以RAR的全名是:Roshal ARchive。首个公开版本RAR 1.3发布于1993年[1]。 Roshal最初编写了Dos版本的编码和解码程序,后来被移植到很多平台,例如比较著名的Windows平台上的WinRAR。Eugene Roshal公开了解码程序的源代码,但是编码程序仍然是私有的[2]。 RAR因为其独特的压缩算法,能够在无损数据压缩的基础上,达到很高的压缩比,同时压缩速度也不会很低[3]。因为RAR文件头需要占据一定空间,在数据压缩余地不大时,压缩过的文件可能比源文件要大,除此之外RAR文件中可能会加入冗余数据用户恢复记录,在压缩包本身受损但恢复记录够多是可以对受损压缩包进行恢复。但是RAR最主要的一个优点是分卷压缩,可以把文件压缩目标分割到多个文件,并且很容易从这样的分割的压缩文件中解压出源文件[4]。另外,RAR也可以把所有文件压缩到同一个数据区以加大压缩比,代价就是解压一个单独的文件是必须解压其前面所有文件[5]。 RAR同时也拥有成熟的加密算法,2.0版本前加密算法未公开,2.0后使用AES算法加密,在没有密码情况下目前只有暴力破解。 第二章    RAR压缩文件格式分析 前面一章简要介绍了RAR的历史,本章将会从RAR文件的格式入手,对一个标准的RAR文件进行分析,深入了解RAR文件中的每一个块,甚至每一个字节的含义。 2.1 实例 创建Helloworld.rar文件,添加进文件名为test.txt的文本文件,该文本文件中包含以下字符串:Hello world! 在Ultra中加载rar文件: 图2-1    Helloworld.rar文件的二进制编码 2.2 文件块结构 压缩文件由可变长度的块组成。这些块的顺序可以变化,但是第一块必须是一个在压缩文件头后的标记块[6]。 现在公开的块类型有[7]:标记块,压缩文件头块,文件头块,注释头,用户身份信息,子块和恢复记录块等。 每一块均由下列结构开始: HEAD_crc        2 字节    所有块或块部分的 CRC HEAD_TYPE        1 字节    块类型 HEAD_FLAGS        2 字节    块标记 HEAD_SIZE        2 字节    块大小 如果块标记的第一位被置1的话,还存在: ADD_SIZE            4 字节    可选结构 - 增加块大小 所以文件大小的计算分两种情况,当块标记HEAD_FLAGS首位未置1,则总块大小就是HEAD_SIZE,当块标记HEAD_FLAGS首位置1,可选结构存在,则总块大小为HEAD_SIZE+ ADD_SIZE[8]。 2.2.1 标记块 ( MARK_HEAD ) HEAD_crc        2字节        总是 0x6152 HEAD_TYPE        1字节        头类型 0x72 HEAD_FLAGS        2字节        总是 0x1a21 HEAD_SIZE        2字节        块大小 = 0x0007,即7个字节 Test文件:HEAD_CRC:        HEAD_TYPE:        HEAD_FLAGS:    HEAD_SIZE:        所以这里标记块的大小固定是7个字节,且是一个固定的字节序列。 2.2.2 压缩文件头 ( MAIN_HEAD ) HEAD_CRC        2字节        HEAD_TYPE 到 RESERVED2 的 CRC 结构 HEAD_TYPE        1字节        头类型:0x73 HEAD_FLAGS        2字节        位标记: 0x0001  - 卷属性(压缩文件卷) 0x0002  - 压缩文件注释存在 RAR 3.x 使用分开的注释块,不设置这个标记。 0x0004  - 压缩文件锁定属性 0x0008  - 固实属性 (固实压缩文件) 0x0010  - 新的卷命名法则 ('volname.partN.rar') 0x0020  - 用户信息存在 RAR 3.x 不设置这个标记。 0x0040  - 恢复记录存在 0x0080  - 块头被加密 0x0100  - 第一卷(只有 RAR 3.0 及以后版本设置) 其中的其它位为内部使用保留 HEAD_SIZE        2字节        压缩文件头总大小(包括压缩文件注释) RESERVED1        2字节        保留 RESERVED2        4字节        保留 继续阅读
/
本文档为【RAR文件格式的研究】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。

历史搜索

    清空历史搜索