DEFLATE raw (.deflate)
IETF EstándarDEFLATE es el algoritmo de compresión de datos sin pérdidas más omnipresente en la historia de la informática, impulsando archivos ZIP, flujos GZIP, imágenes PNG y compresión web HTTP durante más de tres décadas.
Convertir de GZIP a DEFLATE
Convertidor gratuito de GZIP a DEFLATE en el navegador. Convierte archivos al instante en tu dispositivo.
Inspeccionar y metadatos
Los sistemas operativos y analizadores de archivos identifican los archivos de DEFLATE inspeccionando la secuencia de bytes binarios inicial:
Firma de cabecera a nivel de bytes (Bytes mágicos)
Los sistemas operativos y analizadores de archivos identifican los archivos de DEFLATE inspeccionando la secuencia de bytes binarios inicial:
FIRMA HEXADECIMAL (DESPLAZAMIENTO 0):
78 9C / 78 01 / 78 DAREPRESENTACIÓN ASCII: xœ / x. / xÚ
Estandarización: IETF RFC 1951 / RFC 1950 (zlib)
Especificaciones técnicas
| Arquitectura del contenedor | Flujo de bits bruto de RFC 1951 o flujo envuelto en zlib de RFC 1950 con cabecera de 2 bytes y suma de comprobación Adler-32 |
| Compresión | Diccionario deslizante LZ77 (ventana de hasta 32 KB) combinado con codificación de entropía de Huffman dinámica/estática |
| Orden de bytes (Endianness) | Orden de empaquetado de bits Little-Endian |
| Espacios de color | N/A (Flujo de compresión de datos) |
| Canales y estructura | Flujo de datos binarios o de texto bruto |
| Dimensiones máximas | Longitud de flujo ilimitada |
| Transparencia | Reproducción de datos sin pérdidas exacta bit a bit al 100% |
| Streaming y progresivo | El flujo de bits basado en bloques admite transmisiones continuas de bytes arbitrarias |
Matriz de comparación técnica: DEFLATE frente a la competencia
| Atributo técnico | DEFLATE (Actual) | GZ | BROTLI | ZSTD |
|---|---|---|---|---|
| Estandarización | IETF RFC 1951 (Bruto) / RFC 1950 (zlib) | IETF RFC 1952 (Gzip) | IETF RFC 7932 (Brotli) | IETF RFC 8878 (Zstandard) |
| Ventana deslizante | 32 kilobytes máx. | 32 kilobytes máx. | Hasta 16 megabytes | Hasta 2 gigabytes |
| Modo de suma de comprobación | Adler-32 (en contenedor zlib) | CRC-32 (en contenedor gzip) | Ninguno integrado en el flujo | xxHash64 (hash rápido de 64 bits) |
| Uso diario | Imágenes PNG, flujos PDF, ZIP | .tar.gz de Unix, gzip HTTP | Fuentes web (WOFF2), HTTP br | Núcleo de Linux, bases de datos, videojuegos |
Modos de corrupción comunes y guía de recuperación hexadecimal
La descompresión falla con 'Z_DATA_ERROR: comprobación de datos incorrecta'.
Causa raíz: Discrepancia en la suma de comprobación Adler-32 de 4 bytes al final del flujo envuelto en zlib.
Recuperación: Omita la verificación de Adler-32 usando descompresión bruta o repare con la recuperación de Deflate de File2File.
Análisis de seguridad y vectores de ataque al analizador
Los analizadores de DEFLATE deben validar estrictamente los códigos de construcción del árbol de Huffman para evitar escrituras de punteros fuera de los límites.
Vectores de ataque conocidos
- Tablas de longitud de bits de árboles de Huffman dinámicos incompletas o sobreasignadas que causan lecturas de memoria no válidas.
- Bomba de descompresión (bomba zip) que expande cargas útiles diminutas en cientos de gigabytes de RAM.
- Lectura excesiva de búfer en códigos de distancia de ventana deslizante no validados.
Mejores prácticas defensivas: Aplique límites estrictos de asignación máxima de memoria y de relación de expansión durante la descompresión.
Orígenes históricos e hitos
Ventajas clave y pros
- El estándar global indiscutible: implementado en hardware, sistemas operativos y todos los entornos de ejecución de programación.
- Diseño sin patentes y libre de regalías que garantiza acceso abierto en toda la industria informática.
- Descompresión rápida con un consumo de memoria mínimo (solo requiere memoria de ventana deslizante de 32 KB).
Limitaciones técnicas y contras
- Ventana deslizante limitada a 32 KB, lo que reduce la eficacia de compresión en archivos grandes con redundancias distantes.
- Menores tasas de compresión en recursos web modernos en comparación con algoritmos más nuevos como Brotli y Zstandard.
- Los flujos DEFLATE brutos carecen de metadatos autodescriptivos o estructuración de contenedores sin los envoltorios zlib o gzip.
Curiosidades técnicas interesantes
- Phil Katz inventó DEFLATE después de ser demandado por Unisys debido al algoritmo patentado LZW utilizado en las primeras utilidades PKARC.
- Los bytes de cabecera estándar de zlib '78 9C' indican compresión predeterminada, '78 01' compresión baja y '78 DA' compresión máxima.
- Cada imagen PNG en la Tierra utiliza DEFLATE para comprimir sus fragmentos de píxeles IDAT.
Preguntas técnicas frecuentes
¿Cuál es la diferencia entre DEFLATE, zlib y gzip?
DEFLATE es el algoritmo de compresión sin procesar (RFC 1951). Zlib envuelve DEFLATE con una cabecera de 2 bytes y una suma de comprobación Adler-32 (RFC 1950). Gzip envuelve DEFLATE con metadatos de archivo y una suma de comprobación CRC-32 (RFC 1952).
¿Por qué PNG utiliza DEFLATE?
El formato PNG se creó en 1995 para reemplazar a GIF sin utilizar algoritmos LZW patentados, eligiendo DEFLATE, que es abierto y libre de regalías, para la compresión.
¿Cómo puedo descomprimir un archivo .deflate sin procesar?
Puede descomprimir flujos de bytes DEFLATE o zlib sin procesar en archivos originales descomprimidos utilizando File2File.app directamente en su navegador web.
Pares de conversión de DEFLATE relacionados
Convertir un flujo GZIP a DEFLATE sin procesar elimina el contenedor de archivo exterior y los metadatos del encabezado, dejando solo la carga comprimida para protocolos de red especializados y archivos de bajo nivel.
La conversión de DEFLATE sin procesar a un flujo GZIP envuelve la carga útil comprimida dentro de un contenedor estándar con encabezados de metadatos para que los sistemas operativos y las herramientas web puedan leerla adecuadamente.