Manual do utilizador

GravesZIP v1.0.0 — o mesmo manual que está incluído na aplicação

1. Sobre este manual

Este manual descreve o GravesZIP 1.0: os formatos que trata, como se comporta a sua encriptação, o que protege e o que não protege, e como utilizar todas as partes da interface. Nada nele descreve uma funcionalidade que não funcione; o que está planeado mas ainda não existe é indicado como tal no fim de A interface.

2. O que é o GravesZIP

Um gestor de arquivos comprimidos: empacota ficheiros em arquivos, volta a desempacotá-los e pode encriptar o que empacota.

A compressão e a encriptação são feitas pela SharpZipLib, uma biblioteca de código aberto há muito estabelecida, em vez de serem reimplementadas aqui. Os arquivos que o GravesZIP cria são ficheiros ZIP comuns: um arquivo não encriptado abre em qualquer coisa, incluindo o suporte de arquivos comprimidos integrado no Windows e no macOS. Um arquivo encriptado abre em qualquer programa que compreenda a encriptação AES-256 do ZIP — 7-Zip, WinZip e outros. Algumas ferramentas ZIP integradas, incluindo versões mais antigas da do próprio Windows, não compreendem o AES e não conseguem abrir um arquivo encriptado, seja de que programa for; utilize o GravesZIP ou um desses.

Não faz ligações de rede. Consulte a Declaração de privacidade.

3. Formatos

Esta versão trata o formato ZIP.

zipLido e escrito, incluindo arquivos encriptados com AES-256.

É a lista toda, e é deliberadamente curta. O ZIP é o formato em que chegam as mensagens protegidas por palavra-passe do GravesMail, é o que todos os outros programas de arquivo conseguem ler, e fazer bem um formato vale mais do que fazer vários pela metade. Serão adicionados outros formatos; até lá, este manual não os anunciará.

7z, RAR, tar e os restantes ainda não são suportados. O GravesZIP não inclui o 7-Zip e não exige que esteja instalado.

4. Abrir uma mensagem protegida por palavra-passe

Uma mensagem protegida por palavra-passe do GravesMail chega como um anexo chamado protected-message.zip. Abra-o com o GravesZIP e introduza a palavra-passe que o remetente lhe deu em separado — por telefone ou por mensagem de texto, nunca no próprio e-mail.

Lá dentro encontrará:

message.htmlA mensagem. Abra-o para ler o corpo.
attachment-01, attachment-02, …Os ficheiros que vieram com ela, com nomes neutros.

Os anexos são deliberadamente renomeados. Um ZIP encripta o que está dentro de cada ficheiro, mas deixa a lista de nomes legível para quem tiver o arquivo, pelo que um ficheiro chamado «lista-de-despedimentos.xlsx» se denunciaria antes de alguém escrever a palavra-passe. O message.html contém os nomes verdadeiros.

Nada do que acontece ao abrir uma destas mensagens chega à rede, e nem o GravesZIP nem a GravesWare veem alguma vez a palavra-passe.

5. Encriptação

Uma palavra-passe num ZIP encripta-o com AES-256.

O ZIP suporta duas cifras, e uma delas está quebrada. A original, ZipCrypto, cede a um ataque de texto simples conhecido em segundos em hardware comum, e é a que a maioria das ferramentas — incluindo o 7-Zip — aplica por predefinição quando se define uma palavra-passe num ZIP. O GravesZIP nunca a utiliza. Não há nenhuma definição para ela, porque não há nenhuma circunstância em que seja a resposta certa.

O que a encriptação não cobre

Um ZIP não consegue encriptar a sua própria listagem de ficheiros. Os nomes, os tamanhos e as datas de tudo o que está lá dentro continuam legíveis para quem tiver o arquivo, embora o conteúdo não o esteja. É um limite do formato, não do GravesZIP, e nenhuma ferramenta ZIP consegue fazer melhor.

Se os próprios nomes forem sensíveis, renomeie os ficheiros antes de os arquivar — que é exatamente o que o GravesMail faz quando escreve attachment-01 em vez do nome verdadeiro.

O ficheiro do arquivo também tem o seu próprio nome, tamanho e data de modificação, e nenhum deles é encriptado. Um arquivo chamado «carta-de-demissão.zip» já disse demasiado.

