São Paulo taperadar.com.br
TapeRadar.

Cripto e mercado.
Sem ruído.

Explicado · Bitcoin

O que é ajuste de dificuldade, a regra do Bitcoin que recalibra a mineração a cada 2.016 blocos

A cada 2.016 blocos a rede compara o tempo real com o ideal de 1.209.600 segundos e muda a dificuldade: sobe em até 300% se os blocos saíram rápido demais e cai em até 75% se demoraram.

Quem minera Bitcoin repete o hash dos 80 bytes do cabeçalho do bloco, mudando o nonce, até obter um hash igual ou menor que um alvo. Como só o cabeçalho de 80 bytes entra no cálculo do proof of work, o volume de transações de um bloco não desacelera o hasher: acrescentar transações exige apenas recalcular a árvore de merkle.

A dificuldade não é fixa. A cada 2.016 blocos, a rede usa os timestamps gravados em cada cabeçalho para calcular quantos segundos se passaram entre o primeiro e o último desses 2.016 blocos. O valor ideal é 1.209.600 segundos, duas semanas. Se os blocos saíram em menos de duas semanas, a dificuldade esperada é aumentada proporcionalmente, em até 300%, para que os próximos 2.016 blocos levem duas semanas se o hasher continuar no mesmo ritmo. Se levaram mais de duas semanas, a dificuldade esperada é diminuída proporcionalmente, em até 75%, pelo mesmo motivo.

O primeiro ponto em que a dificuldade podia ter sido ajustada é o bloco 2016. O mesmo guia registra um erro de um a um na implementação do Bitcoin Core: a dificuldade é atualizada a cada 2.016 blocos usando timestamps de apenas 2.015 deles, o que cria um desvio pequeno. Isso é regra de consenso em vigor, não proposta, e o desvio é reconhecido na própria documentação.

Existe um prazo próximo que costuma ser confundido com esse. O UTXO da transação coinbase não pode ser gasto como entrada por pelo menos 100 blocos. A regra impede que o minerário recolha as taxas e a recompensa de um bloco que depois se revele obsoleto após um fork da cadeia.

O tamanho dos limites de 300% e 75% importa porque o ajuste é proporcional e se apoia no tempo declarado pelo minero no cabeçalho. Como cada cabeçalho precisa ter hash abaixo do alvo e cada bloco está ligado ao anterior, alterar um bloco exige, em média, tanto poder de hasher quanto a rede inteira gastou entre a criação do bloco original e o presente. Só com a maioria do poder de hasher da rede alguém consegue reescrever o histórico de transações de forma confiável, e o guia ressalva que mesmo menos de 50% ainda tem chance razoável de tentar esses ataques.

Fonte: developer.bitcoin.org

Explorar o arquivo