Timestamp GIT Secure your prior art without exposing code

← Todos os artigos

2026-09-21

Como Provar Autoria de Software: Um Guia para Desenvolvedores

Como Provar Autoria de Software: Um Guia para Desenvolvedores
timestamp git blockchain proof

Como Provar Autoria de Software: Um Guia para Desenvolvedores

Maya é uma desenvolvedora freelancer que criou uma biblioteca de sincronização de dados pequena, mas crítica, para um cliente no início de 2025. Dezoito meses depois, a nova equipe de engenharia do cliente alega que a biblioteca foi criada sob um contrato posterior e pede que ela pare de usá-la em seus outros projetos. Maya tem commits do Git do projeto original, mas quando ela envia capturas de tela do log, o advogado do cliente as descarta: “O histórico do Git pode ser reescrito. Esses timestamps não provam nada.”

O problema de Maya não é a falta de evidências. É que as evidências que ela tem são assertivas, não verificáveis. Provar autoria de software em uma disputa, um pedido de patente, uma auditoria de conformidade ou uma revisão de segredo comercial exige mais do que uma data de commit. Exige um registro criptográfico que uma parte independente possa verificar sem confiar no seu repositório, na sua plataforma ou na sua palavra.

Este guia explica como desenvolvedores e responsáveis por conformidade podem criar esse registro na prática. Ele se concentra no Timestamp GIT, um serviço gerenciado que automatiza o protocolo OpenTimestamps subjacente. Você instala um GitHub App uma vez, e o serviço ancora os hashes dos seus commits na blockchain do Bitcoin em segundo plano.

Por Que a Prova Tradicional de Autoria Fica Aquém

A maioria dos desenvolvedores já tem várias maneiras de apontar para uma data. O problema é que nenhuma delas resiste a um escrutínio real.

O histórico Git auto-hospedado é mutável. As datas de commit do Git não são à prova de adulteração. Com variáveis de ambiente como GIT_AUTHOR_DATE e GIT_COMMITTER_DATE, um commit pode ser retrodatado. Rebasing, force-push e reescrita de histórico podem alterar a linha do tempo aparente. Mesmo que você nunca faça isso, a parte contrária pode argumentar que você poderia ter feito.

Plataformas Git hospedadas não resolvem isso. Um repositório do GitHub mostra timestamps, mas esses timestamps não são uma prova independente de existência. Eles dependem dos servidores do GitHub, da segurança da conta do GitHub e da disposição ou capacidade do GitHub de atestar os dados em tribunal. Um invasor que comprometa uma conta pode potencialmente alterar o conteúdo do repositório. Uma mudança na política da plataforma pode dificultar a obtenção de registros históricos.

A proteção formal de PI é cara e lenta. Patentes podem custar dezenas de milhares de dólares, levar anos para serem emitidas e podem exigir a divulgação de informações que você preferiria manter privadas. Para freelancers, startups, agências e equipes pequenas, patentes são frequentemente impraticáveis como primeira linha de defesa.

Uma abordagem mais forte é ancorar uma impressão digital criptográfica do seu trabalho em um livro-razão público imutável. A impressão digital é um hash unidirecional. Ela prova que um estado específico do repositório existiu em um momento específico, mas não revela o código-fonte por trás desse estado. Quando o livro-razão é o Bitcoin, a prova pode ser verificada independentemente por qualquer pessoa com o arquivo de recibo e um nó Bitcoin.

Para uma explicação mais aprofundada de por que isso importa para disputas de PI, veja O Que É Prior Art Criptográfica e Por Que Ela Importa para Software?.

Um Guia Prático para Provar Autoria com o Timestamp GIT

O Timestamp GIT é uma camada gerenciada e sem configuração sobre o OpenTimestamps. Você não precisa executar comandos do OpenTimestamps, gerenciar transações de Bitcoin ou operar sua própria infraestrutura de timestamping. Você instala um GitHub App, conecta um repositório e continua escrevendo código. O serviço cuida do resto.

Passo 1: Instale o GitHub App do Timestamp GIT

Instale o GitHub App do Timestamp GIT no repositório ou organização que você deseja proteger.

O modo padrão requer acesso somente leitura ao seu repositório de origem e acesso de leitura/gravação a um repositório de destino onde os arquivos de prova serão armazenados. O destino pode ser o mesmo repositório ou um repositório sombra separado. Como o GitHub não oferece acesso somente leitura apenas ao hash do commit, a permissão de leitura existe mesmo que o Timestamp GIT leia apenas o hash do commit HEAD.

