Lendo uma blockchain com exploradores públicos · Aula 2 de 8
Blocos, altura do bloco e a cadeia
6 min de leitura
O que é um bloco
Um bloco é um conjunto de transações que a rede aceita em conjunto, além de um pequeno resumo chamado cabeçalho do bloco. Novos blocos são adicionados um após o outro, e cada bloco aponta para o bloco anterior. Essa sequência é a “cadeia” em blockchain.
Quando você abre a página de um bloco em um explorador, vê duas partes:
- O cabeçalho: alguns campos que identificam o bloco e o conectam ao restante da cadeia.
- A lista de transações: todas as transações contidas no bloco, geralmente paginadas porque um único bloco pode conter milhares delas.
Altura do bloco e hash do bloco
Cada bloco tem dois identificadores, e os exploradores aceitam ambos no campo de busca.
Altura do bloco é a posição do bloco na cadeia. O primeiro bloco de todos, chamado bloco gênese, tem altura 0. O próximo bloco tem altura 1, e assim por diante. A altura é fácil de usar: “a transação foi confirmada no bloco 840.000” é claro e fácil de lembrar. No Bitcoin, o bloco 840.000 é aquele em que ocorreu o quarto halving, em abril de 2024.
Hash do bloco é a impressão digital do bloco: uma longa sequência hexadecimal calculada a partir do cabeçalho. Se qualquer coisa no cabeçalho mudar, o hash muda completamente. O bloco gênese do Bitcoin, minerado em 3 de janeiro de 2009, tem o hash 000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f. Os zeros à esquerda não são decoração: no Bitcoin, um hash de bloco válido deve ser inferior a um número-alvo, e isso é o que a prova de trabalho significa na prática.
Altura e hash respondem a perguntas diferentes. A altura informa onde um bloco está. O hash informa qual bloco exato você quer dizer. Essa diferença importa quando dois blocos competem brevemente pela mesma altura, algo que você verá novamente na lição sobre confirmações.
Como os blocos se conectam
Cada cabeçalho contém o hash do bloco anterior. O bloco 101 registra o hash do bloco 100, o bloco 102 registra o hash do bloco 101, e assim por diante, até chegar ao bloco gênese.
Essa conexão torna o histórico evidente contra adulterações. Se alguém alterasse uma transação em um bloco antigo, o hash desse bloco mudaria, o bloco seguinte deixaria de apontar para ele e todos os nós rejeitariam a versão alterada. Os exploradores permitem que você siga a conexão por conta própria: a maioria das páginas de blocos tem botões de “bloco anterior” e “próximo bloco”.
Campos que você verá na página de um bloco
Os exploradores usam rótulos um pouco diferentes, mas as mesmas ideias aparecem em todos eles. Alguns desses campos são armazenados no próprio cabeçalho (hash anterior, carimbo de data e hora, raiz de Merkle); outros, como altura, produtor e tamanho, são calculados pelo explorador.
| Campo | O que significa | Bitcoin | Ethereum |
|---|---|---|---|
| Altura / número do bloco | Posição na cadeia | Sim | Sim (“bloco”) |
| Hash | A impressão digital do bloco | Sim | Sim |
| Hash anterior (pai) | Conexão com o bloco anterior | Sim | Sim (“hash do pai”) |
| Carimbo de data e hora | Horário registrado pelo produtor do bloco | Sim | Sim |
| Raiz de Merkle / raiz de estado | Um único hash que resume o conteúdo do bloco | Raiz de Merkle das transações | Raízes das transações, dos recibos e do estado |
| Dificuldade / nonce | Campos de prova de trabalho | Sim (“bits”, “nonce”) | Não é usado desde 2022 |
| Produtor | Quem criou o bloco | Minerador ou pool de mineração | Validador (proponente) e destinatário das taxas |
| Tamanho / uso | O quanto o bloco está cheio | Tamanho e peso | Gás utilizado e limite de gás |
Você não precisa memorizar todos os campos. Concentre-se na altura, no hash, no hash anterior, no carimbo de data e hora, no produtor e no quanto o bloco está cheio.
Tempo de bloco: com que frequência os blocos são produzidos
Redes diferentes produzem blocos em velocidades diferentes:
- Bitcoin busca uma média de um bloco a cada 10 minutos. O intervalo real varia bastante, de segundos a mais de uma hora, porque encontrar um bloco válido depende do acaso. A cada 2.016 blocos (cerca de duas semanas), a rede ajusta a dificuldade de mineração para manter a média próxima de 10 minutos.
- Ethereum usa prova de participação desde setembro de 2022. O tempo é dividido em slots de 12 segundos, e um validador é escolhido para propor um bloco em cada slot. Se esse validador estiver offline, o slot fica vazio e o explorador o mostra como perdido.
Outras redes são ainda mais rápidas. Por isso, “quanto tempo até meu pagamento aparecer” depende muito da rede.
Os carimbos de data e hora são aproximados
O carimbo de data e hora no cabeçalho de um bloco é definido por quem produziu o bloco. As regras permitem alguma flexibilidade. No Bitcoin, por exemplo, o carimbo de data e hora de um bloco só precisa ser posterior à mediana dos 11 blocos anteriores e não pode estar mais de duas horas à frente do relógio do nó que o verifica. Portanto, os carimbos de data e hora são confiáveis com precisão de minutos ou horas, não de segundos, e um bloco posterior pode ocasionalmente mostrar um horário anterior ao do bloco precedente.
Os exploradores também podem exibir o horário em UTC ou no seu fuso horário local. Ao registrar evidências, indique qual deles está usando.
Quem produziu o bloco e o que recebeu
No Bitcoin, a primeira transação de cada bloco é a transação coinbase. Ela não tem uma entrada real: cria novos bitcoins (o subsídio do bloco) e recebe as taxas pagas por todas as outras transações do bloco, enviando ambos ao minerador. O subsídio cai pela metade a cada 210.000 blocos. Começou em 50 BTC em 2009 e é de 3,125 BTC desde o halving de abril de 2024. Os exploradores costumam mostrar o nome do pool de mineração, obtido de uma etiqueta que o pool insere na transação coinbase ou do endereço para o qual ele envia os fundos.
No Ethereum, a página do bloco mostra o destinatário das taxas indicado no bloco. Uma parte da taxa de cada transação, a taxa-base, é queimada (destruída), e somente a taxa de prioridade vai para o destinatário das taxas. Muitos blocos do Ethereum são montados por construtores de blocos especializados e, depois, propostos por um validador. Por isso, o destinatário das taxas que você vê costuma ser um construtor, e não o validador; o construtor paga o validador separadamente. Você verá como as taxas funcionam em uma lição posterior.
Até que ponto o bloco está cheio?
Os blocos têm espaço limitado, e os exploradores mostram quanto dele foi usado:
- No Bitcoin, um bloco pode conter até 4 milhões de unidades de peso, que os exploradores costumam expressar como tamanho em megabytes e peso ou “tamanho virtual”.
- No Ethereum, cada bloco tem um limite de gás. Os exploradores mostram o gás utilizado em relação a esse limite, muitas vezes como uma porcentagem. A rede busca manter os blocos aproximadamente pela metade e aumenta ou reduz a taxa-base dependendo de os blocos estarem acima ou abaixo dessa meta.
Quando os blocos ficam cheios de forma constante, a competição por espaço aumenta e as taxas sobem. Uma consulta rápida aos blocos recentes em um explorador informa bastante sobre o nível de atividade da rede.
Foco no exame: a diferença entre altura do bloco (posição, bloco gênese = 0) e hash do bloco (impressão digital), como o hash do bloco anterior conecta a cadeia e evidencia adulterações, os tempos típicos de bloco (cerca de 10 minutos no Bitcoin, slots de 12 segundos no Ethereum), por que os carimbos de data e hora são aproximados e o que são a transação coinbase e o subsídio do bloco.
Questões de prática
Verifique o que você aprendeu. Estas questões não contam para o exame.
Entre para salvar seu progresso e continuar de onde parou. É grátis. Entrar