Trudność to wartość używana do pokazania, jak trudno jest znaleźć hash to będzie niższe niż cel określony przez system.
Sieć Bitcoin ma globalny poziom trudności blokowania. Prawidłowe bloki muszą mieć hash poniżej tego celu. Pule wydobywcze mają również specyficzną dla puli trudność udostępniania, ustawiając dolny limit dla udziałów.
Trudność wydobywania bitcoinów
W sieci Bitcoin istnieje globalna trudność ustawiona dla wszystkich bloków. być uznane za uzasadnione, musi mieć wartość skrótu niższą niż ustawiony cel.
Mapa trudności wydobycia kryptowaluty
Trudność zmienia się co 2016 bloków. Oblicza się to według następującego wzoru:
gdzie cel to 256-bitowa liczba.
Trudność_1_target może mieć różne Tradycyjnie jest to funkcja skrótu, której pierwsze 32 bity są równe 0, podczas gdy wszystkie pozostałe mają wartość 1 (jest to również nazywane pdiff lub trudnością puli). Protokół Bitcoin zapewnia typ docelowy jako typ zmiennoprzecinkowy i ograniczoną dokładnością. Różni klienci Bitcoin często określają trudność kryptowaluty na podstawie tych danych.
Przechowywanie trudności kryptowaluty w blokach
Każdy blok zawiera spakowaną wersję (zwaną „bitami”) celu szesnastkowego.
Korzystając z następującego wzoru, cel można uzyskać z dowolnego bloku. Na przykład, jeśli cel spakowany w bloku pojawia się jako 0x1b0404cb, jego wersja szesnastkowa będzie wyglądać następująco:
Maksymalna wartość dla tego pola to 0x7fffff, a minimalna to 0x008000.
Maksymalny możliwy cel ( z trudnością równą 1) jest definiowany jako 0x1d00ffff, który w numeracji szesnastkowej wygląda następująco:
Dalej jest łatwy sposób obliczenia trudności. Używa zmienionej wersji serii Taylora do logarytmu i opiera się na logach do transformacji obliczania trudności.
Maksymalna, aktualna i minimalna trudność
Bieżąca trudność może być znalezione za pomocą wiersza poleceń Bitcoin „getDifficulty”.
Ze względu na to, że funkcja celu nie ma wartości minimalnej, maksymalna trudność może być obliczona tylko w przybliżeniu następująco: maximum_target / 1 (ponieważ 0 doprowadziłoby równanie do nieskończenie dużego ), co jest liczbą nie do pomyślenia (~ 2 do 224).
Minimalna trudność to tylko 1.
Zmiany trudności
Poziom trudności zmienia się co 2016 rok bloków w oparciu o czas potrzebny na odkrycie poprzednich bloków z 2016 roku. Jeśli blok zostanie znaleziony co 10 minut (tak jak początkowo był przeznaczony do równomiernej emisji), znalezienie 2016 bloków zajmie dokładnie 2 tygodnie. Jeśli poprzednie bloki z 2016 r. Zostały znalezione w ciągu więcej niż dwóch tygodni, trudność wydobycia kryptowaluty zostanie obniżona, a jeśli zostały wydobyte szybciej, zostanie podniesiona. Im więcej (lub mniej) czasu poświęcono na znajdowanie poprzednich bloków z 2016 r., Tym większa trudność zostanie obniżona (podniesiona).
Aby wydobyć wartość hash bloku, musi być niższa niż wartość docelowa (dowód pracy) . Hash to losowa liczba z przedziału od 0 do 2 * 256-1.
Trudność jest ustawiona tak, jakbyśmy znaleźli poprzednie bloki 2016 z prędkością jednego bloku na 10 minut
Średni czas Znalezienie pojedynczego bloku można obliczyć za pomocą następującego wzoru: czas = trudność * 2 ** 32 / hashrate gdzie „trudność” to aktualny poziom trudności kryptowaluty w sieci trudności BTC, a „hashrate” to ilość hashów, które górnik znajduje na sekundę.
Jaka jest obecna trudność?
Bieżąca trudność online, na podstawie danych uzyskanych z funkcji getDifficulty Bitcoina.
Wykres trudności Bitcoin
Jaka jest maksymalna trudność?
Tutaj nie ma minimalnego celu. Maksymalna trudność to z grubsza: maximum_target / 1 (ponieważ 0 dałoby nieskończoność), co jest absurdalnie dużą liczbą (około 2 ^ 224).
Rzeczywista maksymalna trudność jest wtedy, gdy current_target = 0, ale nie bylibyśmy w stanie obliczyć trudności, gdyby tak się stało. (Na szczęście nigdy tak się nie stanie, więc nic nam nie jest).
Czy problem z siecią może się zmniejszyć?
Tak, może.
Jaka jest minimalna trudność BTC?
Minimalna trudność, gdy cel osiąga maksymalną dozwoloną wartość, wynosi 1.
Jaka szybkość sieciowa powoduje daną trudność?
Trudność jest dostosowywana co blok 2016 w zależności od czasu potrzebnego na znalezienie poprzednich bloków 2016. Przy pożądanym tempie jednego bloku na 10 minut znalezienie 2016 bloków zajęłoby dokładnie dwa tygodnie. Jeśli znalezienie poprzednich bloków 2016 zajęło więcej niż dwa tygodnie, trudność jest zmniejszona. Jeśli zajęło im mniej niż dwa tygodnie, trudność wzrasta. Zmiana trudności jest proporcjonalna do ilości czasu w ciągu dwóch tygodni lub mniej niż poprzednie bloki 2016, aby znaleźć.
Aby znaleźć blok, hash musi być mniejszy niż cel. Skrót jest faktycznie liczbą losową z zakresu od 0 do 2 ** 256-1.Przesunięcie dla trudności 1 wynosi
a dla trudności D wynosi
Oczekiwana liczba hashów, które musimy obliczyć, aby znaleźć blok z trudnością D, wynosi zatem
lub po prostu
Trudność jest ustawiona w taki sposób, że poprzednie bloki z 2016 roku znajdowały się w tempie jeden na 10 minut, więc obliczaliśmy (D * 2 ** 48 / 0xffff) hashe w 600 sekund . Oznacza to, że współczynnik hash sieci był
w porównaniu z poprzednimi blokami z 2016 roku. Można go dodatkowo uprościć do
bez większej utraty dokładności.
Na poziomie trudności 1, czyli około 7 Mhashów na sekundę.
W chwili pisania tego tekstu, trudność wynosi 22012.4941572, co oznacza, że w poprzednim zestawie bloków z 2016 roku stwierdzono, że średnia szybkość mieszania sieci wynosiła
Jak szybko mogę się spodziewać wygenerowania bloku?
(Odwieczne pytanie.)
Średni czas potrzebny na znalezienie bloku można obliczyć w przybliżeniu, obliczając:
gdzie trudność jest bieżącą trudnością, hashrate to liczba skrótów obliczanych przez górnika na sekundę, a czas to średnia w sekundach między znalezionymi blokami.
Na przykład za pomocą Pythona obliczamy średni czas generowania bloku za pomocą platformy wydobywczej 1Ghash / s gdy trudność wynosi 20000:
i okaże się, że zajmuje to średnio mniej niż 24 godziny.
- Każde mielenie haszyszu ma taką samą szansę na „wygraną”, jak jakikolwiek inny. Gra liczbowa określa, ile prób twój sprzęt może wykonać na sekundę.
- Musisz znać trudność (powyżej) i szybkość khash / s (zgłaszaną przez klienta).
- Wydobywanie Porównanie sprzętu zawiera statystyki, które mogą pomóc Ci przewidzieć, co możesz uzyskać.
- Odwiedź kalkulator lub wykonaj obliczenia samodzielnie,
- http://www.alloscomp.com/bitcoin/calculator.php
- http://www.vnbitcoin.org/bitcoincalculator.php
- https://bitknock.com/calculator
- Pamiętaj, że to tylko prawdopodobieństwo! Nie ma gwarancji, że wygrasz co N dni.
Zobacz także
- Dowód pracy
- Blokuj
- Lista kryptowalut
- Potwierdzenie transakcji
- Pule wydobywcze