Ir para o conteúdo

Mineração de Bitcoin: templates de bloco, prova de trabalho, pools e economia

A mineração de Bitcoin constrói blocos candidatos e explora cabeçalhos SHA-256d para achar prova de trabalho abaixo do alvo da rede. Separe identidade do template, validade de transações e coinbase, busca nonce e extranonce, validação de nós, propagação, blocos obsoletos, shares do pool, pagamentos, dificuldade, energia e economia.

Atualizado

Análise educacional de protocolo e mineração; não constitui aconselhamento de investimento nem operacional. Os resultados são aleatórios e dependem de regras, dificuldade, taxas, termos do pool, disponibilidade, hardware, energia, financiamento, impostos e preços; receita ou participação de hash projetada não garante blocos, pagamentos nem lucro.

Resposta direta

A mineração de Bitcoin constrói blocos candidatos válidos e calcula repetidamente seus cabeçalhos de 80 bytes com SHA-256d até encontrar resultado numérico igual ou inferior ao alvo de consenso. O minerador vencedor apenas propõe o bloco. Não pode validar transação inválida, decidir fatos externos nem controlar moedas alheias: cada nó completo verifica separadamente prova, cabeçalho, transações, scripts, saídas gastas, limites e valor coinbase permitido.

Um nó de mineração ou pool obtém candidatos por interfaces como getblocktemplate. Campos relevantes incluem version, previousblockhash, transactions, coinbasevalue, target, bits, height, weightlimit e sigoplimit. O template é ponto inicial escolhido por política; não promete incluir cada transação nem aceitar bloco modificado. Validade de consenso, política de mempool, seleção de taxas e regras do pool são camadas distintas.

O hardware busca variações de cabeçalho. Ao esgotar o nonce de 32 bits, o software altera o extranonce coinbase, reconstrói a raiz de Merkle e pode atualizar hora ou versão permitidas para criar novo espaço. Cada hash é tentativa independente. Mais taxa compatível aumenta a frequência esperada, mas não agenda bloco nem garante encontrá-lo no prazo.

Mineração solo recebe toda saída coinbase permitida, mas tem alta variância. Pool agrega trabalho e usa alvos de share mais fáceis; somente share que também atinge o alvo de rede pode virar bloco. Pool reduz variância, não aumenta emissão esperada. Custódia, controle de template, validação de shares e obrigações PPS, PPLNS ou outras acrescentam risco de contraparte e concentração.

Como analisar mineração

  1. Fixe identidade e autoridade. Registre chain, network, client version, regras, bestblockhash, provedor do template, endpoint do pool, beneficiário e horário. Separe nó, construtor, operador, firmware, instalação e dono do equipamento.
  2. Reproduza a seleção candidata. Capture mempool e UTXO set; verifique validade, dependências, taxas, peso, operações de assinatura, locktime e compromissos witness. Reconstrua o candidato e explique a política; taxa de transação não é consenso.
  3. Concilie coinbase e cabeçalho. Verifique subsídio por altura, taxas incluídas, saídas, compromissos, hash anterior e árvore de Merkle. Acompanhe nonce, extranonce coinbase, Merkle root, time e version bits; rejeite templates fora dos limites.
  4. Verifique busca e envio. Decodifique o alvo compacto e teste block_hash <= target com ordem de bytes e hash da rede. Ao achar solução, reconstrua o bloco, envie por submitblock ou protocolo implantado e guarde aceitação ou rejeição.
  5. Acompanhe validação e propagação independentes. Compare nós completos para cabeçalho, transações, scripts, coinbase e chainwork. Meça propagação, pontas rivais, blocos obsoletos ou órfãos e reorganizações; achar prova não garante permanecer canônico.
  6. Concilie recompensa e contabilidade do pool. Separe coinbase, subsidy + transaction fees, taxa e reservas, pool target, network target, share aceita, share obsoleta, método, maturidade, mínimo, custódia e contraparte.
  7. Estresse economia e segurança. Declare taxa efetiva, disponibilidade, eficiência, energia, refrigeração, pessoal, hospedagem, manutenção, depreciação, financiamento, impostos, restrição, subsídio, taxas, preço e dificuldade. Estresse variância, falha, choques, atraso, inadimplência, censura, concentração e reorganização.

O produto é proposta de bloco e evidência de busca computacional. Nós decidem validade; a regra de bifurcação escolhe a ramificação válida ativa; dificuldade muda o alvo somente em sua fronteira; aplicações fixam confirmações. Mineração participa, mas não substitui nenhum deles.

Exemplos resolvidos

1. O nonce não é todo o espaço

O cabeçalho de 80 bytes tem nonce de 32 bits, com 2^32 = 4,294,967,296 valores. A 200 TH/s, testar essa quantidade leva aproximadamente:

4,294,967,296 / 200,000,000,000,000 = 0.0000214748 seconds

O trabalho continua: altera-se o extranonce coinbase, deriva-se outra raiz de Merkle e atualizam-se campos permitidos para abrir outro espaço nonce. Tratar nonce como capacidade total é erro de categoria.

2. Variância solo e eletricidade