O GravesZIP não finge o contrário. Se lhe pedir que crie um ZIP encriptado com a listagem de ficheiros oculta, recusa, em vez de escrever discretamente um arquivo legível.

6. Palavras-passe

Uma palavra-passe esquecida não pode ser recuperada

Nem por si, nem pela GravesWare, nem por ninguém. Não há porta das traseiras, nem chave de recuperação, nem reposição. Se a perder, o arquivo está perdido. É para isso que a encriptação serve.

Antes de eliminar a única cópia de alguma coisa por já estar num arquivo comprimido encriptado: não o faça.

Escolher uma

A palavra-passe é a segurança toda. O AES-256 não é o ponto fraco e nunca será; uma palavra-passe fácil de adivinhar é.

O comprimento vence a complexidade. Várias palavras sem relação entre si são mais fortes e mais fáceis de recordar do que uma sequência curta de caracteres substituídos. «cavalo correto bateria agrafo» resiste muito melhor a tentativas de adivinhação do que «P@ssw0rd!».

Não reutilize uma palavra-passe que usa noutro sítio. Um arquivo pode durar mais do que a conta de onde foi buscar a palavra-passe, e pode ir parar a um sítio que não pretendia.

Onde o GravesZIP a guarda

Em memória, enquanto dura a operação, e em mais lado nenhum. Nunca é escrita em disco. Não há nenhuma opção «memorizar esta palavra-passe», por conceção.

Consulte a Declaração de privacidade para conhecer os limites dessa proteção.

7. A encriptação não é uma assinatura

Uma palavra-passe prova que quem fez o arquivo a conhecia. Não prova quem era, e não prova que o arquivo que recebeu é o que foi enviado — alguém que conheça a palavra-passe pode fazer um arquivo diferente que abre igualmente bem com ela.

A encriptação impede que o conteúdo seja lido. Determinar quem fez alguma coisa é um problema distinto, e este programa não o resolve.

8. Extrair em segurança

Um arquivo comprimido vindo de outra pessoa é uma entrada não fidedigna.

O GravesZIP não escreve nenhum ficheiro fora da pasta que escolher. Existem arquivos que guardam caminhos como «../../.ssh/authorized_keys», para que um extrator descuidado escreva onde quer que o caminho aponte. O GravesZIP recusa-os liminarmente e interrompe a extração, em vez de saltar a entrada, pelo que um arquivo hostil não consegue ficar parcialmente no seu computador.

O GravesZIP não analisa o que extrai à procura de malware. Essa tarefa cabe ao seu software antivírus.

9. Verificar um arquivo comprimido

Ficheiro > Testar arquivo comprimido descomprime todas as entradas e verifica cada uma face à soma de verificação armazenada com ela, sem escrever nada em disco. Confirma que o arquivo está intacto e, no caso de um arquivo encriptado, que a palavra-passe está correta. Pede a palavra-passe se for necessária, e volta a pedi-la se a indicada estiver errada.

A resposta vem em palavras simples: ou todos os itens foram verificados e o arquivo está intacto, ou pelo menos um item não corresponde à sua soma de verificação e o arquivo está danificado. Um arquivo danificado pode ainda entregar alguns dos seus ficheiros com Extrair seleção; obtenha uma nova cópia dele, se puder.

Não confirma de onde veio o arquivo nem quem o fez.

O resultado de Testar arquivo comprimido no GravesZIP, a indicar que todos os itens foram verificados e que o arquivo está intacto.
O veredicto de Testar arquivo comprimido, em palavras simples.

10. A interface

A janela

Sem nenhum arquivo aberto, a janela oferece Abrir e Novo arquivo comprimido como botões. Com um aberto, lista o que está lá dentro: o nome e a pasta de cada item, o seu tamanho e quando foi alterado pela última vez, por ordem alfabética. Um cadeado ao lado de uma linha significa que o conteúdo desse item está encriptado.

Todas as ações sobre arquivos estão no menu Ficheiro, e as mesmas ações estão no menu de contexto: clique com o botão direito em qualquer ponto da janela, ou prima Shift+F10 ou a tecla Menu. As ações que precisam de um arquivo aberto, ou de uma seleção, ficam a cinzento até haver um ou uma.

