Probabilidade de mineração de Bitcoin

Estime a probabilidade de encontrar um bloco de Bitcoin a partir do hashrate, da dificuldade da rede e do tempo, com uma visualização de mineração simulada ao vivo.

A carregar a simulação interativa...

Lição

A teoria — Probabilidade de mineração de Bitcoin

A prova de trabalho é uma lotaria para a qual não se pode estudar. Para acrescentar um bloco é preciso apresentar um cabeçalho cujo hash SHA-256 caia abaixo de um alvo, e como o hash de um cabeçalho alterado é imprevisível, o único método é adivinhar. Tudo o resto é consequência disso: tentativas esperadas vezes a duração de uma tentativa.

O que significa cada símbolo

D
a dificuldade — quão pequeno é o alvo e, portanto, quantas tentativas custa um bloco. Nesta página é um cursor; na rede real não é.
H
o hashrate, tentativas por segundo. Define a que velocidade percorres a busca, e mais nada.
E[T]
D · 2³² / H, a espera esperada. Uma média, não uma previsão — a primeira ideia abaixo é sobre essa diferença.
p
a hipótese de um bloco no próximo segundo. Não 1/E[T]: ver o passo 4.

De onde vem a fórmula

  1. Conta as tentativas que um bloco custa, não os segundos. Isso é D · 2³², e aí não aparece quem está a adivinhar — um telemóvel e um centro de dados precisam do mesmo número de tentativas.
  2. Divide pelo teu ritmo. Nos valores por omissão, 160 × 10⁵ · 2³² / (800 × 10¹²) dá cerca de 86 segundos, que a leitura arredonda para 1.4m.
  3. Move agora o cursor do hashrate e vê o Expected Time deslocar-se em proporção exatamente inversa. Duplica H e a espera reduz-se a metade. Nesta página é essa a história toda — e é justamente a parte que não vale para o Bitcoin.
  4. Lê com atenção a hipótese por segundo. Marca 1.157%, e 1/86 é 1,164 % — parecido, mas não é o cálculo que se faz. O que se calcula é 1 − e^(−1/E[T]), porque um segundo contém muitas tentativas independentes cujas hipóteses se compõem em vez de se somarem.

Como ler o que vê

Os cursores dizem que o hashrate compra blocos. Leva o Hashrate de 800 para 1600 e a espera esperada reduz-se a metade, exatamente. É verdade desta página e falso do Bitcoin, e a distância entre as duas coisas é o mais importante no ecrã. A tabela mais abaixo aplica a mesma fórmula à dificuldade real: um portátil leva 1,7 mil milhões de anos e a rede inteira dez minutos — mas olha antes para a última coluna, onde 1,7 mil milhões de anos e dez minutos custam 678 TWh e 3,3 GWh. As esperas diferem por um fator de 10¹⁴ e a eletricidade não, porque o hashrate se cancela: a energia por bloco é D · 2³² multiplicado pelos joules que um único hash custa, e mais nada.

Pressupõe
Que cada tentativa é independente e igualmente vencedora — que é precisamente o que a prova de trabalho procura garantir; que a dificuldade fica quieta enquanto esperas, o que vale aqui e não na rede; e que um mineiro que resolve um bloco fica com ele. O último não é de graça: um bloco que chega tarde à rede pode ficar órfão, pelo que o rendimento de um mineiro real fica um pouco abaixo do que esta fórmula promete. A simulação reduz ainda a dificuldade e o hashrate cerca de um milhão de vezes, como diz o seu próprio aviso, para que os blocos cheguem enquanto estás a ver.
Falha quando
A dificuldade é aqui um cursor e, na realidade, uma malha de controlo. A cada 2016 blocos a rede mede quanto tempo levaram de facto e move D para trazer a média de volta aos dez minutos. Portanto a relação que esta página demonstra inverte-se no próprio Bitcoin: acrescentar hashrate não produz blocos mais depressa, produz uma dificuldade maior dentro de duas semanas, e os dez minutos voltam. Como a recompensa por bloco é fixada pelo protocolo, mais hashrate não pode cunhar mais bitcoin — só pode dividir a mesma emissão por mais máquinas, queimando mais eletricidade pelo caminho. É por isso que o número da energia não se deduz de nenhuma matemática desta página. O protocolo fixa os dez minutos e fixa a recompensa. Sobre os 3,3 GWh não fixa absolutamente nada: isso decide-se pelo que um bloco vale e pela eficiência do hardware deste ano.

O tempo esperado não é o tempo típico 🖖

