Poznaj · Jak działa Bitcoin

Czym jest proof of work (PoW)?

Autor: zespół CloudMineCryptoZaktualizowano 9 min czytania

Krótka odpowiedź

Proof of work to sposób, w jaki Bitcoin wybiera, kto doda następny blok: górnik musi wykazać, że wykonał rzeczywistą pracę obliczeniową, znajdując hash spełniający odpowiednie kryterium, zanim ktokolwiek zaakceptuje jego blok. Górnicy dwukrotnie haszują nagłówek bloku o wielkości 80 bajtów za pomocą SHA-256, za każdym razem zmieniając liczbę zwaną nonce, aż hash będzie niższy od celu. Znalezienie takiego hasha wymaga bilionów prób, a jego sprawdzenie tylko jednego haszowania. Dlatego przepisanie historii wymagałoby ponownego wykonania całej tej pracy.

Najważniejsze informacje

  • Prawidłowy blok ma nagłówek, którego podwójny hash SHA-256 jest niższy od celu, co widać po początkowych zerach.
  • Można tylko zgadywać. Zmiana jednego znaku zmienia około połowy bitów skrótu.
  • Węzły podążają za łańcuchem z największą łączną wykonaną pracą, więc napastnik potrzebowałby większości mocy haszującej.
  • Zużycie prądu nie jest efektem ubocznym. To ono sprawia, że zmiana historii Bitcoina jest kosztowna.

Oblicz hash samodzielnie · rzeczywisty nagłówek bloku

Edytuj blok. Podwójny SHA-256 aktualizuje się podczas pisania.

  1. Wersja4 bajtów

    20000000

  2. Hash poprzedniego bloku32 bajtów

    000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f

  3. Korzeń Merkle’a32 bajtów

    3526fd3f26cb386534c88c5455a8465f971578b7d9fb64b8a342ad0e99e4280e

    Odcisk palca transakcji powyżej. Wpisz tekst, aby go zmienić.

  4. Czas4 bajtów

    2026-09-26 12:00 UTC

  5. Cel (bits)4 bajtów
    1f00ffff · 4 zera
  6. Nonce4 bajtów

Hash bloku · SHA-256 dwukrotnie

✓ Poniżej wartości docelowej: prawidłowy blok

0000470da4a7ab0614c83d2181b1ef1c294e53f49cde408a8c9a08592bca6e17

cel 0000ffff00000000000000000000000000000000000000000000000000000000

4 początkowych zer, cel wymaga 4

Twoja przeglądarka zgaduje kolejne wartości nonce, tak jak górnik.

Efekt lawinowy · bity zmienione przez ostatnią edycję

122 z 256 (48%)

Zmiana jednego znaku losowo zmienia około połowy z 256 bitów. Nie da się sterować hashem, więc górnicy mogą tylko zgadywać.

80 bajtów poddawanych haszowaniu

000000206fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d61900000000000e28e4990ead42a3b864fbd9b77815975f46a855548cc8346538cb263ffd2635c0b3b76affff001f96060000

Liczby są zapisywane w kolejności little-endian, a bajty hashy są odwrócone, dokładnie tak jak w Bitcoinie. Prawdziwy blok potrzebuje dziś około 20 zer na początku (szacunek na podstawie aktualnej mocy haszującej sieci).

Czym jest proof of work?

Definicja · Proof of work (PoW)

System, w którym prawo do dodania bloku przypada temu, kto jako pierwszy znajdzie hash nagłówka bloku niższy od celu. Znalezienie go wymaga ogromnej liczby prób, ale sprawdzenie tylko jednego haszowania.

Satoshi Nakamoto opisał to w białej księdze Bitcoina z 2008, rozwijając pomysł Adama Backa o nazwie Hashcash. To starsza koncepcja, która miała sprawić, że wysyłanie spamu e-mailowego będzie kosztowne. Prawidłowy hash jest dowodem. Nie da się go uzyskać bez wykonania pracy, a każdy może sprawdzić, że została wykonana.

W dalszej części tej strony omawiamy każdy element, a pole powyżej pozwala samodzielnie go przetestować. To rzeczywisty format nagłówka bloku Bitcoin, haszowany na żywo w przeglądarce. Więcej o kopaniu znajdziesz w naszym kompletnym przewodniku po kopaniu Bitcoin.

Jaki problem rozwiązuje proof of work?

Bitcoinem nie zarządza żadna firma, bank ani serwer. Tysiące komputerów przechowują własną kopię rejestru i muszą uzgodnić, który blok będzie następny oraz w jakiej kolejności odbyły się płatności. Inaczej ktoś mógłby wydać tę samą monetę dwa razy.

