Password ZIP lunga: anche il dizionario corretto può fallire
John PKZIP 1.9.0-jumbo-1 ha trovato 31 caratteri ma non i candidati corretti di 32, 51, 52 e 127. Ogni archivio è stato decifrato indipendentemente: il limite può essere dello strumento.
La risposta è già nel dizionario
Creiamo cinque ZIP tradizionali ZipCrypto con identico testo fittizio e password ASCII pubbliche di 31, 32, 51, 52, 127 caratteri. Nessun file, password o indizio privato dei clienti viene usato.
Ogni lista contiene un errore e la risposta esatta, con sessione e potfile separati e vuoti. Build: John 1.9.0-jumbo-1 cygwin 64-bit x86_64 AVX2 AC OMP. Python legge tutto l’originale e verifica contenuto e CRC, escludendo campioni o password dichiarate errati.
Osservazioni e limiti
Le informazioni locali del formato riportano 31 caratteri ASCII per questa build; Openwall descrive limiti analoghi. Non è un limite di tutti i John, ZIP AES o dell’intero formato ZIP.
Il limite appartiene al percorso di recupero. Il campione di 127 caratteri è valido perché la password nota permette di leggere tutto il contenuto originale. Il risultato negativo di un modulo non lo smentisce.
| Lunghezza password | Candidato corretto fornito | Trovato da John PKZIP | Verifica completa dell’originale |
|---|---|---|---|
| 31 | Sì | Sì | Superata |
| 32 | Sì | No | Superata |
| 51 | Sì | No | Superata |
| 52 | Sì | No | Superata |
| 127 | Sì | No | Superata |
Un riscontro nell’intestazione non basta
Il breve campo di controllo ZipCrypto filtra candidati ma può produrre coincidenze casuali. Il filtro separato per password lunghe trova tutti i controlli; richiediamo comunque lettura completa, contenuto corretto e CRC.
Il filtro deve rispettare i flag ZIP: quello del descrittore dati cambia l’origine del byte di controllo. Una prova con risposta nota vale più che presumere corretto un filtro personalizzato.
Controlli prima di ampliare la ricerca
Conferma formato, cifratura, lunghezza e codifica supportate. Crea un controllo non privato della stessa lunghezza, inserisci la risposta esatta e usa un archivio risultati vuoto. Valida leggendo l’originale; se il controllo fallisce, esamina prima la configurazione, poi il dizionario grande.
ASCII non certifica Unicode. Non definiamo limiti universali WinRAR o 7-Zip, non misuriamo ZIP AES e non garantiamo tutte le password lunghe. Un limite del modulo può invalidare uno specifico test negativo.
Scaricare controlli e codice
Il JSON contiene password esatte e SHA-256. Non riutilizzare valori pubblici in archivi reali. I cinque file e l’implementazione del filtro sono disponibili per ispezione e riproduzione.
Il codice seleziona candidati, non sostituisce la verifica della decifratura completa. La matrice mostra un controllo riuscito e fallimenti previsti del vecchio modulo identificato, non una classifica di prodotti.
Fonti e ulteriori verifiche
Ambito e indipendenza editoriale
Offriamo anche un servizio di recupero. Usiamo esclusivamente campioni fittizi creati da noi, mai file dei clienti. Le misure riguardano condizioni e data indicate: non dimostrano un tasso generale di successo, posizioni nei motori o garanzie di recupero.