Cómo decodificar Base64 a un archivo ZIP
- Pega el Base64 en Base64 o data URI, o abre un archivo de texto que lo contenga con Abrir archivo .txt.
- El resumen muestra el número de archivos y carpetas, el tamaño descomprimido con el porcentaje que ahorra la compresión, el comentario del archivo si lo tiene, y si usa ZIP64 o contiene entradas protegidas.
- La tabla lista cada entrada con su Tamaño, su tamaño Comprimido y su fecha de Modificado, además de los botones Ver y Guardar.
- Pulsa Descargar archivo para guardar el propio archivo comprimido.
Se listan hasta 500 entradas; en archivos más grandes, una línea indica cuántas más hay. No se descomprime nada hasta que pulsas un botón, y todo ocurre en tu navegador. La Content Security Policy de la página prohíbe las peticiones de red que no sean las del contador de visitas de Cloudflare, así que el archivo no se puede subir.
Abrir un solo archivo del ZIP
Ver descomprime una entrada y la previsualiza debajo de la tabla: imágenes, PDF, audio y vídeo, texto y JSON, incluso un ZIP dentro del ZIP, hasta tres niveles. Guardar descarga ese archivo con su propio nombre, sin la ruta de carpetas. Cada entrada extraída se comprueba con el CRC-32 guardado en el archivo, y si no coincide se avisa con “La suma de comprobación no coincide: esta entrada está dañada.”
El listado se las arregla con archivos que hacen tropezar a los lectores normales:
- Archivos ZIP64, que se usan para archivos de más de 4 GB o con más de 65 535 entradas.
- Nombres de archivo en UTF-8, en la antigua página de códigos DOS 437 que usaban herramientas antiguas de Windows, o con un campo de ruta Unicode de Info-ZIP.
- Archivos autoextraíbles y otros ZIP con datos adicionales delante.
- Archivos truncados: cuando falta el directorio del final, la herramienta recupera las entradas a partir de los encabezados que preceden a cada archivo y lo indica: “Falta el directorio central (parece que los datos están truncados).” Las entradas cuyos datos quedaron cortados indican que faltan.
Las marcas de tiempo clásicas de ZIP no tienen zona horaria, así que Modificado muestra lo que marcaba el reloj del equipo que creó el archivo. Cuando una entrada lleva además una marca de tiempo Unix en un campo extra, se usa esa y se muestra en tu hora local.
Qué se puede extraer
| Entrada | Se lista | Ver y Guardar |
|---|---|---|
| Almacenada (método 0) | Sí | Sí |
| Deflate (método 8) | Sí | Sí |
| Deflate64, BZIP2, LZMA, Zstandard, XZ, PPMd | Sí, con el método entre corchetes | No: “El método de compresión BZIP2 no es compatible con el navegador.” |
| Cifrada, ZipCrypto o AES | Sí, marcada como [protected] | No: “Esta entrada está protegida con contraseña: se puede listar, pero no extraer.” |
| Carpetas | Sí | No |
Los archivos creados por Windows, macOS y el comando zip usan Deflate. Los demás métodos suelen venir de 7-Zip o WinZip, cuando alguien los eligió para conseguir más compresión.
La protección contra bombas zip
La compresión puede convertir una descarga pequeña en un archivo enorme. 100 MiB de ceros se comprimen con Deflate en unos 100 KB, y los archivos anidados o manipulados llevan eso mucho más lejos. Antes de descomprimir una entrada, la herramienta comprueba el tamaño declarado en el archivo y rechaza todo lo que pase de 64 MB con “Se detuvo al llegar a 64.0 MB descomprimidos: demasiado grande para descomprimir en el navegador (posible bomba zip). Descarga el archivo comprimido.” Durante la descompresión también se detiene al llegar al tamaño declarado más 1 KB, así que una entrada que miente sobre su tamaño no puede crecer más allá de lo que declaró.
La línea de resumen sigue mostrando el total declarado, lo que ya es un aviso útil por sí solo: un archivo de unos cientos de kilobytes que se descomprime en gigabytes merece desconfianza antes de extraerlo con cualquier herramienta.
¿De verdad es un ZIP?
Los archivos ZIP empiezan por PK y dos bytes, que en Base64 es UEsDB; un archivo vacío empieza por UEsFBg. Muchos formatos son archivos ZIP con otro nombre, y la herramienta dice cuál: DOCX, XLSX, PPTX, EPUB, ODT, JAR, APK. Todos se listan y se extraen aquí; los documentos de Office además tienen vista previa del texto en Base64 a Word y Base64 a Excel.
Otros formatos de archivo comprimido no son ZIP. La herramienta descomprime gzip, pero no 7-Zip ni RAR:
| El Base64 empieza por | Formato | Qué pasa |
|---|---|---|
H4sI | gzip (.gz, .tar.gz) | Se descomprime y se previsualiza, con Descargar como .gz |
N3q8ryc | 7-Zip | “Esto no parece ZIP (detectado: 7-Zip)” |
UmFyIRo | RAR | “Esto no parece ZIP (detectado: RAR)” |
En los casos de 7-Zip y RAR, Extensión se queda en zip. Escribe ahí 7z o rar antes de descargar; si no, tu sistema intentará abrirlo como ZIP y fallará.
Descomprimir un ZIP en Base64 con Python
zipfile lee directamente de los bytes decodificados, así que no hace falta escribir nada en disco antes:
import base64, io, zipfile
with open("archive.b64") as f:
data = base64.b64decode(f.read())
with zipfile.ZipFile(io.BytesIO(data)) as z:
for info in z.infolist():
print(f"{info.filename:20} {info.file_size:>8} method={info.compress_type}")
z.extract("docs/readme.txt", "out")
La columna method muestra los mismos números que la tabla de arriba: 0 para almacenado, 8 para Deflate, 12 para BZIP2 y 14 para LZMA. Python extrae los cuatro. Desde una shell, base64 -d archive.b64 > archive.zip && unzip -l archive.zip lista el contenido. Para generar una cadena así a partir de archivos, consulta ZIP a Base64 y Base64 en Python.
Preguntas frecuentes
¿Cómo convierto Base64 en un archivo ZIP?
Pega la cadena arriba y pulsa Descargar archivo para guardar decoded.zip. Si solo quieres sacar un archivo, pulsa Guardar junto a él en la lista.
¿Puedo abrir aquí un ZIP protegido con contraseña?
Las entradas se listan con la marca [protected], pero no se pueden extraer en el navegador. Descarga el archivo comprimido y ábrelo con 7-Zip, unzip o la herramienta de archivos de tu sistema, que te pedirá la contraseña.
¿Por qué una entrada dice que su método de compresión no es compatible?
Los navegadores solo saben descomprimir Deflate, el método que usan casi todos los ZIP. Las entradas comprimidas con BZIP2, LZMA, Deflate64, Zstandard o PPMd, normalmente con 7-Zip o WinZip, aparecen en la lista, pero hay que extraerlas con una herramienta de escritorio o con zipfile de Python, que lee BZIP2 y LZMA.
Mi Base64 empieza por H4sI. ¿Es un ZIP?
No, es gzip. La herramienta indica que parece GZIP, lo descomprime y muestra lo que contiene; un .tar.gz contiene un archivo TAR. Descargar como .gz lo guarda con la extensión correcta.