2012-06-19 82 views

回答

1

文件簽名,通常是兩個或幾個前導字節,用於許多文件格式 - 不僅僅是壓縮數據。他們在那裏要求軟件處理數據,以便能夠檢查他們是否得到了正確的輸入。這樣,例如,gzip可以立即告訴它沒有給出一個gzip文件(比如它被給了一個bzip2文件)。然後它可以立即停止,並給出一個有用的錯誤消息,這不是一個gzip文件。而不是稍後檢測到問題,並提供諸如「無效位長度序列」之類的神祕信息。

八字節PNG簽名不僅用於識別PNG文件,還用於檢測常見錯誤,例如無意中應用於二進制PNG文件的行尾轉換。 PNG簽名包含行結束序列,這些序列會與其混淆並使其不是PNG簽名,從而提供文件損壞的早期指示,否則將稍後再檢測到該文件損壞,並再次使用更神祕的消息。

看到這個wikipedia entry是一個很好的簽名列表。

1

這些是壓縮流開始時的字節,用於標識所使用的壓縮器。例如,bzip2在開始處將具有字符'BZ'(請參閱文件格式部分中的here),而gzip將具有字節1F 8B。有關其他文件類型的更多信息,請參閱http://www.garykessler.net/library/file_sigs.html

+0

它們是否有助於確定所使用的壓縮類型,以及何時需要解壓縮? – SooDesuNe

+0

嗯,不是我所知道的...我可以更普遍地說它用於識別內容類型。 – smichak