Abrir um arquivo comprimido

Ficheiro > Abrir, ou passe o caminho do arquivo na linha de comandos — que é o que acontece quando o GravesZIP está definido como o programa para ficheiros .zip, ou quando um arquivo é largado sobre o seu ícone. A versão da Microsoft Store oferece-se para ficheiros .zip na lista «Abrir com» do Windows.

A listagem aparece de imediato, mesmo para um arquivo encriptado. Não é uma falha de segurança: o índice de um ZIP não é encriptado, pelo que os nomes, os tamanhos e as datas são legíveis para quem tiver o ficheiro.

Extrair

Ficheiro > Extrair tudo desempacota tudo. Ficheiro > Extrair seleção desempacota apenas as linhas que selecionou — clique numa, e Ctrl+clique ou Shift+clique para mais. Selecionar a linha de uma pasta traz consigo tudo o que está dentro dessa pasta.

Em qualquer dos casos, escolha onde colocar os ficheiros. É aqui que um arquivo encriptado pede a sua palavra-passe, porque é o primeiro momento em que ela é realmente necessária. Se a palavra-passe estiver errada, o GravesZIP diz-lho e volta a pedi-la, em vez de fazer falhar toda a operação.

Nada é escrito até que o destino de todas as entradas tenha sido verificado. Um arquivo que contenha um caminho que aponte para fora da pasta que escolheu é recusado por inteiro, pelo que não pode deixar metade do seu conteúdo para trás.

Testar

Ficheiro > Testar arquivo comprimido. Consulte Verificar um arquivo comprimido acima.

Criar um arquivo comprimido

Ficheiro > Novo arquivo comprimido. Adicione os ficheiros e as pastas que pretende; cada um é listado pelo seu nome, com a pasta de onde vem por baixo. Escolha o nível de compressão e, se quiser, defina uma palavra-passe. Uma pasta é adicionada por inteiro, incluindo tudo o que está por baixo dela, e mantém o seu próprio nome dentro do arquivo.

A compressão oferece três definições, em vez de uma escala de nove:

NenhumaOs ficheiros são armazenados tal como estão. É a mais rápida, e vale a pena escolhê-la para material que já está comprimido — fotografias, vídeo ou arquivos dentro de arquivos — em que comprimir não ganha nada e custa tempo.
NormalA predefinição sensata.
MáximaMais pequeno, mais lento. O ganho em relação a Normal costuma ser modesto; o tempo não.

Deixe a palavra-passe vazia para um arquivo comum. Escreva uma e aparece um segundo campo para a confirmar, porque uma palavra-passe não pode ser recuperada: uma mal escrita torna o arquivo ilegível a partir do momento em que é escrito, e nada o pode avisar depois. Com ele aparece um lembrete de que os nomes dos ficheiros continuam legíveis.

O arquivo abre-se assim que é escrito, para que possa ver o que entrou nele em vez de ter de confiar.

A caixa de diálogo Novo arquivo comprimido no GravesZIP com ficheiros adicionados, a compressão Normal escolhida e uma palavra-passe escrita e confirmada.
Novo arquivo comprimido, com ficheiros adicionados e uma palavra-passe definida.

Fechar

Ficheiro > Fechar arquivo comprimido. A palavra-passe é apagada da memória nesse momento, em vez de permanecer até o programa terminar.

Atalhos de teclado

No Windows e no Linux, estes utilizam Ctrl; num Mac, Command.

Ctrl+NNovo arquivo comprimido
Ctrl+OAbrir
Ctrl+WFechar arquivo comprimido
Ctrl+EExtrair seleção
Ctrl+Shift+EExtrair tudo
Ctrl+TTestar arquivo comprimido
Shift+F10O menu de contexto (também a tecla Menu)

Os próprios menus abrem-se com Alt e a letra sublinhada: Alt+F para Ficheiro, Alt+J para Ajuda.

O que ainda não existe

Abrir um ficheiro de dentro de um arquivo sem o extrair, adicionar ficheiros a um arquivo que já existe e formatos além do ZIP.

11. Idiomas

