##JPEG 图像文件
1 | FFD8 FFE0 0010 4A46 4946 0001 0101 0047 ... |
FFD8 表示 JPEG 文件的开始,FFE0 代表应用程序特定标记,4A46 4946 表示 “JFIF” 标识。
1 | ... FFD9 |
##PNG 图像文件
1 | 8950 4E47 0D0A 1A0A ... |
PNG 文件的标准签名,其中 8950 4E47 对应 ASCII 编码的 %PNG。
1 | ... 0000 0000 4945 4E44 AE42 6082 |
4945 4E44 对应 ASCII 编码的 IEND,AE42 6082 是 CRC 校验码。
##PDF 文档
以 %PDF 开头,具体的十六进制表示如下:
1 | 2550 4446 2D31 2E3X ... |
2550 4446 对应 ASCII 编码的 %PDF,2D31 2E3X 代表 PDF 的版本号。
文件尾通常包含 %%EOF 标记,具体的十六进制表示如下:
1 | ... 2525 454F 46 |
2525 454F 46 对应 ASCII 编码的 %%EOF。
##DOC 文件(Microsoft Word 97-2003)
1 | D0 CF 11 E0 A1 B1 1A E1 ... |
这个签名是 Microsoft 复合文件二进制格式(Compound File Binary Format, CFBF)的标志,常用于旧版 Microsoft Office 文档。
文件尾没有固定的模式,但通常包含结束标记,如 00 00 00 00。
##DOCX 文件/ZIP文件(Microsoft Word 2007+)
DOCX 文件是基于 XML 的文件格式。
1 | 50 4B 03 04 ... |
这个签名表示 ZIP 压缩文件格式,因为 DOCX 文件实际上是 ZIP 压缩的 XML 文件。
文件尾通常以 ZIP 文件的结束标记结束:
1 | ... 50 4B 05 06 |
##TXT 文件
没有固定的文件头,因为只是纯文本文件,有些文本文件可能以特定的字符编码(如 UTF-8)开始:
1 | EF BB BF ... |
这是 UTF-8 编码的字节顺序标记(BOM)。
通常没有固定的文件尾。
##MOV 视频文件
1 | 00 00 00 14 66 74 79 70 71 74 20 20 ... |
66 74 79 70 对应 ASCII 编码的 ftyp,表示文件类型。
文件尾没有固定的模式,但通常包含结束标记,如 6D 64 61 74(mdat)。
##MP4 视频文件
MP4 文件的文件头与 MOV 文件类似,也以 ftyp 开头,但后续字节可能有所不同:
1 | 00 00 00 18 66 74 79 70 6D 70 34 32 ... |
6D 70 34 32 对应 ASCII 编码的 mp42,表示 MPEG-4 第2版。
文件尾没有固定的模式,但通常包含结束标记,如 6D 64 61 74(mdat)。
©著作权归作者所有:来自51CTO博客作者陈锋爱吃菠萝的原创作品,请联系作者获取转载授权,否则将追究法律责任(联系中)
十六进制文件头和文件尾:文件取证和恢复的关键
https://blog.51cto.com/u_15763679/11200825