Com rede 600 EH/s e minerador efetivo 200 TH/s, a participação simplificada é 200 TH/s / 600 EH/s = 0.0000333333%. Para 144 blocos por dia, a expectativa é lambda = 144 * 0.000000333333 = 0.000048 blocks/day, com espera média 1 / 0.000048 = 20,833.33 days. A aproximação de Poisson dá P(0) = exp(-0.000048) = 99.9952001152% de zero bloco no dia.

Máquina de 3,5 kW a USD 0,06/kWh custa 3.5 kW * 24 * USD 0.06/kWh = USD 5.04/day em eletricidade direta. Faltam refrigeração, hospedagem, paradas, reparo, depreciação, financiamento e impostos. Expectativa não é data de recebimento; acerto remoto não é conta diária a receber.

3. Contabilidade coinbase e maturidade

Suponha subsídio de 3.125 BTC e taxas válidas de 0.42 BTC. O máximo criado pela coinbase é 3.125 + 0.42 = 3.545 BTC; reivindicar mais invalida o bloco e menos renuncia a valor.

A saída coinbase exige 100 blocks de maturidade antes de ser gasta. O bloco pode ficar obsoleto ou ser reorganizado. Saldo no painel do pool, coinbase imatura e pagamento externo final são direitos distintos com riscos diferentes.

4. Shares do pool e hipóteses de pagamento

Com shares aceitas de mesma dificuldade, o pool registra 2,000,000 e um minerador 50,000: sua fração é 50,000 / 2,000,000 = 2.5%. Com bloco de 3,545 BTC e taxa de 2%, o montante distribuível é 3.545 * (1 - 0.02) = 3.4741 BTC e a alocação proporcional 3.4741 * 2.5% = 0.0868525 BTC.

Se o alvo do pool é 1,000 vezes mais fácil, uma share aceita tem probabilidade simplificada 1 / 1,000 de atingir também o alvo da rede. A contabilidade real normaliza dificuldade variável, rejeita duplicadas e obsoletas, aplica PPS, FPPS, PPLNS ou outro contrato e separa valor pago pelo pool de receita condicionada ao bloco.

Riscos e falhas de revisão

Erros de protocolo e template

  • Dizer que mineradores validam transações em vez de escolher candidatos verificados pelos nós.
  • Misturar cadeia, rede, bifurcação, ponta, cliente, provedor ou pool.
  • Tratar mempool ou template como consenso, conjunto completo ou bloco futuro garantido.
  • Selecionar por taxa individual ignorando ancestrais, descendentes, peso, assinaturas, locks e compromissos.
  • Calcular errado altura do subsídio, taxas, saídas coinbase, witness ou raiz de Merkle.
  • Buscar sobre hash anterior, alvo, hora ou versão obsoletos após nova ponta.
  • Comparar hash e alvo com codificação, endianidade ou algoritmo errados.

Erros de pool e operação

  • Igualar share aceita a bloco de rede ou contar shares sem normalizar dificuldade.
  • Converter participação esperada em blocos, receita ou datas garantidas ignorando variância.
  • Igualar parcela do pool a propriedade permanente de hardware ou omitir concentração.
  • Omitir shares obsoletas e rejeitadas, latência, firmware, temperatura, disponibilidade, restrição e falhas.
  • Ignorar método de pagamento, base de taxa, reservas, mínimos, maturidade, custódia, saque e inadimplência.
  • Tratar bloco encontrado como final antes de aceitação, propagação, seleção e reorganização.
  • Reutilizar credenciais, endereços ou firmware remoto sem autenticação, controle e incidentes.

Erros econômicos e de segurança

  • Chamar BTC bruto esperado de lucro fiat sem preço, dificuldade, taxas, energia, refrigeração, trabalho, depreciação, financiamento e impostos.
  • Inferir eletricidade ou emissões da taxa sem eficiência, uso, refrigeração, lugar, hora e matriz.
  • Supor resposta imediata da dificuldade ou blocos de dez minutos agendados.
  • Afirmar que halving garante preço, capitulação ou gasto de segurança constante.
  • Afirmar que maioria hash falsifica assinaturas, rouba moedas ou impõe inflação inválida.
  • Usar taxa alta como prova contra concentração de pool, fabricante, firmware, geografia, energia, rede ou software.

Equívocos comuns

  • Mineradores podem aprovar qualquer transação como válida. Eles escolhem e ordenam; nós honestos rejeitam blocos contrários ao consenso.
  • Nonce é o único valor mutável. Extranonce muda coinbase e raiz de Merkle; hora e versão permitidas também ampliam o espaço.
  • Share do pool é fração de bloco. Ela prova trabalho sob alvo mais fácil; a maioria não cumpre o alvo de rede.
  • Receita diária esperada é pagamento garantido. Descoberta é aleatória e pagamento depende de contrato, maturidade e contraparte.
  • Mais taxa significa automaticamente mais lucro. Participação, dificuldade, taxas, preço, eficiência, energia e custos decidem o resultado.

Tópicos relacionados

Fontes

Navegação

Pesquisar na wiki...