Dificultatea este o valoare utilizată pentru a arăta cât de greu este să găsești un hash care va fi mai mic decât obiectivul definit de sistem.
Rețeaua Bitcoin are o dificultate globală de blocare. Blocurile valide trebuie să aibă un hash sub această țintă. Piscinele miniere au, de asemenea, o dificultate de partajare specifică grupului, stabilind o limită inferioară pentru acțiuni.
Dificultate de extragere a Bitcoin
În rețeaua Bitcoin există dificultăți globale setate pentru toate blocurile. să fie considerat legitim, trebuie să aibă o valoare hash mai mică decât ținta stabilită.
Harta dificultăților de extragere a criptomonedelor
Dificultatea se modifică la fiecare blocaj din 2016. Aceasta se calculează utilizând următoarea formulă:
unde ținta este un număr de 256 de biți.
Difficultatea_1_target poate dura diferite valori. În mod tradițional, este o funcție hash din care 32 de biți sunt egali cu 0, în timp ce restul sunt 1 (se mai numește dificultate pdiff sau pool). Protocolul Bitcoin oferă țintă ca tip cu virgulă mobilă și precizie limitată. Diferenți clienți Bitcoin determină adesea dificultatea criptomonedelor pe baza acestor date.
Stocarea dificultății criptomonedelor în blocuri
Fiecare bloc conține o versiune ambalată (numită „Bits”) a țintei hexazecimale.
Utilizarea următoarei formule țintă poate fi obținută din orice bloc. De exemplu, dacă o țintă împachetată într-un bloc apare ca 0x1b0404cb, versiunea hexazecimală va arăta după cum urmează:
Valoarea maximă pentru acest câmp este 0x7fffff, în timp ce minimul este 0x008000.
Ținta maximă posibilă ( cu dificultate egală cu 1) este definit ca 0x1d00ffff care apare după cum urmează în numerotația hexazecimală:
Următorul este un mod ușor de calcul al dificultății. Utilizează o versiune modificată a seriei Taylor pentru logaritm și se bazează pe jurnale pentru a transforma calculul dificultății.
Dificultatea maximă, actuală și minimă
Dificultatea actuală poate fi aflat folosind linia de comandă Bitcoin „getDifficulty”.
Datorită funcției țintă care nu are valoare minimă dificultatea maximă poate fi calculată doar aproximativ după cum urmează: maximum_target / 1 (deoarece 0 ar conduce ecuația la infinit de mare ) care este un număr de neconceput (de la 2 la 224).
Dificultatea minimă este egală cu 1.
Modificări ale dificultăților
Dificultatea este modificată în fiecare 2016 blocuri bazate pe timpul necesar pentru a descoperi blocurile anterioare din 2016. Dacă se găsește un bloc la fiecare 10 minute (așa cum a fost destinat inițial pentru emisii uniforme), găsirea blocurilor din 2016 va dura exact 2 săptămâni. Dacă blocurile anterioare din 2016 au fost găsite în mai mult de două săptămâni, dificultatea de exploatare a criptomonedelor va fi redusă, iar dacă au fost exploatate mai repede, atunci aceasta va fi ridicată. Cu cât s-a petrecut mai mult (sau mai puțin) timp pentru găsirea blocurilor anterioare din 2016, cu atât mai mult va fi redus (ridicat) dificultatea.
Pentru a mina, un hash de bloc trebuie să fie mai mic decât targeter (dovada muncii) . Hash este un număr aleatoriu între 0 și 2 * 256-1.
Dificultatea este setată ca și cum am fi găsit blocuri anterioare din 2016 la viteza unui bloc la 10 minute
Timpul mediu de găsirea unui singur bloc poate fi calculată folosind această formulă: timp = dificultate * 2 ** 32 / hashrate unde „dificultate” este nivelul curent de dificultate al criptomonedei din rețeaua de dificultate BTC și „hashrate” este cantitatea de hash-uri pe care un miner le găsește pe secundă.
Care este dificultatea actuală?
Dificultatea curentă online, după cum rezultă de Bitcoin „getDifficulty.
Diagrama dificultăților Bitcoin
Care este dificultatea maximă?
Acolo nu este o țintă minimă. Dificultatea maximă este aproximativ: maximum_target / 1 (deoarece 0 ar duce la infinit), care este un număr ridicol de mare (aproximativ 2 ^ 224).
Dificultatea maximă reală este atunci când current_target = 0, dar nu am putea calcula dificultatea dacă s-ar întâmpla acest lucru. (Din fericire nu se va întâmpla niciodată, așa că „suntem ok.)
Dificultatea rețelei poate scădea?
Da, poate.
Care este dificultatea minimă BTC?
Dificultatea minimă, atunci când ținta este la valoarea maximă permisă, este 1.
Ce rata hash de rețea are ca rezultat o anumită dificultate?
Dificultatea este ajustată la fiecare blocuri din 2016 în funcție de timpul necesar pentru a găsi blocurile anterioare din 2016. La rata dorită de un bloc la fiecare 10 minute, blocurile din 2016 ar dura exact două săptămâni pentru a fi găsite. Dacă blocurile anterioare din 2016 au durat mai mult de două săptămâni pentru a găsi, dificultatea este redusă. Dacă au durat mai puțin de două săptămâni, dificultatea crește. Schimbarea dificultății este proporțională cu timpul de peste sau sub două săptămâni pe care blocurile anterioare din 2016 le-au luat pentru a găsi.
Pentru a găsi un bloc, hash-ul trebuie să fie mai mic decât ținta. Hash-ul este efectiv un număr aleatoriu între 0 și 2 ** 256-1.Decalajul pentru dificultatea 1 este
iar pentru dificultatea D este
Numărul așteptat de hashuri pe care trebuie să îl calculăm pentru a găsi un bloc cu dificultatea D este, prin urmare,
sau doar
Dificultatea este setată astfel încât blocurile anterioare din 2016 ar fi fost găsite la o rată de la fiecare 10 minute, așa că am calculat (D * 2 ** 48 / 0xffff) hashuri în 600 de secunde . Asta înseamnă că rata hash a rețelei a fost
față de blocurile anterioare din 2016. Poate fi simplificat în continuare la
fără prea multe pierderi de precizie.
La dificultatea 1, adică aproximativ 7 Mhashes pe secundă.
La momentul scrierii, dificultatea este 22012.4941572, ceea ce înseamnă că peste setul anterior de blocuri găsite în 2016, rata medie de hash a rețelei a fost
Cât de curând m-aș putea aștepta să generez un bloc?
(Întrebarea eternă.)
Timpul mediu pentru găsirea unui bloc poate fi aproximat prin calcularea:
unde dificultatea este dificultatea actuală, hashrate este numărul de hash-uri pe care minerul dvs. le calculează pe secundă, iar timpul este media în secunde între blocurile pe care le găsiți.
De exemplu, folosind Python calculăm timpul mediu pentru a genera un bloc folosind o platformă minieră de 1Ghash / s când dificultatea este 20000:
și descoperiți că durează în medie puțin mai puțin de 24 de ore.
- Orice măcinare a hash-ului are aceeași șansă de a „câștiga” ca oricare altul. Jocul numerelor este numărul de încercări pe care le poate face hardware-ul dvs. pe secundă.
- Trebuie să cunoașteți dificultatea (de mai sus) și rata de khash / sec (raportată de client).
- Exploatarea minieră comparația hardware are câteva statistici care vă pot ajuta să preziceți ce ați putea obține.
- Accesați un calculator sau efectuați singuri calculele,
- http://www.alloscomp.com/bitcoin/calculator.php
- http://www.vnbitcoin.org/bitcoincalculator.php
- https://bitknock.com/calculator
- Amintiți-vă că este doar probabilitate! Nu există garanții că veți câștiga la fiecare N zile.
Vedeți și
- Dovadă de lucru
- Blocare
- Listă criptomonede
- Confirmare tranzacție
- Grupuri miniere