Dowód Pracy (Proof of Work)

06.12.2018

Czym jest algorytm Dowodu Pracy (ang. Proof-of-Work?)

Koncepcja algorytmu Proof-of-Work oryginalnie opracowana została w 1993 roku w celu zapobieżenia atakom na infrastrukturę i usługi sieciowe za pomocą metod typu DDoS czy Spam. Koncepcja zakłada wykonanie przez użytkownika usługi pewnej pracy (czyt. czynności) w celu uzyskania do niej pełnego dostępu. Praca ta zwykle związana jest/była z wykonywaniem obliczeń przez komputer.

W 2009 r. Bitcoin wprowadził innowacyjny sposób wykorzystania koncepcji Proof-of-Work jako algorytmu konsensusu, który służy do sprawdzania transakcji i emisji nowych bloków do sieci blockchain.

Koncepcja Proof-of-Work obecnie rozprzestrzeniła się i stała się szeroko stosowanym algorytmem konsensusu przez wiele kryptowalut.


Na czym polega Proof-of-Work?

W skrócie, koncepcja zakłada iż górnicy w sieci konkurują ze sobą na polu rozwiązywania złożonych zagadek matematycznych. Zagadki są trudne do rozwiązania. W momencie gdy górnik znajduje rozwiązanie zagadki, wysyła o tym informację do sieci (wraz z blokiem transakcji), a wszyscy pozostali górnicy następnie sprawdzają, czy rozwiązanie jest poprawne.


Spójrzmy na poniższy przykład.

Bitcoin jest systemem opartym na technologii (czyt. sieci) blockchain, który utrzymywany jest przez zbiorową pracę zdecentralizowanych węzłów. Niektóre z tych węzłów znane są jako górnicy i są odpowiedzialne za dodawanie nowych bloków do sieci. Aby to zrobić, górnicy muszą spróbować odgadnąć liczbę pseudolosową (inaczej nonce). Ta liczba, w połączeniu z danymi dostarczonymi w bloku i przekazanymi przez funkcję mieszającą musi dać wynik pasujący do określonych warunków, na przykład musi być to hash zaczynający się od czterech zer. Po znalezieniu pasującego wyniku inne węzły weryfikują jego poprawność, a węzeł górnika, który rozwiązał zagadkę otrzymuje nagrodą (ang. block reward).

Biorąć powyższe pod uwagę niemożliwe jest dodanie nowego bloku do głównego łańcucha w sieci bez uprzedniego znalezienia poprawnego nonce, co z kolei generuje rozwiązanie konkretnego bloku (zwane hash bloku - ang. block hash). Każdy zatwierdzony w sieci blockchain blok zawiera block hash, który reprezentuje pracę wykonaną przez górnika. Stąd właśnie wzięło się określenie Dowód Pracy.

Proof-of-Work pomaga chronić sieć przed wieloma wektorami ataków na nią. Udany atak na sieć opartą o PoW wymagałby dużej mocy obliczeniowej i dużo czasu na wykonanie odpowiednich obliczeń, a zatem byłby nieefektywny, ponieważ poniesione koszty byłyby większe niż potencjalne nagrody za zaatakowanie sieci.

Jednym z problemów związanych z Proof-of-Work jest to, że wydobywanie bloków (ang. mining) wymaga drogiego sprzętu komputerowego zużywającego duże zasoby energii. Ponad to skomplikowane obliczenia algorytmów gwarantują jedynie bezpieczeństwo sieci, obliczeń tych nie można wykorzystać dalej (przynajmniej na ten moment).

Chociaż Proof of Work może nie być najskuteczniejszym podejściem, to nadal jest jedną z najpopularniejszych metod osiągania konsensusu w sieciach blockchain. Istnieją już alternatywne metody i podejścia, które próbują rozwiązać problemy obecne w PoW, ale jedynie czas pokaże, które z nich zastąpi Proof-of-Work.

Śledź nas na bieżąco oraz nie zapomnij sprawdzić innych filmów i artykułów dostępnych na Binance Academy aby stale poszerzać swoją wiedzę!

Loading