Hashrate to liczba prób double-SHA-256 na sekundę, a nie liczba poprawnych bloków ani bezpośrednio mierzalna właściwość całej sieci. Górnik może mierzyć wydajność własnego urządzenia ASIC Miner, Mining Pool szacuje efektywną wydajność na podstawie zaakceptowanych shares, a Hashrate sieci oblicza się statystycznie z ostatnich bloków i ich trudności. Na krótkie okna pomiarowe silnie wpływa więc przypadek.
1 H/s oznacza jedną próbę uzyskania hasha Proof of Work na sekundę. Bitcoin oblicza double-SHA-256 dla 80-bajtowego nagłówka bloku. Górnik zmienia Nonce, Merkle Root za pośrednictwem Extranonce w transakcji coinbase albo pola version i nTime w dozwolonych granicach. Wyższy Hashrate oznacza więcej niezależnych prób w jednostce czasu, a nie większe prawdopodobieństwo sukcesu pojedynczej próby. [Bitcoin Developer Guide — Mining] [Bitcoin Developer Guide — Block Chain / Proof of Work]
ASIC mierzy lokalną wydajność na podstawie wykonanej pracy; Mining Pool szacuje efektywny Hashrate workera z zaakceptowanych shares i ich trudności w wybranym oknie. Hashrate sieci to trzecia wielkość: nie istnieje globalny miernik wszystkich włączonych urządzeń wydobywczych. Każda wartość opisuje inną warstwę, a przy krótkim pomiarze wyniki mogą się znacznie różnić. [Bitcoin Developer Guide — Mining]
RPC getnetworkhashps w Bitcoin Core zwraca oszacowanie liczby hashy na sekundę na podstawie ostatnich bloków. Implementacja dzieli przyrost skumulowanej pracy przez różnicę między najwyższym a najniższym znacznikiem czasu bloków w wybranej próbce. Domyślne okno wynosi 120 bloków; parametr nblocks o wartości -1 wybiera okres od ostatniej zmiany trudności. Krótsze okno reaguje szybciej, ale silniej waha się pod wpływem przypadku. [Bitcoin Core source — getnetworkhashps] [Bitcoin RPC — getnetworkhashps]
Target to najwyższa dozwolona wartość hasha Proof of Work. Difficulty wyraża względną trudność spełnienia tego target w stosunku do trudności referencyjnej. Niższy target oznacza więcej oczekiwanych prób. Hashrate opisuje szybkość prób; trudność wyraża oczekiwaną pracę potrzebną do spełnienia warunku Proof of Work, a nie spełnienie wszystkich pozostałych reguł poprawności bloku. [Bitcoin Core source — proof-of-work difficulty] [Bitcoin Core v30.0 — GetBlockProof]
Na mainnecie target jest przeliczany co 2 016 bloków, z docelowym okresem dwóch tygodni, w granicach dozwolonych przez protokół. Dwa tygodnie to cel, a nie stały termin kalendarzowy. Po nagłym wzroście Hashrate bloki zwykle pojawiają się szybciej do następnej korekty, a po spadku wolniej. Bitcoin nie mierzy Hashrate bezpośrednio, lecz reaguje na znaczniki czasu bloków. [Bitcoin Core source — proof-of-work difficulty] [Bitcoin Developer Guide — Block Chain / Proof of Work]
Przy tej samej trudności oczekiwana częstotliwość bloków rośnie w przybliżeniu proporcjonalnie do Hashrate, lecz pojedyncze odkrycia pozostają losowe. Górnik mający 1 % całkowitego Hashrate ma około 1 % szans na znalezienie następnego bloku, a nie gwarancję jednego bloku na sto. Ta wariancja wyjaśnia zarówno istnienie pooli, jak i wahania wykresów krótkoterminowych. [Bitcoin whitepaper]
Hashrate jest szybkością pracy, natomiast chainwork to skumulowana oczekiwana praca reprezentowana przez bloki danej gałęzi. Kolejne potwierdzenia zwiększają odporność historii, ponieważ jej zastąpienie wymaga wytworzenia konkurencyjnej skumulowanej pracy. Dzisiejsza zmiana Hashrate nie zmienia wstecznie chainwork starszych bloków. [Bitcoin whitepaper] [Bitcoin Core v30.0 — GetBlockProof]
Wyższy Hashrate zwiększa prawdopodobieństwo, że górnik przedłuży własną gałąź. Większościowy Hashrate znacznie zwiększa zdolność do cenzurowania transakcji lub przeprowadzenia głębokiego Reorg, ale nie może uczynić poprawnym bloku naruszającego reguły konsensusu danego węzła. Moc haszująca wpływa na wybór między poprawnymi historiami; reguły poprawności niezależnie egzekwują węzły Full Node. [Bitcoin Developer Guide — Block Chain / Proof of Work] [Bitcoin whitepaper]
Z samego Hashrate nie można wyznaczyć zużycia energii elektrycznej. Pobór mocy zależy od efektywności energetycznej danej generacji ASIC w J/TH, ustawień napięcia i częstotliwości, chłodzenia oraz urządzeń pomocniczych. Ta sama wydajność w EH/s przy innej efektywności może wymagać znacznie innego poboru mocy elektrycznej. [Braiins OS — Autotuning]
Dla własnego sprzętu wydobywczego porównuj wskazanie ASIC z oszacowaniem poola opartym na zaakceptowanych shares przez odpowiednio długi okres i obserwuj odrzucone wyniki. Dla sieci porównaj getnetworkhashps dla kilku okien, trudność i znaczniki czasu bloków. Pozornie dokładna liczba bez podania okna pomiarowego jest oszacowaniem przedstawionym bez istotnego kontekstu. [Bitcoin Core source — getnetworkhashps] [Bitcoin RPC — getnetworkhashps] [Bitcoin RPC — getmininginfo]
Pełniejszy obraz uzyskasz, czytając to hasło razem z Górnictwo Bitcoin, ASIC Miner, Korekta trudności, Proof of Work, Hashprice, Bitcoin. Do tego hasła prowadzą również odsyłacze z ASIC Miner, Mining Pool, Solo Mining, Demand Response Mining.