Czym jest Nonce?
Nonce to liczba używana jednokrotnie, aby uczynić próbę kryptograficzną unikatową. W kopaniu w stylu Bitcoina to wartość jednorazowa, którą górnicy zmieniają, aż hash bloku spełni zasady. Wyobraź sobie, że kręcisz pokrętłem zamka wielokrotnie, aż zatrzaśnie się.
Nonce jest zawsze losowy. Nie do końca. Musi być tylko unikatowy dla tej próby, więc górnicy często sprawdzają wartości kolejno, a nie z generatora losowego.
Jak działa Nonce
Oto szybkie przedstawienie procesu kopania. Wyobraź sobie górnika przy klawiaturze, z kawą w dłoni, testującego wartości z prędkością maszyny.
- Step 1: Górnik zbiera transakcje i przygotowuje nagłówek bloku.
- Step 2: Próbuje wartości Nonce, haszuje nagłówek, a następnie sprawdza, czy wynik spełnia cel określony przez trudność sieci.
- Step 3: Jeśli się nie uda, zmieniają wartość i próbują ponownie. Powtarzają to wiele razy.
- Step 4: Gdy wreszcie się uda, górnik nadaje blok, a każdy może to sprawdzić, haszując ten sam nagłówek wraz z zawartymi danymi bloku.
- Step 5: Następny blok, nowe poszukiwania. Ta sama gra, kolejna runda.
Tak, to wszystko.
Dlaczego Nonce ma znaczenie
Jakie korzyści daje tobie?
- Korzyść: Pozwala każdemu zweryfikować dowód pracy, co utrzymuje tworzenie bloków uczciwym.
- Perspektywa: W łańcuchach opartych na kontach licznik transakcji, zwany też nonce, pomaga powstrzymać ataki powtórzeniowe i dziwne triki z przestawianiem kolejności.
- Zastosowanie: Zobaczysz to w eksploratorach bloków, interfejsach portfeli, panelach górniczych i narzędziach dla deweloperów.
Przeglądasz eksplorator bloków? Sprawdź, czy to Nonce używany przy kopaniu w bloku, czy licznik transakcji dla konta. To samo słowo, inne zastosowanie.
Kluczowe cechy Nonce
Najważniejsze informacje:
- Unikalność: Używana raz dla konkretnej próby kryptograficznej, potem nie jest powtarzana w tym miejscu.
- Możliwość zmiany: W kopaniu to pokrętło, które górnicy kręcą, szukając poprawnego hashu.
- Weryfikowalność: Każdy może ponownie obliczyć hash, aby potwierdzić wynik, bez potrzeby zaufania.
- Ograniczenie: Bitcoin udostępnia 32 bitowe pole, więc gdy się skończy, górnicy zmieniają też inne pola.
Odmiany
To samo słowo, kilka wariantów, które warto znać:
- Kopanie: Wartość w nagłówku bloku używana przy poszukiwaniu dowodu pracy.
- Dodatkowy: Dodatkowy nonce ukryty w transakcji coinbase, aby poszerzyć zakres poszukiwań.
- Konto: Licznik transakcji w łańcuchach takich jak Ethereum, który zapobiega powtórzeniom i wymusza kolejność.
- Podpis: Tajna losowa wartość w podpisie ECDSA, która nie może się powtórzyć, bo inaczej klucze mogą wyciec.
To nie jest hasło. Jest publikowany wraz z blokiem lub transakcją, a jego zadaniem jest uczynić obliczenie unikatowym i możliwym do sprawdzenia.
Przykład
Górnik przegląda wartości w nagłówku miliardy razy, aż jedna spowoduje, że hash zacznie się długą sekwencją zer, po czym wysyła blok.
Ciekawostka
Nonce pochodzi od wyrażenia from the nonce w średnioangielskim, oznaczającego dla okazji. Kryptografowie przyjęli to określenie dawno temu dla liczb używanych jednokrotnie, na długo przed pojawieniem się GPU i memecoinów.
Podsumowanie
W skrócie: to liczba jednorazowa, która sprawia, że dowód pracy i wiele kryptograficznych sztuczek naprawdę działa, bez pośrednika.