Proste głosowanie nie sprawdza się w internecie, bo każdy może uruchomić tysiąc fałszywych komputerów i zagłosować tysiąc razy. To właśnie atak Sybil. Dowód pracy omija ten problem: Twój głos mierzy się liczbą hashy, a ich obliczanie wymaga prądu i sprzętu.

Kto ma wpływ na kolejny blok?

Jeden głos na węzeł

Jeden napastnik za darmo uruchamia 60 fałszywych węzłów i przegłosowuje 12 uczciwych.

Jeden głos na hash

uczciwi górnicy 88%atakujący 12%

Te same 60 węzłów korzystają ze wspólnego sprzętu atakującego, więc ich łączna waga nadal wynosi 12%. Kopie nic nie kosztują, ale haszowanie już tak.

Atak Sybil polega na podszywaniu się pod wiele osób. Dowód pracy ignoruje tożsamości i liczy tylko wykonaną pracę, która kosztuje prawdziwe pieniądze.

Co zawiera nagłówek bloku Bitcoin?

Górnicy nie haszują całego bloku. Haszują jego nagłówek o długości 80 bajtów, który zawiera informacje o całej reszcie. Oto sześć pól, które edytowałeś w polu powyżej:

PoleBajtyCo zawieraKto go zmienia
Wersja4Jakiego zestawu zasad przestrzega blokRzadko się zmienia
Hash poprzedniego bloku32Hash poprzedniego bloku, który łączy łańcuchZmieniany przy każdym bloku
Korzeń Merkle’a32Jeden odcisk wszystkich transakcji w blokuGórnik, gdy zmieniają się transakcje lub extra nonce
Czas4Kiedy, według górnika, powstał blok (czas Unix)Górnik, w granicach limitu
Bity4Wartość docelowa zapisana w 4 bajtachSieć, co 2 016 bloków
Nonce4Darmowa liczba do ponownej próbyGórnik, przy każdej próbie

Ponieważ nagłówek zawiera hash poprzedniego bloku, zmiana starego bloku zmienia jego hash, co powoduje niezgodność z następnym nagłówkiem i każdym kolejnym. Gdy powstawała ta strona, na naszym serwerze sprawdziliśmy prawdziwy blok genezy z 2009, używając tego samego kodu co w głównej animacji:

SHA-256(SHA-256(genesis header)) =
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Pierwszy blok Bitcoina, wersja 1, nonce 2 083 236 893. Jego hash zaczyna się od 10 zer i jest zgodny z tym, który zna każdy węzeł Bitcoina.

Jak działa SHA-256 w Bitcoinie?

SHA-256 zamienia dowolne dane wejściowe w liczbę 256-bitową, zapisaną jako 64 znaków szesnastkowych. Bitcoin oblicza hash nagłówka bloku dwukrotnie (stąd określenie SHA-256d). W kopaniu liczą się te proste właściwości:

To samo na wejściu, to samo na wyjściu

Deterministyczny

Ten sam nagłówek zawsze daje ten sam hash na każdym komputerze. Dlatego można go zweryfikować.

256 bitów

Stały rozmiar

Niezależnie od tego, czy to krótki wiersz, czy cała książka, hash ma zawsze 64 znaków szesnastkowych.

Jednokierunkowy

Nie da się cofnąć na skróty

Nie da się obliczyć danych wejściowych, które dadzą żądany hash. Możesz tylko próbować różnych danych.

≈ 50%

Efekt lawinowy

Zmień jeden znak, a zmieni się około połowy bitów. Obserwuj siatkę w głównej grafice.

Ta ostatnia właściwość jest sednem proof of work. Hash bliski celowi nie mówi nic o następnym podejściu, więc nie ma sprytnego sposobu na znalezienie prawidłowego bloku. Każdy górnik bierze udział w tej samej loterii, a większa liczba hashy na sekundę daje po prostu więcej losów.

Co to jest target i skąd te zera na początku?

Wartość docelowa to liczba 256-bitowa. Blok jest poprawny, gdy jego hash, odczytany jako liczba, jest od niej mniejszy lub jej równy. Małe liczby zaczynają się od zer, więc niższa wartość docelowa oznacza więcej zer na początku. Każde dodatkowe zero w zapisie szesnastkowym oznacza średnio 16 razy więcej prób.

