Prilagoditev zahtevnosti Bitcoina

Andreas HartwigEkonomski novinar in strokovnjak za kripto finance

Približno vsakih 2016 blokov — torej okoli dveh tednov — Bitcoin samodejno preračuna zahtevnost rudarjenja: zviša jo, ko se bloki najdejo prehitro, in zniža, ko prihajajo prepočasi. Povprečni razmik med dvema blokoma tako ostaja blizu desetim minutam, ne glede na to, koliko računske moči se priključi ali izgine.

Pri Bitcoinu noben osrednji upravljavec ne odloča, kako težko naj bo najti blok. Protokol ima namesto tega vgrajeno povratno zanko: meri, kako hitro so nastali zadnji bloki, in premakne cilj rudarjenja tako, da se tempo vrača k enemu bloku na deset minut. Ta «prilagoditev zahtevnosti» je eden tistih tihih mehanizmov, ki ohranjajo takt blokov Bitcoina — in z njim predvidljivo izdajanje novih kovancev — izjemno stabilen, čeprav je svetovna računska moč zrasla za mnogo velikostnih redov in občasno strmo padla. Ta članek pojasnjuje, kaj zahtevnost je, kako prilagoditev deluje, zakaj je bilo izbranih deset minut in kako je zahtevnost povezana s hashrate in ceno — ter v čem se od obeh razlikuje.

Kaj «zahtevnost» v resnici pomeni

Da bi rudar dodal blok, znova in znova zgošča glavo bloka in pri tem spreminja vrednost, imenovano nonce; išče izid, ki pade pod številski prag, imenovan cilj. Nižji cilj pomeni, da obstaja manj veljavnih zgoščenih vrednosti, zato je v povprečju potrebnih več poskusov — prav to naredi rudarjenje «težje».

Zahtevnost je zgolj človeku berljiv način izraziti, kako nizko leži ta cilj, merjeno glede na najlažji cilj, kar jih je protokol kdaj dopustil (zahtevnost 1). Zahtevnost recimo več bilijonov pomeni, da je sedanji cilj bilijonkrat manjši od tega izhodišča. Vozlišča cilj izpeljejo neposredno iz zahtevnosti, zato sta oba le dva pogleda na isto število.

Ritem 2016 blokov

Bitcoin se ne prilagaja po vsakem bloku, ampak preračuna enkrat na epoho 2016 blokov. Pri desetih minutah na blok bi 2016 blokov moralo trajati natanko dva tedna (20 160 minut) — zato spremembo zahtevnosti pogosto opisujejo kot štirinajstdnevno.

Ker se razmik šteje v blokih in ne v koledarskem času, se dejanska razdalja med dvema prilagoditvama raztegne, kadar omrežje rudari počasi, in skrči, kadar rudari hitro. Vsako polno vozlišče izvede isti izračun samostojno in pride do iste nove vrednosti, zato ni o čem glasovati in ničesar usklajevati.

Račun za vsako prilagoditvijo

Ob koncu epohe omrežje primerja, koliko časa je zadnjih 2016 blokov v resnici trajalo, s časom, kolikor bi morali trajati. V jedru: nova zahtevnost = stara zahtevnost × (pričakovani čas ÷ dejanski čas). Če so bloki prišli hitreje od pričakovanega, je dejanski čas manjši od pričakovanega in zahtevnost naraste; če so prišli počasneje, upade.

Sprememba je omejena: ena sama prilagoditev lahko zahtevnost kvečjemu početveri ali jo zniža na četrtino. Ta meja preprečuje divja nihanja po kratkotrajnem sunku ali zlomu računske moči. Obstaja tudi stara, neškodljiva netočnost za ena: časovni razpon se meri čez 2015 intervalov, obravnava pa kot 2016 — zato povprečni čas bloka leži za las nad desetimi minutami.

Zakaj deset minut in zakaj to šteje

Ciljni razmik med bloki je kompromis. Precej hitrejši bloki bi se po svetovnem omrežju širili manj zanesljivo, kar bi množilo zavrženo delo in kratkotrajne razcepe; precej počasnejši bloki bi potrditve naredili mučno počasne. Deset minut je bilo izbranih kot previdna srednja pot, ki bloku pusti čas, da se razširi po vsem svetu, preden bo verjetno najden naslednji.

