Pojďme se ponořit do kódu, který má na svědomí halving a tajný limit pro jejich počet. Ukážeme si, jak pracuje a jaké v něm jsou proměnné. V podstatě halving existuje díky jednomu řádku kódu.
Tip: Graf profitability těžby BTC po halvingu
Se čtyřmi dny zbývajícími do halvingu BTC, se tato událost stala jednou z nejdiskutovanějších témat v kryptu. Odborníci se předháněli, kdo bude blíže ve zvážení dopadů, které halving bude na trhu mít. A mnozí se dohadují o tom, zda již byl halving „oceněn“.
Celková nabídka BTC je omezena na 21 milionů coinů, což znamená, že jakmile se vytěží poslední coin, žádný nový BTC už prostě nebude. Každý nový Bitcoin je vytvořen těžbou, což je proces, ve kterém výkonný hardware soutěží o řešení složitých matematických problémů. Jakmile je blok vytěžen, těžař, který jej vytěžil, obdrží za odměnu určité množství BTC.
5 days left until next #BitcoinHalving
— Bitcoin Halving Countdown (@Bitcoin_Halving) May 7, 2020
▓▓▓▓▓▓▓▓▓▓▓▓▓░ 99%
Jak se to vyvíjelo
Když byl BTC vytvořen, byla bloková odměna nastavena na 50 BTC. To znamená, že každý těžař vydělal 50 BTC za vytěžený blok. Desetiminutová bloková doba by však znamenala, že celá nabídka by se těžila za méně než osm let.
K vyřešení tohoto problému obsahuje bitcoinová síť poměrně zajímavý kus kódu, který snižuje časovou odměnu pro těžaře. Tak, aby byly uzly v síti motivovány k tomu, aby pokračovaly v těžbě a zabezpečovaly síť.
A jak halving Bitcoinu funguje
Místo toho, aby se zavedl složitý mechanismus, tvůrce BTC jej vybavil jediným řádkem kódu, který nařídil síti snížit výdělky, které mají těžaři na polovinu, a sice každých 210 000 bloků.
Zde jsou hlavní faktory:
- Consensus.nSubsidyHalvingInterval = 210 000
- nHeight = current block height (bude 630 000 v době halvingu)
- COIN = 100 000 000 (počet Satoshi v 1 BTC)
- nSubsidy = Dotace na těžbu 1 bloku
A tady je bitcoinový kód:
Funkce, kterou vidíme ve výše uvedeném kódu, se nazývá „GetBlockSubsidy“. Účelem funkce je vypočítat dotaci nebo odměnu za těžbu bloků BTC. To je to, co určuje, kolik těžařů dostane zaplaceno.
Proměnná „halvings“ spočítá počet halvingů vydělením aktuální výšky bloku konstantní hodnotou 210 000. V den halvingu bude proměnná „nHeight“, která představuje aktuální výšku bloku, větší než 630 000. Proto bude hodnota halvingů tři (630 000 / 210 000). A to řekne systému, že je čas na třetí halving.
Počet halvingů bude poté zkontrolován, aby se určilo, zda je větší než 64, protože BTC jsou naprogramovány tak, aby podstoupily maximálně 64 halvingů. Vzhledem k tomu, že příští týden bude třetí halving, bude kód pokračovat.
V řádku 1 245 vidíme původní dotaci, která se počítá pro těžbu bloku. Jednotkou „nSubsidy“ je COIN, což je konstanta představující 100 000 000 jednotek – což odpovídá počtu Satoshi (nejmenšího množství BTC) v jednom Bitcoinu.
Po provedení řádku 1 245 je hodnota „nSubsidy“ 50 bitcoinů. Pak je to vyděleno dvěma za každý halving, který již nastal. Pro třetí halving bude třikrát vyděleno dvěma, a to na 6,25 bitcoinů. A to je to, co každý těžař získá za těžbu nového bloku.
Závěr
A tady to máte, lidi, tohle je to kouzlo Bitcoinu. Halving tu máme za chvíli. Bitcoin se stane opět o něco vzácnější. Uvidíme, co nám budoucnost přinese. A jestli BTC půjde to the Moon.
Časté dotazy k halvingu
Halving neboli také půlení je moment, kdy těžaři Bitcoinu obdrží poloviční odměnu za vytěžený blok.
Ne, vaše Bitcoiny se nijak nepůlí ani nic jiného.
Historicky tomu tak bylo, zda se bude historie opakovat ale nevíme.
Výborně! A myslím, že Kryptomagazín by se měl ubírat i technickým směrem. Programování dApps obecně, vývoj v Solidity a podobně. Bylo by to skvělý.
Díky za skvělý článek Míšo!