Що таке Nonce?
Nonce це число, яке використовують один раз, щоб зробити криптографічну спробу унікальною. У майнінгу за типом Біткойна це одноразове значення, яке майнери підбирають, доки хеш блоку не відповідатиме правилам. Уявіть собі, що ви знову і знову крутите диск замка, поки не клацне.
Nonce завжди випадковий. Не зовсім так. Він має бути унікальним для конкретної спроби, тому майнери часто перебирають значення послідовно, а не беруть їх із випадкового генератора.
Як працює Nonce
Ось короткий покроковий опис майнінгу. Уявіть майнера за клавіатурою з кавою, який перебирає значення на комп'ютерній швидкості.
- Крок 1: Майнер збирає транзакції і готує заголовок блоку.
- Крок 2: Вони пробують значення Nonce, хешують заголовок, а потім перевіряють, чи відповідає результат цілі, встановленій складністю мережі.
- Крок 3: Якщо не вдається, вони змінюють значення і пробують знову. Повторюють багато разів.
- Крок 4: Коли це врешті вдається, майнер транслює блок, і кожен може перевірити, перехешувавши той самий заголовок разом із включеними даними блоку.
- Крок 5: Наступний блок, новий пошук. Та сама гра, нове коло.
Ось і все.
Чому Nonce має значення
Яка від цього користь для вас?
- Перевага: Це робить доказ роботи перевірним для кожного, що сприяє чесності створення блоків.
- Погляд: У ланцюгах з обліковими записами лічильник транзакцій, який також називають Nonce, допомагає зупиняти атаки повторного відтворення і дивні перестановки.
- Де це зустрінете: Ви побачите його в переглядачах блоків, інтерфейсах гаманців, панелях майнінгу та інструментах для розробників.
Переглядаєте оглядач блоків? Переконайтеся, чи це майнінговий Nonce у блоці, чи лічильник транзакцій для акаунту. Те саме слово, різні ролі.
Ключові характеристики Nonce
Головні моменти, на які варто звернути увагу:
- Унікальність: Використовується один раз для конкретної криптографічної спроби і більше не застосовується в тому ж місці.
- Регульоване: У майнінгу це те, що майнери змінюють, щоб знайти дійсний хеш.
- Перевірність: Кожен може повторно обчислити хеш, щоб підтвердити заяву, довіра не потрібна.
- Обмеженість: У Біткойна є 32 бітне поле, тому майнери також змінюють інші поля, коли варіантів не лишається.
Варіанти
Те саме слово, кілька варіантів, які варто знати:
- Майнінг: Значення в заголовку блоку для пошуку доказу роботи.
- Додатковий: Додатковий nonce у coinbase транзакції, щоб розширити діапазон пошуку.
- Акаунт: Лічильник транзакцій у мережах типу Ethereum, який запобігає дублюванню і гарантує порядок.
- Підпис: Секретне випадкове значення в підписі ECDSA, яке ніколи не повинно повторюватися, інакше ключі можуть бути скомпрометовані.
Це не пароль. Воно публікується разом із блоком або транзакцією, і його роль полягає в тому, щоб зробити обчислення унікальним і піддаваним перевірці.
Приклад
Майнер перебирає значення в заголовку мільярди разів, поки одне з них не зробить хеш таким, що починається з довгої послідовності нулів, після чого блок відправляється.
Цікавий факт
Слово Nonce походить від виразу середньоанглійською, що означало для цієї нагоди. Криптографи запозичили його давно для позначення одноразових чисел, задовго до появи графічних процесорів і мем-коїнів.
Підсумок
Коротко: це одноразове число, яке дозволяє доказу роботи і багатьом криптографічним трюкам працювати без посередника.
