Cómo funciona

Del archivo bloqueado a la contraseña recuperada

ZipRecover se ejecuta por completo en tu navegador. Cada paso que sigue muestra qué ocurre con tu archivo y por qué nunca sale de tu dispositivo.

Cómo funciona la recuperación, paso a paso

1. Lectura local del archivo

Eliges un ZIP desde tu dispositivo. El navegador lee sus bytes con la File API, en esta página, y nunca los envía a un servidor.

2. Detección del formato

La página analiza la estructura del ZIP (directorio central, cabeceras locales, campos extra), detecta ZipCrypto o WinZip AES y el tamaño de clave, y extrae una entrada cifrada para las pruebas, con preferencia por la más pequeña que sea lo bastante grande para confirmar una contraseña de forma decisiva (entre las entradas de hasta 256 MB comprimidos).

3. Confirmación de autorización

Antes de que empiece una búsqueda, marcas una casilla que confirma que eres propietario del archivo o que tienes autorización para abrirlo. El botón Iniciar recuperación sigue bloqueado hasta que lo hagas, y el botón Reanudar también.

4. Prueba de candidatas

Un Web Worker por núcleo de CPU prueba su parte de las candidatas de la estrategia que elijas. Las comprobaciones previas rápidas rechazan de inmediato la mayoría de las conjeturas erróneas.

5. El resultado

Una candidata que supera la comprobación rápida se confirma antes de mostrarse siempre que el archivo lo permite: el HMAC en AES, y el descifrado más el CRC-32 en una entrada ZipCrypto de al menos 4 bytes guardada sin compresión o comprimida con Deflate, que es casi todos los archivos. Cuando solo se puede probar una entrada ZipCrypto más corta o comprimida con otro método, el resultado avisa de que la contraseña solo pasó una comprobación rápida. En cualquier caso aparece únicamente en tu pestaña.

Diagrama de adónde va tu archivo: esta página lee tu archivo ZIP en tu dispositivo, elige una entrada cifrada y entrega esa entrada, no el archivo, a los Web Workers, uno por núcleo de CPU, que prueban contraseñas candidatas; una coincidencia se confirma con el archivo cuando la entrada lo permite y se muestra en tu pestaña. El archivo y las contraseñas nunca se suben; solo un informe de error sin datos del archivo puede llegar al servidor del sitio.
Tu archivo se queda en tu dispositivo: los workers reciben una entrada cifrada, no el archivo, y solo un informe de error puede salir.

Todo se ejecuta en tu dispositivo

Muchas herramientas de recuperación en línea te piden que subas tu archivo a un servidor que no controlas. ZipRecover adopta el enfoque opuesto. El archivo se abre con la File API del navegador y se analiza en la propia página, y toda la prueba de contraseñas ocurre en Web Workers en segundo plano en tu propio equipo, con el cálculo de hashes más pesado en WebAssembly (o, para la derivación de claves AES, en la Web Crypto integrada del navegador cuando es más rápida en tu dispositivo). No hay ningún paso de subida, así que no existe copia de tu archivo en la infraestructura de nadie más.

Cómo se prueba una contraseña

Un archivo ZIP no almacena tu contraseña. Almacena valores derivados de ella, que es lo que permite a la herramienta comprobar una conjetura sin conocer nunca la original. La comprobación exacta depende del método de cifrado.

Archivos WinZip AES

Las entradas cifradas con AES derivan una clave de tu contraseña usando PBKDF2-HMAC-SHA1 con 1000 iteraciones y una sal aleatoria almacenada en el archivo. Esa derivación produce la clave de cifrado, una clave de autenticación y un valor de verificación de la contraseña de 2 bytes. ZipRecover deriva la clave para cada candidata y compara primero esos 2 bytes. Esto rechaza de forma económica la inmensa mayoría de las conjeturas erróneas. Una candidata que supera esta comprobación se confirma a continuación recalculando el código de autenticación HMAC-SHA1 de 10 bytes de la entrada, que es una comprobación definitiva. Aprende más en la página de cifrado AES.

Archivos ZipCrypto

El ZipCrypto tradicional usa un flujo de claves ligero. Los primeros 12 bytes de una entrada son una cabecera de cifrado cuyo byte final debe coincidir con un valor de comprobación conocido. ZipRecover usa eso como filtro rápido, y luego confirma una candidata superviviente descifrando la entrada, descomprimiéndola con el descompresor nativo del navegador y comparando el CRC-32 almacenado.

Esa confirmación funciona con las entradas de al menos 4 bytes guardadas sin compresión (Store) o comprimidas con Deflate, lo que cubre casi todos los archivos. Por debajo de 4 bytes el CRC-32 cubre demasiado poco texto claro para dejar fuera las contraseñas incorrectas, así que el resultado indica que la contraseña solo superó una comprobación rápida. ZipRecover no puede confirmar una entrada ZipCrypto comprimida con otro método, como BZip2, LZMA o Deflate64 (opciones de herramientas como 7-Zip): en esos casos solo compara la longitud descifrada con el tamaño que figura en el ZIP, con el que un archivo comprimido casi nunca coincide. Por eso, cuando todos los archivos cifrados de un ZIP con ZipCrypto usan uno de esos métodos, la búsqueda suele terminar sin resultado aunque se pruebe la contraseña correcta.

