Domů
Glosář
Kandidátský blok

Kandidátský blok

Pokročilí
Stručně řečeno, kandidátský blok je blok, který se těžařský uzel (těžař) snaží vytěžit, aby získal odměnu za blok. Kandidátský blok proto můžeme popsat jako dočasný blok, který síť buď potvrdí, nebo vyřadí. Těžaři mezi sebou soutěží o ověření dalšího bloku a jeho přidání na blockchain, ale aby se mohli zúčastnit soutěže v těžbě, musí nejdřív vytvořit kandidátský blok.
Kandidátské bloky vytváří těžaři shromažďováním a uspořádáváním mnoha nepotvrzených transakcí z paměťového poolu. Transakce se pak hashují a vytváří strukturu Merkleova stromu, která nakonec vytvoří kořenový hash (Merkleův kořen). Kořenový hash je jediný hash, který zastupuje všechny předchozí hashe daného stromu, a tedy všechny transakce, které byly do daného bloku zahrnuty.
Kořenový hash, spolu s hashem předchozího bloku a náhodným číslem zvaným nonce, se pak vloží do hlavičky bloku. Hlavičku bloku těžař zahashuje a na základě těchto složek (kořenový hash, hash předchozího bloku a nonce) a několika dalších prvků vygeneruje výstup. Výsledný výstup je hash bloku a slouží jako jedinečný identifikátor nově vygenerovaného bloku (kandidátského bloku).
Aby mohl být výstup (hash bloku) považován za platný, musí začínat určitým počtem nul (menším, než je cílová hodnota stanovená protokolem). To znamená, že těžba vyžaduje vícenásobné pokusy (metoda pokus–omyl), protože těžařské uzly musí provést nesčetné množství hashovacích funkcí s různými hodnotami nonce, dokud nakonec nevytvoří platný hash bloku. Vytvořený hash bloku je důkazem, že těžař odvedl svou práci (proto proof-of-work).
Když těžař najde platný hash bloku, jeho kandidátský blok se rozešle ostatním uzlům sítě, které ověří pravost hashe. Pokud je vše v pořádku, kandidátský blok se zapíše na blockchain. V tomto okamžiku každý ověřovací uzel aktualizuje svou kopii dat blockchainu, aby obsahovala poslední vytěžený blok, a těžař získá odměnu za blok.