Czym jest nonce w krypto?

Czym jest nonce w krypto?

Czym jest nonce?

Nonce w krypto to skrót od „number used once”, czyli liczby używanej tylko raz w krypto. Ta unikalna wartość sprawia, że wynik obliczeń lub weryfikacji za każdym razem jest inny. Nonce są wykorzystywane jako narzędzie w blockchainach, aby zapobiegać oszustwom, zabezpieczać transakcje i umożliwiać osiąganie konsensusu w sieci.

W praktyce nonce pełni w krypto dwie główne role:

  • Podczas kopania w blockchainach Proof-of-Work
  • W transakcjach i mechanizmach bezpieczeństwa

Choć te dwa zastosowania są podobne, rola nonce zależy od kontekstu.


Najważniejsze informacje

  • Nonce to unikalna liczba („number used once”), która służy do zapobiegania powtórzeniom i manipulacjom w blockchainach.
  • W sieciach Proof-of-Work minerzy nieustannie zmieniają nonce, aby znaleźć poprawny hash.
  • W Bitcoinie nonce jest ograniczony do 32 bitów, dlatego minerzy korzystają z dodatkowych zmiennych, takich jak extra nonce i znaczniki czasu.
  • Nonce wzmacnia bezpieczeństwo, ponieważ sprawia, że modyfikowanie lub fałszowanie bloków jest skrajnie kosztowne.
  • W Ethereum nonce pełni funkcję numeru sekwencyjnego transakcji przypisanego do konta i jest niezależny od konsensusu.

Czym jest nonce w Proof of Work (na przykład w Bitcoinie)?

W blockchainach Proof-of-Work (PoW) minerzy muszą wykazać, że wykonali obliczenia, zanim otrzymają możliwość dodania nowego bloku. Potwierdzają to, znajdując poprawny hash.

Hash to wynik działania funkcji skrótu kryptograficznego. Jest to funkcja matematyczna, która zamienia dane wejściowe na stały ciąg znaków. Taka funkcja skrótu (często SHA-256) jest jednokierunkowa. Oznacza to, że nie da się odtworzyć oryginalnych danych wejściowych na podstawie hasha. W efekcie istnieje tylko jeden sposób, by znaleźć poprawny hash: wykonać bardzo dużą liczbę obliczeń.

Nonce to zmienna liczba, którą minerzy modyfikują, aby za każdym razem wygenerować inny hash. Jest ona zapisywana w nagłówku bloku. Zmieniając nonce, miner może za każdym razem próbować uzyskać nowy hash. Minerzy kontynuują te próby, aż znajdą poprawny hash. Dodatkowo hash musi spełniać wymagania sieci dotyczące trudności, na przykład być niższy od określonego progu.

Dlaczego minerzy stale zmieniają nonce?

Sieć krypto ustala poziom trudności tak, aby znalezienie nowego bloku zajmowało średnio stały czas bloku (na przykład około 10 minut w przypadku Bitcoina). Minerzy nieustannie próbują więc wygenerować inny hash, zmieniając nonce. Proces ten może obejmować od milionów do miliardów prób na sekundę.

We wczesnych latach Bitcoina było to stosunkowo łatwe i minerzy potrzebowali znacznie mniej prób. W tamtym czasie możliwe było nawet kopanie Bitcoina na laptopie, podczas gdy dziś jest to praktycznie niewykonalne, a głównie wykorzystuje się specjalistyczne komputery ASIC.

Gdy miner znajdzie hash spełniający wymagania trudności, blok jest udostępniany sieci. Inne węzły następnie sprawdzają, czy blok jest poprawny, a potem dodają go do blockchaina. Następnie ten sam proces zaczyna się od nowa dla kolejnego bloku.

Jaki jest limit nonce i dodatkowa zmienna w Bitcoinie?

W Bitcoinie nonce jest ograniczony do 32 bitów, co daje nieco ponad 4 miliardy możliwych wartości. Współcześni minerzy mogą bardzo szybko przechodzić przez tę przestrzeń, dlatego stosują dodatkowe metody, aby nadal zmieniać dane wejściowe. Na przykład dodają extra nonce w transakcji coinbase (dodatkową zmienną w nagrodzie minera) oraz zmieniają timestamp, czyli moment zapisania bloku. Cel pozostaje ten sam: generowanie nowych wyników hasha.

