Co je těžba kryptoměn?
Obsah
Úvod
Jak těžba funguje?
Lze těžit všechny kryptoměny?
Proof of Work (PoW)
Různé metody těžby kryptoměn
Těžba pomocí CPU
Těžba pomocí GPU
Těžba pomocí ASIC
Těžařské pooly
Závěrem
Co je těžba kryptoměn?
DomůČlánky
Co je těžba kryptoměn?

Co je těžba kryptoměn?

Začátečníci
Zveřejněno Dec 6, 2018Aktualizováno Mar 22, 2022
8m

TL;DR

Těžbou kryptoměn se rozumí proces ověřování a validace transakcí v blockchainu. Je to také proces, při kterém vznikají nové jednotky kryptoměn. Práce, kterou těžaři vykonávají, vyžaduje intenzivní výpočetní zdroje, ale právě díky ní je blockchainová síť bezpečná. Poctiví a úspěšní těžaři jsou za svou práci odměňováni nově vytvořenými kryptoměnami plus transakčními poplatky.


Úvod

Těžba je proces, při kterém se ověřují transakce kryptoměn mezi uživateli a přidávají se do veřejné účetní knihy blockchainu. Těžba je také zodpovědná za zavádění nových coinů do stávajícího množství v oběhu.

Těžba je jedním z klíčových prvků, které umožňují fungování blockchainu Bitcoinu jako distribuované účetní knihy. Všechny transakce jsou zaznamenávány v síti typu peer-to-peer bez potřeby centrální autority. V tomto článku se budeme zabývat těžbou tak, jak probíhá v síti Bitcoinu, ale proces je podobný i v případě altcoinů, které používají stejný mechanismus těžby.


Jak těžba funguje?

Jakmile jsou provedeny nové transakce v blockchainu, jsou odeslány do poolu, který se nazývá paměťový pool. Úkolem těžaře je ověřit platnost těchto čekajících transakcí a uspořádat je do bloků. Blok si můžete představit jako stránku účetní knihy blockchainu, ve které je zaznamenáno několik transakcí (spolu s dalšími údaji).
Přesněji řečeno, těžební uzel je zodpovědný za shromažďování nepotvrzených transakcí z paměťového poolu a jejich sestavování do kandidátského bloku. Poté se těžař pokusí tento kandidátský blok převést na platný, potvrzený blok. K tomu však potřebuje najít řešení složitého matematického problému. To vyžaduje velké množství výpočetních prostředků, ale za každý úspěšně vytěžený blok získá těžař odměnu za blok, která se skládá z nově vytvořených kryptoměn plus transakčních poplatků. Podívejme se na proces těžby blíže.


Krok 1 – Hashování transakcí

Prvním krokem těžby bloku je vzít čekající transakce z paměťového poolu a jednu po druhé je odeslat prostřednictvím hashovací funkce. Pokaždé, když předložíme kus dat prostřednictvím hashovací funkce, vygenerujeme výstup pevné velikosti, který se nazývá hash. V kontextu těžby se hash každé transakce skládá z řetězce čísel a písmen, který funguje jako identifikátor. Hash transakce představuje všechny informace obsažené v dané transakci.
Kromě hashování a vypisování každé transakce zvlášť přidá těžař také vlastní transakci, v níž si sám pošle odměnu za blok. Tato transakce se označuje jako transakce coinbase a právě díky ní vznikají zcela nové coiny. Ve většině případů je transakce coinbase první, která je zaznamenána v novém bloku, a po ní následují všechny čekající transakce, které těžaři chtějí ověřit.

Krok 2 – Vytvoření Merkleova stromu

Po zahashování každé transakce jsou tyto hashe uspořádány do tzv. Merkleova stromu. Merkleův strom, známý také jako hashový strom, se vytvoří uspořádáním hashů transakcí do dvojic a jejich následným hashováním. Nové výstupy hashů se pak uspořádají do dvojic a znovu se hashují a proces se opakuje, dokud se nevytvoří jediný hash. Tento poslední hash se také nazývá kořenový hash (nebo Merkleův kořen) a je to v podstatě hash, který reprezentuje všechny předchozí hashe, které byly použity k jeho vytvoření.

Krok 3 – Nalezení platné hlavičky bloku (hash bloku)