Para o modo empresarial de conhecimento zero, você não concede acesso de leitura ao repositório de origem. Em vez disso, um GitHub Action é executado na sua infraestrutura e envia apenas o hash do commit para a API do Timestamp GIT.

Não há nada para instalar nas suas máquinas de desenvolvimento. Seu fluxo de trabalho Git local permanece o mesmo.

Passo 2: Continue Fazendo Commits de Código Normalmente

Uma vez que o App está instalado, webhooks notificam o Timestamp GIT sempre que um novo commit aparece. No modo empresarial de conhecimento zero, seu GitHub Action envia o hash em vez disso.

Seu fluxo de trabalho normal se parece com isto:

git add src/
git commit -m "Implement rate limiter v2"
git push origin main

Nenhum comando extra de carimbo é necessário. O próprio commit é o gatilho.

Passo 3: Deixe o Lote Noturno Ancorar Seus Hashes

O Timestamp GIT não ancora cada commit individualmente. Ele agrupa o trabalho por eficiência, preservando um caminho verificável para cada hash de commit.

A cada dia, o sistema:

  1. Detecta novos commits por meio de webhooks ou do GitHub Action.
  2. Enfileira os hashes dos commits em um armazenamento chave-valor em memória.
  3. Agrupa os hashes pendentes em arquivos de manifesto por repositório em um worker agendado.
  4. Constrói uma árvore de Merkle a partir do lote diário.
  5. Cria provas OpenTimestamps usando calendários OTS públicos.
  6. Ancora a raiz de Merkle na blockchain do Bitcoin.

A confirmação do Bitcoin normalmente leva cerca de três horas, então os arquivos de prova aparecem algumas horas após o lote noturno.

Passo 4: Receba Seus Arquivos de Prova

Após a âncora ser confirmada, o Timestamp GIT envia o material de prova para o branch de timestamps dedicado ou repositório sombra que você configurou.

A prova inclui:

  • Arquivos de manifesto que registram quais hashes de commit foram incluídos.
  • Arquivos de recibo .ots que contêm os dados de prova do OpenTimestamps.

Você pode inspecionar o que chegou no branch de prova:

git fetch origin timestamps
git ls-tree -r --name-only origin/timestamps | tail

Você também pode incorporar um selo de verificação no seu README por meio do endpoint autenticado de selo. O selo exibe o status verificado atual e vincula à página pública de status do seu repositório.

Passo 5: Verifique a Qualquer Momento — Mesmo Sem o Timestamp GIT

A verificação está disponível por meio das páginas públicas do produto. A página de verificação criptográfica percorre os dados da cadeia de Merkle localmente no seu navegador, então o serviço não vê o que você está verificando.

Você também pode baixar o arquivo .ots e verificá-lo independentemente usando ferramentas padrão do OpenTimestamps contra a blockchain do Bitcoin. Como a prova depende apenas de SHA-256 e dados de blocos do Bitcoin, a verificação não exige que o Timestamp GIT permaneça online.

Uma verificação rápida de status pode ser feita por meio da API pública:

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

Para um livro-razão completo, você pode baixar um CSV de auditoria. Para um dia específico, você pode baixar um certificado em PDF.

Implantações Auto-Hospedadas e Empresariais

Se você precisa de isolamento máximo ou opera em um ambiente air-gapped, o Timestamp GIT está disponível como uma imagem Docker com uma licença auto-hospedada. Uma pilha Compose mínima se parece com isto:

services:
  timestampgit:
    image: rue1401/timestampgit:prod
    ports:
      - "8080:8080"
    volumes:
      - ./data:/app/data
    restart: unless-stopped
  valkey:
    image: valkey/valkey:8
    restart: unless-stopped

Em seguida, inicie com:

docker compose pull
docker compose up -d
docker compose logs -f timestampgit

No primeiro lançamento, um assistente de configuração o guia pela conexão do seu GitHub App e configuração da instância. Uma licença demo por tempo limitado está disponível para avaliação.

O modo empresarial de conhecimento zero usa um GitHub Action que é executado na sua própria infraestrutura. Ele envia apenas o hash do commit para a API do Timestamp GIT, então seu código-fonte nunca sai do seu ambiente.

O Que Evitar ao Provar Autoria de Software

