49 / 691H/s

Hashrate

Velocidade das tentativas de hashing

Hashrate é a velocidade a que o hardware de mineração realiza tentativas de Proof of Work do Bitcoin; exprime-se em hashes por segundo, normalmente em TH/s, PH/s ou EH/s.

Hashrate é o número de tentativas de double-SHA-256 por segundo, não o número de blocos válidos nem uma propriedade diretamente mensurável de toda a rede. Um minerador pode medir o desempenho do seu próprio ASIC Miner, um Mining Pool estima o desempenho efetivo a partir dos shares aceites e o Hashrate da rede é calculado estatisticamente a partir dos blocos recentes e da sua dificuldade. Por isso, as janelas de medição curtas são fortemente influenciadas pelo acaso.

1 H/s significa uma tentativa de hash de Proof of Work por segundo. O Bitcoin calcula double-SHA-256 sobre o cabeçalho do bloco de 80 bytes. O minerador altera o Nonce, o Merkle Root através do Extranonce na transação coinbase, ou os campos version e nTime dentro dos limites permitidos. Um Hashrate mais elevado significa mais tentativas independentes por unidade de tempo, não uma maior probabilidade de sucesso de cada tentativa. [Bitcoin Developer Guide — Mining] [Bitcoin Developer Guide — Block Chain / Proof of Work]

O ASIC mede o desempenho local a partir do trabalho realizado; o Mining Pool estima o Hashrate efetivo de um worker a partir dos shares aceites e da sua dificuldade na janela escolhida. O Hashrate da rede é uma terceira grandeza: não existe um medidor global de todos os dispositivos de mineração ligados. Cada valor descreve uma camada diferente e, em medições curtas, os valores podem divergir consideravelmente. [Bitcoin Developer Guide — Mining]

A RPC getnetworkhashps do Bitcoin Core devolve uma estimativa de hashes por segundo a partir dos blocos recentes. A implementação divide o aumento do trabalho acumulado pela diferença entre os timestamps máximo e mínimo dos blocos da amostra escolhida. A janela predefinida é de 120 blocos; o parâmetro nblocks com o valor -1 seleciona o período desde a última alteração da dificuldade. Uma janela mais curta reage mais depressa, mas oscila mais devido ao acaso. [Bitcoin Core source — getnetworkhashps] [Bitcoin RPC — getnetworkhashps]

O target é o valor máximo permitido para o hash de Proof of Work. A Difficulty exprime, de forma relativa, a exigência desse target face à dificuldade de referência. Um target mais baixo significa mais tentativas esperadas. O Hashrate descreve a velocidade das tentativas; a dificuldade exprime o trabalho esperado necessário para satisfazer a condição de Proof of Work, não o cumprimento de todas as outras regras de validade do bloco. [Bitcoin Core source — proof-of-work difficulty] [Bitcoin Core v30.0 — GetBlockProof]

Na mainnet, o target é recalculado a cada 2 016 blocos, visando um período de duas semanas dentro dos limites permitidos pelo protocolo. Duas semanas são um objetivo, não um prazo fixo no calendário. Após um aumento súbito do Hashrate, os blocos chegam normalmente mais depressa até ao ajuste seguinte; após uma descida, mais devagar. O Bitcoin não mede diretamente o Hashrate, mas reage aos timestamps dos blocos. [Bitcoin Core source — proof-of-work difficulty] [Bitcoin Developer Guide — Block Chain / Proof of Work]

Com a mesma dificuldade, a frequência esperada dos blocos aumenta aproximadamente em proporção ao Hashrate, mas as descobertas individuais continuam aleatórias. Um minerador com 1 % do Hashrate total tem aproximadamente 1 % de probabilidade de encontrar o próximo bloco, não a garantia de encontrar um bloco em cada cem. Esta variância explica a existência dos pools e as oscilações dos gráficos de curto prazo. [Bitcoin whitepaper]

O Hashrate é a velocidade do trabalho, enquanto o chainwork é o trabalho esperado acumulado representado pelos blocos de um ramo específico. Confirmações adicionais aumentam a resistência da história, porque substituí-la exige produzir trabalho acumulado concorrente. Uma alteração do Hashrate hoje não modifica retroativamente o chainwork dos blocos antigos. [Bitcoin whitepaper] [Bitcoin Core v30.0 — GetBlockProof]

Um Hashrate mais elevado aumenta a probabilidade de um minerador prolongar o seu próprio ramo. Um Hashrate maioritário aumenta significativamente a capacidade de censurar transações ou executar um Reorg profundo, mas não pode tornar válido um bloco que viole as regras de consenso do nó em questão. A capacidade de hashing influencia a escolha entre histórias válidas; os Full Nodes aplicam as regras de validade de forma independente. [Bitcoin Developer Guide — Block Chain / Proof of Work] [Bitcoin whitepaper]

Não é possível determinar o consumo de eletricidade apenas a partir do Hashrate. A potência consumida depende da eficiência energética da geração de ASIC em causa em J/TH, das definições de tensão e frequência, da refrigeração e dos equipamentos auxiliares. O mesmo desempenho em EH/s pode exigir uma potência elétrica muito diferente quando a eficiência muda. [Braiins OS — Autotuning]

No seu próprio equipamento de mineração, compare o valor do ASIC com a estimativa do pool baseada nos shares aceites durante um período suficientemente longo e acompanhe os resultados rejeitados. Para a rede, compare getnetworkhashps em várias janelas, a dificuldade e os timestamps dos blocos. Um número aparentemente preciso sem indicação da janela de medição é uma estimativa apresentada sem contexto importante. [Bitcoin Core source — getnetworkhashps] [Bitcoin RPC — getnetworkhashps] [Bitcoin RPC — getmininginfo]

Para ter uma visão mais completa, leia este verbete junto com Mineração, ASIC Miner, Ajuste de dificuldade, Proof of Work, Hashprice, Bitcoin. Também há referências a este verbete em ASIC Miner, Mining Pool, Solo Mining, Demand Response Mining.

DOC · 001Bitcoin Core source — getnetworkhashpsFonte primária ↗DOC · 002Bitcoin Core source — proof-of-work difficultyFonte primária ↗DOC · 003Bitcoin Developer Guide — MiningDocumentação ↗DOC · 004Bitcoin Developer Guide — Block Chain / Proof of WorkDocumentação ↗DOC · 005Bitcoin RPC — getnetworkhashpsDocumentação ↗DOC · 006Bitcoin RPC — getmininginfoDocumentação ↗DOC · 007Bitcoin whitepaperFonte primária ↗DOC · 008Bitcoin Core v30.0 — GetBlockProofFonte primária ↗DOC · 009Braiins OS — AutotuningDocumentação ↗
Fontes em primeiro lugar · Não é recomendação de investimento