Średnia liczba hashy potrzebnych do znalezienia poprawnego bloku

  • Przykładowy blok w sekcji głównej · 4 początkowych zer w zapisie szesnastkowym65,536
  • Najłatwiejszy cel Bitcoina (2009) · 8 początkowych zer w zapisie szesnastkowym, bity 1d00ffff4,294,967,296
  • Dzisiejszy blok Bitcoin · około 20 początkowych zer szesnastkowych (bieżący szacunek)4.9 × 1023
Słupki mają skalę logarytmiczną: każde dodatkowe zero oznacza średnio 16 razy więcej pracy. Wiersz na żywo to nasze oszacowanie oparte na mocy haszowania sieci pomnożonej przez 600 sekund. Aktualizujemy je co godzinę.

Sieć zmienia cel co 2 016 bloków, czyli mniej więcej co dwa tygodnie. Dzięki temu bloki nadal pojawiają się mniej więcej co dziesięć minut, niezależnie od tego, ile mocy obliczeniowej dołącza do sieci lub z niej odchodzi. Obecnie sieć osiąga około 811 EH/s (dane na żywo, aktualizowane co godzinę). Jak działa ta korekta, wyjaśniamy w naszym przewodniku po trudności wydobycia Bitcoina, a wyjaśnienie hashrate’u opisuje używane jednostki.

Czym jest nonce i czym jest dodatkowy nonce?

Nonce („liczba użyta raz”) to 4-bajtowe pole, które górnicy zmieniają przy każdej próbie. To jedyne pole przeznaczone wyłącznie do zmieniania. Problem w tym, że 4 bajtów daje tylko około 4,3 miliardów wartości, a nowoczesne maszyny sprawdzają je niemal natychmiast.

Pętla górnika

  1. 01

    Sprawdź każdy nonce

    0, 1, 2 i tak dalej, aż do 4 294 967 295. To wszystkie wartości, które można zapisać na 4 bajtach.

  2. 02

    Szybko się kończy

    Jedna maszyna o mocy 100 TH/s przechodzi przez wszystkie w około 43 milionowych części sekundy.

  3. 03

    Zmień dodatkowy nonce

    Górnik edytuje zapasowe pole we własnej transakcji nagrody (coinbase).

  4. 04

    Nowy korzeń Merkle’a

    Ta transakcja się zmieniła, więc zmienia się korzeń Merkle’a, a każde nonce znów daje nowe hashe.

Potem wróć do kroku 1. Górnicy mogą też nieznacznie zmienić znacznik czasu, co również zmienia nagłówek.

Dlatego górnicy zmieniają też extra nonce, czyli kilka dodatkowych bajtów w transakcji coinbase. To pierwsza transakcja w bloku, która wypłaca nagrodę górnikowi. Nowa transakcja coinbase oznacza nowy korzeń Merkle’a, a to daje miliardy nowych wartości nonce do sprawdzenia. W puli wydobywczej pula przydziela każdemu górnikowi własny zakres extra nonce, żeby nikt nie powtarzał pracy innych.

Dlaczego znalezienie bloku jest kosztowne, a jego sprawdzenie tanie?

Aby znaleźć blok

≈ 4.9 × 1023 hashe

Cała sieć i wszystkie jej maszyny, około dziesięciu minut zgadywania.

Bieżący szacunek, aktualizowany co godzinę.

Aby to sprawdzić

1 hash

Każdy węzeł, nawet tani laptop, hashuje nagłówek o rozmiarze 80 bajtów i porównuje go z celem w czasie znacznie krótszym niż milisekunda.

Górnik musi próbować kolejnych hashy, aż jeden będzie poniżej celu. Wszyscy pozostali muszą tylko raz obliczyć hash nagłówka i go porównać. Ta asymetria kosztów pozwala tysiącom zwykłych komputerów weryfikować łańcuch bez zaufania górnikom, którzy go utworzyli.

Spróbuj samodzielnie przeprowadzić wyszukiwanie poniżej. Ta demonstracja używa prostszego formatu bloku niż sekcja główna, ale to ta sama loteria z podwójnym SHA-256, a każdy znaleziony blok prowadzi do poprzedniego.

Interaktywnie · wykop blok w przeglądarce

Prawdziwy proof of work SHA-256d, uproszczony nagłówek

Blok #1Poprzedni hash0000000000000000000000000000000000000000000000000000000000000000Nonce0

Hash bloku (podwójny SHA-256)

Edytuj transakcje: hash zmienia się całkowicie już przez jedną literę.

Próby: 0

Twój hashrate: brak danych

Czas: 0,0 s

