Como funciona

A arquitetura, a detecção de spam e como o filtro fica mais inteligente com o tempo

A arquitetura: transporte IMAP → armazenamento local → análise

O GravesMail usa o servidor IMAP do seu provedor de e-mail apenas como camada de transporte. Eu nunca leio do IMAP para exibir mensagens — seria lento e pouco confiável. Em vez disso, acontece o seguinte:

  1. Busca no IMAP — As mensagens são baixadas do servidor do seu provedor por uma conexão criptografada.
  2. Passagem pela DMZ — As mensagens novas ficam em uma área de preparação local (SQLite) antes de você vê-las.
  3. Análise de segurança em 7 camadas — Cada mensagem e cada anexo passam pelas sete Camadas de proteção no seu computador, incluindo a verificação de malware com YARA.
  4. Filtragem pelas Regras rápidas — As mensagens que correspondem às suas Regras rápidas pessoais são tratadas automaticamente pela sua regra: separadas na Armadilha de spam para revisão, movidas ou excluídas.
  5. Promoção para Caixa de entrada, Spam ou Malware — As mensagens limpas chegam à Caixa de entrada. O spam vai para Spam. As mensagens com malware vão para uma pasta Malware separada, com os anexos perigosos removidos e retidos.
  6. Exclusão do servidor (opcional) — Se você tiver ativado “Excluir do servidor”, a mensagem é removida do seu provedor.

O SQLite é a única fonte da verdade. Tudo o que você vê na interface vem do seu banco de dados local, não do IMAP.

Sincronização em duas fases para caixas de correio grandes

Quando você conecta uma conta pela primeira vez — principalmente uma com milhares de mensagens —, o GravesMail usa uma abordagem em duas fases:

Fase 1 (Início rápido): as 500 mensagens mais recentes de cada pasta são buscadas primeiro, normalmente em menos de um minuto. Você pode começar a ler e a trabalhar imediatamente.

Fase 2 (Sincronização em segundo plano): as mensagens restantes são baixadas discretamente em segundo plano. Um indicador de progresso na barra de status mostra a porcentagem concluída e o tempo restante estimado. Você pode pausar, retomar ou parar a qualquer momento. O progresso é salvo se você fechar o aplicativo.

As sete Camadas de proteção

Cada mensagem recebida e seus anexos passam por sete Camadas de proteção independentes. Cada camada procura um tipo diferente de problema e decide sozinha. Se uma única camada disparar o alarme, a mensagem é tratada como spam — não há médias nem uma pontuação combinada que precise ser atingida. Um alarme basta. É o modelo “OU de 7 camadas”.

🌐

1. Validação de domínio

O domínio do remetente existe e tem servidores de e-mail de verdade? A terminação do endereço (o TLD, como .shop, .top, .click ou .xyz) é uma das que o spam costuma explorar?

🧠

2. Filtro bayesiano

Uma avaliação aprendida de quanto as palavras da mensagem se parecem com spam. Ele vem pré-treinado e depois aprende com você — cada “Marcar como spam” ou “Marcar como não spam” o torna mais inteligente.

🔒

3. Autenticação de cabeçalho

SPF, DKIM e DMARC — as verificações padrão que provam que um remetente é quem diz ser.

🔍

4. Pontuação heurística

41 detectores que cobrem padrões de conteúdo e de cabeçalho: palavras disfarçadas (H0ME, S4LE), frases típicas de golpes de pagamento antecipado e de herança, cabeçalhos forjados, anomalias de data e o país de origem do remetente.

📊

5. Reputação

Suas listas de remetentes seguros e bloqueados, o histórico do remetente e o rastreamento de campanhas entre mensagens — que pega um spammer que vive trocando de domínio de remetente, mas reutiliza o mesmo servidor de origem, o mesmo host do conteúdo ou o mesmo link de cancelamento de inscrição.

🛡

6. Malware: antivírus do sistema

