piapia123
es

Compresión y descompresión Gzip

Cifrado

Todo se ejecuta en tu navegador: no se sube nada

Entrada
Arrastra un archivo aquí para cargarlo
Resultado

Comprime texto a gzip, o descomprime gzip de vuelta a texto. Una cosa hay que aclarar primero: gzip no es cifrado. No tiene clave, cualquiera puede descomprimirlo, y la salida simplemente no es legible directamente; bastantes sitios de herramientas lo archivan bajo «cifrado», un nombre heredado equivocado. Su trabajo real es hacer los datos más pequeños: una carga JSON suele comprimirse a un tercio, y los registros, las respuestas de API y las copias de seguridad dependen de ello. Esta herramienta usa la implementación nativa del navegador, así que los resultados son idénticos byte a byte al comando `gzip`, a zlib y a las bibliotecas estándar de cada lenguaje, y son intercambiables con ellos. La salida lista el tamaño original, el comprimido y la proporción; y ojo, si los datos crecieron, eso es normal (un texto corto más una cabecera gzip completa lo provocan), y la página lo dice explícitamente.

Funciones

  • En ambos sentidos: texto ⇄ gzip
  • Salida en Base64 o hex; en la entrada se aceptan los dos (el hex tolera espacios, dos puntos y saltos de línea)
  • Idéntico byte a byte al comando gzip, a zlib y a las bibliotecas estándar: directamente intercambiable
  • Muestra el tamaño original, el comprimido y la proporción
  • Explica por qué crecieron los datos, para que una salida más grande no parezca una herramienta rota
  • Con una entrada no válida, apunta a truncamiento, saltos de línea sueltos o una carga zlib / deflate

Cómo se usa

  1. Elige la dirección: comprimir o descomprimir
  2. Elige el formato de los datos: Base64 o hex
  3. Pega el contenido y pulsa Ctrl/⌘ + Enter, o Ejecutar
  4. Copia el resultado: cada fila tiene su propio botón de copiar

Preguntas frecuentes

¿Se puede usar gzip para cifrar?
No. gzip es compresión, no cifrado: no hay clave, cualquiera puede descomprimirlo, y los datos simplemente no son legibles directamente. Comprimir contenido sensible antes de enviarlo no se diferencia de enviarlo en claro: toda la información sigue en ese flujo de bytes. Para confidencialidad usa AES, o cualquier cifrado de verdad.
¿Por qué la salida se hizo más grande?
Porque gzip lleva una sobrecarga fija de cabecera y cola (unos 18 bytes), y cuando el contenido ya es corto o ya está comprimido (zip, imágenes, video, flujos dentro de PDF) DEFLATE no encuentra patrones repetidos que merezca la pena codificar y tiene que gastar bytes extra en registrar que almacenó el bloque tal cual. Eso es normal en todo algoritmo de compresión, no un fallo de aquí. La regla es sencilla: la compresión solo ayuda a datos redundantes y aún sin comprimir.
Mis datos no se descomprimen: dice que no es gzip válido
Primero comprueba si el copiado se truncó: la salida comprimida contiene bytes binarios, y pegarla en ventanas de chat o formularios a menudo la recorta o le inserta saltos de línea. Luego comprueba el formato: `zlib` (empieza por 0x78), `raw deflate` (sin cabecera ni cola) y `gzip` (empieza por 0x1f 0x8b) son tres formatos incompatibles a los que se llama «compresión» de forma informal, y dar datos zlib a un decodificador de gzip tiene que fallar. Esta herramienta solo trata gzip.
¿La salida es igual que la del comando gzip?
Exactamente igual. El Base64 de `echo -n "contenido" | gzip -c | base64` coincide byte a byte con la salida Base64 de esta herramienta, porque ambos usan DEFLATE estándar con el envoltorio gzip, y ambos escriben una marca de tiempo cero en la cabecera gzip: por eso una misma entrada produce siempre una misma salida, segura de comparar y de cachear.

Herramientas relacionadas