Criptografia de ZIP

O que um arquivo ZIP criptografado realmente protege

A criptografia em um ZIP é aplicada por arquivo, não ao arquivo compactado inteiro. O conteúdo fica criptografado, mas os nomes, tamanhos e datas do diretório central costumam continuar legíveis, e o cabeçalho de cada entrada registra qual esquema a protege.

O que um ZIP criptografado protege e o que deixa visível para qualquer um.
A criptografia é por arquivo, então algo fica visível.

O que "ZIP criptografado" realmente significa

Um arquivo ZIP é um contêiner. Ele agrupa muitos arquivos, chamados de entradas, e armazena cada um com seu próprio cabeçalho e, normalmente, sua própria compressão. A criptografia no ZIP é aplicada a entradas individuais, e não ao contêiner como um todo. Quando uma entrada é criptografada, seus bytes comprimidos são embaralhados por uma cifra com chave baseada na sua senha, de modo que os dados não podem ser lidos sem ela. A estrutura ao redor, que informa a um programa onde cada entrada começa e termina, é deixada em texto claro.

Um ZIP criptografado protege o conteúdo dos arquivos dentro dele, mas por padrão não oculta o fato de que esses arquivos existem, nem os seus nomes.

O que permanece visível

Todo ZIP termina com um diretório central: um índice que lista o nome de cada entrada, seus tamanhos comprimido e descomprimido, datas, a soma de verificação CRC-32 e o deslocamento onde seus dados ficam. Em um ZIP criptografado normal, esse índice é armazenado em texto claro. Qualquer pessoa que tenha o arquivo pode ler os nomes dos arquivos, a estrutura de pastas e os tamanhos, mesmo sem conseguir abrir o conteúdo.

Se ocultar os nomes for importante, há duas opções. Uma é um esquema menos comum que criptografa o próprio diretório central, que poucas ferramentas cotidianas geram ou leem. A outra, e mais portátil, é encapsular todo o arquivo compactado dentro de um contêiner criptografado externo, para que a estrutura do ZIP nunca fique exposta por si só. Para a maioria dos ZIPs criptografados que você encontra na prática, os nomes são legíveis.

O bit de "criptografado"

Cada entrada carrega um pequeno conjunto de sinalizadores chamado de bit flag de propósito geral. O bit mais baixo, o bit 0, é o bit de criptografia: quando ele está definido, um leitor sabe que os dados da entrada estão protegidos e que uma senha é necessária. Sinalizadores adicionais e um campo extra anexado à entrada registram qual esquema de criptografia está em uso. É por meio desses metadados que qualquer ferramenta compatível, inclusive a nossa, pode olhar para um ZIP e saber o que esperar antes de testar uma única senha.

Dois esquemas comuns

Quase todo ZIP criptografado que você encontrará usa um de dois métodos. A criptografia PKWARE tradicional, amplamente conhecida como ZipCrypto, é o esquema original incorporado ao formato décadas atrás. O WinZip AES é o substituto moderno, baseado no Advanced Encryption Standard. Eles diferem acentuadamente em força e na rapidez com que uma senha pode ser testada.

PropriedadeZipCryptoWinZip AES
CifraCifra de fluxo PKWAREAES em modo CTR
Tamanhos de chaveTrês chaves de 32 bits (estado de 96 bits), sem alongamento128, 192 ou 256 bits
Derivação de chaveConfiguração de chave CRC-32, sem alongamentoPBKDF2-HMAC-SHA1, 1000 iterações
IntegridadeApenas CRC-32HMAC-SHA1, 10 bytes
Velocidade de testeMuito rápidaLenta por design
SegurançaFraca, ataque de texto claro conhecidoForte
CompatibilidadeUniversalRequer uma ferramenta compatível com AES