Não confie apenas em logs internos ou timestamps de controle de versão. Eles não são à prova de adulteração. Um tribunal ou auditor pode descartá-los como autointeressados, mesmo que sejam precisos.

Não revele seu código-fonte no processo de prova. Um timestamp deve provar que o código existiu, não publicar o que ele faz. Use um método de conhecimento zero que ancore apenas um hash unidirecional. Isso protege segredos comerciais e evita divulgação acidental.

Não use serviços de timestamping proprietários que possam desaparecer ou alterar registros. Se a prova depende de um sistema fechado, você volta a confiar em um intermediário. Padrões abertos como SHA-256, OpenTimestamps e Bitcoin são verificáveis sem o fornecedor.

Não espere até que uma disputa surja. Comece a fazer timestamping cedo e com frequência. Uma cadeia contínua de commits ancorados mostra um padrão de trabalho contínuo, não uma tentativa de última hora de fabricar evidências.

A abordagem manual do OpenTimestamps exigiria operar o protocolo você mesmo. O Timestamp GIT existe para ocultar essa complexidade atrás de um GitHub App e um pipeline noturno automatizado.

FAQ

O que é exatamente prova criptográfica de autoria de software?

Prova criptográfica de autoria de software é um método de provar que uma versão específica do seu código existiu em um determinado ponto no tempo, sem revelar o próprio código. Ela funciona criando um hash único, ou impressão digital, do código e ancorando esse hash em um livro-razão público imutável como a blockchain do Bitcoin. Qualquer pessoa pode verificar posteriormente que o hash existiu naquele momento, fornecendo evidência de autoria à prova de adulteração.

Como o Timestamp GIT prova autoria sem ver meu código?

O Timestamp GIT usa uma abordagem de conhecimento zero. Ele lê apenas o hash do commit, que é uma impressão digital criptográfica, nunca o código-fonte real. O hash é incluído em uma árvore de Merkle e ancorado no Bitcoin por meio do protocolo OpenTimestamps. Como o hash é unidirecional, ninguém pode revertê-lo para ver seu código, mas o timestamp prova que o código existiu naquele momento.

Posso verificar o timestamp eu mesmo se o Timestamp GIT desaparecer?

Sim. A prova é baseada inteiramente em padrões abertos: SHA-256, Bitcoin e OpenTimestamps. Você recebe arquivos de recibo .ots que podem ser verificados independentemente usando ferramentas padrão do OpenTimestamps contra a blockchain do Bitcoin. Nenhuma tecnologia ou serviço proprietário é necessário para a verificação, então sua prova permanece válida mesmo que o Timestamp GIT deixe de existir.

Isso é legalmente reconhecido?

Timestamps criptográficos ancorados em blockchains públicas são cada vez mais reconhecidos como evidência forte em processos legais. Eles fornecem um registro de existência em um momento específico que é à prova de adulteração e matematicamente verificável. O reconhecimento legal varia por jurisdição, mas tais provas são muito mais robustas do que logs internos ou timestamps de e-mail. Elas podem ser apresentadas a tribunais, auditores ou partes contrárias para estabelecer prior art ou autoria.

Quanto custa o Timestamp GIT?

Repositórios públicos são suportados em um plano gratuito. Repositórios privados estão disponíveis com o plano Pro Agency por US$ 49 por mês. O modo empresarial de conhecimento zero, que usa GitHub Actions, está disponível por US$ 199 por mês. Uma licença demo por tempo limitado também está disponível para a avaliação auto-hospedada com Docker.

Conclusão: Torne a Prova de Autoria Parte do Seu Fluxo de Trabalho

Provar autoria de software não precisa complicar seu processo de desenvolvimento. O Timestamp GIT transforma seus commits Git existentes em recibos ancorados no Bitcoin automaticamente. O fluxo de trabalho é de conhecimento zero, o que significa que seu código-fonte permanece privado. A prova é independente de fornecedor, o que significa que permanece verificável mesmo que o serviço desapareça.

Instale o Timestamp GIT GitHub App, conecte um repositório e deixe a ancoragem noturna rodar em segundo plano. Repositórios públicos podem começar gratuitamente, enquanto repositórios privados são cobertos pelos planos Pro e Enterprise. Uma vez que a primeira confirmação do Bitcoin chegar, você terá uma resposta criptográfica para a pergunta: “Você pode provar que escreveu isso primeiro?”

Posts relacionados

EU label: AI-generated content