Mechanizmy kryptograficzne Proof-of-Stake
Proszę przeanalizować wybór walidatorów, warunki slashing oraz kryptograficzną losowość wymaganą w protokołach PoS.
Mechanizmy kryptograficzne Proof-of-Stake to bezpłatna lekcja Cryptology Academy na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Cryptology Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Od Proof-of-Work do Proof-of-Stake
Proof-of-Work (PoW) zabezpiecza blockchainy poprzez ponoszenie kosztu obliczeniowego: górnicy rywalizują o znalezienie skrótu poniżej wartości docelowej, a zwycięzca dołącza następny blok. Zużywa to energię elektryczną proporcjonalnie do poziomu bezpieczeństwa sieci. Proof-of-Stake (PoS) zastępuje obliczenia stawką ekonomiczną — walidatorzy blokują kryptowalutę jako zabezpieczenie, a protokół wybiera proponujących bloki proporcjonalnie do ich stawki. Przejście Ethereum z PoW na PoS (The Merge, wrzesień 2022 roku) zmniejszyło zużycie energii o ponad 99,9%.
Rejestracja walidatora i staking
W systemie PoS Ethereum (konsensusie Gasper) walidatorzy stakują 32 ETH, wysyłając transakcję depozytową do inteligentnego kontraktu w warstwie wykonawczej. Depozyt zawiera klucz publiczny BLS (tożsamość walidatora), poświadczenie wypłaty oraz podpis potwierdzający posiadanie klucza. Kontrakt depozytowy emituje zdarzenie w logu; warstwa konsensusu odczytuje te logi i umieszcza walidatorów w kolejce do aktywacji po opóźnieniu (w normalnych warunkach około 12–24 godzin). Zabezpieczenie w wysokości 32 ETH pozostaje zablokowane do momentu włączenia wypłat.
Klucze BLS i tożsamość walidatora
Walidatorzy Ethereum używają dwóch par kluczy: klucza podpisu BLS12-381 do zadań konsensusu (atestacji, proponowania bloków i komitetu synchronizacji) oraz osobnego klucza wypłat do przenoszenia środków. Podpisy BLS (Boneh-Lynn-Shacham) na krzywych BN-254 lub BLS12-381 obsługują wydajną agregację: setki tysięcy podpisów walidatorów można połączyć w jeden podpis o rozmiarze 96 bajtów. Ta agregacja ma kluczowe znaczenie dla skalowalności — bez niej każdy slot wymagałby gigabajtów danych podpisów.
Slot, epoka i komitety walidatorów
Oś czasu konsensusu Ethereum jest podzielona na sloty (po 12 sekund każdy) i epoki (32 sloty = 6,4 minuty). W każdym slocie jeden walidator jest wybierany pseudolosowo jako proponujący blok. Wszyscy aktywni walidatorzy są dzieleni na komitety (zwykle po 512 walidatorów), które poświadczają głowę łańcucha. Przydziały do komitetów zmieniają się w każdej epoce za pomocą algorytmu tasowania opartego na RANDAO (Fisher-Yates z RANDAO jako źródłem entropii), aby zapobiec manipulowaniu składem komitetów.
RANDAO: losowość wyboru walidatorów
Wybór walidatorów w PoS wymaga losowości, której nie można przewidzieć ani zmanipulować. Ethereum używa RANDAO — schematu commit-reveal wbudowanego w protokół. Każdy proponujący blok musi dołączyć podpis BLS liczby bieżącej epoki; podpis ten wnosi nową entropię, ponieważ jest poddawany operacji XOR z nagromadzoną wartością RANDAO. Wynik RANDAO służy do wyboru proponującego blok w następnym slocie i tasowania komitetów. Przeciwnik kontrolujący ostatniego ujawniającego w epoce może nieznacznie wpłynąć na RANDAO, wstrzymując swój blok, ale ponosi wtedy koszt w postaci utraty nagrody za blok.
Slashing: kara kryptograficzna
Bezpieczeństwo PoS zależy od uczciwego zachowania walidatorów. Slashing karze za dwa konkretne rodzaje nieprawidłowego działania: ekwiwokację (podpisanie dwóch różnych bloków dla tego samego slotu) oraz głosowanie otaczające (oddanie sprzecznych atestacji). Dowód slashing jest przesyłany do łańcucha jako transakcja zawierająca dwie podpisane wiadomości o sprzecznej treści, ale z tym samym kluczem walidatora. Naruszający zasady walidator traci część swojej stawki (co najmniej 1/32, a potencjalnie całą stawkę, jeśli jednocześnie zostanie ukaranych wielu walidatorów) i zostaje przymusowo usunięty z aktywnego zbioru.
Casper FFG: mechanizm finalności
Mechanizmem finalności Ethereum jest Casper the Friendly Finality Gadget (FFG), nałożony na regułę wyboru forka LMD-GHOST. W każdej epoce walidatorzy oddają głosy na punkty kontrolne (source, target), gdzie source to ostatni uzasadniony punkt kontrolny, a target to blok na granicy bieżącej epoki. Punkt kontrolny zostaje uzasadniony, gdy uzyska poświadczenia od posiadaczy 2/3 stawki; uzasadniony punkt kontrolny zostaje sfinalizowany, gdy kolejny punkt kontrolny również zostanie uzasadniony. Po sfinalizowaniu blok nie może zostać cofnięty bez spalenia co najmniej 1/3 całego stakowanego ETH — dzięki temu cofnięcie staje się ekonomicznie katastrofalne.
Wybór forka LMD-GHOST
Między sfinalizowanymi punktami kontrolnymi walidatorzy muszą uzgodnić końcowy blok kanonicznego łańcucha. Ethereum wykorzystuje LMD-GHOST (Latest Message Driven Greedy Heaviest Observed SubTree). Najnowsze poświadczenie każdego walidatora liczy się jako głos; algorytm wyboru forka podąża za gałęzią o największej skumulowanej wadze stawki w każdym punkcie rozwidlenia, uwzględniając wyłącznie najnowszy komunikat każdego walidatora. Połączenie LMD-GHOST (żywotność) i Casper FFG (finalność) tworzy Gasper — kompletny protokół konsensusu Ethereum.
Poświadczenia wypłaty i separacja kryptograficzna
Klucze walidatorów Ethereum wykorzystują celową separację kryptograficzną. Klucz podpisujący BLS jest gorący (używany w każdym slocie do wystawiania poświadczeń), a zatem obarczony większym ryzykiem. Poświadczenie wypłaty jest skrótem oddzielnego klucza (lub adresem wykonawczym Ethereum po EIP-4895). Taki podział oznacza, że przejęty klucz podpisujący nie pozwala ukraść stakowanych ETH — atakujący może jedynie doprowadzić do ukarania walidatora slashingiem i utraty jego stawki. Tylko klucz wypłaty może zainicjować transfer środków, a sam klucz można przechowywać offline w sprzętowym urządzeniu.
Rozproszona technologia walidatorów (DVT)
Rozproszona technologia walidatorów (Distributed Validator Technology, DVT) eliminuje ryzyko pojedynczego punktu awarii w samodzielnym stakingu. Dzięki progowym podpisom BLS klucz pojedynczego walidatora jest dzielony między wielu operatorów (np. 3 z 5). Utworzenie propozycji bloku lub wystawienie poświadczenia wymaga osiągnięcia progowej zgody, zanim powstanie połączony podpis BLS. Żaden pojedynczy operator nie posiada kompletnego klucza. Projekty takie jak Obol Network i SSV Network implementują DVT, zwiększając odporność na awarie i umożliwiając staking instytucjonalny bez scentralizowanego przechowywania kluczy.
PoS w innych łańcuchach
Różne łańcuchy PoS implementują mechanizmy kryptograficzne w odmienny sposób. Solana wykorzystuje wariant Tower BFT ze znacznikami czasu przypominającymi VDF (Proof of History), aby ustalić kolejność przed osiągnięciem konsensusu. Cardano korzysta z Ouroboros — dowodliwie bezpiecznego protokołu PoS z formalnymi dowodami bezpieczeństwa kryptograficznego w modelu uniwersalnej kompozytowalności. Łańcuchy Cosmos używają Tendermint BFT — klasycznego protokołu BFT z finalnością kworum 2/3 w jednej rundzie. Każdy projekt inaczej równoważy bezpieczeństwo, żywotność, decentralizację i przepustowość.
Quiz dotyczący slashing w PoS
Jakiego głównego dowodu kryptograficznego używa się do ukarania walidatora Ethereum slashingiem?
Podsumowanie kryptografii PoS
Proof-of-Stake zastępuje obliczenia PoW zabezpieczeniem ekonomicznym. Walidatorzy Ethereum używają kluczy BLS12-381, które umożliwiają agregowanie poświadczeń. RANDAO zapewnia wewnętrzną dla protokołu losowość na potrzeby wyboru proponującego i tasowania komitetów. Casper FFG zapewnia finalność dzięki głosom 2/3 superwiększości na punkty kontrolne. LMD-GHOST odpowiada za wybór forka między punktami kontrolnymi. Slashing karze za equivocation i głosowanie otaczające, wykorzystując dostępne w łańcuchu dowody sprzecznych podpisanych komunikatów. DVT zwiększa odporność dzięki progowemu dzieleniu klucza BLS.
Często zadawane pytania
Czy lekcja „Mechanizmy kryptograficzne Proof-of-Stake” jest bezpłatna?
Tak — pełny tekst „Mechanizmy kryptograficzne Proof-of-Stake” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Cryptology Academy, przejdź na CoddyKit PRO. Kurs Cryptology Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Mechanizmy kryptograficzne Proof-of-Stake”?
Proszę przeanalizować wybór walidatorów, warunki slashing oraz kryptograficzną losowość wymaganą w protokołach PoS. Ćwiczysz Cryptology Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.
Czy potrzebuję doświadczenia, aby zacząć Cryptology Academy?
Nie wymagamy żadnego doświadczenia. Cryptology Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.
Ile czasu zajmuje lekcja „Mechanizmy kryptograficzne Proof-of-Stake”?
Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.
Czy mogę pisać i uruchamiać kod w tej lekcji Cryptology Academy?
Tak. Każda lekcja Cryptology Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.
Wszystkie lekcje w tym kursie
- Mechanizmy kryptograficzne Proof-of-Stake
- Protokoły BFT: PBFT i Tendermint
- Weryfikowalne funkcje losowe w konsensusie
- Podpisy BLS i schematy podpisów zagregowanych