Com os controles padrão a leitura indica cerca de 86 segundos, mas isso é uma média, não uma previsão. Cada hash é uma tentativa independente, então a espera é exponencialmente distribuída, e a mediana de uma exponencial vale apenas ln 2 × sua média — aqui, cerca de 60 segundos. Assim, aproximadamente 63% dos blocos chegam antes do "esperado", enquanto a média é sustentada por uma cauda fina: 37% demoram mais que a média e 5% levam mais que o triplo. Inicie a simulação e leia o registro de eventos, que imprime o tempo real de cada bloco ao lado do esperado — as esperas curtas dominam a contagem e algumas longas causam todo o dano à média.

Mineração é loteria, não corrida 🖖

Cada tentativa de hash é um bilhete de loteria com probabilidades astronomicamente baixas — o número premiado é qualquer hash abaixo do alvo. Não dá para 'avançar' rumo a um bloco; você apenas compra mais bilhetes por segundo adicionando hashrate. Sua chance de encontrar o próximo bloco equivale aproximadamente à sua fatia do hashrate total da rede, então um minerador com 1% do poder encontra cerca de 1% dos blocos no longo prazo.

O nonce de 32 bits se esgota em microssegundos 🖖

O cabeçalho de um bloco Bitcoin tem apenas um nonce de 32 bits — cerca de 4.29 bilhões (2³²) de valores. Um ASIC moderno a 100 TH/s percorre todo esse intervalo em aproximadamente 43 microssegundos, bilhetes insuficientes para encontrar um bloco que hoje exige cerca de 10²³ hashes. Por isso os mineradores geram cabeçalhos novos ajustando o extra-nonce da transação coinbase e o carimbo de tempo, ampliando o espaço de busca.

O tamanho do grande

O que custaria encontrar um bloco real

Os cursores acima são um modelo à escala, portanto «dificuldade 160» não te diz nada sobre seres um telemóvel ou um planeta. Esta tabela aplica a mesma fórmula ao Bitcoin real: dificuldade 1,262 × 10¹⁴ e um hashrate de rede perto de 900 EH/s, onde estavam em agosto de 2026. A última coluna multiplica a espera de cada máquina pela potência que consome enquanto espera.

Minerando com Taxa de hash Espera prevista por bloco Eletricidade para esse único bloco
A CPU de um notebook 10 MH/s 1,7 bilhões de anos 678 TWh
Uma GPU de jogos 500 MH/s 34 milhões de anos 96,4 TWh
Um ASIC de mineração 200 TH/s 86 anos 2,6 GWh
Um pool de mineração 50 EH/s 3,0 horas 3,3 GWh
Toda a rede Bitcoin 900 EH/s 10,0 minutos 3,3 GWh

Três coisas a notar. Os cursores não alcançam nada disto — a definição mais dura da ferramenta é cerca de 1,26 milhões de vezes mais fácil do que o Bitcoin real — logo o modelo está encolhido de propósito para que os tempos de bloco se possam observar. A linha de baixo não é uma medição: a dificuldade reajusta-se a cada 2016 blocos precisamente para segurar dez minutos, e é assim que se sabe que esta tabela está aritmeticamente certa e não apenas plausível. E a última coluna não acompanha a do meio. As esperas abrangem um fator de 10¹⁴; a eletricidade não, porque o hashrate se cancela — um único ASIC e a rede inteira gastam num bloco a menos de 25 % um do outro. O que sobra é só a eficiência, e por isso o valor do portátil é 257 000 vezes o do ASIC: exatamente a razão entre os seus joules por terahash.