No Windows, os anexos são enviados ao antivírus instalado (Windows Defender, Norton, Bitdefender, Kaspersky e outros) pela interface AMSI. Esta camada não está disponível no macOS, no Linux nem em dispositivos móveis — e nessas plataformas ela diz isso claramente, em vez de informar um resultado limpo que nunca produziu.

🧬

7. Malware: YARA

Verifica os bytes dos anexos e os corpos das mensagens contra milhares de assinaturas de malware da comunidade, do repositório Neo23x0/signature-base. Detecta cavalos de Troia, ransomware, RATs, macros maliciosas do Office, exploits de PDF e documentos de phishing. Funciona em todas as plataformas, incluindo as móveis, e vem incorporado para uso offline.

Relatórios honestos — sem falsa confiança

Abra as Propriedades de qualquer mensagem para ver o detalhamento por camada: a pontuação de cada camada, o limite a partir do qual ela dispara o alarme e o seu estado — Alarmado, Limpo ou Não disponível. Quando um verificador não pôde ser executado, o GravesMail informa “Não disponível”. Ele nunca é exibido como “Limpo”. Um antivírus que não consegue iniciar e mesmo assim informa que está tudo limpo é o pior tipo de ferramenta de segurança, porque você confia em um veredito que nunca chegou a ser dado.

A tela Mecanismo de segurança (Ferramentas → Mecanismo de segurança, ou Configurações → Mecanismo de segurança nos dispositivos móveis) permite ajustar cada uma das sete camadas separadamente com um controle deslizante de sensibilidade de 0 a 100% — 0% desliga a camada, 100% é o mais sensível. Não há um controle global único; você ajusta as camadas uma a uma. A mesma tela mostra o status dos verificadores de malware em tempo real, um editor da política de países e um inventário, somente leitura, de todos os detectores e do peso de cada um.

Geolocalização sem consultas externas

A camada heurística leva em conta a origem de uma mensagem. Essa consulta é exclusivamente local. O GravesMail vem com uma tabela incorporada de países e intervalos de IP e a consulta no seu dispositivo — não há consultas DNS, não há chamadas a APIs externas e não há nenhum serviço de terceiros no caminho. Os metadados das suas mensagens nunca saem do seu dispositivo para serem geolocalizados.

É você quem decide o que o resultado significa. Na tela Mecanismo de segurança, você pode marcar países como Seguro (sem sinal adicional de spam) ou Ameaça (um sinal forte). As duas listas começam vazias, de modo que o e-mail internacional comum nunca é penalizado enquanto você não escolher uma política.

Dados de geolocalização de IP da DB-IP (db-ip.com), sob a licença CC BY 4.0.

Bloqueio de imagens externas e remoção de pixels de rastreamento

Quando você recebe um e-mail, o remetente pode incorporar imagens externas que são carregadas a partir dos servidores dele. Quando a imagem é carregada, o remetente fica sabendo o seu endereço IP, que você abriu o e-mail, quando o abriu e qual dispositivo usou.

O GravesMail bloqueia as imagens externas por padrão. Separadamente, ele detecta e remove os pixels de rastreamento invisíveis (imagens de 1×1 usadas apenas para saber se a mensagem foi lida). São controles independentes — você pode carregar imagens sem carregar rastreadores, ou o contrário.

Criptografia de ponta a ponta (OpenPGP)

O GravesMail é compatível com o OpenPGP — o padrão aberto e interoperável para e-mail criptografado e assinado de ponta a ponta. Você pode trocar mensagens privadas com qualquer pessoa que use PGP, em qualquer sistema de e-mail (Proton Mail, Thunderbird, gpg e outros), e não apenas com outros usuários do GravesMail. Isto é PGP/MIME de verdade, não um dialeto do GravesMail.

Chaves

