Что такое Nonce, зачем нужен этот параметр в майнинге и как найти его значение
![]()
Nonce — число, отвечающее определенным требованиям, и используемое майнерами в процессе создания блоков в сетях, которые работают на алгоритме консенсуса PoW.
Nonce — это аббревиатура от number that can only be used once. То есть число, которое можно использовать только один раз.
Значение nonce для майнинга криптовалют
Майнинг в блокчейнах с алгоритмом консенсуса Proof-of-Work — это процесс добычи новых блоков в цепи, основанный на решении узлами сети математических задач.
Если мы «заглянем» в блок и посмотрим, что в нем находится, то увидим, что он состоит из заголовка и перечня транзакций. Заголовок блока содержит:
- хеш предыдущего блока;
- хеш корня Меркла (захешированные транзакции);
- временную метку;
- сложность майнинга (целевое число, которое периодически корректируется, значение хеша заголовка блока должно быть равно или меньше этого числа);
- nonce.
Чтобы добавить блок, майнеру нужно не просто вычислить его хеш, а сделать это определенным образом — результат должен соответствовать критерию сложности, который определяется сетью. Без этого блоки добавлялись бы слишком быстро (расчет хеша — довольно простая операция) и сеть не успевала бы достигать консенсуса.
Чтобы избежать такой «сверхскорости», и нужен nonce. Получая блок, майнер добавляет его к хешу и вычисляет хеш получившегося «набора». Если результат не соответствует значению критерия сложности, майнер меняет значение nonce и рассчитывает хеш заново.
Такой подход предполагает довольно высокие требования к вычислительной мощности узлов сети, так как майнеру нужно перебрать буквально миллиарды nonce, чтобы найти верное решение.
Как только значение nonce найдено, нужная хеш-сумма получена, — блок считается созданным. Он транслируется в сеть, проверяется другими майнерами и при отсутствии ошибок записывается в блокчейн. А майнер, создавший новый блок, получает вознаграждение.
Nonce: What It Means and How It's Used in Blockchain
Yarilet Perez is an experienced multimedia journalist and fact-checker with a Master of Science in Journalism. She has worked in multiple cities covering breaking news, politics, education, and more. Her expertise is in personal finance and investing, and real estate.
What Is a Nonce?
«Nonce» is a portmanteau of «number used only once.» It is a four-byte number added to a hashed—or encrypted—block in a blockchain that, when rehashed, meets the difficulty level restrictions. The nonce is the number that blockchain miners are solving for. When the solution is found, the blockchain miner that solves it is given the block reward.
Learn more about the nonce and why it is important to some blockchains.
Key Takeaways
- Nonce, a "number only used once," refers to the number a blockchain miner needs to discover before solving for a block in the blockchain.
- Once the miner solves the hash, they receive the block reward.
- Miners open new blocks by generating a nonce that makes the hash they create less than the hash from the block they are validating.
Understanding the Nonce
A blockchain’s security relies on its ability to create and validate long, encrypted numbers, sometimes called a «hash.» The cryptographic function used to generate a hash is deterministic, meaning that it will produce the same result each time the same input is used.
It also means that the function can generate a hashed input efficiently. This makes determining the input difficult (leading to the blockchain's security), and small changes to the input result in a different hash. This complex system creates the security net of a blockchain.
To keep the blockchain secure, data from previous blocks are encrypted or “hashed” into a series of numbers that is the block header for the next block. The block header is one of the fields in a block on a blockchain.
Transactions on a blockchain are aggregated into blocks from a memory pool based on the age of the transaction or the amount of fees paid.
The header is metadata, which contains the blockchain version number, the previous block’s hash, the Merkel Root, timestamp, the difficulty target, and the nonce. The nonce is the value that miners are trying to solve for.
How Is the Nonce Used?
The nonce is used to validate the information contained within a block. The mining program generates a random number, appends it to the hash of the current header, rehashes the value, and compares this to the target hash. If the resulting hash value meets the requirements, the miner has created a solution and is awarded the block. If the value doesn’t match the target, the nonce is increased by one, and the process starts again. This continues until one miner meets the target.
Most blocks are opened by mining pools because the mining difficulty is so high a single miner is unlikely to have enough hashing power to keep up, measured in the number of hashes per second that a miner is capable of. A home computer with the latest equipment might have a hashrate of 100 mega hashes per second (6 zeros, or million), where a mining farm full of ASIC miners might hash around 30 exa hashes per second (18 zeros, or quintillion).
It is highly unlikely that the nonce will be guessed on the first try. Miners generally have to test a large number of nonce options before getting it right. The greater the difficulty—a measure of how hard it is to create a hash less than the target—the longer it is likely to take to generate a solution.
Block difficulty is kept the same across the entire network, meaning that all miners have the same chance of figuring out the correct hash. Cryptocurrency networks typically establish a target number of blocks they want to be processed during a specific period and occasionally adjust the difficulty to ensure that this target is met. If the number of blocks processed does not meet this target, the difficulty will be reduced, with the reduction in difficulty set to how much time the process was over the limit.
What Does Nonce Stand for?
In cryptocurrency, a nonce is an abbreviation for "number only used once," which is a number added to a hashed—or encrypted—block in a blockchain that, when rehashed, meets the difficulty level restrictions. The nonce is the number that blockchain miners are solving to receive the block reward.
What Is a Blockchain Nonce?
A blockchain nonce is a number added to a hashed—or encrypted—block in a blockchain.
How Are Nonces Used?
In cryptocurrency, nonces are used as the number that is used in a hash to verify the transactions and other data contained in a block.
Что такое Nonce в майнинге?
Существует огромное количество различных статей и публикаций, в которых объясняется процесс майнинга, а также некоторые его аспекты. Сегодня практически каждый знает, как осуществляется добыча криптовалют и что лежит в ее основе. В данной статье мы поговорим о том, что такое nonce в майнинге, ведь данное определение встречается достаточно часто, но редко истолковывается.
Nonce в майнинге: самое простое описание
Для начала мы немного напомним вам, что такое сам майнинг. Не будем вдаваться в сложные теоретические выкладки, а рассмотрим самое простое определение данного процесса. Представьте, что у вас имеется огромное количество коробов, в одной из которых лежим монета. Чтобы забрать ее, вам необходимо последовательно открывать коробки. Но не все так просто – на каждой из коробок написана определенная задача, которую нужно решить, чтобы открыть коробку.
Так вот, тот ответ, который позволил нам открыть нужную коробку и достать монету, и является значением Nonce в майнинге. Стоит отметить, что оно является уникальным и никогда больше не повторяется.
Nonce в майнинге: техническое описание
Само определение Nonce является аббревиатурой от выражения «number that can only be used once». В переводе на русский это означает «число, которое может быть использовано лишь однажды». Оно представляет собой двоичный код, который ищется майнерами в процессе PoW-майнинга.
При нахождении нужного значения Nonce он записывается в заголовок блока и должен удовлетворять определенные условия, а именно – хеш блока должен быть меньше или равен заданному значению Target. Только при таком условии блок будет добавлен в блокчейн. В противном случае сеть не примет его, и майнеру придется продолжать перебор значений для нахождения нужного.
Нахождение значения Nonce в майнинге непосредственно связано со сложностью сети, ведь Target является производной от нее. Чтобы Nonce находилось майнерами с заранее определенной скоростью, происходит постоянное повышение сложности добычи. Например, в Bitcoin она пересчитывается каждые 2016 блоков.
Таким образом, ничего сложного в понимании значения Nonce нет. Достаточно лишь изучить процессы майнинга и немного покопаться в его структуре.
Что такое 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
Как вы знаете, добыча Bitcoin требует вычислительной мощности в астрономических масштабах. Эти огромные усилия в майнинге Bitcoin направлены на получение вознаграждения за блок . Напоминание: с процессом уменьшения вдвое вознаграждения за блок Bitcoin, который произошел 11 мая 2020 года, вознаграждение майнера было уменьшено до 6,25 BTC.
Хотя они потребляют астрономическую вычислительную мощность, майнеры на самом деле находят простое число, значение nonce.
Когда мы заходим на информационный экран любого блока, созданного в сети Bitcoin на сайте blockchain.com, мы видим изображение, подобное этому

Подробная информация о блоке номер 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?
Что внутри блоков Bitcoin?
В блоках Bitcoin размером примерно 1 МБ в основном выполняются транзакции передачи.
В дополнение к этим транзакциям передачи в каждом блоке есть временная метка, хеш-информация предыдущего блока и данные стандартного определения.
Когда вы посмотрите на содержимое блока Bitcoin, можно понять, что большая часть данных была зафиксирована на момент совершения транзакции, и в то время майнером было создано только значение nonce.
Сложность — одноразовые отношения
Майнеры объединяют значения в таблице выше и извлекают сводку, то есть преобразуют их в хэш-код в формате SHA-256.
Преобразование всех данных, которые должны быть в блоке, в формат SHA-256 — очень простой процесс. Настолько, что мы можем легко сделать это с нашими ветеранскими компьютерами у себя дома. Однако механизм консенсуса Proof of Work ставит перед нами толстую преграду и оговаривает важное условие:
Расчет значения nonce
Если вы просматривали нашу статью о генерации хешей, вы могли заметить, что хеш-код — это односторонняя операция. Поэтому, когда майнер объединяет данные, он получает постоянный хэш.
При преобразовании данных в формате SHA-256 в хеш-код маловероятно ожидать в начале n нулей. Еще более вероятно, что бросить десятки тысяч кубиков подряд и каждый раз ждать, пока выпадет 6.