Construção de Modelo de Bloco
Como mineradores montam blocos candidatos, selecionam transações e preparam cabeçalhos de bloco para hashing de prova de trabalho.
Definição
Construção de modelo de bloco é o processo de montar um bloco candidato antes que o hardware de mineração comece a fazer hashing. Ela decide quais transações entram, para onde a recompensa é paga e quais dados de cabeçalho os mineradores resolvem com prova de trabalho.
O modelo é um rascunho de bloco. Se um minerador encontrar um hash válido para ele, o rascunho pode ser transmitido como um bloco real.
Como Funciona
Um minerador, pool de mineração ou nó completo começa pelo bloco válido mais recente que conhece. O novo modelo aponta para esse bloco, então o hash do bloco anterior passa a fazer parte do cabeçalho do bloco.
Em seguida, quem constrói o bloco seleciona transações da mempool, onde transações válidas ainda não confirmadas aguardam. A maioria prefere taxas por byte mais altas, ou seja, mais taxa paga pelo espaço de bloco usado. O construtor também respeita dependências: se uma transação gasta outra, a transação-mãe geralmente vem primeiro.
O modelo precisa seguir as regras de consenso. No Bitcoin, isso significa permanecer dentro dos limites de peso do bloco, limites de operações de assinatura e outras regras de validação. Um bloco que viole essas regras será rejeitado, mesmo que sua prova de trabalho seja válida.
O construtor também cria a transação coinbase, a primeira transação especial que paga o subsídio e as taxas ao minerador ou à pool. Depois que as transações são escolhidas, seus hashes formam uma raiz de Merkle, que resume o conjunto de transações dentro do cabeçalho.
Os dispositivos de mineração então variam campos como o nonce e os dados da coinbase enquanto procuram um hash de cabeçalho abaixo do alvo de dificuldade atual.
Por Que Isso Importa
A construção de modelo de bloco afeta a receita porque a seleção de transações determina as taxas do bloco. Um modelo ruim pode deixar para trás transações com taxas altas ou incluir uma transação que torna o bloco inválido.
Ela também afeta a eficiência. Quando um novo bloco aparece, os mineradores precisam de um modelo novo que seja construído sobre a nova ponta da cadeia. Fazer hashing sobre um modelo antigo gera trabalho obsoleto.
O controle do modelo também importa para a descentralização. Se apenas grandes pools constroem modelos, elas ganham mais influência sobre a ordenação e a inclusão de transações. Sistemas como Stratum tentam equilibrar a coordenação da pool com a escolha do minerador.