Jak funguje těžba kryptoměn?

4.3
(6)

Zejména pro nováčky v kryptoměnovém světě je těžba kryptoměn naprosto nesrozumitelným tématem. Tento článek je věnovaný právě těm, kteří o těžbě kryptoměn zatím nic nevědí a chtějí se o této oblasti dozvědět trochu víc. 

Co je to těžba kryptoměn?

Nejprve bychom si měli připomenout, co vůbec těžba kryptoměn, neboli mining, znamená. Jedná se o výpočty matematických úloh, při kterých těžař spaluje elektrický proud (forma vkladu) a za úspěšné řešení získá určité množství těžené kryptoměny (výnos). Těžba kryptoměn zároveň kontroluje platební transakce (převody mezi účty) v kryptoměnové síti.

Těžba kryptoměn zajišťuje bezpečnost systému. V této souvislosti mluvíme o blockchainu, což je decentralizovaný systém, ve kterém nefiguruje žádná centrální autorita. 

Centrální autorita naopak působí v centralizovaném systému, který se nachází v dnešním finančním světě. Je to třeba banka, která se stará o správnost údajů např. zůstatků na bankovních účtech a také o potvrzování a provedení jednotlivých transakcí, tj. plateb za nákupy, převody mezi účty a další.

Jak už bylo popsáno o pár řádků výše, v decentralizovaném systému žádná centrální autorita není. O správnost údajů, tedy všech jednotlivých transakcí v tomto systému, se stará celá síť počítačů (těžařů) neboli uzlů, které mezi sebou komunikují a posílají si navzájem aktuální data o zůstatcích, transakcích apod. 

Podívejme se tedy blíže na to, jaké konkrétní typy těžby kryptoměn existují, jak fungují a jaké algoritmy používají.

Jak funguje těžba kryptoměn v Proof-of-Work?

Laická veřejnost má na těžbu kryptoměn spoustu názorů. Ať už ale jsou nebo nejsou pravdivé či relevantní, je důležité si uvědomit, že těžba ve své podstatě poskytuje jednu jedinou věc. A tou je zabezpečení.

Abychom tomu lépe porozuměli, musíme znát princip těžby a alespoň povrchovou stavbu ekosystému kryptoměn. V této části budeme popisovat věc výhradně na Bitcoinu, který byl první kryptoměnou, která těžbu typu Proof of Work využívala.

Jednotlivé skupiny lidí v tomto ekosystému

Máme tu celkem tři skupiny lidí, kteří v celém ekosystému kryptoměn hrají nějakou roli – uživatelé, provozovatelé uzlů (nodes) a těžaři.

Uživatelé

První skupinou jsou uživatelé. Ty asi není třeba nijak dlouze představovat. Je jím každý, kdo někdy Bitcoin nebo jinou kryptoměnu využil – ať už jakýmkoli způsobem.

Uzly

Další skupinou jsou provozovatelé uzlů (anglicky nodů). Ti už jsou zajímavější. Každý z těchto operátorů má malé zařízení, které ukládá celou historii blockchainu dané kryptoměny.

Blockchain si můžeme představit jako účetní knihu se záznamy všech transakcí, které se za jeho existenci staly. Práce node je pak ověřování čísel – jestli sedí obnosy na adresách, jestli jsou transakce validní, jestli někdo nepodvádí atd.

Nody jsou základním kamenem celého blockchainu. Jedná se o místa v síti, na nichž se nacházejí veškeré informace; bez uzlů by žádný blockchain neexistoval, protože by neměl být kde uložen.

Těžaři

Posledním dílkem této skládačky jsou těžaři. Jejich prací je slučovat transakce, které na síti dané kryptoměny proběhly, do bloků a řadit je za sebe. Každý blok je závislý na tom minulém a dohromady tvoří řetězec bloků = blockchain. Změna jediného údaje v jakémkoliv bloku by ovlivnila všechny mladší bloky na tento blok napojené, což je v praxi téměř nemožné a minimálně extrémně drahé. Díky tomu blockchain představuje jednu z nejbezpečnějších datových struktur.

