Dois arquivos com os mesmos registros podem ter resumos digitais diferentes. O hash descreve os bytes recebidos, enquanto a comparação de registros depende de uma interpretação declarada do formato. Confundir esses níveis pode transformar uma conversão documentada em falsa divergência monetária.
O laboratório fictício contém três arquivos. A origem está em UTF8 sem marcador inicial e usa dois caracteres para encerrar cada linha. A cópia convertida usa UTF8 com marcador inicial e um caractere de fim de linha. A terceira cópia segue o formato convertido, mas altera um valor. Os arquivos são preservados separadamente.
Mesmos registros, bytes diferentes
A origem contém A de R$ 100 e B de R$ 200. A cópia convertida conserva exatamente esses identificadores e valores. O arquivo alterado contém A de R$ 100 e B de R$ 201. Os nomes das colunas e o delimitador ponto e vírgula são conhecidos.
| Arquivo | Total dos registros em reais | Igualdade de registros com a origem | Igualdade de hash com a origem |
|---|---|---|---|
| Origem | 300 | Sim | Sim |
| Conversão documentada | 300 | Sim | Não |
| Cópia com alteração monetária | 301 | Não | Não |
O programa calcula SHA256 diretamente sobre cada arquivo. Os três resumos são diferentes. Em seguida, lê o texto com tratamento explícito do marcador UTF8 e interpreta o CSV com as convenções fornecidas. A primeira comparação verifica bytes; a segunda verifica nomes de campos e registros completos, não apenas a soma.
O que cada resultado permite concluir
O hash diferente informa que os arquivos não têm os mesmos bytes. Neste exemplo, a comparação estruturada mostra que a conversão conservou os dois registros, enquanto a terceira cópia mudou B em R$ 1. Isso não autoriza afirmar que qualquer diferença de hash é somente de formatação.
O teste não remove espaços, acentos ou zeros dos identificadores, nem tenta adivinhar uma codificação desconhecida. Seu alcance é limitado aos arquivos e ao formato declarado. Igualdade de registros interpretados também não prova autoria, autenticidade documental ou verdade econômica dos valores.
O pacote preserva as três versões e os controles esperados, além do verificador e manifesto. As fontes técnicas são as documentações de hashlib e codecs. O perito contábil deve manter a ligação entre original, transformação e memória utilizada, sem substituir a origem por uma versão normalizada.