Gere uma chave no Gerenciador de chaves PGP — recomenda-se Ed25519/Curve25519, com RSA-4096 disponível para compatibilidade com softwares PGP mais antigos. Exporte sua chave pública para que outras pessoas possam escrever para você e importe as delas para escrever para elas. Depois da importação, o GravesMail mostra a impressão digital da chave; confirme-a com a pessoa por outro canal — uma ligação, ou pessoalmente — e marque-a como verificada. Uma chave não verificada funciona do mesmo jeito, mas continua sinalizada como não verificada, porque essa marca significa exatamente uma coisa: você ainda não confirmou que esta chave pertence mesmo a essa pessoa.

As chaves são identificadas pela impressão digital, não pelo endereço de e-mail. Ter duas chaves para um endereço é normal — uma antiga e uma nova, ou uma chave RSA e uma Ed25519 lado a lado —, de modo que cada ação atua sobre a chave que você selecionou, e não sobre a primeira que por acaso corresponda ao endereço.

Você pode vincular uma chave a um contato, para que criptografar para essa pessoa simplesmente funcione, sem precisar procurar no Gerenciador de chaves. Vincular uma chave não ativa a criptografia; você continua escolhendo mensagem por mensagem.

Faça backup da sua chave secreta — este é realmente importante

Se você perder sua chave secreta, todas as mensagens já criptografadas para ela se tornam irrecuperáveis para sempre. Nem por mim, nem por ninguém. Use Fazer backup da chave secreta para salvar em um lugar seguro um arquivo de backup protegido por senha, e lembre-se da senha. Restaurar chave secreta a traz de volta em um dispositivo novo ou reinstalado, confirmando qual chave foi restaurada ao mostrar a identidade e a impressão digital dela. Excluir uma das suas próprias chaves secretas é irreversível, por isso o GravesMail reforça o aviso e faz você confirmar.

Enviar e ler

A janela Escrever tem um controle Segurança com três modos — Assinar, Criptografar ou Assinar + criptografar (recomendado para mensagens privadas). Por padrão ele fica desativado, de modo que o e-mail comum não muda. O e-mail criptografado que você recebe é descriptografado automaticamente e mostra um cadeado fechado 🔒; o e-mail assinado mostra o status da assinatura, e uma assinatura inválida é mostrada de forma bem visível, não discreta. Uma mensagem criptografada para uma chave que você não tem naquele dispositivo diz isso explicitamente, em vez de mostrar um corpo em branco.

Quando você envia um e-mail criptografado, o GravesMail também o criptografa para a sua própria chave, para que a cópia na pasta Enviados continue legível para você. Sem isso, você não conseguiria descriptografar a sua própria cópia guardada. Isso está sempre ativado.

A regra que não cede

Se você escolher criptografar e um destinatário não tiver uma chave utilizável, o envio é bloqueado. O GravesMail para e pergunta: cancelar, ou escolher explicitamente enviar sem criptografia — uma segunda ação deliberada, que identifica os destinatários em risco, nunca um padrão e nunca automática. Não existe nenhum caminho no código em que escolher a criptografia produza discretamente um envio em texto simples. Isso é imposto no próprio mecanismo, não apenas na interface, e é coberto por um teste automatizado.

O que o PGP protege e o que não protege

O PGP criptografa o corpo e os anexos da mensagem. Ele não oculta o assunto, os campos Para/De/Cc nem quando a mensagem foi enviada — esses trafegam às claras. É a mesma limitação de todos os sistemas PGP/MIME, incluindo o Proton; não é uma deficiência do GravesMail, mas você deve saber disso antes de confiar nele.

O PGP protege o seu e-mail em trânsito — contra interceptação e contra o seu provedor de e-mail. Ele não é uma ferramenta antiforense: uma vez descriptografado, o e-mail fica em cache no banco de dados local criptografado do GravesMail, para que você possa pesquisá-lo e lê-lo offline.