Cómo se confirma un éxito

En los archivos AES y en las entradas ZipCrypto de al menos 4 bytes guardadas sin compresión o comprimidas con Deflate, que son casi todos los archivos, una contraseña reportada ha superado una confirmación completa después del filtro rápido: el HMAC en AES, y el descifrado más el CRC-32 en ZipCrypto. La excepción es un archivo en el que cada entrada protegida lo bastante pequeña para comprobar en el navegador (256 MB comprimidos) es una entrada ZipCrypto diminuta (menos de 4 bytes) o que usa otro método de compresión: el resultado indica entonces que la contraseña solo superó una comprobación rápida y te pide que abras el archivo con ella para asegurarte.

Las tres estrategias

Tú eliges cómo se generan las contraseñas candidatas:

  • Diccionario. Proporciona una lista de contraseñas probables. Se prueban automáticamente variaciones opcionales (mayúsculas, dígitos al final, leetspeak común). Ideal cuando tienes una buena idea de la contraseña.
  • Patrón / máscara. Describe la forma que recuerdas usando marcadores: ?d dígito, ?l minúscula, ?u mayúscula, ?s símbolo, ?a cualquiera. Todo lo demás es literal, por ejemplo Factura?d?d?d?d.
  • Fuerza bruta. Prueba todas las combinaciones de un conjunto de caracteres hasta una longitud que elijas. Solo práctico para contraseñas cortas, y mucho más lento en archivos AES.

Por qué la velocidad depende del archivo

CifradoCoste por candidataUso realista
ZipCryptoMuy bajoDiccionarios, máscaras y búsquedas de fuerza bruta cortas
WinZip AESAlto (PBKDF2 x1000)Diccionarios y máscaras estrictamente acotadas

Como AES ralentiza deliberadamente la derivación de la clave, la prueba es órdenes de magnitud más lenta que ZipCrypto. Esa lentitud está integrada en el formato, así que ninguna herramienta puede eliminarla, y es la razón por la que una contraseña AES aleatoria y fuerte es, en la práctica, irrecuperable por adivinación. ZipRecover es más eficaz cuando puedes acotar la búsqueda con lo que recuerdas.

Solo uso autorizado

Usa esta herramienta solo en archivos ZIP que te pertenecen o que estás autorizado a abrir. Intentar abrir archivos sin permiso puede infringir las leyes aplicables. Consulta nuestra Política de uso aceptable y las Condiciones de uso.

Preguntas sobre el proceso

¿Se sube el archivo ZIP?

No. El archivo se lee localmente con la File API del navegador y se analiza en esta página; solo los bytes de una entrada cifrada, con un resumen del archivo (nombres y tamaños de las entradas), llegan a los Web Workers que prueban las contraseñas. Ninguna petición saca tu archivo del dispositivo. Consulta seguridad y privacidad.

¿Qué prueba realmente la herramienta?

Para WinZip AES deriva una clave con PBKDF2-HMAC-SHA1 y comprueba el valor de verificación de 2 bytes del formato, y luego confirma con el HMAC almacenado. Para ZipCrypto comprueba la cabecera de 12 bytes y luego confirma descifrando y comparando el CRC-32, lo que funciona con las entradas de al menos 4 bytes guardadas sin compresión (Store) o comprimidas con Deflate (casi todos los archivos). Cuando solo puede probar una entrada más corta, el resultado indica que la contraseña solo superó una comprobación rápida; cuando la única entrada que puede probar usa otro método de compresión, la herramienta solo puede comparar la longitud descifrada, que la contraseña correcta normalmente tampoco supera, así que la búsqueda suele terminar sin resultado.

¿Por qué es AES mucho más lento que ZipCrypto?

WinZip AES ejecuta PBKDF2 con 1000 iteraciones de HMAC-SHA1 por candidata a propósito, para encarecer la adivinación. ZipCrypto no tiene ese estiramiento, así que se pueden probar muchas más candidatas por segundo.

¿Puedo pausar y continuar más tarde?

Sí. La recuperación se ejecuta en Web Workers, así que la página sigue respondiendo mientras pausas o reanudas. Las búsquedas por máscara y por fuerza bruta guardan su progreso en este dispositivo mientras avanzan, de modo que, después de recargar la página o de cerrar la pestaña, al volver a elegir el mismo archivo la herramienta te ofrece continuar. Detener termina la búsqueda para siempre y borra su progreso guardado, y las búsquedas por diccionario siempre empiezan desde el principio.

¿Todo listo para recuperar tu contraseña ZIP?

Se ejecuta localmente en tu navegador. Tu archivo nunca sale de tu dispositivo.

Abrir la herramienta