Co je to blok?

Každý blok je něco jako “košík”, který obsahuje hned několik věcí.

Tou hlavní a největší položkou je soupis transakcí, které se uskutečnily za určité časové období. V Bitcoinu je systém nastavený na okno o zhruba 10 minutách.

Další velice důležitou věcí je tzv. nonce. To je náhodně generovaný kód, který se do bloku přidává.

Ukázkový příklad jednotlivých po sobě jdoucích bloků v blockchainu – Jak funguje těžba kryptoměn
Ukázkový příklad jednotlivých po sobě jdoucích bloků v blockchainu. (Zdroj: reserachgate.net)

Těžaři tyto dvě věci vezmou, dají je dohromady a pomocí algoritmu (hashovací funkce) je převedou na hash, jenž si můžeme představit jako podpis bloku. Každý hash je unikátní, protože i údaje do hashovací funkce vstupující jsou unikátní – transakce jsou vždy různě velké, probíhají v různý čas a mezi různými adresami. Kromě toho je hashovací funkce nevratná, což znamená, že pomocí hashe nelze sestavit soupis transakcí, nonces atd. Je snadné si to představit tak, že víme, jak násobit, ale nevíme, jak dělit.

Jak bylo zmíněno výše, těžaři vezmou transakce, přidají k nim většinou náhodně vygenerovaný nonce a vytvoří hash přes hashovací funkci.

  • Pokud má výsledný hash správný tvar, blok uzamykají, získávají odměnu v podobě nově vytvořených mincí a vrhají se do těžení dalšího bloku.
  • Pokud však hash nesedí, těžaři musí zkusit jiný nonce a z nové sady dat vytvořit nový hash. Toto dělají milionkrát za vteřinu až do doby, kdy tuto “hádanku” opravdu vyřeší – naleznou správný nonce a tedy i správný hash.

Vzhledem k údajům o transakcích nezávisí hash jen na bloku samotném, ale i na všech blocích napojených do blockchainu – odtud plyne ona zmíněná vazba mezi všemi bloky, díky které můžeme mluvit o “blockchainu”.

Jak se těžba kryptoměn zabezpečuje?

Zabezpečení sítě kryptoměn vychází z jednoduchého principu, který už jsme nastínili výše. Blok lze uzamknout a transakce potvrdit jedině tak, že najdeme správný nonce. Jelikož se jedná o naprosto náhodné číslo, může nám jeho hádání zabrat i miliardy pokusů. Ano, teoreticky se těžař může trefit hned napoprvé, ovšem šance, že se tak stane, je ještě mnohem menší, než šance na výhru ve sportce.

Druhým klíčem k pochopení bezpečnosti je princip, že platí jenom nejdelší blockchain. Jinak řečeno – těžař, který před ostatní těžaře a uzly postaví nejdelší blockchain plný správných hashů, má zákonitě pravdu a tento blockchain je pokládán za jediný pravý. Všichni ostatní těžaři a uzly tento blockchain “převezmou” a pracují na dalším prodloužení řetězce. Cokoliv kratšího je celou sítí zamítnuto.

Třetí a poslední důležitý princip je tzv. difficulty adjustment. Už jsme si řekli, že čas pro vytěžení bloku Bitcoinu se má v průměru rovnat 10 minutám. Při jeho zrodu těžba probíhala pouze na jediném počítači a každých 10 minut byl uzavřený jeden blok – systém fungoval stejně. Ve chvíli, kdy přibyl další počítač o stejném výkonu, se čas zkrátil na polovinu, protože dva těžaři hádali čísla 2x rychleji než jeden těžař.

Z toho důvodu systém Bitcoinu obsahuje zajímavou pojistku – obtížnost těžby se neustále přizpůsobuje současnému výkonu sítě tak, aby výsledný čas tvorby bloku byl vždy kolem 10 minut. Tedy pokud bude Bitcoin těžit miliarda počítačů, těžba bude miliardkrát složitější než na počátku.

Tři věci zmíněné výše už nám říkají vše potřebné.