Czym jest reguła najdłuższego łańcucha i atak 51%?

Czasami dwóch górników znajduje blok niemal w tej samej chwili i przez krótki czas w sieci istnieją dwie wersje łańcucha. Węzły wybierają łańcuch, za którym stoi najwięcej wykonanej pracy. Mówi się o najdłuższym łańcuchu, ale chodzi tak naprawdę o najcięższy: kilka bloków o wysokim poziomie trudności może ważyć więcej niż większa liczba bloków o niskim poziomie trudności.

Aby cofnąć płatność, atakujący musiałby zbudować cięższy łańcuch niż wszyscy pozostali, zaczynając od bloku sprzed tej płatności. Każdy kolejny blok na wierzchu (potwierdzenie) zwiększa jego stratę. W whitepaperze obliczono prawdopodobieństwo. Przesuń suwak, aby je sprawdzić:

Interaktywne · czy atakujący może dogonić resztę?

Wzór z białej księgi Bitcoin, sekcja 11

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Bloki, o które atakujący pozostaje w tyle (potwierdzenia). Słupki mają skalę logarytmiczną, od jednej szansy na milion do pewności.

Przy mocy obliczeniowej równej 10% szansa na zmianę historii płatności po 6 potwierdzeniach wynosi 0,024%, a po 1 potwierdzeniu 20,5%.

Przy mocy obliczeniowej równej 50% lub większej atakujący w końcu wygrywa. To atak 51%. Jest poważny, ale ma swoje ograniczenia:

Mając większość mocy obliczeniowej sieci, atakujący może

  • Zastąpić najnowsze bloki własnym łańcuchem
  • Podwójne wydanie monet wysłanych samemu sobie
  • Pominąć część transakcji w blokach

Nawet wtedy nie mogą

  • Wydawać monety z cudzych portfeli
  • Tworzenie monet ponad nagrodę za blok
  • Zmienić zasady Bitcoina dla wszystkich pozostałych

Dlatego giełdy czekają na kilka potwierdzeń przy dużych wpłatach. Sześć to powszechnie przyjmowana orientacyjna liczba.

Dlaczego proof of work zużywa tyle energii?

Bo energia zapewnia bezpieczeństwo. Poprawny blok dowodzi, że zużyto rzeczywistą energię elektryczną. Aby zmienić historię, atakujący musi wydać co najmniej tyle samo ponownie i nadal ponosić te wydatki, gdy uczciwa sieć idzie naprzód.

Na co idzie energia i co dzięki niej zyskujemy

  1. Nagroda za blok i opłaty

    Nowe BTC i opłaty za każdy blok, wypłacane temu, kto go znajdzie.

  2. Maszyny i energia elektryczna

    Górnicy wydają najwyżej tyle, ile według nich warta jest nagroda.

  3. Hashrate sieci

    Całe te wydatki przekładają się na liczbę hashy na sekundę.

  4. Koszt przepisania historii

    Atakujący musi wydać co najmniej tyle samo, blok po bloku.

Potraktuj to jako cykl: im więcej wart jest zysk, tym więcej mocy haszującej przyciąga, a atak staje się droższy.

To, ile energii zużywa mining i skąd ona pochodzi, można zasadnie podawać w wątpliwość. Indeks Cambridge śledzi szacunki, a w naszym przewodniku po zużyciu energii przez mining Bitcoina omawiamy liczby. Każdy halving zmniejsza część nagrody pochodzącą z nowych monet, więc z czasem coraz większą część budżetu bezpieczeństwa muszą pokrywać opłaty.

Dowód pracy a dowód stawki: na czym polega różnica?

Dowód stawki (PoS) wybiera twórcę następnego bloku spośród osób, które blokują monety jako depozyt, zamiast spośród tych, które zużywają energię elektryczną. Ethereum przeszło z dowodu pracy na dowód stawki w 2022. Oto rzetelne porównanie:

Proof of workDowód stawki
Kto dodaje kolejny blokPierwszy górnik, który znajdzie hash poniżej celuWalidator wybierany proporcjonalnie do swojej stawki
Co go zabezpieczaEnergia elektryczna i sprzęt zużywane poza łańcuchemMonety zablokowane w łańcuchu, które można skonfiskować za oszustwo
Zużycie energiiWysokie z założeniaNiski
Aby wziąć udziałMaszyny i tani prądMonety do stakingu
RozliczenieBezpieczeństwo rośnie z każdym potwierdzeniemJawne punkty kontrolne finalności
Główny zarzutZużycie energii i koncentracja wydobyciaKoncentracja udziałów i bardziej złożona konstrukcja
HistoriaBitcoin od 2009Ethereum, od 2022

