Guia
Como uso um carimbo de tempo para comprovar que um documento existia em certa data?
Calcule um hash criptográfico do arquivo e publique esse hash em um registro datado que você não controla: uma transação em uma blockchain pública ou um token assinado por uma autoridade de carimbo de tempo. Depois, qualquer pessoa com o mesmo arquivo pode recalcular o hash e compará-lo ao registro datado, mostrando que o conteúdo existia até aquela data sem revelá-lo. Um carimbo de tempo comprova a existência em uma data e nada mais: não quem escreveu, não que alguém concordou, não que seja verdadeiro.
Atualizado em 3 de outubro de 2026
O que é um hash criptográfico
Um hash criptográfico é uma impressão digital de tamanho fixo calculada a partir de um arquivo: a mesma entrada sempre produz a mesma saída, e mudar um único caractere produz uma impressão digital completamente diferente. É de sentido único, então o texto original não pode ser recuperado pelo hash, e encontrar dois arquivos diferentes com o mesmo hash não é viável com os computadores atuais.
SHA-256 e Keccak-256 são os dois que você mais encontrará. SHA-256 é o padrão cotidiano usado pelo Bitcoin e pela maioria das autoridades de carimbo de tempo. Keccak-256 é o hash usado no Ethereum e em blockchains compatíveis, como a Polygon, e é o que o TrustChain usa para ancorar um acordo assinado. Ambos produzem uma sequência hexadecimal de 64 caracteres, ambos servem para carimbos de tempo, e o único requisito é registrar qual você usou.
- Mesmo arquivo de entrada, mesma impressão digital, sempre
- Mude um caractere e toda a impressão digital muda
- Não é possível reverter a impressão digital para revelar o texto
- A impressão digital tem o mesmo tamanho para um arquivo de uma linha ou de um gigabyte
Por que publicar um hash comprova a existência em uma data
O segredo é publicar o hash em vez do documento. O hash não revela o conteúdo, então pode ficar público e, como ninguém consegue viavelmente construir depois um documento que corresponda a um hash escolhido, um registro público datado do hash mostra que exatamente aquele conteúdo existia até aquela data.
A força da comprovação vem do registro, não do hash. Um hash escrito no seu caderno não comprova nada, porque você controla o caderno e suas datas. Um hash em um bloco do Bitcoin ou da Polygon, ou em um token assinado por uma autoridade de carimbo de tempo, recebe uma data de um sistema que você não controla e que muitas outras pessoas acompanham.
Guarde o arquivo original, byte por byte. A comprovação só funciona se você puder apresentar depois um arquivo que produza o valor publicado, e um PDF salvo novamente, um texto redigitado ou um documento com controle de alterações produzirá outro hash. Guarde o arquivo exato em mais de um lugar, com uma nota sobre a função de hash usada e onde o hash foi publicado.
O que um carimbo de tempo não comprova
Um carimbo de tempo comprova que bytes específicos existiam em uma data ou antes dela. Não comprova mais nada, nem sequer que o documento foi escrito naquela data: um texto escrito em janeiro e ancorado em março recebe um carimbo de março. Três outras coisas são frequentemente atribuídas a um carimbo de tempo que ele não pode demonstrar, e isso vale para todos os métodos deste guia, inclusive uma ancoragem na Polygon ou um token assinado de uma autoridade.
- Quem escreveu. Qualquer pessoa pode calcular o hash de qualquer arquivo, inclusive um copiado de outra pessoa. Um hash em um bloco ou token não identifica o autor nem quem o publicou, a menos que uma etapa separada de identidade vincule uma pessoa ao ato.
- Que houve concordância. Um rascunho de contrato com carimbo de tempo mostra que o rascunho existia, não que a outra parte o viu, aceitou ou assinou. A concordância precisa de um registro de cada parte aceitando o mesmo texto.
- Que seja verdadeiro. O hash de uma fatura, declaração ou alegação nada diz sobre a precisão do conteúdo. É uma impressão digital dos bytes, não uma conferência dos fatos.
Ancoragens em blockchains públicas: Polygon e Bitcoin
Uma ancoragem coloca o hash em uma transação em uma blockchain pública, e o bloco que a contém carrega a data. Na Polygon ou no Ethereum, o hash vai nos dados da transação ou em um evento de contrato. No Bitcoin, o caminho comum é o OpenTimestamps, um protocolo aberto e gratuito que reúne muitos hashes em uma árvore de Merkle, registra a raiz em uma única transação no Bitcoin e entrega um pequeno arquivo de comprovação para você guardar.
Os pontos fortes são independência e longevidade. Nenhuma empresa precisa continuar ativa para a comprovação funcionar, qualquer pessoa pode consultar a transação em um explorador público e, depois que o bloco é confirmado e coberto por blocos posteriores, alterações ficam detectáveis: ele não pode ser alterado sem que a mudança seja visível a todos que operam a rede.
Os pontos fracos são precisão e identidade. A hora de um bloco é definida pela rede e é aproximada, não exata: no Bitcoin, pode divergir em uma hora ou mais, então trate-a como comprovação do dia, não do minuto. Uma comprovação do OpenTimestamps pode levar horas para ser plenamente confirmada, e você precisa guardar o ID da transação ou arquivo de comprovação. Acima de tudo, uma transação não identifica ninguém: mostra que alguma carteira publicou aquele hash naquele momento, sem dizer quem escreveu ou aceitou o documento.
Autoridades de carimbo de tempo e notários
Uma autoridade de carimbo de tempo é um servidor que assina seu hash junto com a hora atual e devolve um token. O padrão comum é RFC 3161, e o regime europeu eIDAS define uma versão qualificada com provedores supervisionados. Você envia o hash, não o documento, então a autoridade não aprende nada sobre o conteúdo.
Pontos fortes: hora precisa, formato amplamente reconhecido e suporte integrado em muitas ferramentas de documentos e assinatura de código. Pontos fracos: você confia no relógio da autoridade, na gestão de chaves e em sua continuidade, e conferir um token depois exige software que entenda o formato. Se a chave de assinatura da autoridade for comprometida, todos os tokens emitidos passam a ser questionáveis.
Um notário é a alternativa humana. Ele verifica a identidade, presencia uma assinatura e registra a data em um livro. É um tipo de evidência diferente de um hash e o único método desta lista que informa quem estava presente. Os limites são custo, agendamento e o fato de o notário geralmente atestar uma assinatura em papel, não os bytes de um arquivo digital: uma cópia em papel autenticada e uma cópia digital editada podem divergir, a menos que você também calcule o hash do arquivo.
Por que enviar um e-mail para si mesmo é fraco
Enviar um documento para seu próprio e-mail é o método popular, e é fraco por três motivos. Você controla a caixa de entrada, então uma mensagem pode ser excluída e recriada com um anexo alterado. As datas do cabeçalho são texto simples e podem ser editadas no recebimento ou em um arquivo exportado. E o conteúdo fica inteiro na caixa de e-mail, sem privacidade nem concisão.
O único ponto a favor é o horário de recebimento no servidor do provedor de e-mail, que você não controla. É um pouco melhor do que nada, mas o provedor não está atestando coisa alguma, seus logs não foram feitos como evidência e ele não ajudará a recuperar um registro do servidor anos depois. Se quiser algo tão fácil que realmente comprove a data, calcule o hash e use o OpenTimestamps: é um comando, e os registros públicos são gratuitos.
Onde entra o TrustChain
Um carimbo de tempo isolado responde a uma pergunta: estes bytes existiam até esta data? O TrustChain foi criado para outra: as duas partes verificadas concordaram com este texto exato e quando? Ambas verificam a identidade uma vez com documento com foto e selfie pela Sumsub e assinam o mesmo texto final; quando ambas têm contas, também podem conversar com criptografia de ponta a ponta. Uma conta não verificada não pode assinar.
Na assinatura, o TrustChain escreve uma entrada de auditoria com data e hora para cada assinatura de uma conta com identidade verificada. Navegadores e aplicativos não podem editá-la, e ela é o elemento que um hash sozinho não oferece. A ancoragem é opcional: calcula uma impressão digital Keccak-256 do registro assinado e a grava em uma transação na rede principal da Polygon, atribuindo-lhe uma data pública. No plano Gratuito (US$ 0, sem cartão: 1 acordo e 3 solicitações ao Consultor de IA por mês), um acordo ou uma ancoragem adicional na Polygon custa US$ 1 cada, em compra avulsa, e as ancoragens exigem identidade verificada. O Pro, a US$ 19 por mês, inclui 20 acordos e 20 ancoragens; o Elite, a US$ 49, inclui 100 de cada. Os planos são mensais e podem ser cancelados a qualquer momento.
Se você ancorar, a impressão digital e um ID interno de registro vão para a blockchain, com dois campos vazios de carteira, nunca o texto, nomes ou e-mails. O texto do acordo fica nos servidores do TrustChain para calcular a impressão digital e fornecer o registro, o certificado e o PDF, gratuitos em todos os planos. A conversa é criptografada de ponta a ponta, e o TrustChain não pode ler as mensagens. O link público abre sem conta e mostra o status do registro e, se foi ancorado, sua impressão digital, nunca as identidades das partes; o título só aparece nos acordos criados no plano Elite. Se o registro foi ancorado, a transação na Polygon pode ser conferida em qualquer explorador de blocos independentemente do TrustChain. O contrato inteligente do TrustChain na rede principal da Polygon é 0x649Bc303d15E173D95B4d379e163868b03cf5Fec.
Nada disso muda o que é um carimbo de tempo. Uma impressão digital ancorada e sua data podem ser conferidas em qualquer lugar; a possibilidade de exigir o cumprimento de um acordo depende de onde as partes estão e do que combinaram, e o TrustChain não faz afirmações sobre isso.
- trustchain-verify no GitHub: um verificador aberto e de somente leitura que compara um registro público com sua transação na Polygon, sem conta nem chaves
- Como o TrustChain registra uma assinatura: o que cada entrada de auditoria registra e quem pode ou não alterá-la
Faça manualmente
Escolha uma função de hash e anote qual. Estes passos são para um arquivo cujo hash você calcula: uma impressão digital do TrustChain também abrange IDs internos de registro e de contas, então não corresponderá a um hash do texto do acordo. Para SHA-256, todo sistema operacional comum inclui uma ferramenta. Para Keccak-256, a função usada pelo TrustChain e pelas blockchains compatíveis com Ethereum, é necessário um script curto, porque a opção sha3-256 do OpenSSL e ferramentas de linha de comando semelhantes é NIST SHA-3, que usa outro preenchimento e produz resultado diferente do Keccak-256.
Calculadoras de hash on-line são convenientes, mas têm duas ressalvas. Tudo que você cola ou envia sai da sua máquina, então nunca use uma para um documento que não publicaria; uma ferramenta que funcione inteiramente no navegador é melhor, e um teste básico é desconectar da rede antes de calcular e ver se ainda funciona. Além disso, um site desconhecido pode identificar incorretamente o algoritmo; compare pelo menos um resultado com um comando local antes de confiar nele.
Depois de obter o hash, publique-o em algum lugar datado que você não controla: uma comprovação OpenTimestamps, um token de autoridade de carimbo de tempo ou uma transação em uma blockchain pública. Guarde então o arquivo original exato com uma nota do algoritmo, do hash e de onde foi publicado.
Para conferir depois, execute o mesmo comando no mesmo arquivo e compare as duas sequências de 64 caracteres; o prefixo 0x e maiúsculas ou minúsculas não importam, mas todos os demais caracteres precisam coincidir. Se forem diferentes, o arquivo mudou ou você usou outro algoritmo ou codificação; causas comuns são um PDF salvo novamente, quebras de linha convertidas ou uma quebra de linha no final. Se o hash foi ancorado na blockchain, abra a transação em um explorador de blocos, encontre o hash nos dados e compare da mesma forma.
- SHA-256 no macOS: shasum -a 256 agreement.pdf
- SHA-256 no Linux: sha256sum agreement.pdf
- SHA-256 no Windows (PowerShell): Get-FileHash agreement.pdf -Algorithm SHA256
- Keccak-256 com Python (instale pycryptodome com pip primeiro): python3 -c "from Crypto.Hash import keccak; print(keccak.new(digest_bits=256, data=open('agreement.txt','rb').read()).hexdigest())"
- Keccak-256 com Node.js (instale ethers com npm primeiro): node -e "const {ethers}=require('ethers'); console.log(ethers.keccak256(require('fs').readFileSync('agreement.txt')))"
O que as pessoas perguntam em seguida
Um carimbo de tempo comprova quem escreveu o documento?
Não. Um hash identifica bytes, não pessoas; qualquer um pode calcular o hash de um arquivo que não escreveu. O TrustChain responde a uma pergunta próxima, quem assinou: ambas as partes verificam a identidade com documento com foto e selfie antes de poder assinar, e uma conta não verificada não pode assinar, então as assinaturas do registro vêm de identidades verificadas. Isso ainda não diz quem escreveu o texto originalmente.
Quanto custa ancorar um acordo na Polygon com o TrustChain?
O plano Gratuito (US$ 0, sem cartão) inclui 1 acordo por mês; uma ancoragem adicional na Polygon custa US$ 1, em compra avulsa, e as ancoragens exigem identidade verificada. O Pro, a US$ 19 por mês, inclui 20 acordos e 20 ancoragens; o Elite, a US$ 49, inclui 100 de cada. Os planos são mensais e podem ser cancelados a qualquer momento. A ancoragem é opcional: todo acordo assinado recebe uma entrada de auditoria com data e hora que navegadores e aplicativos não podem editar, a ancoragem acrescenta a impressão digital Keccak-256, e seu próprio registro, certificado e PDF são gratuitos em todos os planos.
O texto do acordo fica armazenado na blockchain?
Não. Se você escolher ancorar, a impressão digital Keccak-256 e um ID interno de registro vão para a blockchain, com dois campos vazios de carteira; nunca o texto, nomes ou e-mails. O texto do acordo fica nos servidores do TrustChain para calcular a impressão digital e fornecer o registro, o certificado e o PDF. A conversa de negociação é criptografada de ponta a ponta, e o TrustChain não pode ler as mensagens. A impressão digital abrange IDs internos de registro e de contas, além do texto, então não pode ser recalculada apenas a partir do texto.
É possível verificar um carimbo de tempo do TrustChain sem conta?
Sim. O link público abre sem conta e mostra o status do registro e, se ele foi ancorado, sua impressão digital, nunca as identidades das partes; o título só aparece nos acordos criados no plano Elite. Se o registro foi ancorado, a transação na Polygon pode ser conferida em qualquer explorador de blocos independentemente do TrustChain. O contrato inteligente do TrustChain na rede principal da Polygon é 0x649Bc303d15E173D95B4d379e163868b03cf5Fec.
Um carimbo de tempo torna meu acordo juridicamente mais forte?
O TrustChain não afirma isso. Um carimbo de tempo mostra que o texto existia até uma data, e o registro do TrustChain acrescenta quais contas verificadas o assinaram e quando; é só isso que mostra. Uma impressão digital ancorada e sua data podem ser conferidas em qualquer lugar; a possibilidade de exigir o cumprimento de um acordo depende de onde as partes estão e do que combinaram, e o TrustChain não faz afirmações sobre isso. Se essa questão importa para você, consulte um advogado que atue onde você está.
Novas verificações de identidade estão temporariamente suspensas. Se você já fez a verificação, pode continuar assinando; caso contrário, terá de esperar a retomada. Criar rascunhos, ler, compartilhar links e consultar registros continua funcionando.
O plano Gratuito inclui 1 acordo por mês: verificação de identidade pela Sumsub para cada um de vocês, registro datado das assinaturas e um link público. Não precisa de cartão.