bzip2
100%再現が必要なファイルに圧縮を使用するときに潜在的な問題があるかどうかを確認しようとしています。具体的には、メタデータ(名前/インデックスノード、lastmod日付など)または他のものが同じファイルの内容になりますか?別のチェックサムの生成生成されたアーカイブから.bz2
?
例えば、gzipはデフォルトでは決定的ではありません使用しない限り-n
。
これまでのおおよそのテストによると、bzip2は同じ入力データ(メタデータ、プラットフォーム、ファイルシステムなどに関係なく)が与えられると同じファイルを一貫して生成しますが、エピソードが多ければ証拠が良いでしょう。
答え1
bzip2
ファイルには次の内容のみが含まれています。基本書式署名、圧縮データ、およびそのデータの解凍に必要な情報。これにはファイル固有のメタデータは含まれていません。代わりに、圧縮ファイルのメタデータに依存します(元のファイル名と元のタイムスタンプに関係なく、に解凍され、にタイムfile.bz2
スタンプfile
されます)。file.bz2
変更可能な圧縮部分の1つは入力ランダム化です。しかし、これは実際に長い間無効になっており、現在のバージョンではbzip2
入力をランダム化しません。
したがって、出力はbzip2
入力データと圧縮レベルにのみ依存します。出力は決定的です。
bzip2
私が提供できる最善の証拠は、これらすべての権威ある情報源を見つけることができるかどうかはわかりません。再現可能な Debian ビルドのガイドライン。bzip2
Debianで使用されているため、問題が発生した場合は同じ方法で言及されます。gzip
する。