Úprava obtížnosti Bitcoinu

Andreas HartwigEkonomický novinář a expert na krypto finance

Zhruba každých 2016 bloků — tedy asi po dvou týdnech — Bitcoin automaticky přepočítá těžební obtížnost: zvýší ji, když se bloky nacházejí příliš rychle, a sníží, když přicházejí příliš pomalu. Průměrný odstup mezi dvěma bloky tak zůstává blízko deseti minutám bez ohledu na to, kolik výpočetního výkonu přibude nebo zmizí.

U Bitcoinu žádný centrální provozovatel nerozhoduje o tom, jak těžké má být najít blok. Protokol místo toho obsahuje vestavěnou zpětnou vazbu: měří, jak rychle vznikly poslední bloky, a posouvá těžební cíl tak, aby se tempo vracelo k jednomu bloku za deset minut. Tato «úprava obtížnosti» je jedním z tichých mechanismů, které udržují takt bloků Bitcoinu — a s ním předvídatelné vydávání nových mincí — pozoruhodně stabilní, přestože světový výpočetní výkon vzrostl o mnoho řádů a občas prudce spadl. Tento článek vysvětluje, co obtížnost je, jak její úprava funguje, proč bylo zvoleno deset minut a jak obtížnost souvisí s hashrate a cenou — a v čem se od obou liší.

Co «obtížnost» skutečně znamená

Aby těžař přidal blok, znovu a znovu hashuje hlavičku bloku a mění přitom hodnotu zvanou nonce; hledá výsledek, který padne pod číselný práh zvaný cíl. Nižší cíl znamená, že platných hashů existuje méně, takže je v průměru potřeba více pokusů — právě to dělá těžbu «těžší».

Obtížnost je jen lidsky čitelný způsob, jak vyjádřit, jak nízko ten cíl leží, měřeno vůči nejsnadnějšímu cíli, který kdy protokol povolil (obtížnost 1). Obtížnost řekněme několika bilionů znamená, že současný cíl je bilionkrát menší než tento výchozí bod. Uzly odvozují cíl přímo z obtížnosti, takže obojí jsou jen dva pohledy na totéž číslo.

Rytmus 2016 bloků

Bitcoin neupravuje po každém bloku, ale přepočítává jednou za epochu o 2016 blocích. Při deseti minutách na blok by 2016 bloků mělo trvat přesně dva týdny (20 160 minut) — proto se změna obtížnosti obvykle popisuje jako čtrnáctidenní.

Protože se interval počítá v blocích, a ne v kalendářním čase, skutečný odstup mezi dvěma úpravami se protáhne, když síť těží pomalu, a zkrátí, když těží rychle. Každý plný uzel provede tentýž výpočet samostatně a dojde ke stejné nové hodnotě, takže není o čem hlasovat ani co koordinovat.

Výpočet za každou úpravou

Na konci epochy síť porovná, jak dlouho posledních 2016 bloků skutečně trvalo, s tím, jak dlouho trvat mělo. V jádru: nová obtížnost = stará obtížnost × (očekávaný čas ÷ skutečný čas). Přicházely-li bloky rychleji, než se čekalo, je skutečný čas menší než očekávaný a obtížnost stoupá; přicházely-li pomaleji, klesá.

Změna je omezená: jediná úprava může obtížnost nanejvýš zčtyřnásobit nebo ji srazit na čtvrtinu. Tento limit brání divokým výkyvům po dočasném náporu či zhroucení výpočetního výkonu. Existuje také stará, neškodná nepřesnost o jedničku: časové rozpětí se měří přes 2015 intervalů, ale zachází se s ním jako s 2016 — proto průměrný čas bloku leží o vlásek nad deseti minutami.

Proč deset minut a proč na tom záleží

Cílový odstup mezi bloky je kompromis. Mnohem rychlejší bloky by se po celosvětové síti šířily méně spolehlivě, což by množilo zmařenou práci a krátkodobá rozvětvení; mnohem pomalejší bloky by dělaly potvrzení únavně zdlouhavými. Deset minut bylo zvoleno jako opatrná střední cesta, která dá bloku čas rozšířit se po celém světě, než bude pravděpodobně nalezen další.

