Ir para o conteúdo
5 min de leitura

Hash do PDF: como provar que o arquivo não foi alterado

Como calcular o SHA-256 de um PDF no Mac, Linux e Windows, guardar o valor e provar que o arquivo não mudou, sem confundir integridade com autoria.

Calcule o SHA-256 do PDF final, logo depois de gerá-lo, e guarde o valor de 64 caracteres em um lugar com data, como um e-mail enviado a você mesmo antes do envio. Quem recebe calcula o mesmo valor no arquivo que chegou. Se os dois forem idênticos, os bytes são os mesmos. O hash prova que o arquivo não mudou, mas não prova quem o criou.

O que o hash faz, em termos simples

O hash é o resultado de uma conta feita sobre todos os bytes do arquivo. O algoritmo SHA-256 é o padrão atual para essa finalidade e gera sempre um valor de 64 caracteres hexadecimais, seja qual for o tamanho do PDF. Um arquivo de 2 KB e um de 200 MB geram valores do mesmo tamanho.

O ponto importante é a sensibilidade. Trocar uma letra no texto, mudar uma data nos metadados ou acrescentar uma página muda o valor inteiro. Por isso, o hash não mostra onde o arquivo mudou, só que mudou.

Como calcular o hash em cada sistema

Os comandos abaixo já vêm instalados em seus respectivos sistemas. Troque arquivo.pdf pelo nome do seu arquivo e, se o nome tiver espaços, coloque-o entre aspas.

SistemaComandoObservação
Macshasum -a 256 arquivo.pdfVem no terminal sem instalação
Linuxsha256sum arquivo.pdfPresente na maioria das distribuições
Windows, PowerShellGet-FileHash arquivo.pdf -Algorithm SHA256O valor aparece na linha Hash
Windows, prompt de comandocertutil -hashfile arquivo.pdf SHA256A primeira linha de resultado é o valor

Passo a passo para provar que o arquivo não mudou

O método funciona só se o valor for guardado antes de o arquivo sair das suas mãos. Calcular o hash depois de receber uma cópia não prova nada sobre a versão original.

  1. Gere o PDF final e confira o conteúdo. Depois de calculado o hash, não altere mais nada.
  2. Rode o comando do seu sistema e copie o valor inteiro, com os 64 caracteres.
  3. Guarde o valor em um lugar com data, como um e-mail para você mesmo, um registro no sistema da empresa ou uma mensagem enviada antes do arquivo.
  4. Envie o PDF. Se possível, informe o valor por outro canal, para que ele não dependa do mesmo anexo.
  5. Quem recebe calcula o hash do arquivo recebido com o mesmo algoritmo e compara com o valor guardado.
  6. Se os valores forem idênticos, o arquivo é o mesmo, byte a byte. Se forem diferentes, algo mudou, mesmo que a diferença pareça mínima.

O que muda o hash sem você perceber

Para usar o hash bem, é preciso saber o que altera o arquivo. A tabela mostra os casos mais comuns. Na dúvida, calcule o hash de novo depois da ação.

Ação com o arquivoO hash muda?Motivo
Copiar ou baixar o mesmo arquivoNãoOs bytes são copiados sem alteração
Abrir e fechar sem salvarNãoNada é gravado no arquivo
Salvar de novo no leitor ou no editorPode mudarO programa regrava parte ou o todo do arquivo
Juntar, comprimir, girar, dividir ou organizar no AjustaPDFSimCada operação gera um arquivo novo
Exportar o mesmo documento de novo a partir da origemQuase sempre simDatas e identificadores internos costumam mudar a cada exportação

Essa última linha é a que mais confunde. Você pode ter o mesmo texto e as mesmas imagens, e ainda assim o hash mudar. Por isso, o valor deve ser calculado sobre o arquivo final que será enviado, e não sobre um rascunho.

O que o hash prova e o que não prova

O hash prova uma coisa só: que o arquivo que você tem é idêntico ao que foi calculado antes. Ele não diz quem criou o documento, quando ele foi feito, nem se o conteúdo é verdadeiro.

  • Quem altera o arquivo pode gerar um hash novo e enviá-lo como se fosse o original. O valor só tem peso se foi registrado em um lugar que quem alterou o arquivo não controla.
  • Um valor guardado só no próprio computador é fácil de ser alterado junto com o arquivo. Use um canal que a outra parte também tenha acesso.
  • Para provar autoria e data com força, o caminho é a assinatura digital, que pode incluir carimbo do tempo. O guia sobre PDF assinado digitalmente explica por que um arquivo assinado não pode ser editado depois.
  • Assinatura colada como imagem não entra nessa conta. Veja o guia sobre assinatura colada como imagem antes de contar com ela.

Quando não há arquivo original para comparar

O hash só ajuda se você tiver uma referência confiável. Um boleto ou um comprovante que chega por e-mail, sem nenhum valor guardado por você, não pode ser conferido só pelo hash: não há com o que comparar. Nesses casos, a checagem precisa acontecer na origem.

Para boletos, confira o valor, o beneficiário e o código de barras no banco ou no sistema de cobrança, e não pelo PDF recebido. Para comprovantes de Pix, confirme a entrada do dinheiro na sua conta. Os guias sobre comprovante Pix falso em PDF e boleto em PDF alterado mostram esse caminho em detalhes.

Antes de guardar um PDF com dados sensíveis, lembre que o hash não o protege. Ele só mostra se o arquivo mudou. Para o que não deve ser visto por outras pessoas, o guia sobre versões antigas escondidas no PDF mostra o que pode ficar dentro do arquivo mesmo depois de editado.

Perguntas frequentes

O que é o hash de um PDF?

É um valor calculado a partir de todos os bytes do arquivo, geralmente com o algoritmo SHA-256, que gera 64 caracteres. Se qualquer byte mudar, o valor muda. Ele serve como uma impressão digital do arquivo, mas não diz nada sobre o conteúdo além de ele ser igual ou diferente.

Dois PDFs com o mesmo texto e as mesmas páginas têm o mesmo hash?

Em geral, não. Cada programa grava o arquivo com estruturas e campos próprios, e a data de criação costuma estar dentro do arquivo. Por isso, exportar o mesmo documento duas vezes costuma gerar hashes diferentes. Só o arquivo idêntico, byte a byte, gera o mesmo valor.

Posso renomear o arquivo sem mudar o hash?

Sim. O hash depende do conteúdo do arquivo, não do nome. Renomear ou mover o PDF não altera o valor. Já salvar o arquivo de novo pode alterar o hash, mesmo sem nenhuma mudança visível na página.

Hash serve como prova em disputa?

Serve como indício de que o arquivo não mudou desde o registro do valor. Não prova quem criou o arquivo nem quando. Para prova com valor mais forte, combine o hash com assinatura digital ou com um registro feito por terceiro, como um e-mail enviado antes do envio do documento.

Preciso instalar algum programa para calcular o hash?

Não. No Mac e no Linux, o terminal já traz os comandos. No Windows, o PowerShell traz o Get-FileHash, e o prompt de comando traz o certutil. O resultado é o mesmo em qualquer um, desde que o algoritmo seja SHA-256.