Hlavička bloku funguje jako identifikátor každého jednotlivého bloku, což znamená, že každý blok má jedinečný hash. Při vytváření nového bloku těžaři kombinují hash předchozího bloku s kořenovým hashem svého kandidátského bloku, aby vygenerovali hash nového bloku. Kromě těchto dvou prvků však musí přidat také libovolné číslo zvané nonce.

Těžař tedy musí při ověřování svého kandidátského bloku zkombinovat kořenový hash, hash předchozího bloku a nonce a všechny je odeslat prostřednictvím hashovací funkce. Jejich cílem je vytvořit hash, který je považován za platný.

Kořenový hash ani hash předchozího bloku nelze změnit, takže těžaři musí několikrát změnit hodnotu nonce, dokud nenajdou platný hash.

Aby byl výstup (hash bloku) považován za platný, musí být menší než určitá cílová hodnota, která je určena protokolem. Při těžbě bitcoinů musí hash bloku začínat určitým počtem nul. Tomu se říká obtížnost těžby.

Krok 4 – Odeslání vytěženého bloku

Jak jsme právě viděli, těžaři musí znovu a znovu hashovat hlavičku bloku s různými hodnotami nonce. Tuto práci opakují, dokud nenajdou platný hash bloku. Těžař, který jej našel, pak svůj blok vyšle do sítě. Všechny ostatní uzly zkontrolují, zda jsou blok a jeho hash platné, a pokud ano, přidají nový blok do své kopie blockchainu.

V tomto okamžiku se kandidátský blok stává potvrzeným blokem a všichni těžaři přejdou k těžbě dalšího bloku. Všichni těžaři, kteří nedokázali včas najít platný hash, svůj kandidátský blok zahodí a závod v těžbě začíná znovu.


Úprava obtížnosti těžby

Obtížnost těžby je pravidelně upravována protokolem, což zajišťuje, že rychlost vytváření nových bloků zůstává konstantní. Díky tomu jsou emise nových coinů stabilní a předvídatelné. Obtížnost se upravuje úměrně množství výpočetního výkonu (hash rate) věnovaného síti.

Pokaždé, když se do sítě připojí noví těžaři a zvýší se konkurence, obtížnost hashování se zvýší, což zabrání snížení průměrné doby bloku. Naopak, pokud se mnoho těžařů rozhodne síť opustit, obtížnost hashování se sníží, takže vytěžit nový blok bude méně obtížné. Díky těmto úpravám zůstává doba bloku konstantní bez ohledu na celkový hashovací výkon sítě.


Co když se těží dva bloky současně?

Někdy se stává, že dva těžaři odesílají platný blok ve stejnou dobu a v síti se objeví dva konkurenční bloky. Těžaři pak začnou těžit další blok na základě bloku, který obdrželi jako první. To způsobí, že se síť (dočasně) rozdělí na dvě různé verze blockchainu.

Soutěž mezi těmito bloky bude pokračovat, dokud nebude vytěžen další blok, a to na některém z konkurenčních bloků. Po vytěžení nového bloku bude za vítěze považován ten blok, který mu předcházel. Blok, který bude zamítnut, se nazývá sirotčí blok nebo zastaralý blok, což vede k tomu, že všichni těžaři, kteří si tento blok vybrali, se vrátí k těžbě chainu vítězného bloku.


Lze těžit všechny kryptoměny?

Bitcoin je nejpopulárnějším a nejznámějším příkladem těžitelné kryptoměny, ale ne všechny kryptoměny jsou těžitelné. Těžba bitcoinů je založena na algoritmu konsenzu zvaném Proof of Work (PoW).


Proof of Work (PoW)

Proof of Work (PoW) je původní mechanismus konsenzu blockchainu, který vytvořil Satoshi Nakamoto. Byl představen v bílé knize Bitcoinu v roce 2008. Stručně řečeno, PoW určuje, jak blockchainová síť dosahuje konsenzu napříč všemi distribuovanými účastníky bez prostředníků třetích stran. Dosahuje toho tím, že vyžaduje značný výpočetní výkon, aby odradil uživatele se špatnými úmysly.
Jak jsme viděli, transakce v síti PoW ověřují těžaři. Aby těžaři získali právo těžit další blok, soutěží mezi sebou řešením složitých kryptografických hádanek pomocí specializovaného těžebního hardwaru. Těžař, který jako první najde platné řešení, pak může vysílat svůj blok transakcí do blockchainu a získat odměnu za blok.

