gzip header" 1f8b0800000000000000"之间的差异和含义和" 1f8b0800000000000003"

时间:2016-08-23 05:00:55

标签: gzip deflate

正如主题所述,我分别在我的iOS和Android应用程序中缩小数据。除了标题不同之外,生成的结果大部分都是相同的。

在iOS中,标题是

  

1f8b0800000000000003

在Android上,标题为

  

1f8b0800000000000000

除此之外,剩下的部分是相同的,我试图用两个标题字符串进行搜索,但只找到说明它们都是gzip标题的结果。它们的区别是什么以及造成它们的可能原因是什么?

谢谢!

1 个答案:

答案 0 :(得分:2)

GZIP格式规范(RFC 1952)说GZIP成员头存储了转换发生的操作系统,目的是描述文件系统。这是OS字段

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

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

匹配您观察差异的位置。

0代表具有FAT文件系统的操作系统,3代表Unix。

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