Перейти к содержимому
buybitcoinsmart

Глоссарий / Майнинг и консенсус

Целевой порог

Другие названия: Порог цели.

Что такое Целевой порог?
Целевой порог представляет собой 256-битное число, которого не должен превышать хеш заголовка блока, чтобы блок считался действительным доказательством работы.

Майнинг представляет собой сравнение, а не головоломку с ответом. Майнер хеширует заголовок-кандидат, читает результат размером 32 байта как число и проверяет, достаточно ли оно маленькое. Действительные хеши по замыслу редки, поэтому единственный способ найти один из них состоит в том, чтобы продолжать попытки, и именно эта повторяющаяся работа превращает электроэнергию в безопасность цепочки.

Как это работает

Целевой порог является верхней границей для числа, и это число представляет собой двойной SHA-256 хеш заголовка блока размером 80 байт.

Узел хеширует заголовок, читает результат как целое число в формате little-endian (младший байт первым) и сравнивает его с порогом, декодированным из поля nBits заголовка. Более низкий порог означает меньше допустимых хешей и больше необходимых попыток. Самая легкая верхняя граница, которую допускает основная сеть, имеет вид 0x00000000FFFF0000 с последующими нулями; она соответствует сложности 1 и примерно одному действительному хешу на каждые 4295 млн попыток. Умножьте эту цифру на текущую сложность, и вы получите ожидаемый объем работы на блок: при сложности 148,2 трлн, зафиксированной при последней корректировке в 2025 году, средний блок обходится всей сети примерно в 640 зеттахешей.

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

В правила также вписан абсолютный потолок, называемый powLimit, который не может превысить ни один пересчет. Именно он не дает порогу ослабляться без ограничений, если значительная часть сети отключится разом.

Где это видно

Целевой порог почти никогда не выводится сам по себе, поэтому вы встречаете его в одном из трех обличий.

Обозреватели блоков показывают его как сложность, которая представляет собой просто самый легкий допустимый порог, деленный на текущий. Программное обеспечение для майнинга получает его внутри ответа на вызов RPC getblocktemplate в поле target. Пулы отправляют своим машинам порог для доли, намеренно гораздо более легкий, чем сетевой порог, чтобы оборудование могло доказать, что работает, без необходимости сначала найти настоящий блок. Bitcoin Core применяет правило в функции CheckProofOfWork: несколько строк, которые декодируют nBits, отклоняют любое значение выше powLimit или равное нулю и ниже, а затем сравнивают.

Тестовые сети ослабляют его намеренно. В testnet допускается блок минимальной сложности после двадцати минут без блока, поэтому тестовые биткоины майнить тривиально, и они не стоят ровно ничего.

Целевой порог vs сложность

Целевой порог является исходной границей; сложность представляет собой удобочитаемое представление того же факта, и они движутся в противоположных направлениях. Когда сложность удваивается, порог уменьшается вдвое. Сложность существует потому, что шестнадцатеричный потолок из 64 цифр невозможно сравнить с одного взгляда, и потому, что соотношение переносится через годы: сложность 1 в январе 2009 года против 148,2 трлн в конце 2025 года рассказывает историю, которую две шестнадцатеричные строки рассказать не могут.

Не путать с

Часто задаваемые вопросы

Почему действительные хеши блоков начинаются с нулей?

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

Тот же ли порог в testnet?

Нет. Тестовые сети используют гораздо более легкие пороги, и testnet даже допускает блок минимальной сложности после двадцати минут без блока. Поэтому тестовые биткоины можно майнить на ноутбуке, и они не имеют стоимости.

Связанные термины

Еще в разделе «Майнинг и консенсус»

Читать эту страницу на английском