Mais duas limitações, ditas sem rodeios: o GravesMail não faz consultas automáticas a servidores de chaves nem por WKD e não tem rede de confiança — é você quem importa as chaves e quem verifica as impressões digitais, uma escolha deliberada para não ter de confiar em um serviço de rede quanto à identidade de alguém. E as mensagens com assinatura em texto claro incorporada (inline) são mostradas como texto legível sem verificação da assinatura; o GravesMail as exibe, em vez de afirmar uma assinatura que de fato não verificou.

Interoperabilidade

O PGP do GravesMail é verificado nos dois sentidos contra o GnuPG — a implementação de referência do OpenPGP — com chaves geradas pelo GravesMail, tanto Ed25519 quanto RSA-4096: o GravesMail criptografa e o gpg descriptografa, o gpg criptografa e o GravesMail descriptografa, e as assinaturas são verificadas nos dois sentidos. É um conjunto de testes automatizados, não uma verificação manual pontual.

O Proton Mail também está confirmado — manualmente, e não por teste automatizado. E-mails criptografados reais foram enviados e lidos nos dois sentidos entre o GravesMail e uma conta Proton ativa. Foram também esses testes que encontraram e corrigiram três defeitos reais pelo caminho: a validação rigorosa de chaves do Proton rejeitando as chaves Ed25519 do GravesMail, um defeito na expiração de chaves e anexos que sumiam sem aviso do e-mail criptografado na descriptografia. Os três estão corrigidos, e a interoperabilidade com o Proton funciona nos dois sentidos.

O Thunderbird eu não testei especificamente para PGP, por isso não afirmo nada aqui. Ele é um cliente OpenPGP padrão e deve funcionar, mas “deve” não é o mesmo que verificado, e prefiro dizer a você o que foi realmente testado.

E-mail protegido por senha (sem chave necessária)

O PGP é a ferramenta certa quando o seu correspondente também usa PGP. Quando não usa — e a maioria das pessoas não usa —, recorra à opção de proteção por senha descrita abaixo.

Às vezes você precisa enviar algo privado a alguém que não tem chaves de criptografia nem software especial — apenas uma conta de e-mail comum. A opção Proteger com senha (sem chave necessária) do GravesMail lacra a sua mensagem e os anexos dentro de um ZIP verdadeiro e padrão, criptografado com AES-256, que o destinatário abre com software gratuito e comum em qualquer plataforma.

Isso usa o formato WinZip AES-256 (AE-2), padrão do setor — a mesma criptografia forte que o 7-Zip, o Keka e os aplicativos compactadores para dispositivos móveis já entendem. Ele não é um contêiner exclusivo do GravesMail, nem é o “ZipCrypto” fraco e quebrável que as ferramentas ZIP mais antigas usavam. A interoperabilidade é comprovada com softwares compactadores padrão reais, e o formato de criptografia AE-2 do arquivo compactado é fixado por um teste automatizado — de modo que o que sai é um arquivo genuinamente padrão, não algo que só parece funcionar entre duas cópias do mesmo aplicativo.

O que de fato sai é um único anexo, protected-message.zip. A sua mensagem verdadeira e todos os anexos ficam criptografados dentro dele; o corpo visível do e-mail traz apenas instruções em linguagem simples para abri-lo. Os nomes dos anexos dentro do arquivo compactado são substituídos por nomes neutros, e os nomes verdadeiros ficam em um manifesto criptografado que aparece quando o destinatário digita a senha — de modo que os nomes dos arquivos também não vazam.

Ao enviar, o GravesMail pede que você defina uma senha forte (pelo menos 12 caracteres, com maiúsculas e minúsculas, dois dígitos e dois símbolos), com uma lista de verificação em tempo real e um campo de confirmação, para que um erro de digitação nunca deixe o destinatário trancado do lado de fora. Depois ele mostra a senha uma única vez, com um botão Copiar, e lembra você de repassá-la por outro canal — por telefone, mensagem de texto ou chat. O GravesMail nunca se oferece para enviar a senha por e-mail, e nunca a armazena nem a transmite para lugar nenhum. O GravesMail também consegue abrir, no próprio local, as mensagens protegidas que recebe, em todas as plataformas.

