← All posts
Como verificar os timestamps dos seus commits Git

Como verificar os timestamps dos seus commits Git

timestamp git blockchain proof

Como Verificar os Carimbos de Data/Hora dos Seus Commits Git

Um carimbo de data/hora de commit Git é uma alegação. A verificação é a prova. No Git, as datas de commit são metadados mutáveis — git commit --date pode definir datas arbitrárias, o rebase reescreve o histórico e o force-push pode reescrever um remoto compartilhado. Se você depende de carimbos de data/hora de commit para provar estado da técnica anterior, precisa de algo mais forte do que uma string de data no seu log.

O Timestamp GIT fecha essa lacuna ancorando os hashes dos seus commits Git na blockchain do Bitcoin usando o protocolo OpenTimestamps. É um SaaS gerenciado e GitHub App: instale o app uma vez, conecte um repositório e cada commit é ancorado automaticamente todas as noites. Sem ferramentas de CLI, sem etapas manuais de protocolo.

Este artigo foca no lado da verificação: como é uma prova, como verificá-la com as ferramentas integradas do Timestamp GIT e como interpretar o resultado. Se você precisa da motivação completa sobre por que isso importa em disputas de patentes, veja Defenda Seu Software Contra Trolls de Patentes com Carimbos de Data/Hora.

Por Que a Verificação Importa para o Estado da Técnica do Seu Código

Um carimbo de data/hora só tem valor se você puder prová-lo posteriormente. Logs internos do Git geralmente falham nesse teste porque vivem em servidores que você não controla totalmente ou em bancos de dados que podem ser editados. Em uma auditoria legal ou revisão de conformidade, esses logs são frequentemente descartados como autointeressados.

O Timestamp GIT gera provas criptográficas que são ancoradas no Bitcoin. Isso muda a equação:

Como a prova envolve apenas hashes de commit, qualquer pessoa pode verificar que um determinado commit existiu em um determinado momento sem acesso ao seu código-fonte. Isso torna a verificação uma etapa prática que você pode entregar a um advogado, auditor ou oficial de conformidade.

Como é uma Prova do Timestamp GIT

Quando você conecta um repositório ao GitHub App do Timestamp GIT, o serviço não lê seu código. Ele lê apenas os hashes de commit. Todas as noites, um worker coleta os hashes pendentes em um arquivo de manifesto por repositório, constrói uma árvore de Merkle, cria provas OpenTimestamps e ancora a raiz de Merkle na blockchain do Bitcoin.

Os artefatos de prova resultantes são enviados para um branch de timestamps dedicado ou repositório sombra. Um branch de timestamps típico pode parecer conceitualmente assim:

timestamps/
└── 2026/
    └── 08/
        └── 22/
            ├── manifest.txt
            └── manifest.txt.ots

Os dois arquivos-chave são:

A prova é autocontida. Você pode baixar o arquivo .ots e verificá-lo contra a blockchain do Bitcoin usando ferramentas padrão de verificação OpenTimestamps, completamente offline e sem a infraestrutura do Timestamp GIT. O Timestamp GIT oferece o caminho amigável; a prova subjacente permanece sua.

Verificação Passo a Passo Usando as Ferramentas do Timestamp GIT

O Timestamp GIT fornece várias superfícies de verificação. Você pode usar a que melhor se adequar ao seu fluxo de trabalho.

1. Verifique a página pública de status

Para qualquer repositório conectado, navegue até:

https://timestampgit.dev/status/{user}/{repo}

Substitua {user} pelo seu usuário ou organização do GitHub e {repo} pelo nome do repositório.

A página de status mostra a longevidade da prova, a data de âncora mais antiga, a regularidade diária, dados de bloco e transação Bitcoin e um mapa de calor de calendário. A partir dela, você também pode baixar um CSV de auditoria ou um certificado PDF para uma data específica.

Para repositórios públicos, qualquer pessoa pode visitar esta página. Para repositórios privados, o acesso é restrito por um HMAC criptografado, então apenas usuários autorizados podem visualizar o status.

