Uma função de hash aceita quaisquer dados, uma palavra ou um bloco inteiro, e retorna um resultado curto de tamanho fixo. O Bitcoin usa SHA-256, cujo resultado é de 256 bits, geralmente escrito como 64 caracteres hexadecimais.
Quatro propriedades importantes
- Mesma entrada, mesma saída: qualquer pessoa pode recalcular e verificar.
- Mude um caractere e o resultado muda completamente.
- Unidirecional: não é possível reverter do hash para os dados.
- Nenhuma maneira conhecida de encontrar duas entradas diferentes com o mesmo hash.
Essas propriedades transformam um hash em uma impressão digital. Se o hash de um bloco corresponder, o bloco é exatamente o esperado, até o último bit. Se algo foi alterado, a impressão digital não se encaixa mais.
Onde o Bitcoin o utiliza
Os hashes de bloco encadeiam os blocos. Os IDs de transação são hashes das transações. Os endereços são construídos a partir de hashes de chaves públicas. A mineração em si é uma busca por um hash de bloco abaixo de um alvo. O Bitcoin geralmente aplica hash duas vezes seguidas, SHA-256 de SHA-256, como uma margem de segurança extra.
▶ VEJA NA MÁQUINAHASH DO BLOCO, a prensa, é onde a impressão digital do bloco é cunhada assim que o minerador a encontra.