Block hash
Hash bloku to kryptograficzny skrót danych bloku, używany jako jego identyfikator i odwołanie do historii blockchaina.
Czym jest hash bloku
Block hash oznacza hash bloku. Możesz myśleć o nim jak o cyfrowym odcisku palca konkretnego bloku.
Jeśli dane bloku zmienią się choćby minimalnie, jego hash też się zmieni. Dzięki temu węzły mogą łatwo wykryć próbę podmiany albo modyfikacji historii.
W praktyce hash bloku zobaczysz w block explorerze, dokumentacji RPC albo narzędziach analizujących historię łańcucha.
Do czego służy hash bloku
- Identyfikacja bloku
- Pozwala jednoznacznie wskazać konkretny blok w historii sieci.
- Łączenie bloków
- Bloki odwołują się do poprzednich bloków przez ich hash, tworząc łańcuch.
- Wykrywanie zmian
- Zmiana danych bloku zmienia hash, więc późniejsze odwołania przestają pasować.
- Explorery i RPC
- Hash jest używany do wyszukiwania bloków i pobierania danych technicznych.
Dlaczego hash wiąże historię
Każdy blok zawiera odniesienie do poprzedniego bloku. Tym odniesieniem jest hash poprzednika.
Zmiana starego bloku natychmiast zmienia jego hash. Następny blok nadal wskazuje na wcześniejszy hash, więc łańcuch przestaje się zgadzać.
Próba zmiany historii wymaga przebudowania dalszej części łańcucha zgodnie z regułami konsensusu.
Bitcoin i Ethereum
W Bitcoinie hash bloku ma szczególne znaczenie, bo jest powiązany z proof of work. Minerzy szukają takiego hasha nagłówka bloku, który spełnia aktualny cel trudności.
W Ethereum po The Merge hash bloku nadal identyfikuje blok i łączy historię, choć nie wynika już z wyścigu górników proof of work.
W obu sieciach hash bloku pomaga węzłom, explorerom i narzędziom technicznym wskazać dokładny fragment historii.
Przykład użycia
- W explorerze otwierasz stronę konkretnego bloku.
- Explorer pokazuje jego hash bloku.
- Możesz użyć tego hasha w zapytaniu RPC albo w innym narzędziu.
- Jeśli dwa źródła pokazują ten sam hash dla bloku, odnoszą się do tego samego bloku.
- Jeśli hash się różni, patrzysz na inny blok albo inną wersję historii.
Najczęstsze błędne założenia
- Hash bloku jest identyfikatorem wyliczonym z danych, nie pełną zawartością bloku.
- Explorer nie nadaje hashy blokom samodzielnie. Pokazuje wartość wynikającą z danych łańcucha.
- Zmiana transakcji w bloku zmieniłaby dane, a więc także hash.
- W Bitcoinie hash bloku ma bezpośredni związek z miningiem. W Ethereum po The Merge pełni głównie rolę identyfikatora i odwołania do historii.
Hash pokazuje integralność danych
Hash bloku pozwala szybko sprawdzić, czy mówimy o tym samym bloku i tej samej historii. Jego wartość wynika z danych, więc zmiana bloku zmienia jego identyfikator.