Pokud chceme změnit historii transakcí (například 10 bloků zpět), musíme:

  1. Vyřešit nonce posledních 10 bloků sám (síť už bloky vyřešila a běží dál, já potřebuji vyřešit bloky v minulosti a přednést nejdelší řetězec).
  2. Musíme mít přístup k výkonu stejně velkému, jako celá síť, jelikož těžím na stejné obtížnosti.
  3. Musíme bloky řešit rychleji než celá síť, abychom jí jednou předběhli a platila tak naše verze. Potřebujeme tedy mít dokonce větší výkon než celá síť.

Na obrázku dole můžete vidět graf ceny Bitcoinu a celkového hashrate sítě od spuštění Bitcoinu v roce 2009 až do října 2021.

Graf ceny Bitcoinu (tmavě modrá) a hashrate (světle modrá)
Graf ceny Bitcoinu (tmavě modrá) a hashrate (světle modrá). (Zdroj: cryptoslate.com)

Pro jednotlivce (dnes už i pro státy) je v podstatě nemožné na takový výkon dosáhnout. Síť je tím pádem velmi dobře zabezpečená proti přepisování historie transakcí a následným problémům. Čím více těžařů v síti je, tím více je blockchain bezpečnější a odolnější. Zároveň to ale znamená vysokou obtížnost těžby, což je také důvodem, proč dnes těžba bitcoinů pro jednotlivce nemá moc smysl.

Typy těžebních algoritmů

Jak jsme si již řekli, u Bitcoinu je třeba zkoušet správnost zvoleného nonce, který dosadíme do hashovacího algoritmu a získáme tak hash. Těžební algoritmus, který nám hash získá, ale není jen jeden. Pojďme se podívat na pár dalších příkladů.

SHA-256

SHA-256 byla první hashovací funkce, či algoritmus, který byl kdy použit v kryptoměnách. Mezi jeho přední představitele patří i samotný Bitcoin. Jeho otevřenost dovoluje velkou specializaci hardwaru a od těžby pomocí procesoru a grafických karet se přešlo na ASIC minery – zařízení, jejichž jediná funkce je těžba. Jedná se o specializovaná zařízení na různé algoritmy těžby, proto je to také ta nejlepší volba. ASIC minerů existuje nespočet v závislosti na jednotlivých algoritmech, bezesporu však nalezneme nejvíce ASIC minerů určených pro SHA-256 a tím pádem těžbu Bitcoinu. Díky tomu má algoritmus SHA-256 dnes největší výpočetní sílu na světě.

Funkce SHA-256 je jednou z variant širší SHA-2, celým názvem Secure Hashing Algorhitm – 2. SHA-2 vznikla původně z první SHA-1, vytvořila ji Národní bezpečnostní agentura Spojených států už v roce 2001. Funkce SHA-256 vytvoří z vstupních dat zašifrovaný klíč o délce 256 bitů, přičemž zpětné dekódování vstupu je nemožné. Na rozdíl od SHA-1, jejíž pověst už byla v kryptografické historii pošramocena, SHA-2 a jeho specifickou variantu SHA-256 dodnes nikdo neprolomil.

Kromě Bitcoinu SHA-256 používají i světové známé a široce používané ověřovací a šifrovací protokoly – např. SSL a TLS certifikáty nebo SSH šifrování identity. SHA-256 nalezneme i ve správě hesel v unixových operačních systémech (např. Linux). Jedná se tedy o časem prověřenou šifrovací technologii, která v historii lidstva ještě neselhala. I z toho důvodu je SHA-256 inspirací pro všechny další těžební algoritmy kryptoměn, např. Ethash a Scrypt.

Ethash

Všechny další algoritmy jsou modernější a své kořeny mají v původní SHA-256. Jsou komplexnější, protože používají více funkcí, a i samotné hashovací funkce mohou být rozdílné. Proč ale vůbec vznikly, když výše popsaná funkce SHA-256 je z hlediska bezpečnosti naprosto dostačující?

