Глосарій · Майнінг

Нонс

Від команди CloudMineCryptoОновлено Також відоме як число, використане один раз

Визначення

Nonce — це 32-бітове число в заголовку блока Bitcoin, яке майнери змінюють під час кожної спроби знайти дійсний блок. Кожен новий nonce дає зовсім інший хеш, тож майнери перебирають nonce, щоб робити свої припущення.

Частина глосарія з майнінгу Bitcoin: 88 термінів простою мовою.

Усі можливі nonce

4,294,967,296

можливих значень, від 0 до 4 294 967 295 (32 бітів)

Уся мережа Bitcoin перебирає їх усі приблизно 189 мільярдів разів за секунду.Поточна оцінка за хешрейтом мережі, оновлюється щогодини.

Як майнери використовують nonce?

Майнер формує заголовок блока, задає nonce 0 і хешує його. Якщо хеш більший за цільове значення, він задає nonce 1 і пробує знову, потім 2 і так далі. Назва nonce скорочує вислів «число, використане один раз».

Жоден nonce не кращий за інший. Хеш неможливо передбачити, тому кожна спроба має однаковий мізерний шанс на успіх. Саме це робить майнінг чесним: більше спроб за секунду означає більше шансів, і ніщо інше не допомагає.

Що відбувається, коли значення nonce вичерпуються?

Чотири байти вміщують 4 294 967 296 значень. Сучасна машина перебирає їх усі значно швидше, ніж за одну тисячну секунди. Тому майнери змінюють щось іще в блоці й починають перебір nonce спочатку.

Цикл майнера

  1. 01

    Перебрати всі значення nonce

    0, 1, 2 і так далі до 4 294 967 295. Це всі значення, які можуть вмістити 4 байти.

  2. 02

    Швидко вичерпуються

    Один пристрій на 100 TH/s перебирає всі варіанти приблизно за 43 мільйонних часток секунди.

  3. 03

    Змінити додатковий nonce

    Майнер змінює вільне поле у власній транзакції винагороди (coinbase).

  4. 04

    Новий корінь Меркла

    Транзакція змінилася, тому змінився корінь Меркла, і кожен nonce знову дає нові хеші.

Потім знову до кроку 1. Майнери також можуть трохи змінити часову позначку, що теж змінює заголовок.

Зазвичай використовують додатковий nonce, резервне поле в транзакції coinbase. Його зміна змінює корінь Merkle, і з’являється цілком новий набір заголовків для перевірки. Майнери також можуть трохи змінити мітку часу, а на багатьох сучасних машинах ще й кілька бітів поля версії.

Джерела

  1. Нонс · Bitcoin Wiki
  2. Алгоритм хешування блока · Bitcoin Wiki
  3. Посилання про блокчейн: заголовки, дерева Меркла, ціль · Документація розробника Bitcoin

Актуальні дані на цій сторінці надходять з API CloudMineCrypto та публічних даних блокчейну, регулярно оновлюються й позначені там, де відображаються. Лише для ознайомлення, не фінансова порада.

А тепер подивімося, як відбувається майнінг.

Claim a free 8-hour mining plan in the CloudMineCrypto app and watch your estimated BTC tick up from live network data. Withdraw to your own wallet, Lightning included. Rewards are estimates.