O GravesZIP é distribuído em 55 idiomas. Escolha um em Ajuda > Idioma; a lista indica cada um na sua própria escrita, e o atual está assinalado.

Inglês (incluindo a ortografia britânica e australiana), espanhol (de Espanha e da América Latina), francês, alemão (incluindo o suíço), português (europeu e do Brasil), italiano, polaco, turco, vietnamita, indonésio, filipino, neerlandês, sueco, finlandês, romeno, croata, bósnio, sérvio (latino e cirílico), malaio, suaíli, ioruba, igbo, usbeque, grego, russo, ucraniano, chinês simplificado, chinês tradicional (Hong Kong), japonês, coreano, tailandês, hindi, bengali, tâmil, panjabi, marata, nepalês, guzerate, odia, telugu, canarim, malaiala, amárico, árabe (incluindo o egípcio), persa, urdu, sindi e uigur.

A escolha é aplicada quando o GravesZIP é reiniciado. Não se trata de contornar uma limitação: uma janela lê o idioma no momento em que é construída, e a sua direção, da esquerda para a direita ou da direita para a esquerda, fica fixada nesse momento. Mudar o idioma com uma janela já no ecrã deixá-la-ia meio traduzida e virada para o lado errado.

Enquanto não tiver escolhido, o GravesZIP segue o idioma do seu sistema operativo.

Em árabe, persa, urdu, sindi e uigur, a interface é disposta da direita para a esquerda. O conteúdo de um arquivo comprimido não é espelhado: um caminho como «docs/report.txt» mantém a sua direção em todos os idiomas, porque o separador significa que o que está à esquerda contém o que está à direita. Os nomes de ficheiros e pastas, em qualquer sistema de escrita, continuam a ser apresentados corretamente na lista.

12. Acessibilidade

O GravesZIP foi feito para poder ser utilizado sem visão.

Leitores de ecrã

Todos os controlos que podem ser acionados têm um nome que um leitor de ecrã consegue anunciar, incluindo os painéis de documentos da caixa Sobre. Isto é verificado automaticamente em cada compilação, e não por inspeção: um controlo que não possa ser anunciado faz falhar a compilação.

Teclado

Os menus abrem-se com Alt e as letras sublinhadas, e percorrem-se com as teclas de seta. As caixas de diálogo fecham-se com Escape, e o respetivo botão predefinido responde a Enter.

O menu de idiomas usa entradas do tipo botão de opção em vez de uma lista pendente, porque um leitor de ecrã anuncia qual é a entrada assinalada. É assim que um utilizador cego ouve qual é o idioma em vigor, em vez de ter de o deduzir.

Cor e contraste

O GravesZIP veste as cores da GravesWare, numa versão clara e numa versão escura que seguem a definição de modo claro ou escuro do seu sistema. Todo o texto nelas cumpre a norma de contraste WCAG AA de 4,5 para 1, e um teste automático faz falhar a compilação se alguma alteração baixar um deles desse valor. Nada é transmitido apenas pela cor: uma linha encriptada tem o seu cadeado, e um leitor de ecrã diz «Encriptado».

Quando o seu sistema está definido para alto contraste, o GravesZIP põe de parte as suas próprias cores e usa o tema simples do sistema. Escolheu essas cores porque precisa delas, e uma aplicação que se repinta por cima dessa escolha tornou-se mais difícil de ler.

Tamanho

Os botões e os campos de texto têm pelo menos 44 píxeis de altura, o mínimo confortável para um ponteiro, um dedo ou uma mão pouco firme. O GravesZIP declara ao Windows que reconhece o dimensionamento do ecrã, pelo que se mantém nítido a 150% ou 200%, em vez de ser esticado e ficar desfocado.

13. Apoio

GravesWare, LLC
support@gravesware.com

O endereço está também na página Sobre (Ajuda > Sobre o GravesZIP), com um botão Enviar e-mail ao apoio que abre o seu próprio programa de correio com o endereço e a sua versão já preenchidos. Nada é enviado até que o envie.

Indique que versão está a utilizar (a caixa Sobre mostra-a) e que sistema operativo. Em tudo o que envolva um arquivo comprimido encriptado, não envie o arquivo nem a palavra-passe.