Množství kryptoměn v odměně za blok se v různých blockchainech liší. Například v blockchainu Bitcoinu mohou těžaři k prosinci 2021 získat v odměně za blok 6,25 BTC. Množství BTC v odměně za blok se každých 210 000 bloků (přibližně každé čtyři roky) sníží o polovinu díky mechanismu půlení.


Různé metody těžby kryptoměn

Pro těžbu kryptoměn neexistuje jen jedna metoda. Zařízení a proces se mění s tím, jak se objevuje nový hardware a algoritmy konsenzu. Těžaři obvykle používají k řešení složitých kryptografických rovnic specializované počítačové jednotky. Podívejme se, jak fungují některé z nejběžnějších metod těžby.


Těžba pomocí CPU

Těžba pomocí centrální procesorové jednotky (CPU) zahrnuje použití procesoru počítače k provádění hashovacích funkcí požadovaných pro PoW. V počátcích Bitcoinu byly těžební náklady a bariéra vstupu nízké. Obtížnost těžby zvládal běžný procesor, takže se o těžbu BTC a dalších kryptoměn mohl pokusit kdokoli.

Jak však začalo těžit stále více lidí a hashrate sítě se zvyšoval, ziskové těžení bylo stále obtížnější. Navíc vzestup specializovaného těžebního hardwaru s větším výpočetním výkonem nakonec těžbu pomocí CPU téměř znemožnil. Dnes už těžba pomocí CPU není životaschopná, protože všichni těžaři používají specializovaný hardware.


Těžba pomocí GPU

Grafické procesory (GPU) jsou určeny k paralelnímu zpracování široké škály aplikací. Obvykle se používají pro videohry nebo vykreslování grafiky, ale lze je použít i pro těžbu.

GPU jsou relativně levné a flexibilnější než oblíbený těžební hardware ASIC. Některé altcoiny lze těžit pomocí GPU, ale efektivita těžby závisí na obtížnosti těžby a algoritmu.


Těžba pomocí ASIC

ASIC (zákaznické integrované obvody) jsou navrženy pro jeden konkrétní účel. U kryptoměn pojem označuje specializovaný hardware vyvinutý pro těžbu. Těžba pomocí ASIC je vysoce efektivní, ale drahá.

Těžba je soutěž. Abyste mohli těžit se ziskem, potřebujete konkurenceschopný těžební hardware. Vzhledem k tomu, že těžební zařízení ASIC jsou na špičce těžebních technologií, jsou náklady na jednotku mnohem vyšší než u CPU nebo GPU. Také neustálý pokrok v technologii ASIC rychle způsobuje, že starší modely ASIC jsou nerentabilní, což znamená, že je často třeba je vyměňovat. Těžba pomocí ASIC je tak jedním z nejdražších způsobů těžby, a to i bez započtení nákladů na elektřinu.


Těžařské pooly

Vzhledem k tomu, že odměna za blok je udělena prvnímu úspěšnému těžaři, je pravděpodobnost nalezení správného hashe velmi malá. Těžaři s malým procentem těžebního výkonu mají velmi malou šanci, že sami objeví další blok. Řešení tohoto problému nabízejí těžařské pooly.

Těžařské pooly jsou skupiny těžařů, kteří sdružují své zdroje (hashovací výkon), aby zvýšili pravděpodobnost získání odměny za blok. Když pool úspěšně nalezne blok, těžaři rozdělí odměnu rovným dílem mezi všechny členy poolu podle množství odvedené práce.

Těžařské pooly mohou být pro jednotlivé těžaře výhodné z hlediska nákladů na hardware a elektřinu, ale jejich dominance v těžbě vyvolává obavy z 51% útoku na síť.


Závěrem

Těžba kryptoměn je klíčovou součástí Bitcoinu a dalších PoW blockchainů. Je to jedna z věcí, které udržují síť bezpečnou a emise nových coinů stabilní. Těžba má určité výhody i nevýhody, z nichž nejzřejmější je potenciální výdělek, který získáte z odměn za bloky. Zisky z těžby však může ovlivnit řada faktorů, včetně nákladů na elektřinu a tržních cen. Neexistuje žádná záruka, že budete mít zisky, takže než se vrhnete do těžby kryptoměn, měli byste si provést vlastní průzkum a vyhodnotit všechna potenciální rizika.