zlib: сжатый поток всегда один и тот же? - PullRequest
0 голосов
/ 06 марта 2011

Гарантируется ли, что для данного уровня сжатия и данного ввода сжатый поток всегда будет одинаковым, также для разных (и последующих) версий zlib?

Или есть какой-то способ, которым я могу сделатьэто так?

В противном случае мне пришлось бы скопировать какую-то конкретную версию zlib в мой проект и придерживаться этого.(Потому что мне нужна эта гарантия.)

Спасибо, Альберт

Ответы [ 3 ]

1 голос
/ 08 марта 2011

У zlib нет причин нарушать совместимость с такой огромной установленной базой. Существует нулевая вероятность того, что сжатый поток zlib, созданный сегодня, больше не будет поддерживаться более новой версией zlib в любое время завтра или после завтра. Вы можете спокойно положиться на эту неявную гарантию : вся отрасль зависит от прямой и обратной совместимости zlib.

Новые форматы без гарантии совместимости будут просто приносить разные имена, например, 7zip.

0 голосов
/ 06 марта 2011

Это не гарантируется вообще. Возможно генерировать бесконечные различные сжатые потоки с такими же параметрами zlib. Вот почему есть такие вещи, как gziphack: http://groups.google.com/group/comp.compression/browse_thread/thread/82fafc72949ed46c/0115418726ed45e1
http://www.advsys.net/ken/util/kzip.exe
http://www.advsys.net/ken/util/pngout.exe
http://www.walbeehm.com/download/DeflOpt207.7z
и т.д.

0 голосов
/ 06 марта 2011

Если вы используете ту же версию zlib, то сжатие будет точно таким же.Очевидно, никто не может сказать что-либо о «будущих версиях».

...