hash
Funkcja matematyczna, która przekształca dowolne dane wejściowe w ciąg znaków o stałej długości. Bitcoin używa SHA-256 do łączenia bloków i weryfikacji danych. Hashe są jednokierunkowe: oryginalnych danych wejściowych nie można odtworzyć z wyniku.
Funkcja skrótu to algorytm matematyczny, który przyjmuje dowolne dane wejściowe, czy to pojedyncze słowo, zapis transakcji lub cały blok danych, i produkuje ciąg znaków o stałej długości zwany hashem lub skrótem. Niezależnie od tego, jak duże lub małe są dane wejściowe, wynik zawsze ma tę samą długość. Bitcoin używa SHA-256, który produkuje 256-bitowy wynik, zwykle wyświetlany jako 64-znakowy ciąg szesnastkowy.
Funkcje skrótu są jednokierunkowe: mając wynik haszowania, obliczeniowo niemożliwe jest określenie oryginalnych danych wejściowych. Są również deterministyczne, co oznacza, że te same dane wejściowe zawsze produkują ten sam wynik. Nawet mała zmiana w danych wejściowych, zmiana jednego znaku, produkuje zupełnie inny hash. Ta czułość jest znana jako efekt lawinowy i sprawia, że hashe są niezawodnymi narzędziami do wykrywania jakiejkolwiek modyfikacji danych.
W Bitcoinie hashe pełnią kilka kluczowych ról. Każdy blok zawiera hash poprzedniego bloku, co łączy je razem i sprawia, że blockchain jest odporny na manipulacje. Wydobywanie wymaga znalezienia wyniku haszowania, który spada poniżej określonej wartości docelowej, co wymaga ogromnego wysiłku obliczeniowego. Identyfikatory transakcji są również hashami, umożliwiając każdemu wyszukanie dowolnej transakcji w blockchainie po jej unikalnym odcisku cyfrowym.