170 / 736SOLO

Solo Mining

Sólo těžba: vlastní nález, vlastní odměna

Těžební stroj může běžet správně a přesto dlouho nevydělat nic. Solo Mining znamená čekat na vlastní nalezený blok, místo dělení odměn s ostatními. Proto je důležité rozumět náhodě, nákladům i tomu, co ukazují statistiky.

Solo Mining je těžba, při které těžař dostává odměnu za blok nalezený jeho vlastním výkonem a přijatý do řetězce. Blok je skupina transakcí přidaná do blockchainu, veřejné historie Bitcoinu. „Najít blok“ znamená najít výsledek výpočtu, který dovoluje takovou skupinu navrhnout ostatním účastníkům sítě; ti ještě ověří, že splňuje všechna pravidla. Nálezy ostatních mu průběžný příjem nepřinášejí. Může používat vlastní infrastrukturu nebo externí solo server, který si účtuje poplatek. Slovo „solo“ tedy popisuje hlavně rozdělení odměny.

Mining: model provozního výsledkuPorovnejte očekávaný podíl na blokové subvenci s náklady elektřiny při zadaném výkonu, příkonu a poplatku poolu.

Jan si pořídí ASIC, specializovaný stroj na výpočty potřebné pro těžbu. Na obrazovce vidí, že pracuje, ale do peněženky nic nepřichází. Při Solo Mining to samo o sobě není chyba. Výkon mu dává šanci najít blok, nikoli plat za každou hodinu provozu. V běžném Mining Pool se odměny rozdělují mezi účastníky podle zvolených pravidel; Jan při sólo těžbě čeká na svůj nález. Ani použití serveru přes Stratum, komunikační protokol pro těžaře, z něj automaticky nedělá účastníka sdílených výplat. [1] [6]

Pro jednoduchý příklad si představme stálý podíl 1 % na výkonu celé sítě. To je velký, pouze ilustrační podíl, nikoli předpoklad pro domácí stroj. V dalších 100 blocích sítě odpovídá očekávání jednomu vlastnímu nálezu. Šance alespoň na jeden je však jen 1 − 0,99^100, přibližně 63,4 %. Vzorec nejprve spočítá pravděpodobnost, že všechny tyto bloky najde někdo jiný, a odečte ji od jistoty. Tím získáme šanci, že alespoň jeden připadne Janovi. Může jich být více, ale také žádný. Dlouhé čekání nezlepšuje příští pokus: těžba si minulé neúspěchy nepamatuje. Změny obtížnosti, podílu na výkonu nebo výpadky navíc mění podmínky tohoto modelu. [1]

Janův účet za elektřinu přichází bez ohledu na výsledek. Totéž platí pro nákup zařízení, chlazení a údržbu. Průměrný očekávaný příjem proto není částka, ze které může každý měsíc platit účty. Sdílení výnosů v poolu rozkolísanost příjmu omezuje; ze stejného stroje tím ale nevznikne větší Hashrate, tedy více výpočtů za sekundu. Poplatky a pravidla poolu se také liší. Pro domácí experiment je rozumné předem určit náklady, které Jan unese i bez jediného nálezu, a nebrat zprávu o cizím úspěchu jako odhad vlastního výdělku. [1]

Solo CKPool je příklad služby, která dodává těžební práci, spojení se sítí a statistiky. Odměna za Janův nález se nerozděluje ostatním účastníkům jako v běžném poolu; služba si ovšem může odečíst svůj poplatek. Je potřeba znát výplatní adresu, podmínky a postup při výpadku. Vlastní Full Node, uzel ověřující pravidla Bitcoinu, zase sám nenahrazuje výkon ASIC. Volba serveru a způsob rozdělení odměn jsou dvě různé věci. Seznam úspěšných nálezů služby ukazuje vítěze, nikoli šance každého připojeného stroje. [6]

Stroj opakovaně počítá hash, číselný otisk hlavičky navrhovaného bloku. Hlavička je krátký souhrn údajů o bloku, který propojuje návrh s předchozím blokem a s obsaženými transakcemi. Bitcoin Core kontroluje, zda je menší nebo roven síťovému cíli target, jehož zápis nese pole nBits. Server může přijímat i výsledky splňující snazší cíl: takový výsledek se nazývá share. U sólo služby pomáhá sledovat práci stroje, ale sám není nalezeným blokem ani nárokem na malou výplatu. Nižší obtížnost shares zvýší počet hlášení, ne šanci jednotlivého výpočtu uspět proti síťovému cíli. Ani dosud nejlepší share není důkaz platného bloku. [2] [6]

Než začne hledání, software připraví návrh bloku neboli šablonu. BIP 22 popisuje rozhraní getblocktemplate: poskytuje mimo jiné previousblockhash, odkaz na předchozí blok, transakce a coinbasevalue, nejvyšší dostupnou částku pro odměnu. Software sestaví coinbase, zvláštní první transakci vyplácející odměnu, a hlavičku; ASIC pak zkouší varianty výpočtu. Když síť postoupí, musí dostat aktuální práci. Rychlý stroj s chybným příjemcem odměny nebo zastaralou šablonou není dobře nastavená těžba. [3]

Správně nízký hash nestačí. Ostatní uzly ověří také transakce, coinbase a návaznost bloku. Dva těžaři mohou najít konkurenční bloky a síť nakonec pokračovat po jiné větvi. Blok mimo aktivní řetězec se označuje stale; jeho odměna v tomto řetězci není k utracení. Včasné doručení a aktuální práce proto mají skutečný význam. Jan sleduje přijetí celého bloku a další potvrzení, ne jen zelenou hlášku o přijatém share na panelu serveru. [3] [4]

Odměna může zahrnovat nově vznikající bitcoin, nazývaný bloková dotace, a poplatky transakcí v bloku. Výška bloku označuje jeho pořadí v řetězci. Na hlavní síti je od výšky 840000 do bloku před 1050000 dotace 3,125 BTC; poplatky se mění a případná služba si odečte svůj podíl. Coinbase nesmí vyplatit více než dotaci a tyto poplatky dohromady. Navíc platí COINBASE_MATURITY: odměnu lze utratit až v bloku, jehož výška je nejméně o 100 větší než výška bloku, který ji vytvořil. Jde o bloky, nikoli 100 minut. Nález, potvrzená odměna a okamžitě dostupné peníze tedy nejsou totéž. [4] [5] [7]

Pro nejúplnější obraz čtěte toto heslo společně s Těžba, Mining Pool, getblocktemplate, Hashrate, Pay Per Share, Pay Per Last N Shares. Opačným směrem na něj odkazují také Mining Pool, Pay Per Share.

DOC · 001Rosenfeld — Solo mining variancePrimární zdroj DOC · 002Bitcoin Core — Proof-of-work verificationDokumentace DOC · 003BIP 22 — Block templatesSpecifikace DOC · 004Bitcoin Core — Block subsidy and validationDokumentace DOC · 005Bitcoin Core — Coinbase maturityDokumentace DOC · 006Solo CKPool — Service and sharesPrimární zdroj DOC · 007Bitcoin Core — Mainnet parametersDokumentace
Revidováno: Primární zdroje · Nejde o investiční doporučení