Protože jsou ASIC minery velmi drahá zařízení (např. za půl milionu korun), má k nim přístup méně lidí, což narušuje decentralizaci. A protože byly ASIC minery původně stvořeny pro SHA-256, vývojáři dalších kryptoměn se rozhodli těžební algoritmy modifikovat a zahrnout do nich opatření, které použití ASIC minerů znemožní. Jedním z nich, a zároveň tím nejúčinnějším, bylo vložení požadavku na velkou výpočetní paměť.

Algoritmus Ethash původně používalo Ethereum ještě před tím, než v září roku 2022 přešlo na Proof of Stake. Ethash je silně závislý na velikosti operační paměti, protože těžaři Etherea zmíněný nonce hledají ze soustavy dat velké několik GB, přesněji řečeno z tzv. DAGu, orientovaného acyklického grafu.

Aby bylo hledání nonce dostatečně rychlé, musí být DAG ihned po ruce u výpočetní jednotky, uložení skoro 5 GB ve vyrovnávací paměti procesoru (CPU) je ale nemožné. Tím Ethash kompletně vyřadil ASIC minery orientované na Bitcoin a zároveň i běžné procesory (CPU). Reálně tedy bylo možné těžit Ethereum pouze na grafických kartách, které disponovaly vysokou pamětí, minimálně tedy 5 GB. Vhodné bylo taky zmíněné grafické karty seřadit za sebe a postavit z nich tzv. těžební rig jako na obrázku vpravo.

Scrypt

Těžební algoritmus Scrypt využívá primárně Litecoin a jeho fork Dogecoin. Cíl Scryptu byl totožný s cílem Ethashe, ovšem jeho dosažení už v případě Scryptu tak úspěšné nebylo. Scrypt původně pro těžbu ani určen nebyl, jedná se totiž o algoritmus původně určený na řešení některých bezpečnostních nedostatků funkce SHA-256.

Pamětní náročnost Scryptu ovšem funguje trochu jinak, než v případě algoritmu Ethash, a vytvoření ASIC minerů, které si s nástrahy Scryptu dokázaly poradit, netrvalo dlouho. Nyní jsou ASIC minery pro Litecoin a Dogecoin k dostání na volném trhu podobně, jako ASIC minery pro Bitcoin. Příkladem je Antminer L7 na obrázku níže, jenž je k dostání přibližně za 420 000 Kč.

CryptoNight a RandomX

Poslední z algoritmů, jež jsou bojovníky proti ASIC minerům, jsou CryptoNight a pozdější RandomX. CryptoNight byl dříve široce využívaný těžební algoritmus, jenž do svého návrhu zahrnuly projekty jako Dero, Karbo, Sumokoin, Bytecoin, Electroneum, Aeon a Monero. Stejně jako Scrypt a Ethash, i CryptoNight si klade za cíl vyřadit ASIC minery skrze požadavky na paměť. Zaměřil se zejména na třetí úroveň vyrovnávací paměti v procesoru (L3 Cache).

Ovšem netrvalo dlouho a, stejně jako v případě Scryptu, i zde se našla parta chytrých hlav. První ASIC miner umožňující těžbu kryptoměny Monero byl představen roku 2018 a podával výkon o celkem solidních 200 KH/s.

Vývojáři kryptoměny Monero se s tvůrci ASIC mineru snažili bojovat tím, že do algoritmu přidávali stále větší a větší omezení na využití paměti. Ke konci roku 2018 však boj vzdali a rozhodli se, že vytvoří kompletně nový algoritmus RandomX vycházející z CryptoNightu. Tak jako CryptoNight, i RandomX je velmi náročný na paměť a na jeho principu probíhá těžba kryptoměny Monero dodnes.

Vyplatí se těžba kryptoměn?

Za odvedenou práci dostávají těžaři motivační odměnu v podobě nových jednotek dané kryptoměny a zaplacených poplatků v síti. S dnešními cenami je to velmi lákavá věc. Má to však pár háčků.

