imutabilidade

Registros verificáveis

Todos os resultados publicados são ancorados criptograficamente e verificáveis por qualquer um. Inclusive contra nós.

as três âncoras

1. A corrente de hash

Cada registro publicado carrega o sha256 do anterior, calculado sobre o JSON canônico (chaves em ordem alfabética, sem espaço). Alterar qualquer registro antigo muda o hash dele, que quebra o elo seguinte, que quebra o próximo — até o topo. Não dá para consertar um elo sem reescrever todos os que vieram depois.

2. O histórico do git

A corrente vive em records/ no repositório público. Reescrever a história de um repo com forks e clones é ruidoso de um jeito que não passa despercebido.

3. OpenTimestamps

Periodicamente o hash do topo é carimbado fora do nosso controle, ancorado na rede Bitcoin. É de graça e prova uma coisa específica: que aquele hash já existia naquela data. Blockchain de verdade é upgrade opcional futuro, nunca pré-requisito — os dados já encadeados tornam a migração trivial.

O que a corrente NÃO prova. Ela não prova que o número está certo. Prova que o número não foi editado depois de publicado. Para o número estar certo existem outras coisas: juiz cego, juiz versionado, grupo de controle, e o dado cru publicado junto para você conferir por conta própria.

Últimos elos

A corrente ainda não tem elo publicado.O primeiro registro vai ser o resultado do Batuta Zero — 5 tarefas, 4 modelos, 2 braços, 40 rodadas, com o cru junto.

verificar você mesmo

git clone https://github.com/filipecrocks/batuta
cd batuta
node script/chain.mjs verify

O comando percorre a corrente inteira e diz exatamente onde ela quebra, se quebrar. Não precisa confiar na nossa palavra, e é esse o ponto.