Jak nonce wpływa na bezpieczeństwo?

Nonce sprawia, że Proof-of-Work jest praktyczny i bezpieczny:

Utrudnia fałszowanie bloków do skrajnie kosztownego poziomu. Aby sfałszować blok, ktoś musiałby ponownie znaleźć poprawny hash. Zazwyczaj wymaga to co najmniej tak dużej mocy obliczeniowej, jaką dysponuje reszta sieci łącznie (tzw. atak 51%), co sprawia, że oszustwo jest w praktyce niewykonalne.

  • Każdy może łatwo sprawdzić, czy blok jest poprawny. Inne węzły muszą jedynie zweryfikować, czy hash bloku jest zgodny z zasadami. Zajmuje to bardzo mało czasu i energii, dlatego jest wyjątkowo wydajne.
  • Zapewnia uczciwą rywalizację między minerami. Ponieważ wszyscy minerzy działają według tych samych zasad i mogą odnieść sukces wyłącznie dzięki rzeczywistej pracy obliczeniowej, powstaje otwarta i przejrzysta konkurencja.
  • Im większy staje się blockchain, tym trudniej manipulować starymi blokami. Gdyby ktoś chciał zmodyfikować stary blok, musiałby ponownie wykopać ten blok oraz wszystkie kolejne, co wymagałoby ogromnej ilości czasu i energii.

Jak nonce działa w Ethereum i innych altcoinach?

Nonce działa w Ethereum i innych altcoinach inaczej niż w kopaniu Bitcoina. W Ethereum, które korzysta z Proof-of-Stake (PoS), nonce pełni funkcję rosnącego numeru sekwencyjnego przypisanego do konta. Każda transakcja otrzymuje nonce, co zapewnia, że transakcje są zawsze przetwarzane we właściwej kolejności i że tej samej transakcji nie da się wykonać dwa razy. W Ethereum nonce jest mechanizmem transakcyjnym, a nie narzędziem służącym do osiągania konsensusu.

Jakie są wady nonce?

Same nonce nie są wadą, ale sposób ich wykorzystania w sieciach Proof-of-Work wiąże się z pewnymi minusami:

  • Nieustanne zmienianie nonce w celu znalezienia poprawnego hasha wymaga intensywnej pracy obliczeniowej i prowadzi do wysokiego zużycia energii.
  • Wraz ze wzrostem sieci i liczbą minerów rośnie poziom trudności, a więc potrzeba coraz więcej obliczeń.
  • Efekty skali wynikające ze specjalistycznego sprzętu i taniej energii mogą dawać przewagę dużym poolom wydobywczym.

Te wady odgrywają ważną rolę w kompromisie między Proof of Work a Proof of Stake.

Podsumowanie

Nonce to istotne techniczne narzędzie w technologii blockchain, które zapewnia unikalność, bezpieczeństwo i niezawodność. W sieciach Proof-of-Work nonce stanowi kluczowy element procesu kopania i bezpieczeństwa blockchaina, natomiast w blockchainach takich jak Ethereum służy głównie do prawidłowego porządkowania transakcji i zapobiegania ich wielokrotnemu wykonaniu. Chociaż same nonce nie mają wad, ich wykorzystanie w Proof-of-Work prowadzi do wysokich kosztów energii i efektów skali na korzyść dużych minerów, co jest ważnym powodem, dla którego coraz więcej sieci wybiera alternatywne mechanizmy konsensusu, takie jak Proof of Stake.

O Finst

Finst to wiodąca platforma kryptowalutowa w Holandii, oferująca bardzo niskie opłaty transakcyjne, bezpieczeństwo klasy instytucjonalnej oraz szeroki zakres usług crypto, takich jak trading, przechowywanie aktywów, staking oraz wpłaty i wypłaty fiat. Finst, założona przez byłych kluczowych członków zespołu DEGIRO, jest autoryzowana jako dostawca usług w zakresie kryptoaktywów na mocy MiCAR przez Holenderski Urząd ds. Rynków Finansowych (AFM) i obsługuje klientów detalicznych oraz instytucjonalnych w 30 krajach europejskich.

Platforma crypto, którą pokochasz

Jesteśmy po to, aby dać Ci narzędzia, inspirację i wsparcie potrzebne do tego, by stać się lepszym inwestorem.

Zarejestruj się