Qual esquema um arquivo compactado usa é decidido por quem o criou, não por você. Algumas ferramentas mais antigas ou minimalistas ainda usam o ZipCrypto por padrão, por compatibilidade, enquanto a maioria dos aplicativos de arquivamento atuais oferece o WinZip AES e muitos o preferem. Como a escolha é fixada quando o arquivo é gravado, você não pode converter um esquema existente no outro sem recriar o arquivo compactado, e a recuperação precisa trabalhar com o que já está lá.

Como saber se um ZIP está criptografado

O sinal mais simples é o seu sistema operacional. Se abrir um arquivo dentro do arquivo compactado exibir uma solicitação de senha, ao menos aquela entrada está criptografada. Para mais detalhes, um aplicativo de arquivamento como o 7-Zip mostra uma coluna de Método para cada entrada: uma entrada criptografada lista ZipCrypto ou AES-256 ao lado do método de compressão, enquanto uma entrada não criptografada mostra apenas a compressão, por exemplo Deflate ou Store. O comando zipinfo na linha de comando marca a criptografia de outro jeito: imprime uma letra por entrada conforme o conteúdo seja texto ou binário e a escreve em maiúscula, T ou B, quando aquela entrada está criptografada; nomeia a compressão com abreviações próprias, como stor ou defN, e não imprime nome de esquema algum. Como a criptografia é por entrada, é possível, embora incomum, que um único arquivo compactado misture arquivos criptografados e não criptografados. Para um passo a passo, veja como identificar um ZIP criptografado.

Criptografia não é compressão

Um ZIP pode ser comprimido mas não criptografado, criptografado mas quase sem compressão, ou ambos. A solicitação de senha diz respeito à criptografia; os tamanhos de arquivo que você vê dizem respeito à compressão. Eles são registrados separadamente.

Detecção automática

Você não precisa identificar o esquema por conta própria. Quando você seleciona um ZIP na ferramenta de recuperação, ela analisa o diretório central e lê seus campos extras, e informa se o arquivo compactado usa ZipCrypto ou WinZip AES, junto com o tamanho de chave AES quando pertinente. A detecção roda no seu dispositivo, antes de qualquer recuperação começar, então a verificação correta é escolhida automaticamente. Para ver exatamente o que acontece em cada etapa, leia como funciona o processo de recuperação.

Apenas uso autorizado

Use esta ferramenta apenas em arquivos ZIP que você possui ou está autorizado a acessar. Tentar abrir arquivos sem permissão pode violar as leis aplicáveis. Consulte nossa Política de Uso Aceitável e os Termos de Uso.

Perguntas frequentes

Alguém consegue ver os nomes dos arquivos em um ZIP criptografado?

Geralmente sim. A criptografia padrão de ZIP protege o conteúdo de cada arquivo, mas deixa o diretório central, incluindo nomes, tamanhos e datas, em texto claro. Apenas um esquema de criptografia do diretório central ou o encapsulamento do arquivo em um contêiner criptografado externo oculta os nomes.

Como sei se meu ZIP usa ZipCrypto ou AES?

Um aplicativo de arquivamento como o 7-Zip mostra o método de cada entrada, listando algo como ZipCrypto ou AES-256. O ZipRecover também detecta o esquema automaticamente quando você seleciona o arquivo, inteiramente no seu dispositivo. Veja como funciona.

Um ZIP protegido por senha é o mesmo que um ZIP criptografado?

No uso cotidiano, sim. Um ZIP que pede uma senha antes de abrir seus arquivos está usando criptografia com chave baseada nessa senha. A diferença real está no esquema, já que o ZipCrypto e o WinZip AES oferecem forças muito distintas.

Um mesmo ZIP pode conter arquivos criptografados e não criptografados?

Sim. Como a criptografia é aplicada por entrada, um arquivo compactado pode misturar arquivos protegidos e desprotegidos, embora a maioria das ferramentas criptografe todos eles ou nenhum.

Pronto para recuperar sua senha de ZIP?

Tudo é executado localmente no seu navegador. Seu arquivo nunca sai do seu dispositivo.

Abrir a ferramenta