Como detectar fotos editadas com a impressão digital SHA-256

SHA-256 em linguagem simples: o que uma correspondência prova, o que a diferença significa, por que fotos enviadas pelo WhatsApp ou Messenger nunca batem.

A forma mais confiável de saber se um arquivo de imagem foi alterado desde que foi registrado pela primeira vez é comparar as impressões digitais SHA-256 dos dois arquivos: se batem, eles são idênticos byte a byte; se não batem, o arquivo mudou. Mas “alterado” não é o mesmo que “falsificado”: basta enviar uma foto pelo WhatsApp ou pelo Messenger para a correspondência quebrar. Este guia explica o SHA-256 em termos simples, o que ele prova e o que não prova, e um fluxo de trabalho que funciona na prática.

Observação: Este artigo traz informações gerais, não aconselhamento jurídico. Como uma prova é avaliada em cada caso cabe à autoridade competente decidir.

O que é o SHA-256, em linguagem simples

Pense no SHA-256 como uma máquina que gera uma impressão digital de um arquivo. Coloque qualquer arquivo nela, uma foto de 3 MB ou um vídeo de 2 GB, e ela devolve uma sequência fixa de 64 caracteres, algo que começa como 9f2c1a…. O algoritmo é definido no padrão americano do NIST FIPS 180-4 e é usado em todo lugar, de bancos a downloads de software.

Três propriedades importam:

  1. Mesmo arquivo, mesma impressão digital. Não importa quantas vezes nem em qual computador você calcule, o resultado é a mesma sequência.
  2. Uma mudança mínima, um resultado completamente diferente. Mude um pixel ou remova uma linha de metadados, e a nova impressão digital não tem nada a ver com a antiga. Não existe “quase igual”.
  3. Mão única. Não dá para reconstruir a foto a partir da impressão digital e, na prática, ninguém consegue criar de propósito um arquivo diferente com a mesma impressão digital.

Diagrama do SHA-256: a impressão digital do arquivo original é registrada no envio; o mesmo arquivo enviado como documento gera o mesmo hash, uma cópia reenviada por um app de mensagens não bate

Ou seja, guardar 64 caracteres quando uma foto chega é suficiente para conferir, mais tarde, se qualquer arquivo é exatamente aquela foto, sem precisar guardar ou reenviar a própria imagem.

O que uma correspondência prova e o que uma diferença indica

Resultado Prova Não prova
Bate O arquivo que você tem é idêntico, byte a byte, ao arquivo cuja impressão digital foi guardada Que a cena é genuína ou que nada foi montado antes da foto
Não bate O arquivo difere do original de alguma forma Que alguém alterou o conteúdo de propósito

A segunda linha é onde as pessoas erram. Os arquivos se afastam do original por muitos motivos inofensivos:

  • Apps de mensagens recomprimem as imagens. WhatsApp, Messenger e muitos outros reduzem e recomprimem as fotos enviadas como “foto”.
  • Redes sociais recomprimem e removem os metadados quando você publica.
  • Capturas de tela em vez de enviar o arquivo.
  • Girar, recortar ou ajustar o brilho, mesmo que pouco, no app de galeria.
  • Converter o formato, por exemplo de HEIC para JPEG, ou “salvar como” em um visualizador.

Por isso, quando você vê uma diferença, a pergunta certa não é “isto é falso?”, e sim “por quais canais este arquivo passou?”

Por que fotos enviadas pelo WhatsApp ou Messenger nunca batem

Para economizar armazenamento e banda, os apps de mensagens normalmente recodificam as imagens JPEG: resolução menor, compressão mais forte, menos metadados. A olho nu a imagem parece a mesma, mas os bytes por dentro são completamente diferentes, e o SHA-256 também.

Como foi enviada Normalmente mantém o arquivo original? Comparação SHA-256
Como “foto” em um app de mensagens Não, é recomprimida Quase certamente não bate
Como “arquivo” ou documento em um app de mensagens Normalmente sim Normalmente bate
Anexo de e-mail Normalmente sim Normalmente bate
Original baixado do Google Drive ou do OneDrive Sim Bate
Captura de tela Não Não bate

O código QR impresso na foto normalmente continua legível depois da compressão, então quem recebe pode conferir a hora da captura e a área mesmo quando a comparação da impressão digital falha. Veja verificação de fotos por QR.

