复合文档二进制结构_第1页
复合文档二进制结构_第2页
复合文档二进制结构_第3页
复合文档二进制结构_第4页
复合文档二进制结构_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

对复合文档二进制结构 即对复合文档二进制结构 即 劳拉劳拉 文文 件格式 感兴趣的请进件格式 感兴趣的请进 引用地址 复制地址 分享到 new 分享到 QQ 空间分享到豆瓣网分享到新浪微博分享到搜狐微博分享到人人网分享到开心网分享到 51 社区 关闭窗口 隐藏边栏 15501526 硬盘高手 发表于 08 11 0308 11 03 11 3311 33 只看该作者 劳拉 文件格式是微软复合文档结构的二进制格式 本来按照微软的说法 这种结构应该叫做 复合文档二进制结构 Compound File Binary Format 但是微软没有公开关于 复合文档二进制结构 的有关内容 大量黑客通过对 WORD EXCEL 文件的分析 以及对微软办公软件的跟踪 基本上了解了 复合 文档二进制结构 的组成和其中的含义 但是整理出来的毕竟不是微软的官方 文档 可能有和微软的定义不一致的地方 同时微软也有权改变这一结构 所 以人们使用另外的名称 劳拉 来描述这种结构 复合文档 是微软在引入的一种在文件内部存放结构化信息的方法 比如说我 们写一篇文章 如果这篇文章没有任何格式信息和嵌入的图像 那么使用没有 任何结构 的文本格式就可以了 但是一篇完善的文章里面可能有不同的段落 每个段落可能有不同的格式 字体和颜色 段落之间可能还有插图 这样简单 的无格式文本就无法满足需要了 所以需要在文件的内部存放很多结构 包括 段落的文字 段落的字体 甚至段落本身的信息等等 针对这种需求 以及电 子数据表 演示制作等软件的需要 微软开发了一种 文件中的文件系统 也 就是 复合文档 结构 在复合文档中 可以有很多目录 每个目录下面可以有子目录 目录和子 目录中包含了 存储 一个存储就相当于磁盘上的一个文件 整个复合文档 就形成了一个类似于磁盘上的目录和文件所组成的树状结构 如果在视窗环境 下使用复合文件 可以利用操作系统提供的功能对复合文件进行读写 就像读 写通常的文件和目录一样 可以在复合文件内部列目录 可以打开一个指定的 目录 可以读写其中的一个 存储 文件 劳拉 文件格式 所有使用 劳拉 文件格式的文件由 512 字节的数据 块组成 你可以注意一下 所有的 WORD EXCEL 或者其他的 Office 文件大小 都是 512 的倍数 数据块的序号从 1 开始 复合文档 数据块 1数据块 0数据块 1数据块 2 数据块 512 字节512 字节 序号为 1 的块是整个文件的文件头块 存放了复合文件的一些整体信息 结 构如下 偏移量 十六进制 大小 字节 内容 08 复合文件标识 d0 cf 11 e0 a1 b1 1a e1 2C4 大块映象图的大小 块数 304 目录链根的开始块序号 3C4 小块映象图的开始块序号 4C 不确定大块映象图使用的块的列表 在 512 字节的数据块基础上 复合文件中包括了两种最基本的结构 第一种是由 512 字节的大块连接起来的大块链 如果对以文件分配表 FAT 为 基础的文件系统熟悉的话 可以很容易的理解大块链的概念 只要知道一个大 块链的开始块的序号 通过大块映象图 就可以找到这一条大块链的所有内容 一个典型的大块映象图如下 00200 fd ff ff ff 05 00 00 00 fe ff ff ff 04 00 00 00 00210 06 00 00 00 fe ff ff ff 07 00 00 00 08 00 00 00 00220 09 00 00 00 0a 00 00 00 0b 00 00 00 fe ff ff ff 00230 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff 我们可以看到 如果一个大块链的开始块序号是我们可以看到 如果一个大块链的开始块序号是 0 0 的话 该处的内容是的话 该处的内容是 5 5 那么这个大块链包括 序号那么这个大块链包括 序号 为为 0 0 的数据块 序号为的数据块 序号为 5 5 的数据块 该处的内容是的数据块 该处的内容是 7 7 序号为 序号为 7 7 的数据块 该处的内容是的数据块 该处的内容是 9 9 序号为 序号为 9 9 的数据块 该处的内容的数据块 该处的内容 是是 0b0b 序号为 序号为 0b0b 的数据块 该处的内容是的数据块 该处的内容是 1 1 表示这是该链的最后一个数 表示这是该链的最后一个数 据块 据块 对于比较小的结构 如果以 512 字节为单位的话会造成比较大的空间浪费 所以专门使用一个大块链来存放比较小的数据块 小于 4096 字节的数据结构使 用小块链来表示 小块链的组成和寻址方法和大块链非常类似 唯一不同的是 小块链里面对小块的寻址不是在整个复合文件范围内的 而是在某一个特定的 大块链范围内的 这个大块链的开始块序号在后面叙述 目录链 目录链是 复合文件最基本的数据链 描述了复合文件的目录结构信息 目录链的开始在头块中可以找到 目录链中包括了复合文件的目录信息 每一 个目录项的大小是 128 字节 所以目录链的一个块可以包括 4 个目录项 第一 个目录项是根目录项 名字叫做 根实体 Root Entry 任何复合文件里 面这都是第一个目录项 一个典型的根目录项如下 00400 52 00 6f 00 6f 00 74 00 20 00 45 00 6e 00 74 00 R o o t E n t 00410 72 00 79 00 00 00 00 00 00 00 00 00 00 00 00 00 r y 00420 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00430 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00440 16 00 05 00 ff ff ff ff ff ff ff ff 03 00 00 00 00450 00 09 02 00 00 00 00 00 c0 00 00 00 00 00 00 46 00460 00 00 00 00 00 00 00 00 00 00 00 00 86 29 f6 1f 00470 ad 57 bb 01 03 00 00 00 00 0f 00 00 00 00 00 00 目录项结构的说明如下 偏移量 十六进 制 大小 字节 内容 040 目录项的名字 所以复合文件中名字最长不能超 过 40 字节 402 名字的长度 422 目录项的类型目录项的类型 1 1 是一个存储 文件 是一个存储 文件 2 2 是目录 是目录 3 3 是根是根 444 前一个目录项 484 下一个目录项 4C4 如果是目录 指向子目录项 744 所存储内容的开始块 784 所存储内容的大小 由于上面的数据结构不是来源于微软的官方文档 包括了很多猜测的成分 所 以很多内容暂时无法断定其意义 有些结构的说明可能和微软的原意也不相符 合 但是我们使用这个结构对微软的大量文档进行了分析 至今尚未发现有明 显的错误存在 在基本的 劳拉 文件结构的基础上 字处理文档 电子数据表文档具有不同 的内部目录结构 下面是一个典型 WORD 文件的内部目录结构 1 doc 1Table 一些数据表 CompObj 通用的对象 ObjectPool 对象池 是一个目录 包括 WORD 文件中嵌入的图像 声音或 者其他对象 WordDocument 实际的文字和格式化信息就存放在这里 SummaryInforamtion 摘要信息 DocumentSummaryInformation 其他的摘要信息 这这篇关于篇关于复合文档二进制结构的内容可能很多朋友在复合文档二进制结构的内容可能很多朋友在 数据恢复高级技术数据恢复高级技术 中看到 但有两个问题 红色文字部分中看到 但有两个问题 红色文字部分 我觉得有点问题 讨论一下 我觉得有点问题 讨论一下 1 文中分析的是 文中分析的是一个大块链是 一个大块链是 0 0 5 5 7 7 9 9 0B0B 但我从大块映象图中分析好 但我从大块映象图中分析好 像有以下几个大块链 没有他说的那个大块链 像有以下几个大块链 没有他说的那个大块链 0 0 1 1 5 5 2 2 3 3 4 4 6 6 7 7 8 8 9 9 0A0A 0B0B 2 在目 在目录项结录项结构的构的说说明表中描述明表中描述目录项的类型目录项的类型 1 1 是一个存储 文件 是一个存储 文件 2 2 是是 目录 目录 3 3 是根是根 但我在 但我在 复合文档文件格式研究复合文档文件格式研究 这这个文档在个文档在 3 楼上楼上传传 中 中发现发现 不一不一样样 见见下下图图 我的理解是 我的理解是 1 是目是目录录 2 是文件 是文件 5 是根目是根目录录 这是我看完 Agstick 写的 复合文档文件格式研究 后对复合文档文件 头的主要字节的含义做的一个注解 以便以后做 OFFICE 文档的数据恢 复时方便查阅用 由于个人的理解能力有限 而且我不是科班出身 只是一个数据恢复爱好者 所以希望把它做得更完善 请各位行家指 正 复合文档头说明复合文档头说明 JPG JPG 177 78 KB 复合文档与 FAT 文件系统术语的对比的图 术语术语比比较较 JPG 40 83 KB 2007 11 17 22 04 说说明明 两篇文章中的术语有些不同 我做的图主要是 根据 复合文档文件格式研究 中的术语描述的 问题问题 文章中关于目录中的红黑树相关的知识 左节点 和右节点 我还没有理解 有知道的朋友能不能解释 一下 谢谢 这个问题目前已解决 体会 体会 一个 OF

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论