Čo je dôkaz o vykonanej práci?
Definícia · proof of work (PoW)
Systém, v ktorom právo pridať blok získa ten, kto ako prvý nájde hash hlavičky bloku menší než cieľová hodnota. Nájsť ho si vyžaduje obrovské množstvo pokusov, no na jeho overenie stačí jeden výpočet hashu.
Satoshi Nakamoto ho opísal v bielej knihe Bitcoinu v roku 2008. Nadviazal pritom na Hashcash Adama Backa, starší nápad, ako predražiť spamovanie e-mailom. Dôkazom je platný hash. Bez vykonania práce ho nemožno získať a každý si môže overiť, že si ju vykonal.
Zvyšok tejto stránky podrobne vysvetľuje jednotlivé časti a v rámčeku vyššie si ich môžeš vyskúšať. Ide o skutočný formát hlavičky Bitcoinu, ktorý sa hashovaním spracúva naživo v tvojom prehliadači. Celkový prehľad ťažby nájdeš v našom kompletnom sprievodcovi ťažbou Bitcoinu.
Aký problém rieši dôkaz práce?
Bitcoin nemá žiadnu firmu, banku ani server, ktorý by ho riadil. Tisíce počítačov uchovávajú vlastnú kópiu účtovnej knihy a musia sa zhodnúť na tom, ktorý blok nasleduje a v akom poradí prebehli platby. Inak by niekto mohol minúť tú istú mincu dvakrát.
Jednoduché hlasovanie online nefunguje, pretože ktokoľvek môže spustiť tisíc falošných počítačov a hlasovať tisíckrát. Tomu sa hovorí Sybil útok. Proof of work tento problém obchádza: tvoj hlas sa počíta podľa počtu hashov a ich výpočet stojí elektrinu a vyžaduje hardvér.
Kto má slovo pri ďalšom bloku?
Jeden hlas za každý uzol
Jeden útočník bezplatne spustí 60 falošných uzlov a prehlasuje 12 poctivých.
Jeden hlas za každý hash
čestní ťažiari 88%útočník 12 %
Tých istých 60 uzlov beží na skutočnom hardvéri útočníka, takže ich spoločná váha je stále 12 %. Kópie sú zadarmo, hashovanie nie.
Čo obsahuje hlavička bitcoinového bloku?
Ťažiari nepočítajú hash celého bloku. Počítajú hash jeho 80-bajtovej hlavičky, ktorá kryptograficky odkazuje na všetko ostatné. Toto je šesť polí, ktoré ste upravili v poli vyššie:
| Pole | Bajty | Čo obsahuje | Kto ho mení |
|---|---|---|---|
| Verzia | 4 | Ktorú sadu pravidiel blok dodržiava | Mení sa zriedka |
| Hash predchádzajúceho bloku | 32 | Hash predchádzajúceho bloku, ktorý prepája reťazec | Mení sa pri každom bloku |
| Merkleho koreň | 32 | Jeden odtlačok všetkých transakcií v bloku | Ťažiar pri zmene transakcií alebo extra nonce |
| Čas | 4 | Kedy ťažiar uvádza, že blok vznikol (čas Unix) | Ťažiar v rámci limitov |
| Bity | 4 | Cieľová hodnota uložená v 4 bajtoch | Sieť, každých 2 016 blokov |
| Nonce | 4 | Bezplatné číslo na ďalší pokus | Ťažiar pri každom pokuse |
Keďže hlavička obsahuje hash predchádzajúceho bloku, zmena starého bloku zmení jeho hash. Tým sa naruší nasledujúca hlavička aj tá po nej. Pri vytváraní tejto stránky sme na našom serveri pomocou rovnakého kódu ako v hlavnej ukážke skontrolovali skutočný genesis blok z 2009:
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Ako funguje SHA-256 v Bitcoine?
SHA-256 zmení ľubovoľný vstup na 256-bitové číslo zapísané ako 64 hexadecimálnych znakov. Bitcoin ho spustí dvakrát nad hlavičkou (hovorí sa tomu SHA-256d). Dôležité vlastnosti pri ťažbe sú jednoduché:
Rovnaký vstup, rovnaký výstup
Deterministický
Rovnaká hlavička vždy vytvorí rovnaký hash na každom počítači. Preto funguje overovanie.
256 bitov
Pevná veľkosť
Či už ide o krátky riadok alebo celú knihu, hash má vždy 64 hexadecimálnych znakov.
Jednosmerný
Spätná cesta neexistuje
Nedokážeš vypočítať vstup, ktorý vytvorí požadovaný hash. Môžeš iba skúšať rôzne vstupy.
≈ 50%
Avalanche
Zmeň jeden znak a zmení sa približne polovica bitov. Pozri si mriežku v hlavnej ukážke.
Táto posledná vlastnosť je podstatou proof of work. Hash blízky cieľovej hodnote ti nič nepovie o ďalšom pokuse, takže neexistuje žiadny šikovný spôsob, ako nájsť platný blok. Každý miner hrá tú istú lotériu a viac hashov za sekundu znamená len viac žrebov.
Čo je cieľ a prečo sú na začiatku nuly?
Cieľová hodnota je 256-bitové číslo. Blok je platný, keď je jeho hash po prevedení na číslo menší alebo rovný tejto hodnote. Malé čísla sa začínajú nulami, takže nižšia cieľová hodnota sa prejaví väčším počtom úvodných núl. Každá ďalšia hexadecimálna nula znamená v priemere 16-krát viac pokusov.
Priemerný počet hashov potrebných na nájdenie jedného platného bloku
- Ukážkový blok v úvodnej sekcii · 4 úvodných hexadecimálnych núl65,536
- Najľahší cieľ Bitcoinu (2009) · 8 úvodných hexadecimálnych núl, bity 1d00ffff4,294,967,296
- Dnešný bitcoinový blok · približne 20 úvodných hexadecimálnych núl (aktuálny odhad)4.3 × 1023
Každých 2 016 blokov, približne každé dva týždne, sieť upraví cieľovú hodnotu. Bloky tak naďalej pribúdajú približne každých desať minút bez ohľadu na to, koľko hashratu sa do siete pripojí alebo z nej odíde. Sieť teraz dosahuje približne 712 EH/s (aktuálny údaj, aktualizuje sa každú hodinu). Ako táto úprava funguje, vysvetľuje náš sprievodca náročnosťou ťažby Bitcoinu. Jednotkám sa venuje vysvetlenie hashratu.
Čo je nonce a čo je extra nonce?
Nonce („číslo použité iba raz“) je pole s 4 bajtmi, ktoré ťažiari menia pri každom pokuse. Je to jediné pole určené výhradne na zmenu. Problém je, že 4 bajty umožňujú len približne 4,3 miliárd hodnôt a moderné stroje ich prejdú takmer okamžite.
Slučka minera
- 01
Vyskúšať každé nonce
0, 1, 2 až po 4 294 967 295. To sú všetky hodnoty, ktoré sa zmestia do 4 bajtov.
- 02
Rýchlo sa minú
Jeden stroj s výkonom 100 TH/s ich všetky spracuje približne za 43 milióntin sekundy.
- 03
Zmeniť extra nonce
Miner upraví vo svojej transakcii s odmenou (coinbase) voľné pole.
- 04
Nový koreň Merkleho stromu
Transakcia sa zmenila, takže sa zmení aj Merklov koreň a každý nonce vytvorí nové hashe.
Ťažiari preto menia aj extranonce, niekoľko voľných bajtov v coinbase, prvej transakcii bloku, ktorá vypláca odmenu ťažiarovi. Nová coinbase znamená nový Merkleho koreň, a teda miliardy nových nonce, ktoré možno vyskúšať. V ťažobnom poole pridelí pool každému ťažiarovi vlastný rozsah extranonce, aby nikto neopakoval prácu niekoho iného.
Prečo je nájdenie bloku nákladné, ale jeho overenie lacné?
Na nájdenie bloku
≈ 4.3 × 1023 hashov
Celá sieť, všetky jej stroje, približne desať minút hádania.
Aktuálny odhad, aktualizuje sa každú hodinu.
Na overenie
1 hash
Každý uzol, dokonca aj lacný notebook, raz zahashuje 80-bajtovú hlavičku a porovná výsledok s cieľovou hodnotou za výrazne menej než milisekundu.
Miner musí skúšať hashovať, kým nenájde hash pod cieľovou hodnotou. Ostatní musia hlavičku hashovať len raz a výsledok porovnať. Táto nerovnováha nákladov umožňuje tisícom bežných počítačov overovať reťazec bez toho, aby dôverovali minerom, ktorí ho vytvorili.
Vyskúšaj si nižšie časť s hľadaním. Táto ukážka používa jednoduchší formát bloku než hlavná ukážka, ale ide o tú istú lotériu s dvojitým SHA-256 a každý nájdený blok nadväzuje na predchádzajúci.
Interaktívne · vyťaž blok v prehliadači
Skutočný dôkaz práce SHA-256d, zjednodušená hlavička
Hash bloku (dvojité SHA-256)
Uprav transakcie: hash sa úplne zmení aj po zmene jediného písmena.
Pokusy: 0
Tvoj hashrate: nedostupné
Čas: 0,0 s
Čo je pravidlo najdlhšieho reťazca a čo je útok s podielom 51 %?
Niekedy nájdu dvaja ťažiari blok takmer v rovnakom čase a sieť má na chvíľu dve verzie. Uzly nasledujú reťazec, za ktorým je najviac celkovej práce. Hovorí sa mu najdlhší reťazec, no v skutočnosti je to najťažší reťazec: niekoľko blokov s vysokou náročnosťou môže prevážiť viac blokov s nízkou náročnosťou.
Ak chce útočník zvrátiť platbu, musel by od bloku pred touto platbou vytvoriť reťazec s väčšou prácou, než má reťazec všetkých ostatných. Každý ďalší blok navrchu (potvrdenie) zväčšuje jeho náskok. Pravdepodobnosť vypočítala biela kniha. Posuň posuvník a pozri sa:
Interaktívne · Dokáže útočník dobehnúť ostatných?
Vzorec z bielej knihy Bitcoinu, časť 11
- 0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Počet blokov, o ktoré útočník zaostáva (potvrdenia). Pruhy používajú logaritmickú mierku, od jednej šance z milióna až po istotu.
Pri 10 % hashovacieho výkonu je pravdepodobnosť prepísania platby po 6 potvrdeniach 0,024 % a po 1 potvrdeniach 20,5 %.
Pri 50 % alebo väčšom podiele útočník skôr či neskôr vyhrá. Ide o útok s podielom 51 %. Má vážne dôsledky, ale aj svoje hranice:
S väčšinou hashovacieho výkonu môže útočník
- Nahradiť nedávne bloky vlastným reťazcom
- Dvakrát minúť mince, ktoré poslali sami sebe
- Vynechať niektoré transakcie z blokov
Ani vtedy nemôžu
- Minúť mince z peňaženiek iných ľudí
- Vytvárať mince nad rámec odmeny za blok
- Zmeniť pravidlá Bitcoinu pre všetkých ostatných
Preto burzy pri veľkých vkladoch čakajú na niekoľko potvrdení. Bežne sa odporúča šesť.
Prečo dôkaz práce spotrebuje toľko energie?
Pretože bezpečnosť zaručuje energia. Platný blok dokazuje, že sa naň skutočne spotrebovala elektrina. Ak chce útočník prepísať históriu, musí spotrebovať aspoň toľko energie a pokračovať v tom, kým poctivá sieť napreduje.
Kam ide energia a čo za ňu získame
Odmena za blok a poplatky
Nové BTC plus poplatky za každý blok, vyplatené tomu, kto ho nájde.
Stroje a elektrina
Ťažiari minú najviac toľko, koľko pre nich odmena predstavuje.
Hashrate siete
Všetky tieto výdavky sa prejavia v počte hashov za sekundu.
Náklady na prepísanie histórie
Útočník musí vynaložiť viac než všetci ostatní spolu, blok za blokom.
Koľko elektriny sa spotrebuje a odkiaľ pochádza, je predmetom oprávnenej diskusie. Index Cambridge sleduje odhady a v našom sprievodcovi spotrebou energie pri ťažbe Bitcoinu nájdeš podrobné údaje. Každý halving znižuje časť odmeny, ktorú tvoria nové mince, takže časom musia väčšiu časť rozpočtu na zabezpečenie siete tvoriť poplatky.
Dôkaz vykonanou prácou verzus dôkaz podielom: aký je rozdiel?
Dôkaz podielom (PoS) vyberá ďalšieho tvorcu bloku spomedzi ľudí, ktorí zamknú mince ako zábezpeku, namiesto ľudí, ktorí spaľujú elektrinu. Ethereum prešlo z dôkazu vykonanou prácou na dôkaz podielom v 2022. Tu je férové porovnanie vedľa seba:
| Dôkaz práce | Dôkaz podielom | |
|---|---|---|
| Kto pridáva ďalší blok | Prvý miner, ktorý nájde hash menší než cieľová hodnota | Validátor vybraný podľa výšky svojho podielu |
| Čo ho zabezpečuje | Náklady na elektrinu a hardvér mimo blockchainu | Mince uzamknuté v blockchaine, ktoré možno odobrať za podvádzanie |
| Spotreba energie | Vysoká zámerne | Nízka |
| Na účasť | Stroje a lacná energia | Mince na staking |
| Vysporiadanie | Bezpečnosť rastie s každým potvrdením | Výslovné kontrolné body finality |
| Hlavná kritika | Spotreba energie a koncentrácia ťažby | Koncentrácia stakovaných mincí a zložitejší dizajn |
| História pokusov | Bitcoin od 2009 | Ethereum od 2022 |
Vývojári Bitcoinu zachovali dôkaz práce, pretože jeho náklady vznikajú mimo systému. Nikto tak nemôže získať kontrolu pomocou mincí, ktoré už vlastní. Zástancovia dôkazu podielu poukazujú na úsporu energie a rýchlejšiu finalitu.
Can you get mining rewards without running proof of work yourself?
Yes. With CloudMineCrypto you mine bitcoin for free from your phone or browser, with no hardware, noise or power bill. Claim the free 8-hour plan, and add more free plans by watching ads, playing games, completing offers and checking in daily. Your estimated BTC ticks up while your plans run, and you withdraw to your own wallet, Lightning included.
Each plan has a hashrate, and your estimate is that hashrate’s share of the whole network, times 6 blocks an hour, times the block reward. That’s the formula the app uses to estimate your rewards (rules and limits apply). Want more speed? Paid plans are an optional boost for fun. They usually mine less than they cost, and the price is shown before you confirm.
Je dobré vedieť: odmeny sú odhady, menia sa podľa situácie v sieti a nie sú zaručené. Plán ti nedáva vlastníctvo žiadneho zariadenia ani poolu. Na výbery sa môžu vzťahovať limity alebo môže byť potrebné overenie. Podrobnosti nájdeš v pravidlách odmien a v sprievodcovi bezplatnou ťažbou Bitcoinu. Platia podmienky.
Časté otázky
Čo je dôkaz práce, jednoducho vysvetlené?
Je to spôsob, ako dosiahnuť, aby pridávanie bloku vyžadovalo skutočné úsilie. Minéri opakovane hashujú hlavičku bloku a menia pritom číslo nazývané nonce, až kým výsledok neklesne pod cieľovú hodnotu. Nájsť taký hash si vyžaduje obrovské množstvo pokusov, no overiť ho môže ktokoľvek jediným výpočtom hashu.
Čo je nonce v Bitcoine?
Číslo s veľkosťou 4 bajtov v hlavičke bloku, ktoré ťažiari menia pri každom pokuse. Má približne 4,3 miliárd možných hodnôt. Keď sa všetky minú, ťažiari zmenia extra nonce v coinbase transakcii, čím vznikne nový Merkleov koreň a nová sada hashov.
Prečo Bitcoin používa SHA-256 dvakrát?
Bitcoin zahashuje hlavičku s veľkosťou 80 bajtov pomocou SHA-256 a potom zahashuje aj výsledok. Satoshi túto voľbu nikdy nevysvetlil. Zvyčajne sa usudzuje, že chráni pred útokmi s rozšírením dĺžky a pridáva ďalšiu bezpečnostnú rezervu.
Čo môže niekto urobiť pri útoku s podielom 51 %?
Niekto s väčšinou hashratu môže potajomky vytvoriť dlhší reťazec a nahradiť nedávne bloky. Môže tak dvakrát minúť vlastné mince alebo blokovať niektoré transakcie. Nemôže míňať mince iných ľudí, vytvárať mince v rozpore s pravidlami ani meniť pravidlá pre všetkých.
Je proof of stake lepší než proof of work?
Spotrebuje oveľa menej energie a bezpečnosť zabezpečujú mince uzamknuté ako vklad. Proof of work viaže bezpečnosť na náklady mimo blockchainu, teda na elektrinu a hardvér, a Bitcoin ho používa od 2009. Každý prístup má svoje kompromisy, takže záleží na tom, čo považuješ za dôležité.
Can I get bitcoin mining rewards without my own hardware?
Yes. In the CloudMineCrypto app you claim free mining plans (the free plan, ads, games, offers and a daily check-in) and your estimated BTC ticks up while they run, then you withdraw to your own wallet. Rewards are estimates based on your plan’s hashrate and live network data, they aren’t guaranteed, and a plan doesn’t give ownership of any hardware.
Zdroje a ďalšie čítanie
- Bitcoin: Elektronický hotovostný systém typu peer-to-peer (biela kniha) · Satoshi Nakamoto, bitcoin.org
- Sprievodca blockchainom: hlavičky blokov, dôkaz vykonaním práce a coinbase · dokumentácia pre vývojárov Bitcoinu
- Sprievodca ťažením: sólo ťažba, pooly, getblocktemplate · dokumentácia pre vývojárov Bitcoinu
- Obtiažnosť · Bitcoin Wiki
- Potvrdenie · Bitcoin Wiki
- Cambridgeský index spotreby elektriny pri ťažbe Bitcoinu · Cambridge Centre for Alternative Finance
- Ťažobný panel: hashrate, náročnosť, posledné bloky · mempool.space
Aktuálne údaje na tejto stránke pochádzajú z rozhrania CloudMineCrypto API alebo z verejných služieb s údajmi o blockchaine, ktoré sú pri nich uvedené. Obnovujú sa podľa plánu a zdroj je vždy označený. Tento sprievodca má vzdelávací účel a nejde o finančné poradenstvo. CloudMineCrypto nie je investičný produkt. Odmeny v aplikácii sú odhady a nie sú zaručené.
Už vieš, ako to funguje. Teraz sa pozri, ako to vyzerá v praxi.
Aktivuj si v aplikácii CloudMineCrypto bezplatný 8-hodinový plán ťažby a sleduj, ako ti podľa aktuálnych údajov zo siete rastie odhadované množstvo BTC. Nepotrebuješ hardvér ani platobnú kartu.