Twórcy Bitcoina pozostali przy proof of work, ponieważ jego koszt ponosi się poza systemem, więc nikt nie może kupić kontroli za monety, które już posiada. Zwolennicy proof of stake wskazują na mniejsze zużycie energii i szybszą finalizację transakcji.

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.

Warto wiedzieć: nagrody są szacunkowe, zmieniają się wraz z siecią i nie są gwarantowane, a plan nie daje prawa własności do żadnej maszyny ani puli. Wypłaty mogą podlegać limitom lub wymagać weryfikacji. Szczegóły znajdziesz w zasadach przyznawania nagród i darmowym przewodniku po kopaniu Bitcoinów. Obowiązują warunki.

Najczęściej zadawane pytania

Czym jest proof of work? Proste wyjaśnienie

To sposób na to, by dodanie bloku wymagało realnego wysiłku. Górnicy wielokrotnie haszują nagłówek bloku, zmieniając liczbę zwaną nonce, aż wynik będzie mniejszy od wartości docelowej. Znalezienie takiego hasha wymaga ogromnej liczby prób, ale każdy może go sprawdzić za pomocą jednego haszowania.

Czym jest nonce w Bitcoinie?

Liczba zapisana w 4 bajtach w nagłówku bloku, którą górnicy zmieniają przy każdej próbie. Może przyjąć około 4,3 miliardów różnych wartości. Gdy wszystkie zostaną wykorzystane, górnicy zmieniają dodatkowy nonce w transakcji coinbase. Dzięki temu powstaje nowy korzeń Merkle’a i nowy zestaw hashy.

Dlaczego Bitcoin dwukrotnie używa SHA-256?

Bitcoin hashuje nagłówek o rozmiarze 80 bajtów za pomocą SHA-256, a potem ponownie hashuje wynik. Satoshi nigdy nie wyjaśnił tego wyboru. Zwykle uważa się, że chroni on przed atakami polegającymi na wydłużaniu wiadomości i zapewnia dodatkowy margines bezpieczeństwa.

Co może zrobić atakujący z mocą 51%?

Ktoś, kto ma większość mocy obliczeniowej, może potajemnie zbudować dłuższy łańcuch i zastąpić niedawne bloki. Dzięki temu może dwukrotnie wydać własne monety lub blokować niektóre transakcje. Nie może wydawać cudzych monet, tworzyć monet niezgodnie z zasadami ani zmienić zasad dla wszystkich.

Czy proof of stake jest lepszy niż proof of work?

Zużywa znacznie mniej energii, a bezpieczeństwo zapewniają monety zablokowane jako stake. Proof of work opiera bezpieczeństwo na zewnętrznym koszcie: energii elektrycznej i sprzęcie. Od 2009 działa w ten sposób Bitcoin. Każde z tych rozwiązań ma inne kompromisy, więc to, które jest lepsze, zależy od tego, co cenisz.

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.

Źródła i dalsza lektura

  1. Bitcoin: A Peer-to-Peer Electronic Cash System (whitepaper) · Satoshi Nakamoto, bitcoin.org
  2. Przewodnik po łańcuchu bloków: nagłówki bloków, proof of work, coinbase · Dokumentacja dla deweloperów Bitcoin
  3. Przewodnik po miningu: solo mining, pule, getblocktemplate · Dokumentacja dla deweloperów Bitcoin
  4. Trudność · Bitcoin Wiki
  5. Potwierdzenie · Bitcoin Wiki
  6. Cambridge Bitcoin Electricity Consumption Index · Cambridge Centre for Alternative Finance
  7. Panel miningu: hashrate, trudność, ostatnie bloki · mempool.space

Bieżące dane na tej stronie pochodzą z API CloudMineCrypto lub z wymienionych obok publicznych serwisów z danymi blockchain. Są odświeżane według harmonogramu i oznaczone w odpowiednich miejscach. Ten poradnik ma charakter edukacyjny i nie stanowi porady finansowej. CloudMineCrypto nie jest produktem inwestycyjnym. Nagrody w aplikacji są szacunkowe i nie są gwarantowane.

Wiesz już, jak to działa. Teraz zobacz to w akcji.

Odbierz darmowy 8-godzinny plan kopania w aplikacji CloudMineCrypto i zobacz, jak rośnie Twoje szacowane BTC na podstawie danych sieci na żywo. Bez sprzętu, bez karty.