¿Por qué usar CRC de datos comprimidos vs no comprimidos? -- gzip campo con crc campo con deflate camp Relacionados El problema

Why use CRC of uncompressed vs compressed data?


0
vote

problema

Español

The Wikipedia Artículo para GZIP dice que hay "un pie de página de 8 bytes, que contiene un CRC -32 suma de comprobación y la longitud de los datos originales no comprimidos ". ¿Por qué agregan el CRC de los datos sin comprimir en lugar del CRC de los datos comprimidos?

Solo puedo pensar en desventajas, como tener que procesar todo el flujo de datos, ejecutándolo a través de un algoritmo de deformación, antes de que pueda verificar el CRC.

Original en ingles

The Wikipedia article for Gzip says there is "an 8-byte footer, containing a CRC-32 checksum and the length of the original uncompressed data". Why do they append the CRC of the uncompressed data instead of the CRC of the compressed data?

I can only think of disadvantages such as having to process the whole data stream, running it through a Deflate algorithm, before you can verify the CRC.

        

Lista de respuestas

2
 
vote
vote
La mejor respuesta
 

Creo que GZIP tiene cierta libertad en la forma en que comprime los datos, por lo que el cálculo del CRC para los datos comprimidos podría dar diferentes controles. Cálculo del CRC para los datos no comprimidos significa que tiene el mismo CRC comprimido, descomprimido, comprimido con un algoritmo diferente.

y al final, lo que le importa es que los datos descomprimidos son lo que debería ser. Es posible que tenga un error en el algoritmo de compresión o descompresión; Un CRC para los datos comprimidos no encontraría eso.

 

I think gzip has some freedom in how it compresses data, so calculating the crc for the compressed data could give different checksums. Calculating the crc for the uncompressed data means you have the same crc compressed, decompressed, compressed with a different algorithm.

And in the end, what you care about is that the decompressed data is what it should be. You might have a bug in the compression or decompression algorithm; a crc for the compressed data wouldn't find that.

 
 
 
 

Relacionados problema

1  JSON truncado al comprimir las respuestas HTTP  ( Json truncated when compressing http responses ) 
Cuando aplico GZIP o deflante de la compresión a mis respuestas HTTP, parece que estoy perdiendo el último soporte en mis estructuras JSON. Por ejemplo: Res...

4  GUI para abrir un archivo ZLIB [CERRADO]  ( Gui to open a zlib file ) 
cerrado. Esta pregunta no cumple con pautas de desbordamiento de pila . Actualmente no está aceptando respuestas. ...

24  JavaScript Deflate Implementación [cerrado]  ( Javascript deflate implementation ) 
cerrado. Esta pregunta no cumple con pautas de desbordamiento de pila . Actualmente no está aceptando respuestas. ...

6  Habilitar mod_deflate para enviar la codificación de contenido: GZIP  ( Enable mod deflate to send content encoding gzip ) 
Editar He encontrado que el problema es en realidad PHP Minify . Esto fue enviando el contenido desinflado en lugar de Apache. Encontraré más sobre esto. ...

1  HTTPWEBREQUEST se vuelve más lento al agregar un intervalo  ( Httpwebrequest gets slower when adding an interval ) 
Prueba de diferentes posibilidades Para descargar la fuente de una página web, obtuve los siguientes resultados (tiempo promedio en MS a Google.com, 9GAG.com)...

7  Benchmarking Zlib Java vs. C  ( Benchmarking zlib java vs c ) 
Estoy tratando de acelerar mi codificador TIFF escrito inicialmente en Java cambiando a C y se ha compilado zlib 1.2.8 con Z_SOLO Conjunto definido y míni...

-1  ¿Por qué la función de inflado zlib no funciona en el orden correcto en NODE.JS?  ( Why is the zlib inflate function is not working in correct order in node js ) 
Soy nuevo en StackOverFlow. Ahora estoy trabajando en un programa node.js. La entrada es un flujo de datos que contiene pocos bloques de datos (también compri...

2  Ejemplos de deflato de compresión  ( Examples of deflate compression ) 
Estoy interesado en aprender sobre el algoritmo de compresión de desinflado, en particular, cómo se representa en un flujo de datos, y sentir que me beneficia...

1  Gzip o deflate Files ¿Se puede fusionar juntos? para la API  ( Gzip or deflate files can it be merged together for api ) 
Tengo API que le permite obtener uno o más archivos de contenido en una sola solicitud y los tengo como deflato / gzip y texto normal, por ahora estoy usando ...

0  Apache se desinfla en CSS y JS en Subdirectory, sin compresión  ( Apache deflate on css and js in subdirectory no compression ) 
Sitio web: http://taylorsbackyardcenter.ca/store Así que estoy terminando una oscommerce sitio y estoy implementando la compresión, el almacenamiento en...




© 2022 respuesta.top Reservados todos los derechos. Centro de preguntas y respuestas reservados todos los derechos