Com honestidade sobre o que isso protege

A segurança está toda na senha — escolha uma boa e compartilhe-a por um canal diferente do próprio e-mail. Não há prazo de validade nem “autodestruição”; sem um servidor, não é possível impor essas coisas, e o GravesMail é centrado no armazenamento local, por isso não as prometo. O ZIP criptografa o conteúdo dos arquivos, não a estrutura do arquivo compactado, de modo que quem interceptar a mensagem ainda consegue ver quantos arquivos há dentro e seus tamanhos aproximados e datas — mas não os nomes nem o conteúdo. E o assunto do e-mail, os campos Para/De e o horário de envio continuam trafegando às claras, como em qualquer e-mail.

Regras rápidas: a sua triagem pessoal de e-mails

As Regras rápidas permitem criar regras de triagem de um clique para remetentes, domínios ou padrões de assunto específicos. Cada regra ganha o seu próprio botão na barra de ferramentas. Quando você aplica uma regra a uma mensagem, o remetente é adicionado automaticamente à lista de correspondências dessa regra — a regra fica mais inteligente conforme você a usa.

Uma regra pode enviar os e-mails correspondentes para a Armadilha de spam, onde ficam separados para revisão, movê-los para uma pasta, excluí-los ou excluí-los automaticamente depois de um número de dias. As regras podem ser aplicadas automaticamente durante a sincronização, para que as mensagens correspondentes nunca cheguem à Caixa de entrada, e você pode verificar pastas inteiras em segundos para pegar e-mails antigos em massa. Tudo o que uma regra capturou pode ser revisado, restaurado ou eliminado definitivamente a qualquer momento.

As suas regras têm precedência sobre o filtro de spam. Uma mensagem que corresponda a uma das suas regras é tratada pela sua regra antes que o filtro de spam possa desviá-la — de modo que um remetente para o qual você escreveu uma regra não é enviado por engano para Spam. O filtro continua sendo executado e pontuando a mensagem, e você pode ver o veredito nas Propriedades; ele simplesmente não se sobrepõe à sua regra. A única exceção é o malware: a verificação de malware sempre vence, de modo que uma regra nunca pode entregar um anexo perigoso na Caixa de entrada.

A lista Filtradas mostra tudo o que foi capturado por todas as suas regras dentro de uma janela de tempo móvel (de 1 a 96 horas no computador, 24 por padrão). Cada lista de revisão — Regras, Filtradas e Spam — tem a sua própria caixa de pesquisa.

Abra uma mensagem capturada e a primeira aba é a Visualização segura: a mensagem exibida como ficaria no painel de leitura, mas com os scripts neutralizados, os pixels de rastreamento bloqueados e as imagens remotas carregadas apenas para remetentes confiáveis. Ela tem os botões Responder, Responder a todos e Encaminhar, de modo que você pode responder a uma mensagem capturada sem antes restaurá-la para a Caixa de entrada — a mensagem fica onde está e a sua resposta sai como uma mensagem normal.

Anexos retidos

Quando o YARA ou o antivírus do sistema detecta malware em um anexo, o GravesMail executa automaticamente as seguintes ações:

  • Mensagem separada — movida para uma pasta Malware exclusiva, separada do Spam.
  • Anexo removido — o arquivo perigoso é retirado da mensagem. O corpo da mensagem é mantido, para que você possa ver quem a enviou.
  • Dados preservados — os bytes do anexo são mantidos localmente. Você pode revisar cada item retido, ver por que ele foi retido, salvá-lo em disco se confiar nele ou excluí-lo permanentemente, em Anexos retidos. Os itens retidos são mantidos até você decidir; nunca se perdem em silêncio.
  • Explicação completa — as propriedades da mensagem mostram exatamente qual regra YARA ou mecanismo antivírus disparou, qual arquivo foi afetado e qual ação foi tomada.