Celá problematika se dá shrnout do pár vět. Největším nákladem při těžbě je elektřina. Pokud ji máte dostatečně levnou, pak může být těžba rentabilní. Ceny elektřiny však v současnosti vyřazují drtivou většinu zájemců o těžbu.

Pokud jste však šťastlivci a elektřinu pro těžbu máte dostatečně levnou, narazíte záhy na další zásadní problém, kterým je samotná šance na úspěšné vytěžení nového bloku, pokud těžíte na vlastní pěst. Současná obtížnost těžby Bitcoinu je na tak vysokých úrovních, že šance na vytěžený blok se blíží téměř šanci na výhru v loterii.

Čekat doslova roky na první vytěžený blok se tím pádem téměř nikomu nevyplatí, alespoň ne malým soukromníkům (velké těžební farmy už jsou něco jiného, jejich těžební výkon šanci na vytěžení bloku radikálně zvyšuje). Pro běžné těžaře je tím pádem lepší využít tzv. mining pooly.

Mining pooly

Marek Palatinus, přezdívaný Slush, je programátor z České republiky, který má ve svém životopise kromě vynálezu hardwarových peněženek Trezor také nápad na mining pool.

Mining pool není nic jiného, než spojení těžařů do jedné digitální skupiny, která v těžbě táhne za jeden provaz. Výnosy z vytěžených bloků se pak dělí mezi účastníky podle poskytnutého výkonu. Jedná se o nejférovější nabídku – když budete spolu se svými kolegy v poolu těžit bloky častěji a o profit se rozdělíte, budete mít mnohem stabilnější zdroj příjmů.

Dnes už se těžba nedá provozovat jinak. Na světě existuje mnoho poolů, avšak většinová výpočetní síla přichází z Číny (díky jejich levné elektřině). Mezi čínské pooly patří např. Poolin, ViaBTC, F2 Pool, Antpool a technicky i Binance Pool, i když Binance má sídlo na Kajmanských ostrovech. Během roku 2022 si však z celkového podílu ukrojil největší kus severoamerický pool Foundry USA, za nímž stojí stejnojmenná společnost.

Bitcoin mining pooly – těžba kryptoměn
Bitcoin mining pooly (Zdroj: bit2me.com)

Proof of Stake “těžba”

Každá kryptoměna potřebuje svůj bezpečnostní a potvrzovací mechanismus, jinými slovy mechanismus pro dosažení souhlasu (konsenzu) mezi jednotlivými účastníky sítě o jejím stavu v daném čase. Jako první byl využit Proof of Work u Bitcoinu, který jsme si popsali výše. S postupem času ale vznikaly nové směry a jedním z nich je dnes velmi rozšířený Proof of Stake.

PoW využívá jako svůj základní mechanismus vynaložený výkon. Aby někdo mohl uzamykat bloky, potvrzovat transakce a tvořit historii, musí nakoupit hardware a poskytovat výkon (práci). Za tu samozřejmě platí nemalé výdaje – zejména spotřebovanou elektřinu. Pokud by se těžař choval nečestně, jeho práce a peníze přijdou vniveč.

Proof of Stake (PoS) jde na to z jiné strany. Validátoři (ne těžaři) pokládají na stůl své kryptoměny. Jejich oprávnění k tvorbě historie (uzamykání bloků) je vlastnictví jednotek. Algoritmus náhodně vybere jednoho uživatele, který své kryptoměny pro šanci vyhrát uzamkne (stake). Vybraný uživatel může blok uzavřít a dostat odměnu. Pokud by tito uživatelé chtěli nějakým způsobem síť podvádět, o kryptoměny přijdou skrze tzv. slashing.

Náklady a bezpečí PoS

Co se týče nákladovosti, na plné čáře vyhrává Proof of Stake. Vše se děje v digitální podobě a není tak potřeba nakupovat drahé vybavení a spotřebovávat elektřinu.

Na druhé straně je to ale velká bezpečnostní neznámá. Náklady v reálném světě slouží jako ochrana sítě před změnou historie. Pro její přepsání je nutné vynaložit ohromné peníze a neustále udržovat těžařské vybavení v chodu. Tyto náklady v PoS neexistují a tím pádem ani tato vrstva bezpečnosti.