Právě stabilita tohoto odstupu činí plán vydávání Bitcoinu předvídatelným. Protože se každé dva týdny vytěží zhruba 2016 bloků, dopadá halving snižující odměnu za blok blízko zamýšlenému čtyřletému taktu a celková nabídka se po odhadnutelné dráze blíží svému stropu 21 milionů.

Obtížnost, hashrate a zpětná vazba

Když se do provozu dostanou nové těžební stroje, bloky se nacházejí rychleji než každých deset minut; následující úprava obtížnost zvýší a znovu je zbrzdí. Když těžaři vypínají — kvůli cenám energie, vyřazenému hardwaru, sezonní situaci v elektřině či regionálním pravidlům —, bloky se zpomalí a další úprava obtížnost sníží, aby je zrychlila. Systém se opravuje zpětně; nedívá se dopředu.

Stojí za zmínku, že hashrate se neměří přímo: síť nevidí, kolik strojů běží. Zveřejňovaná čísla hashrate jsou odhady odvozené z obtížnosti a pozorovaných časů bloků, a proto jsou v krátkých oknech neklidná a nejlépe se čtou jako trend.

Hraniční případy a co obtížnost neříká

Prudké otřesy v reálném světě ukazují mechanismus při práci. Když v polovině roku 2021 vypadl ze sítě velký těžební region, zažila síť svou do té doby největší úpravu směrem dolů (kolem 28 %), která obnovila normální časy bloků už během následující epochy. Pravidla pro časová razítka a čtyřnásobný limit navíc chrání před těžaři, kteří by chtěli hodinami ovlivnit přepočet.

Obtížnost měří úsilí vložené do bezpečnosti sítě a ekonomiku těžby — není cenovým signálem ani tržním ukazatelem. Pohybuje se pomalými, skokovými kroky a reaguje na minulé časy bloků, takže o poptávce, likviditě či ocenění vypovídá málo. Nástroje jako BIKENZO leží v úplně jiné vrstvě a zobrazují širší tržní kontext, například globální index likvidity proti ceně Bitcoinu; to je makro a tržní kontext, oddělený od on-chain mechaniky obtížnosti. Oba pohledy jsou užitečné a odpovídají na jiné otázky.

FAQ

Jak často se obtížnost Bitcoinu upravuje?
Každých 2016 bloků, což při deseti minutách na blok vychází zhruba na dva týdny. Přesný odstup v kalendáři závisí na tom, jak rychle byly bloky během epochy skutečně vytěženy.
Může obtížnost Bitcoinu klesnout?
Ano. Pokud předchozích 2016 bloků trvalo déle než dva týdny — obvykle proto, že ze sítě odešel výpočetní výkon —, další úprava obtížnost sníží, aby se bloky vrátily k desetiminutovému cíli.
Co se stane, když najednou vypne mnoho těžařů?
Bloky se nacházejí pomaleji a potvrzení trvají déle, dokud nepřijde další úprava. Tehdy obtížnost klesne a normální tempo se obnoví. V krajním případě může jediná úprava směrem dolů srazit obtížnost na čtvrtinu.
Je obtížnost totéž co hashrate?
Není. Hashrate je veškerý výpočetní výkon, který těží Bitcoin; obtížnost je nastavení protokolu, které nalezení bloku ztěžuje nebo usnadňuje. Hashrate nelze pozorovat přímo, a tak se odhaduje z obtížnosti a časů bloků.
Ovlivňuje obtížnost cenu Bitcoinu?
Přímo ne. Obtížnost reaguje na minulé časy bloků a na těžební aktivitu a mění se pomalými, skokovými kroky. Odráží úsilí o bezpečnost a ekonomiku těžby, nikoli tržní poptávku, a cenu nepředpovídá.
Proč je průměrný čas bloku Bitcoinu mírně nad deseti minutami?
Drobná nepřesnost o jedničku v původním kódu měří rozpětí epochy přes 2015 intervalů, ale zachází s ním jako s 2016. Účinek je nepatrný a nikdy nebyl změněn, takže bloky vycházejí v průměru nepatrně nad deset minut.

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

Vyžádat náhled