Что такое Nonce?

Вы заметили, что хеш-данные для блоков Bitcoin (BTC) начинаются с группы 0 (нуля)? Секрет этого кроется в значении nonce, используемом в информатике и особенно в области безопасности данных. Теперь...
Майнинг криптовалют

Что такое Nonce?

Поделиться:
Вы заметили, что хеш-данные для блоков Bitcoin (BTC) начинаются с группы 0 (нуля)? Секрет этого кроется в значении nonce, используемом в информатике и особенно в области безопасности данных.

Теперь рассмотрим: «Как рассчитывается значение nonce?». В нашей статье мы подготовили; «Что такое nonce?», «Где используется nonce?», «Что такое значение nonce при майнинге Bitcoin?», «Какова связь между значением Nonce и системой Proof of Work?» Вы сможете найти ответы на такие вопросы.

Что такое Nonce?


Аббревиатура «Номер используется только один раз», nonce, представляет собой случайно сгенерированный номер, используемый для авторизации.

Значение nonce, с которым мы сталкиваемся не только при майнинге криптовалют, но и во многих различных областях компьютерных технологий, может быть определено как случайно сгенерированное число, отвечающее определенному критерию.

Существует множество различных сценариев использования и генерации значения nonce. Мы обсудим этот вопрос с точки зрения криптовалюты и подробно расскажем о заявлении nonce о системе майнинга Bitcoin для облегчения понимания.


Данные "Hash" и "Nonce" в блоках Bitcoin


Вступай в наше сообщество в TELEGRAM канале
Как вы знаете, добыча Bitcoin требует вычислительной мощности в астрономических масштабах. Эти огромные усилия в майнинге Bitcoin направлены на получение вознаграждения за блок ... Напоминание: с процессом уменьшения вдвое вознаграждения за блок Bitcoin, который произошел 11 мая 2020 года, вознаграждение майнера было уменьшено до 6,25 BTC.

Хотя они потребляют астрономическую вычислительную мощность, майнеры на самом деле находят простое число, значение nonce.

Когда мы заходим на информационный экран любого блока, созданного в сети Bitcoin на сайте blockchain.com, мы видим изображение, подобное этому

Что такое Nonce?

Подробная информация о блоке номер 632.276, использованном для примера.

Обратите внимание, что первые 19 цифр хеш-данных состоят из нуля. Это не случайно. Фактически, можно сказать, что основная причина сложности майнинга Bitcoin. Потому что майнеры очень стараются сгенерировать хэш-код с таким количеством нулей в начале, используя разные значения nonce.

Майнер (F2Pool), создавший блок, который мы привели в примере выше, определил, что значение nonce равно 3.719.213.695, чтобы создать 19 нулей в начале хеш-данных.

Чтобы лучше понять значение «nonce», которое майнеры пытаются найти, сначала нам нужно знать структуру блока Bitcoin. Для этого давайте вкратце вспомним термины блокчейн, Proof of Work и майнинг:


Что такое блокчейн?


Блокчейн - Это децентрализованный журнал, который отслеживает зашифрованные транзакции. Технология блокчейн, которая формирует инфраструктуру Bitcoin, перечисляет транзакции в блоках, подписывая их меткой времени, без необходимости авторизации. Проверенный блок данных прикрепляется непрерывно, как цепочка. Каждый блок зашифрованно связан с предыдущим блоком.

Что такое Proof-of-Work?


Метод, с помощью которого компьютер доказывает, что он работает и работает для определенного задания, называется Proof-of-Work (PoW). Проще говоря, доказательство работы похоже на решение головоломки, требующей очень большой вычислительной мощности или усилий. Хотя загадка сложна, решение легко проверить.

Как происходит майнинг Bitcoin?


В сетях блокчейнов, использующих консенсусный алгоритм Proof-of-Work, процесс подтверждения записей транзакций и добавления блоков, содержащих транзакции передачи, в сеть называется майнингом. Для проверки переводов и генерации блоков в сети цепочки блоков Bitcoinтребуется огромная вычислительная мощность.

Вспомнив основы, мы можем перейти к структуре блоков Bitcoin.


Что внутри блоков Bitcoin?


В блоках Bitcoin размером примерно 1 МБ в основном выполняются транзакции передачи.

В дополнение к этим транзакциям передачи в каждом блоке есть временная метка, хеш-информация предыдущего блока и данные стандартного определения.
Когда вы посмотрите на содержимое блока Bitcoin, можно понять, что большая часть данных была зафиксирована на момент совершения транзакции, и в то время майнером было создано только значение nonce.


Сложность - одноразовые отношения


Майнеры объединяют значения в таблице выше и извлекают сводку, то есть преобразуют их в хэш-код в формате SHA-256.

Преобразование всех данных, которые должны быть в блоке, в формат SHA-256 - очень простой процесс. Настолько, что мы можем легко сделать это с нашими ветеранскими компьютерами у себя дома. Однако механизм консенсуса Proof of Work ставит перед нами толстую преграду и оговаривает важное условие:
Создайте такой хэш-код, чтобы в начале было n нулей.

Упомянутое здесь значение «n» меняется в зависимости от сложности сети. Уровень сложности обновляется в зависимости от количества процессоров, добывающих Bitcoin, или, другими словами, скорости хеширования. Сложность сети Bitcoin, которая корректируется каждые 2106 блоков, настраивается таким образом, чтобы каждый блок происходил в среднем за 10 минут.
Так как же майнеры получают хэш-код с таким количеством нулей в начале? На этом этапе в игру вступает значение «nonce».


Расчет значения nonce


Если вы просматривали нашу статью о генерации хешей, вы могли заметить, что хеш-код - это односторонняя операция. Поэтому, когда майнер объединяет данные, он получает постоянный хэш.

При преобразовании данных в формате SHA-256 в хеш-код маловероятно ожидать в начале n нулей. Еще более вероятно, что бросить десятки тысяч кубиков подряд и каждый раз ждать, пока выпадет 6.

  • Смайлы и люди
    Животные и природа
    Еда и напитки
    Активность
    Путешествия и места
    Предметы
    Символы
    Флаги