Obrovskou nevýhodou PoS je také konsensus. Jak již víme, v případě sítě PoW je jediná platná síť ta největší. V případě PoS to tak jednoznačné není a v mnoha projektech bývají problémem právě validátoři.

Různé druhy PoS

Různé kryptoměnové projekty postupem času přicházely i s dalšími druhy PoS, do kterých vždy přidali i něco navíc.

  • “Klasický” Proof of Stake – každý může stakovat (ucházet se o uzamčení bloku) ze své peněženky.
  • Delegated Proof of Stake – vybere se několik validátorů, kteří mohou bloky uzavírat. Nikdo jiný to dělat nesmí.
  • Leased Proof of Stake – uživatelé mají možnost svůj podíl vypůjčit. Někdo provádí staking za ně.
  • Masternode Proof of Stake – uzamykat bloky mohou jen “velké ryby”.

Jiné způsoby konsenzu

Kromě Proof of Work a Proof of Stake, které jsme nastínili výše, existují ale i jiné typy, jakými lze docházet ke shodě.

Proof of Authority

Velká podoba s PoS. Systém je složený z vybraných validátorů, jejichž identita je ale vnitřně známá. Pokud někdo z nich bude chtít podvádět, bude odhalen a ztratí práva na uzamykání bloků a na odměnu. 

Tento systém je ale velmi centralizovaný a proto není většinovou kryptoměnovou komunitou uznáván.

Proof of Capacity

Všechna řešení každého bloku jsou dopředu známá a jsou zapsána na nějaké volné místo v úložišti. Proces těžby už je pak pouze o tom “s jakou pravděpodobností se na mém disku nachází to správné řešení”. Těžbu tohoto typu nabízí např. kryptoměna Chia.

Čím více volného úložiště poskytnu, tím víc řešení se na něj zapíše a tím větší šanci budu mít na to, že mám to správné.

Závěr

Těžba poskytuje síti dvě věci.

Tou první je vkládání dat do jednotlivých bloků a jejich následné uzamykání. K tomu by však stačil i jeden počítač a vlastně by tak šlo o pouhý databázový program.

Druhá, podstatně důležitější, je bezpečnost. Těžaři svou “utracenou” prací zabezpečují historii proti jejímu přepsání. Díky výdajově náročnému postupu při řešení bloku je dnes v podstatě nemožné, aby byla nějaká transakce v historii změněna.

Ať už se tedy na problematiku koukáme z jakéhokoliv úhlu, musíme se nutně dobrat k závěru, že těžba (případně staking) je jedním ze základních stavebních kamenů existence kryptoměn jako takových. Lidé či firmy, které tuto práci zastávají, by za ni měli být náležitě odměněni.

Klikni na hvězdičky pro hodnocení!

Průměrné hodnocení 4.3 / 5. Počet hlasujících 6

Buď první kdo článek ohodnotí

Přihlásit k odběru
Upozornit na
guest
3 Komentáře
nejstarší
Nejnovější S nejvíce hlasy
Zpětná vazba na text v článku
Zobrazit všechny komentáře
Fantom

Děkuji autorovi za přínosný článek k těžbě kryptoměn! Současně bych se znovu rád připomenul s prosbou o článek k problému “security budget/incentivy těžařů” u Bitcoinu.
V kontextu tohoto článku by se vlastně jednalo o rozvedení odstavce “Vyplatí se těžba kryptoměn?”. S popisem současného stavu těžby BTC – tedy současný poměr odměny za vytěžení bloku a odměny za provedené transakce, s výhledem na budoucí halving/další halvingy a možná i odhad průměrných nákladů na spotřebovanou elektřinu a zakoupené těžební zařízení.
Případně budu rád i za prostou odpověď autora či někoho jiného v záležitosti výše uvedeného problému.

an onym
Hodnocení článku :
     

Drobný dodatek. u POS nemusejí být mince uzamčeny, ani nemusí být nastaven slashing.

Juraj Zámek

👍🏻

spot_img