Você também pode, a qualquer momento, clicar com o botão direito em qualquer anexo e escolher Verificar malware para executar uma verificação sob demanda. As regras YARA podem ser atualizadas manualmente nas Configurações ou automaticamente, toda semana.

Backups criptografados automáticos

O GravesMail cria automaticamente backups criptografados de todo o seu perfil — não apenas do banco de dados de e-mails, mas também dos contatos, do calendário, das regras, das listas de remetentes seguros e bloqueados, dos limites ajustados, da reputação dos remetentes, do filtro de spam treinado, do chaveiro PGP e das credenciais de conta salvas. (Os arquivos que vêm com o aplicativo e são substituídos nas atualizações, como a tabela de consulta geográfica e o modelo de spam de base, ficam deliberadamente de fora.)

  • Backups completos — uma cópia integral do perfil, criptografada com AES-256
  • Backups diferenciais — apenas o que mudou desde o último backup completo; ao restaurar um deles, a cadeia é percorrida automaticamente para trás
  • Snapshots pré-operação — antes de qualquer operação destrutiva (verificação com regras rápidas, expurgo, limpeza da lixeira)

Você controla o agendamento no Gerenciador de backups: ou um intervalo (desativado, diário, semanal ou um número de horas personalizado, com um backup completo a cada N dias) ou uma grade semanal em que cada dia é definido como Nenhum, Completo ou Diferencial. Os limites de retenção dos backups completos, dos diferenciais e dos snapshots são configuráveis e nunca eliminam a sua única cópia.

Como estes backups são criptografados

Os backups agendados e manuais do próprio GravesMail são selados com uma chave mestra de backup que o aplicativo gera e gerencia para você. A chave em si nunca é gravada no disco sem proteção — só são armazenadas cópias encapsuladas, e ela é encapsulada de duas formas:

  • O armazenamento seguro de chaves do seu dispositivo — para que os backups de rotina aconteçam em silêncio, sem nunca pedir uma senha.
  • A sua frase secreta de recuperação — que desencapsula a mesma chave em qualquer máquina, sem envolver nenhum armazenamento de chaves.

É esse segundo encapsulamento que torna estes backups independentes do dispositivo. As versões anteriores prendiam os backups automáticos a uma única máquina física; eles não ficam mais restritos a ser restaurados apenas onde foram feitos.

Você define a frase secreta de recuperação uma vez, na primeira vez que faz um backup. Ela é obrigatória, não pode ser pulada — nenhum backup é concluído enquanto não houver uma definida, justamente para que você nunca fique com backups que não consegue recuperar. Depois disso, os backups são executados sem mais solicitações. Você pode alterá-la a qualquer momento no Gerenciador de backups, e a alteração mantém todos os backups existentes restauráveis.

Guarde sua frase secreta de recuperação em segurança

Ela é a única forma de recuperar estes backups em um dispositivo novo ou redefinido, e eu não posso recuperá-la para você — por projeto. Não há link de redefinição nem porta dos fundos no suporte, porque qualquer um dos dois seria uma entrada para alguém que não é você. Se você a esquecer e perder o dispositivo, esses backups não poderão ser abertos. Guarde-a em um lugar seguro.

O Gerenciador de backups permite navegar pelo conteúdo de qualquer backup, pesquisar em todos os backups, comparar com o banco de dados atual e recuperar seletivamente mensagens individuais. Uma restauração verifica se o backup está completo e íntegro antes de tocar no seu perfil atual — um backup truncado ou danificado é recusado e os seus dados existentes ficam intactos — e, quando termina, mostra o que foi recuperado, conjunto de dados por conjunto de dados.

Registro de exclusões e recuperação

Cada mensagem excluída é capturada em um registro de exclusões local, com o corpo completo. Você pode navegar, pesquisar e recuperar com um clique as mensagens excluídas por até 90 dias (configurável). Não é preciso nenhum arquivo de backup — a recuperação é imediata a partir do registro de exclusões.