Skip to main content

Dificuldade de Mineração | Bitcoin Glossary | Mapping Bitcoin

Dificuldade de Mineração

Mineração

Valor que determina o esforço computacional para produzir um hash de bloco válido, ajustado a cada 2.016 blocos para manter ~10 minutos por bloco.

Visão geral

A dificuldade de mineração é um parâmetro dinâmico no protocolo Bitcoin que controla quão difícil é encontrar uma prova de trabalho válida. Ela determina o alvo numérico abaixo do qual o hash do cabeçalho de um bloco deve cair para ser considerado válido. A dificuldade é ajustada automaticamente a cada 2.016 blocos (aproximadamente a cada duas semanas) para garantir que o tempo médio entre blocos permaneça próximo de 10 minutos.

Ajuste de dificuldade

A cada 2.016 blocos:

  Tempo esperado: 2.016 × 10 min = 20.160 min (2 semanas)
  Tempo real:     medido a partir de timestamps

  Nova Dificuldade = Dificuldade Anterior × (Tempo Esperado / Tempo Real)

  Limitado a 4× de aumento ou ¼ de diminuição por ajuste

Se os blocos foram produzidos mais rápido do que a cada 10 minutos (indicando que mais hash power entrou na rede), a dificuldade aumenta. Se os blocos foram mais lentos (mineradores saíram), a dificuldade diminui. Esse mecanismo autorregulador manteve o Bitcoin produzindo blocos a uma taxa notavelmente consistente desde 2009.

Dificuldade e o alvo

A dificuldade está inversamente relacionada ao valor alvo armazenado no campo "bits" do cabeçalho do bloco. Uma dificuldade maior significa um alvo menor, o que significa que existem menos saídas de hash válidas, exigindo mais tentativas para encontrar uma.

Dificuldade baixa:  Alvo = 00000FFFFFFFFFFF...  (muitos hashes válidos)
Dificuldade alta:   Alvo = 00000000000FFFFF...  (poucos hashes válidos)

Crescimento histórico

A dificuldade do Bitcoin cresceu em muitas ordens de magnitude desde que a rede foi lançada. Em 2009, a mineração podia ser feita com uma CPU portátil. Hoje, a dificuldade é tão alta que apenas operações de ASIC em grande escala e pools de mineração podem encontrar blocos de forma realista.

Casos extremos

O ajuste de dificuldade tem uma falha conhecida de um a um: ele compara timestamps de blocos abrangendo um intervalo de 2.015 blocos em vez de 2.016. Além disso, o ajuste máximo por período é limitado a um fator de 4 em qualquer direção, evitando mudanças extremas repentinas.