2. Incorpore um selo de verificação no seu README

Carimbos de data/hora em um repositório se tornam mais úteis quando seus contribuidores, clientes ou auditores podem vê-los rapidamente. O Timestamp GIT fornece selos Shields.io incorporáveis.

Primeiro, obtenha o trecho do selo a partir do endpoint autenticado:

curl https://timestampgit.dev/api/badgeLink/your-org/your-repo

A resposta inclui uma URL de selo e um trecho markdown pronto para colar:

{
  "badgeUrl": "https://img.shields.io/endpoint?url=https://timestampgit.dev/api/statusSummary/your-org/your-repo",
  "markdown": "[![timestamped](https://img.shields.io/endpoint?url=https://timestampgit.dev/api/statusSummary/your-org/your-repo)](https://timestampgit.dev/status/your-org/your-repo)"
}

Cole o markdown no seu README.md. O selo vincula à página pública de status, para que qualquer pessoa possa clicar e verificar o carimbo de data/hora mais recente.

3. Execute a página de verificação criptográfica

A página de verificação oferece uma visão passo a passo da cadeia de Merkle para um dia específico:

https://timestampgit.dev/verification/{user}/{repo}/{date}

Por exemplo, para verificar um repositório carimbado em 22 de agosto de 2026:

https://timestampgit.dev/verification/your-org/your-repo/2026-08-22

Esta página mostra a verificação da cadeia de Merkle em vários níveis. Todo o cálculo criptográfico acontece localmente no seu navegador — o Timestamp GIT não vê o que você verifica.

Se você preferir trabalhar com os dados brutos da cadeia de Merkle programaticamente, use o endpoint público de verificação:

curl https://timestampgit.dev/api/verify/your-org/your-repo/2026-08-22

4. Baixe um certificado PDF

Para reuniões, disputas legais ou arquivos de conformidade, você frequentemente precisa de um documento portátil. O Timestamp GIT pode gerar um certificado PDF para uma data específica.

Na página de status, use a opção de download. Ou chame o endpoint de relatório diretamente:

curl -o timestamp-proof-2026-08-22.pdf \
  https://timestampgit.dev/api/report/your-org/your-repo/2026-08-22

O PDF inclui os detalhes da prova para aquela data e é formatado para revisão humana.

5. Use a API pública para automação

Se você deseja integrar a verificação em verificações de CI/CD, painéis internos ou scripts de conformidade, o Timestamp GIT expõe endpoints públicos de status.

Verifique o último bloco Bitcoin ancorado:

curl https://timestampgit.dev/api/statusLast/your-org/your-repo

Verifique o número total de commits commitados e carimbados:

curl https://timestampgit.dev/api/statusCount/your-org/your-repo

Verifique um resumo combinado que pode ser consumido pelo Shields.io:

curl https://timestampgit.dev/api/statusSummary/your-org/your-repo

Uma resposta típica de statusSummary se parece com isto:

{
  "schemaVersion": 1,
  "label": "timestamped",
  "message": "42 commits",
  "color": "brightgreen"
}

Interpretando Resultados de Verificação e Casos Limite

Uma verificação bem-sucedida significa que a seguinte cadeia se manteve:

  1. Seu hash de commit foi incluído no manifesto diário do repositório.
  2. O manifesto foi incluído em uma árvore de Merkle.
  3. A raiz de Merkle foi ancorada em uma transação Bitcoin.
  4. Essa transação foi confirmada em um bloco Bitcoin.

Em linguagem simples: o hash do commit existia antes do horário do bloco Bitcoin. Esse horário de bloco se torna o limite superior para sua alegação de estado da técnica anterior.

Provas pendentes e atraso de confirmação

O Timestamp GIT agrupa commits todas as noites. Depois que o lote é criado, a rede Bitcoin deve confirmar a transação de âncora. Isso normalmente leva algumas horas. Um commit feito hoje pode não aparecer como totalmente verificado até o dia seguinte.

