第1章 硬盘物理结构 1
1.1 硬盘的发展概述 1
1.1.1 硬盘的发展简史 1
前言 1
1.1.2 硬盘的接口标准 2
1.1.3 硬盘的主要技术指标 4
1.1.4 RAID磁盘阵列技术 7
1.1.5 硬盘发展的新技术 9
1.2.1 硬盘的外部结构 14
1.2 硬盘的基本结构 14
1.2.2 硬盘的内部结构 15
1.2.3 硬盘常见故障表现 17
1.2.4 硬盘故障处理 18
第2章 硬盘数据存储结构 20
2.1 硬盘的低级格式化 20
2.1.1 低级格式化的主要作用 20
2.1.2 硬盘的间隔因子 21
2.2.2 硬盘分区及逻辑盘的划分 22
2.2 硬盘的分区及高级格式化 22
2.2.1 硬盘分区的类型及特点 22
2.2.3 硬盘分区的主要功能 23
2.2.4 硬盘分区格式及逻辑盘容量大小的选择 24
2.3 硬盘数据的存储方式 26
2.3.1 磁盘数据的物理存储 26
2.3.2 硬盘的物理扇区与逻辑扇区 27
2.3.3 簇及簇大小的确定 28
2.3.4 硬盘物理地址及逻辑地址之间的转换 29
2.4.1 主引导扇区结构 30
2.4 硬盘的主引导扇区分析 30
2.4.2 主引导记录的功能及工作流程 31
2.4.3 分区表DPT结构 32
2.4.4 主引导分区 32
2.4.5 扩展分区 34
2.4.6 硬盘分区表项分析实例 35
第3章 FAT文件系统 41
3.1 FAT文件系统概述 41
3.2.1 FAT16的DBR结构 42
3.2 FAT文件系统引导扇区结构 42
3.2.2 FAT32的DBR结构 44
3.2.3 FAT的保留扇区 47
3.2.4 DBR的主要功能及工作流程 47
3.3 磁盘文件分配表 48
3.3.1 簇与FAT链 48
3.3.2 分区中的扇区定位 51
3.3.3 磁盘的容量限制 52
3.3.4 目录项的结构 53
3.3.5 FAT16文件系统中的目录项 54
3.3.6 FAT32文件系统中的目录项 59
3.3.7 树型目录结构的实现 61
3.3.8 子目录下FDT表的扩充 63
3.4 FAT16与FAT32文件系统结构的主要区别 64
3.4.1 磁盘数据组织结构的区别 64
3.4.2 DBR结构的区别 64
3.4.3 FAT表的区别 65
3.4.4 FDT表及目录项的区别 66
4.1 NTFS文件系统的特点 67
第4章 NTFS文件系统 67
4.2 NTFS分区的总体结构 69
4.3 NTFS分区引导扇区分析 72
4.3.1 引导分区的BPB参数 73
4.3.2 NTLDR区域 75
4.4 主控文件表与元数据 76
4.4.1 主控文件表的头信息 76
4.4.2 元数据文件 78
4.5 文件属性类型与元数据文件分析 80
4.5.1 属性头信息 83
4.5.2 NTFS文件属性类型分析 90
4.5.3 NTFS元数据文件分析 116
4.6 NTFS的树型目录 137
4.6.1 目录的MFT 138
4.6.2 文件索引的结构 139
第5章 EFS加密文件系统 141
5.1 EFS的工作原理 141
5.2 EFS的使用方法 144
5.2.1 EFS使用条件 144
5.2.2 备份恢复密钥 145
5.2.3 创建恢复代理 146
5.2.4 使用EFS 148
5.2.5 启用EFS文件共享 150
5.2.6 导出数据恢复密钥 151
5.2.7 导入数据恢复密钥 153
5.2.8 恢复数据 156
第6章 硬盘扇区的绝对读写编程实例 158
6.1 DOS下对磁盘扇区的读写技术 158
6.1.1 基本INT 13H调用简介 158
6.1.2 扩展INT 13H调用 159
6.2 Windows 9x/me系统下的磁盘扇区读写技术 164
6.2.1 软盘的读写技术 165
6.2.2 硬盘的读写技术 166
6.2.3 程序实现步骤 168
6.3 Windows 2000/XP系统下磁盘扇区读写技术 175
6.3.1 与文件、磁盘操作相关的API函数 175
6.3.2 程序实现原理 180
6.3.3 程序实现步骤 180
7.1.1 FAT16文件系统下文件的删除 190
7.1 Windows系统下文件的删除 190
第7章 数据安全删除技术与编程实例 190
7.1.2 FAT32文件系统下文件的删除 193
7.1.3 FAT16文件系统下子目录的删除 195
7.1.4 FAT32文件系统下子目录的删除 196
7.1.5 NTFS文件系统下文件的删除 198
7.2 FAT磁盘数据文件的安全删除实例 201
7.2.1 程序实现原理 202
7.2.2 程序实现步骤 221
7.3.1 程序实现原理 224
7.3 NTFS磁盘数据文件的安全删除实例 224
7.3.2 程序实现步骤 227
第8章 数据加密技术与编程实例 230
8.1 数据加密标准DES加密实例 230
8.1.1 DES的加密过程 230
8.1.2 DES的算法细节 232
8.1.3 程序实现步骤 237
8.2 高级数据加密标准AES加密实例 244
8.2.1 数学基础 245
8.2.2 RIJNDAEL加密算法 246
8.2.3 RIJNDAEL解密算法 250
8.2.4 程序实现步骤 252
8.3 TwoFish加密算法编程实例 259
8.3.1 加密算法全过程 260
8.3.2 加密函数解析 262
8.3.3 密钥生成算法 264
8.3.4 程序实现步骤 268
8.4.1 RSA加解密算法 275
8.4 RSA公开密钥加密实例 275
8.4.2 RSA的参数选择 276
8.4.3 程序实现步骤(注册机) 278
8.4.4 程序实现步骤(注册校验) 281
8.5 MD5算法编程实例 284
8.5.1 算法的应用 285
8.5.2 算法描述 286
8.5.3 MD5的安全性分析 289
8.5.4 程序实现步骤 289
9.1.1 信息隐藏算法的基本框架 295
9.1 信息隐藏技术概述 295
第9章 数据隐藏技术与编程实例 295
9.1.2 信息隐藏的关键技术 296
9.1.3 信息隐藏技术的研究动态和发展现状 299
9.2 基于24位BMP位图的信息隐藏编程实例 300
9.2.1 彩色图像的BMP文件格式 300
9.2.2 基于彩色静止数字图像的信息隐藏算法 303
9.2.3 程序实现步骤 304
9.3 基于一阶Bézier曲线的信息隐藏编程实例 318
9.3.1 一阶Bézier曲线对图像的隐藏与恢复 318
9.3.2 算法的改进 319
9.3.3 程序实现步骤 320
第10章 文件分割与合并技术与编程实例 330
10.1 文件分割与合并实例——单线程模式 330
10.1.1 程序实现原理 330
10.1.2 程序实现步骤 335
10.2 文件分割与合并实例——多线程模式 341
10.2.1 程序实现原理 341
10.2.2 程序实现步骤 345
参考文献 358