Prav stanovitnost tega razmika je razlog, da je urnik izdajanja Bitcoina predvidljiv. Ker vsaka dva tedna nastane približno 2016 blokov, razpolovitev, ki zniža nagrado za blok, pade blizu predvidenega štiriletnega takta, skupna ponudba pa se po predvidljivi poti bliža svoji zgornji meji 21 milijonov.

Zahtevnost, hashrate in povratna zanka

Ko v obratovanje stopijo novi rudarski stroji, se bloki najdejo hitreje kot na deset minut; naslednja prilagoditev zahtevnost zviša in jih spet zavre. Ko rudarji ugašajo — zaradi stroškov energije, izločene strojne opreme, sezonskih razmer v elektriki ali regionalnih pravil —, se bloki upočasnijo in naslednja prilagoditev zahtevnost zniža, da jih pospeši. Sistem se popravlja za nazaj; ne gleda naprej.

Velja omeniti, da se hashrate ne meri neposredno: omrežje ne vidi, koliko strojev teče. Objavljene številke hashrate so ocene, izpeljane iz zahtevnosti in opazovanih časov blokov, in prav zato so na kratkih oknih nemirne ter jih je najbolje brati kot trend.

Mejni primeri in kaj zahtevnost ne pove

Ostri pretresi iz resničnega sveta pokažejo mehanizem pri delu. Ko je sredi leta 2021 velika rudarska regija odpadla z omrežja, je to doživelo svojo dotlej največjo prilagoditev navzdol (okoli 28 %), ki je normalne čase blokov obnovila že v naslednji epohi. Pravila o časovnih žigih in meja početverjenja poleg tega varujejo pred rudarji, ki bi hoteli z uro vplivati na preračun.

Zahtevnost meri vloženi trud za varnost omrežja in ekonomiko rudarjenja — ni cenovni signal in ne tržni kazalnik. Premika se v počasnih, skokovitih korakih in se odziva na pretekle čase blokov, zato o povpraševanju, likvidnosti ali vrednotenju pove malo. Orodja, kot je BIKENZO, ležijo v povsem drugi plasti in prikazujejo širši tržni kontekst, na primer globalni indeks likvidnosti nasproti ceni Bitcoina; to je makro in tržni kontekst, ločen od on-chain mehanike zahtevnosti. Oba pogleda sta koristna in odgovarjata na različna vprašanja.

FAQ

Kako pogosto se zahtevnost Bitcoina prilagodi?
Vsakih 2016 blokov, kar pri desetih minutah na blok nanese približno dva tedna. Natančen koledarski razmik je odvisen od tega, kako hitro so bili bloki v epohi dejansko izrudarjeni.
Ali lahko zahtevnost Bitcoina pade?
Da. Če je prejšnjih 2016 blokov trajalo dlje kot dva tedna — običajno zato, ker je računska moč zapustila omrežje —, naslednja prilagoditev zahtevnost zniža, da se bloki vrnejo k desetminutnemu cilju.
Kaj se zgodi, če veliko rudarjev nenadoma ugasne?
Bloki se najdejo počasneje in potrditve trajajo dlje do naslednje prilagoditve. Takrat zahtevnost pade in normalen tempo se povrne. V skrajnem primeru lahko ena sama prilagoditev navzdol zahtevnost zniža na četrtino.
Ali sta zahtevnost in hashrate isto?
Nista. Hashrate je vsa računska moč, ki rudari Bitcoin; zahtevnost je nastavitev protokola, ki iskanje bloka oteži ali olajša. Hashrate ni neposredno opazljiv, zato se oceni iz zahtevnosti in časov blokov.
Ali zahtevnost vpliva na ceno Bitcoina?
Neposredno ne. Zahtevnost se odziva na pretekle čase blokov in na rudarsko dejavnost ter se spreminja v počasnih, skokovitih korakih. Odraža trud za varnost in ekonomiko rudarjenja, ne tržnega povpraševanja, in cene ne napoveduje.
Zakaj je povprečni čas bloka Bitcoina nekoliko nad desetimi minutami?
Drobna netočnost za ena v izvirni kodi meri razpon epohe čez 2015 intervalov, obravnava pa ga kot 2016. Učinek je zanemarljiv in nikoli ni bil spremenjen, zato bloki v povprečju padejo komaj nad deset minut.

A Bitcoin liquidity terminal. Global central-bank liquidity, plotted against the Bitcoin price, in one screen.

Zahtevajte predogled