Um fluxo prático de comparação

Se você envia as fotos (empreiteiros, técnicos, equipe de campo)

  1. Mandar fotos rápidas pelo chat para as atualizações do dia a dia não tem problema.
  2. Para as fotos importantes (inspeções, entregas, sinistros de seguro), envie também o original como arquivo, por e-mail ou por uma pasta compartilhada.
  3. Não recorte, gire nem edite antes de enviar o original.
  4. Coloque o código SnapID na mensagem para que quem recebe o encontre rápido.

Qualquer pessoa pode verificar: toda foto tem um código SnapID e um QR; quem recebe escaneia sem conta e vê a hora, a área e os alertas de integridade, e pode comparar o arquivo com SHA-256

Se você recebe as fotos (contratantes, clientes, gestores, seguradoras)

  1. Escaneie o código QR ou abra a página de verificação a partir do código na foto.
  2. Confira a hora da captura, a área e os alertas de integridade.
  3. Clique em comparar com meu arquivo e escolha o original que você recebeu.
  4. Bateu: o arquivo está intacto. Não bateu: veja se ele passou por um canal que comprime e peça o original.
  5. Se um original enviado por um canal sem compressão ainda assim não bater, pergunte a quem enviou e olhe com atenção a miniatura na página de verificação.

Calculando o SHA-256 você mesmo

Para suas próprias conferências ou arquivamento, as ferramentas do sistema bastam:

  • Windows (Prompt de Comando): certutil -hashfile photo.jpg SHA256
  • macOS (Terminal): shasum -a 256 photo.jpg
  • Linux: sha256sum photo.jpg

Compare o resultado com a sequência que quem enviou passou para você. Um caractere diferente significa dois arquivos diferentes.

Como o SnapID Mark usa o SHA-256

Quando uma foto do SnapID Mark é enviada, o servidor guarda as impressões digitais SHA-256 tanto do original quanto da imagem com carimbo. A página pública de verificação mostra a impressão digital junto com a hora confiável da captura, uma área arredondada e os alertas de integridade. O botão “comparar com meu arquivo” calcula o SHA-256 dentro do navegador de quem recebe, então a foto não é enviada, e confere com o valor guardado. A página também explica o caso da recompressão por apps de mensagens, para que quem recebe não tire conclusões precipitadas.

Página pública de verificação de um código SnapID: SnapID válido, a data e a hora da foto, uma área arredondada para cerca de 1 km com link para o mapa, espaço de trabalho, conta e serviço

Juntas, essas peças formam três camadas: a hora confiável diz quando (veja hora confiável vs hora do celular), o código SnapID e o QR levam a um registro independente, e o SHA-256 diz se o arquivo continua intacto. Saiba mais em segurança ou experimente a demonstração de verificação.

Lembre-se de que esta é uma ferramenta técnica de conferência, não uma assinatura digital nem um carimbo de tempo certificado. Fotos com data e hora como prova no Vietnã aprofunda esse lado.

Se você precisa enviar fotos cuja integridade quem recebe possa conferir sozinho, baixe o SnapID Mark e experimente comparar um original com uma cópia enviada pelo chat.

Perguntas frequentes

A impressão digital SHA-256 revela o que há na foto?

Não. A imagem não pode ser reconstruída a partir de 64 caracteres, então mostrar a impressão digital publicamente não expõe a foto.

Uma foto enviada por um app de mensagens não bate. Ela é falsa?

Não. Os apps de mensagens recomprimem as imagens enviadas como “foto”, o que muda o arquivo mesmo que ele pareça idêntico. Peça o original enviado como arquivo ou por e-mail e compare esse.

Quando comparo na página de verificação, minha foto é enviada?

Não. Seu navegador calcula a impressão digital no seu aparelho, e o arquivo de imagem nunca sai dele.

Se bate, a foto é com certeza genuína?

Uma correspondência só prova que o arquivo é idêntico ao que foi guardado no envio. Ela não prova que a cena não foi montada. Olhe também a hora, a área e os alertas de integridade.

Posso comparar um PDF exportado a partir da foto?

Não use um PDF para a comparação, porque a imagem dentro dele é outro arquivo. Compare usando o JPEG original.