Przejdź do treści
Słownikpodstawybitcoinethereumproof-of-work

Blok

Paczka danych zaakceptowana przez blockchain, zwykle zawierająca transakcje, metadane i odwołanie do poprzedniego bloku.

Czym jest blok

Blok to podstawowa jednostka historii w blockchainie. Zamiast zapisywać każdą transakcję jako osobny fragment historii, sieć grupuje transakcje i inne dane w bloki.

Każdy poprawny blok musi spełniać reguły protokołu. Węzły sprawdzają m.in. poprawność transakcji, podpisy, salda, strukturę danych i to, czy blok pasuje do poprzedniej historii.

Gdy blok zostanie zaakceptowany, staje się kolejnym krokiem we wspólnej historii sieci. Następne bloki budują na nim, przez co cofnięcie starego fragmentu historii staje się coraz trudniejsze.

Co zwykle znajduje się w bloku

Nagłówek bloku
Metadane potrzebne do identyfikacji bloku i sprawdzenia, gdzie pasuje w łańcuchu.
Odwołanie do poprzedniego bloku
Hash poprzedniego bloku, który łączy bloki w chronologiczną sekwencję.
Transakcje
Działania użytkowników albo aplikacji, które sieć ma zapisać w historii.
Merkle root
Kryptograficzne podsumowanie transakcji lub danych zawartych w bloku.
Dane konsensusu
Informacje zależne od sieci, na przykład proof of work albo dane walidatora.

Dlaczego bloki tworzą łańcuch

Blok zawiera odniesienie do poprzedniego bloku. To odniesienie zwykle ma postać hasha, czyli kryptograficznego identyfikatora wyliczonego z danych bloku.

Jeśli ktoś zmieni stary blok, zmieni się jego hash. Wtedy kolejne bloki przestaną poprawnie wskazywać na wcześniejszą historię.

Właśnie dlatego blockchain jest strukturą łańcuchową. Każdy nowy blok wzmacnia praktyczną trudność zmiany poprzednich bloków.

Co blok oznacza dla użytkownika

Użytkownik zwykle spotyka bloki przez potwierdzenia transakcji, opłaty i czas oczekiwania.

  • Transakcja zostaje potwierdzona dopiero po włączeniu do bloku.
  • Kolejne bloki po twojej transakcji zwykle zwiększają jej bezpieczeństwo.
  • Ograniczona pojemność bloków tworzy konkurencję o miejsce.
  • Gdy popyt na miejsce w bloku rośnie, opłaty zwykle też rosną.
  • Różne sieci mają różny czas bloków i różne reguły finality.

Blok w Bitcoinie i Ethereum

W Bitcoinie blok jest ściśle związany z proof of work. Miner buduje blok, szuka poprawnego hasha nagłówka i publikuje blok, gdy znajdzie wynik spełniający aktualny cel trudności.

W Ethereum po The Merge bloki tworzą walidatorzy w systemie proof of stake. Czas i role są powiązane ze slotami, proposerami i warstwą konsensusu.

Słowo „blok” pojawia się w obu sieciach, ale szczegóły produkcji i finalności są inne. Dlatego szybki czas bloku nie zawsze oznacza taką samą pewność rozliczenia.

Przykład z perspektywy transakcji

  • Wysyłasz transakcję z portfela.
  • Transakcja trafia do sieci i czeka na włączenie do bloku.
  • Producent bloku wybiera transakcje i tworzy kandydat na blok.
  • Węzły sprawdzają, czy blok jest poprawny.
  • Po zaakceptowaniu bloku transakcja staje się częścią historii sieci.

Najczęstsze błędne założenia

  • Blok nie jest tym samym co finality.
  • Transakcja w bloku nie zawsze jest natychmiast nieodwracalna.
  • Blok nie jest tylko workiem transakcji. Ważna jest też struktura zobowiązań i reguły konsensusu.
  • Szybsze bloki nie muszą oznaczać bezpieczniejszego rozliczenia.
  • Różne blockchainy mogą używać słowa „blok” dla struktur o innych właściwościach.

Blok to jednostka historii

Jeśli transakcja trafiła do bloku, sieć zapisała ją w aktualnej wersji historii. Poziom pewności zależy jeszcze od kolejnych bloków, finality i reguł konkretnego blockchaina.

Najczęstsze pytania

Częściowo tak, ale blok zawiera też metadane i kryptograficzne odniesienia do historii. Sama lista transakcji nie wystarcza, żeby blok był poprawny.

Zależy od sieci. Włączenie do bloku oznacza potwierdzenie w aktualnej historii. Finality zależy od mechanizmu konsensusu i liczby kolejnych potwierdzeń albo checkpointów.

Miejsce w bloku jest ograniczone. Gdy wielu użytkowników chce wykonać transakcję w tym samym czasie, konkurują opłatami o szybsze uwzględnienie.

Nie. Bitcoin, Ethereum, Solana i rollupy różnią się strukturą danych, czasem bloków, finality i sposobem produkcji bloków.