O que há nos 80 bytes?
| Campo | Tamanho | Para que serve |
|---|---|---|
| Versão | 4 bytes | Quais regras o bloco segue |
| Hash do bloco anterior | 32 bytes | Vincula este bloco ao anterior |
| Raiz de Merkle | 32 bytes | Um hash que abrange todas as transações |
| Horário | 4 bytes | Quando o minerador informa que montou o bloco |
| Bits (alvo) | 4 bytes | O quão baixo precisa ser o hash do bloco |
| Nonce | 4 bytes | O número que os mineradores continuam mudando |
Por que os mineradores calculam o hash só do cabeçalho?
Porque ele representa o bloco inteiro. A raiz de Merkle vincula todas as transações, então qualquer mudança em um pagamento altera o cabeçalho. O hash do bloco anterior vincula todo o histórico, então editar um bloco antigo invalida todos os cabeçalhos posteriores.
E 80 bytes são rápidos de calcular. Os mineradores aplicam SHA-256 duas vezes, comparam o resultado com o alvo, mudam o nonce e tentam de novo, trilhões de vezes por segundo.
Mas quão pequeno é isso, na prática?
A blockchain tem cerca de 969.006 blocos (em tempo real), então todos os cabeçalhos desde 2009 somam cerca de 78 MB. Por isso, carteiras leves podem baixar todos os cabeçalhos, verificar a prova de trabalho de cada um e ainda caber em um celular. Os blocos completos correspondentes ocupam centenas de gigabytes.
Fontes
- Algoritmo de hash do bloco · Bitcoin Wiki
- Referência sobre blockchain: cabeçalhos, árvores de Merkle, alvo · Documentação para desenvolvedores do Bitcoin
- Bitcoin: A Peer-to-Peer Electronic Cash System · Satoshi Nakamoto, 2008
Os dados em tempo real desta página vêm da API da CloudMineCrypto e de dados públicos da blockchain, são atualizados regularmente e identificados onde aparecem. Apenas para fins educativos, não são aconselhamento financeiro.