A página de status é sua amiga aqui: ela mostra a data de âncora mais antiga e a regularidade diária, para que você possa ver se um repositório está dentro do cronograma ou se um dia específico ainda está pendente.

Repositórios privados e acesso HMAC

Links de verificação para repositórios privados incluem um HMAC criptografado. Este HMAC é específico da instância do servidor Timestamp GIT e impede que usuários não autorizados visualizem informações privadas de status.

O próprio GitHub App requer permissões apropriadas para acessar repositórios privados. Sem essas permissões, o Timestamp GIT não pode ler o hash do commit em primeiro lugar.

Independência do Timestamp GIT

Os arquivos de recibo .ots não estão vinculados aos servidores do Timestamp GIT. São provas construídas sobre o protocolo OpenTimestamps e ancoradas no Bitcoin. Mesmo que o Timestamp GIT desapareça, você ainda pode verificar os recibos usando ferramentas padrão OpenTimestamps contra a blockchain do Bitcoin.

Para um livro-razão completo de todos os carimbos de data/hora de um repositório, baixe o CSV de auditoria:

curl -o audit-ledger.csv https://timestampgit.dev/api/audit/your-org/your-repo

Este CSV é útil para descoberta legal, auditorias internas ou para demonstrar um histórico contínuo de carimbos de data/hora.

FAQ

Posso verificar um carimbo de data/hora de commit Git sem instalar nenhum software?

Sim. O Timestamp GIT fornece uma página de verificação baseada na web onde todas as verificações criptográficas são executadas localmente no seu navegador. Você também pode usar a página pública de status ou o selo incorporável para visualizar o status de verificação sem nenhuma instalação.

E se o Timestamp GIT sair do mercado? Ainda posso verificar meus carimbos de data/hora?

Absolutamente. As provas são baseadas no protocolo OpenTimestamps e ancoradas na blockchain do Bitcoin. Você pode baixar o arquivo de recibo .ots e verificá-lo usando ferramentas padrão OpenTimestamps contra a blockchain do Bitcoin, independentemente do Timestamp GIT.

Quanto tempo leva para um commit ser verificável?

O Timestamp GIT agrupa commits diariamente e os ancora na blockchain do Bitcoin. A confirmação normalmente leva algumas horas após o processamento do lote diário. A página de status mostra a data de âncora mais antiga e a regularidade diária.

Posso verificar carimbos de data/hora para repositórios privados?

Sim, mas o acesso é restrito. Links de verificação para repositórios privados incluem um HMAC criptografado, então apenas usuários autorizados podem visualizar o status. O GitHub App requer permissões apropriadas para acessar repositórios privados.

O que acontece se eu remover o GitHub App?

Os recibos .ots e manifestos já gerados permanecem no seu repositório e ainda podem ser verificados independentemente. Novos commits não serão carimbados automaticamente até que você reinstale o GitHub App.

Conclusão: Confie, mas Verifique

A verificação é onde um carimbo de data/hora se torna uma prova. O Timestamp GIT remove o fardo operacional de criar essas provas, ao mesmo tempo que oferece maneiras simples e amigáveis para desenvolvedores verificá-las: uma página pública de status, selos de README, um visualizador de cadeia de Merkle baseado em navegador, certificados PDF, CSVs de auditoria e APIs públicas.

Você não precisa aprender comandos brutos do OpenTimestamps, executar um nó Bitcoin ou gerenciar recibos manualmente. O GitHub App cuida do pipeline; as páginas de verificação cuidam do resto. Mas como a prova subjacente é padrão e ancorada no Bitcoin, você nunca fica preso.

Se você ainda não começou a carimbar, o caminho mais rápido é instalar o GitHub App do Timestamp GIT, conectar um repositório e observar a primeira âncora noturna aparecer. Se você precisa de uma configuração air-gapped ou auto-hospedada, o Timestamp GIT também está disponível como uma imagem Docker com uma licença demo limitada por tempo.

Comece em https://timestampgit.dev.

Posts relacionados

EU label: AI-generated content