gzip header "1f8b0800000000000000" 和 "1f8b0800000000000003" 之间的区别和含义

Differences and meanings between gzip header "1f8b0800000000000000" and "1f8b0800000000000003"

如主题中所述,我正在分别压缩 iOS 和 Android 应用程序中的数据。生成的结果几乎完全相同,只是 header 不同。

在iOS中,header是

1f8b0800000000000003

在 Android 上,header 是

1f8b0800000000000000

除此之外,其余部分是相同的,我尝试使用两个 header 字符串进行搜索,但只找到表明它们都是 gzip header 的结果。它们有什么区别,造成它们的可能原因是什么?

谢谢!

GZIP 格式规范 (RFC 1952) 表示 GZIP 成员 header 存储发生转换的 OS,目的是描述 文件系统.那是 OS 这里

的字段

http://www.zlib.org/rfc-gzip.html#header-trailer

+---+---+---+---+---+---+---+---+---+---+
|ID1|ID2|CM |FLG|     MTIME     |XFL|OS | (more-->)
+---+---+---+---+---+---+---+---+---+---+

与您观察到差异的位置相匹配。

0 代表 OS 使用 FAT 文件系统,3 代表 Unix。

当然,尝试通过识别 OS 来识别文件系统在今天听起来并不是一个好主意,但这就是它最初设计的方式。