Problemas resolvidos na íntegra

  1. Tempo de espera de bloco para 800 TH/s face à dificuldade 160 5 passos

    Um equipamento de 800 TH/s está a minar contra uma dificuldade de 160, e o cursor de dificuldade conta em unidades de 10⁵. Calcule quanto tempo a rede espera por um bloco, depois a probabilidade de um ser gerado num segundo qualquer — e, em seguida, se o “tempo esperado” é aquilo que um minerador realmente experiencia.

    1. Cada unidade de dificuldade custa, em média, 2³² hashes, pelo que a dificuldade 160 equivale a 1,6×10⁷ unidades e 6,872×10¹⁶ hashes por bloco. Nenhum equipamento surge nesse número: trata-se de uma propriedade exclusiva do alvo.

    2. Divida pelo valor que o equipamento fornece a cada segundo. Obtêm-se 85,9 segundos, que o painel arredonda para 1,4 m.

    3. Agora a probabilidade por segundo, em que a resposta óbvia está errada. Um segundo proporciona 8×10¹⁴ tentativas, cada uma válida com probabilidade 1/(6,872×10¹⁶), pelo que o número esperado de soluções nesse segundo é 0,011642. Trata-se de uma contagem, não de uma probabilidade — nada impede que dois desses hashes sejam ambos válidos.

    4. Em alternativa, determine a probabilidade de cada uma das 8×10¹⁴ tentativas falhar. Elevar (1 − p) a essa potência reduz-se a e−1/85,9 porque p é extremamente pequeno, e o painel exibe o complemento: 1,157%. A diferença de 0,007 pontos relativamente ao passo 3 corresponde ao segundo que origina dois blocos, contado duas vezes ali e uma vez aqui.

    5. A mesma exponencial responde a uma pergunta diferente. A probabilidade de ainda estar à espera após t segundos é e−t/85,9; igualando essa expressão a meio, a espera mediana resulta em 59,5 segundos, uns 26 segundos inteiros abaixo da média.

    Resposta

    O painel apresenta um tempo esperado de 1,4 m e uma probabilidade de 1,157% a cada segundo, e uma única exponencial produziu ambos. A média não é a espera típica: 63,2% dos blocos chegam antes do tempo “esperado” e 4,98% demoram mais do triplo desse tempo, para lá de 257 segundos. O que faz a mineração parecer injusta é a versão condicional. Um equipamento que minou durante 5 minutos sem obter um bloco enfrenta exatamente os mesmos 1,157% no segundo seguinte do que outro ligado há um instante, pois e−(s+t)/85,9 a dividir por e−s/85,9 é e−t/85,9, sem restar qualquer vestígio de s. Nenhum minerador acumula direito a um bloco. O contador de sequências no painel sobe, e as probabilidades contra as quais conta nem deram por isso.

  2. Dificuldade 850 face a 300 TH/s divididos igualmente por 10 mineiros 5 passos

    Dificuldade de 850 para 300 TH/s, com 10 mineradores a dividir essa taxa de hash igualmente. Determine o tempo de bloco da rede e, em seguida, o que um desses mineradores observa num dia — o que não é a mesma questão.

    1. A mesma equação, com números mais exigentes: 8,5×10⁷ unidades de dificuldade a 2³² hashes cada resultam em 3,651×10¹⁷ hashes, e 3×10¹⁴ por segundo concluem-nos em 1217 segundos. O painel arredonda para 20,3 m.

    2. A probabilidade por segundo diminui na mesma proporção, para 0,082%. Note-se o que está ausente de ambas as linhas: o número de mineradores. Quer sejam dez equipamentos quer 80, a taxa de blocos da cadeia é fixada pela taxa de hash total e pela dificuldade, pelo que nenhuma das leituras depende de quantos existem.

    3. No entanto, esse número decide tudo em relação a um minerador individual. Atribua a cada um dos 10 uma fração igual de 30 TH/s e introduza esse valor na mesma fórmula — 12 169 segundos, ou 3,38 horas, entre os blocos que lhe pertencem.

    4. Um dia tem 86 400 segundos. Isso equivale a 7,10 blocos para si e 71,0 para os 10 em conjunto.

    5. Os blocos surgem de forma independente a uma taxa fixa, pelo que a contagem diária segue uma distribuição de Poisson e o seu desvio-padrão é a raiz quadrada da sua média. A sua contagem apresenta √7,10 = 2,66 blocos de dispersão em relação a um valor esperado de 7,10.

    Resposta

    Uma dispersão de 2,66 blocos em 7,10 representa ±37,5%; o mesmo dia para o conjunto dos 10 mineradores resulta em 71,0 blocos e apenas ±11,9%. Mesma cadeia, mesma taxa de hash, mesma equação — toda a diferença reside em σ/μ = 1/√μ, pelo que receber uma décima parte do fluxo multiplica a sua sorte relativa por √10 = 3,16. Essa é a aritmética por trás do pooling: 10 mineradores que acordam partilhar cada bloco encontrado coletivamente trocam uma variação de 37,5% no rendimento diário por uma de 11,9%, sem que seja computado um único hash adicional. Nenhuma das leituras acima contém o número de mineradores, o que é inteiramente correto — o tempo esperado é uma propriedade da cadeia, ao passo que o risco é uma propriedade da sua fração dela.

Referências (5)

Problemas de exemplo

  • Fácil - Dificuldade baixa (20), 2000 TH/s → blocos chegam com frequência — zona-alvo grande
  • Equilibrado - Padrões equilibrados: 800 TH/s, dificuldade 160 → frequência moderada de blocos
  • Difícil - Modo difícil: dificuldade 850, 300 TH/s → alvo minúsculo, blocos muito raros