Изучите · Как работает биткоин

Что такое proof of work?

Автор: команда CloudMineCryptoОбновлено 9 мин чтения

Короткий ответ

Proof of work это способ, которым биткоин решает, кто добавляет следующий блок. Майнеры хешируют 80-байтовый заголовок блока алгоритмом SHA-256 дважды, каждый раз меняя число, называемое nonce, пока хеш не окажется ниже цели. Найти его требует триллионов попыток, а проверить достаточно одного хеша, поэтому переписывание истории означало бы повторение всей этой работы.

Главное

  • Действительный блок это заголовок, чей двойной хеш SHA-256 ниже цели, что проявляется в виде ведущих нулей.
  • Единственный способ это перебор. Один изменённый символ переключает примерно половину битов хеша.
  • Узлы следуют цепочке с наибольшим суммарным объёмом работы, поэтому атакующему понадобилось бы большинство хешрейта.
  • Электроэнергия это не побочный эффект. Именно она делает переписывание истории биткоина дорогостоящим.

Захешируйте сами · настоящий заголовок блока

Отредактируйте блок. Двойной SHA-256 обновляется по мере ввода.

  1. Версия4 байт

    20000000

  2. Хеш предыдущего блока32 байт

    000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f

  3. Корень Меркла32 байт

    3526fd3f26cb386534c88c5455a8465f971578b7d9fb64b8a342ad0e99e4280e

    Отпечаток транзакции выше. Введите текст, чтобы изменить его.

  4. Время4 байт

    2026-09-26 12:00 UTC

  5. Цель (bits)4 байт
    1f00ffff · 4 нулей
  6. Nonce4 байт

Хеш блока · SHA-256 дважды

✓ Ниже цели: блок действителен

0000470da4a7ab0614c83d2181b1ef1c294e53f49cde408a8c9a08592bca6e17

цель 0000ffff00000000000000000000000000000000000000000000000000000000

4 ведущих нулей, для цели нужно 4

Ваш браузер перебирает nonce один за другим, как майнер.

Лавинный эффект · биты, изменённые вашим последним редактированием

122 из 256 (48%)

Один изменённый символ случайным образом переключает примерно половину из 256 битов. Направить хеш никак нельзя, поэтому майнерам остаётся только перебирать варианты.

80 байт, которые хешируются

000000206fe28c0ab6f1b372c1a6a246ae63f74f931e8365e15a089c68d61900000000000e28e4990ead42a3b864fbd9b77815975f46a855548cc8346538cb263ffd2635c0b3b76affff001f96060000

Числа хранятся в формате little-endian, а хеши записываются с обратным порядком байтов, точно так же, как это делает биткоин. Реальному блоку сегодня требуется около 20 ведущих нулей (оценка на основе актуального хешрейта сети).

Что такое proof of work?

Определение · Proof of work (PoW)

Система, в которой право добавить блок получает тот, кто первым найдёт хеш заголовка блока ниже цели. Нахождение требует огромного количества попыток, а проверка одного хеша.

Сатоши Накамото описал это в white paper биткоина в 2008 году, опираясь на Hashcash Адама Бэка, более старую идею, как сделать отправку спама по email дорогостоящей. Действительный хеш и есть доказательство. Получить его без выполнения работы невозможно, и любой может убедиться, что она была выполнена.

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

Какую проблему решает proof of work?

У биткоина нет компании, банка или сервера, который бы им руководил. Тысячи компьютеров хранят собственную копию реестра, и им нужно договориться о том, какой блок идёт следующим и в каком порядке произошли платежи. Иначе кто-то мог бы потратить одну и ту же монету дважды.

Простое голосование не работает онлайн, потому что любой может запустить тысячу поддельных компьютеров и проголосовать тысячу раз. Это называется атакой Sybil. Proof of work обходит эту проблему: ваш голос измеряется в хешах, а хеши стоят электроэнергии и оборудования.

Кто имеет право голоса при добавлении следующего блока?

Один голос за узел

Один атакующий бесплатно запускает 60 поддельных узлов и перевешивает 12 честных.

Один голос за хеш

честные майнеры 88%атакующий 12%

Те же самые 60 узлов делят между собой реальное оборудование атакующего, поэтому вместе они всё равно весят 12%. Копии бесплатны, хеши нет.

Атака Sybil означает подделку множества личностей. Proof of work игнорирует личности и учитывает только проделанную работу, которая стоит реальных денег.

Что находится внутри заголовка блока биткоина?

Майнеры хешируют не весь блок. Они хешируют его 80-байтовый заголовок, который фиксирует всё остальное. Вот шесть полей, которые вы редактировали в поле наверху:

ПолеБайтыЧто оно содержитКто его меняет
Версия4Какому набору правил следует блокРедко меняется
Хеш предыдущего блока32Хеш предыдущего блока, связывающий цепочкуНовый с каждым блоком
Корень Меркла32Один отпечаток всех транзакций блокаМайнер, при изменении транзакций или дополнительного nonce
Время4Когда, по словам майнера, был создан блок (время Unix)Майнер, в определённых пределах
Bits4Цель, упакованная в 4 байтСеть, каждые 2 016 блоков
Nonce4Свободное число для новой попыткиМайнер, при каждой попытке

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

SHA-256(SHA-256(genesis header)) =
000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f
Первый блок биткоина, версия 1, nonce 2 083 236 893. Его хеш начинается с 10 нулей и совпадает с тем, что знает каждый узел биткоина.

Как работает SHA-256 в биткоине?

SHA-256 превращает любые входные данные в 256-битное число, записываемое в виде 64 шестнадцатеричных символов. Биткоин применяет его к заголовку дважды (это называют SHA-256d). Свойства, важные для майнинга, просты:

Одинаковый вход, одинаковый выход

Детерминированный

Один и тот же заголовок всегда даёт один и тот же хеш, на любом компьютере. Именно поэтому проверка работает.

256 бита

Фиксированный размер

Короткая строка или целая книга, хеш всегда содержит 64 шестнадцатеричных символа.

Односторонний

Обратного короткого пути нет

Невозможно вычислить входные данные, которые дадут желаемый хеш. Можно только перебирать варианты.

≈ 50%

Лавинный эффект

Измените один символ, и примерно половина битов переключится. Понаблюдайте за сеткой в интерактивном примере.

Это последнее свойство и есть суть proof of work. Хеш, близкий к цели, ничего не говорит о следующей попытке, поэтому не существует хитрого пути к действительному блоку. Каждый майнер участвует в одной и той же лотерее, и больше хешей в секунду просто покупает больше билетов.

Что такое цель и зачем нужны нули в начале?

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

Среднее число хешей, необходимое для нахождения одного действительного блока

  • Учебный блок в интерактивном примере · 4 ведущих шестнадцатеричных нулей65,536
  • Самая простая цель биткоина (2009) · 8 ведущих шестнадцатеричных нулей, bits 1d00ffff4,294,967,296
  • Блок биткоина сегодня · примерно 20 ведущих шестнадцатеричных нулей (актуальная оценка)6.0 × 1023
На столбцах используется логарифмическая шкала: каждый дополнительный ноль означает в среднем в 16 раз больше работы. Строка «в реальном времени» это наша оценка на основе хешрейта сети, умноженного на 600 секунд, обновляется каждый час.

Сеть сдвигает цель каждые 2 016 блоков, примерно раз в две недели, поэтому блоки продолжают появляться примерно каждые десять минут независимо от того, сколько хешрейта присоединяется или уходит. Прямо сейчас сеть работает на скорости около 1003 ЭХ/с (в реальном времени, обновляется каждый час). О том, как работает эта корректировка, рассказано в нашем руководстве по сложности майнинга биткоина, а объяснение хешрейта охватывает единицы измерения.

Что такое nonce и что такое дополнительный nonce?

Nonce («число, используемое один раз») это 4-байтовое поле, которое майнеры меняют при каждой попытке. Это единственное поле, существующее исключительно для того, чтобы его меняли. Проблема в том, что 4 байт дают только около 4,3 миллиарда значений, и современные устройства перебирают их почти мгновенно.

Цикл майнера

  1. 01

    Перебрать каждый nonce

    0, 1, 2 и так далее вплоть до 4 294 967 295. Это все значения, которые могут вместить 4 байт.

  2. 02

    Быстро заканчиваются

    Одно устройство на 100 ТХ/с перебирает их все примерно за 43 миллионных долей секунды.

  3. 03

    Изменить дополнительный nonce

    Майнер редактирует свободное поле в собственной транзакции вознаграждения (coinbase).

  4. 04

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

    Эта транзакция изменилась, поэтому корень Меркла меняется, и каждый nonce снова даёт новые хеши.

Затем снова к шагу 1. Майнеры также могут немного сдвинуть отметку времени, что тоже меняет заголовок.

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

Почему найти блок дорого, а проверить дёшево?

Чтобы найти блок

≈ 6.0 × 1023 хешей

Вся сеть, все её устройства, около десяти минут перебора.

Актуальная оценка, обновляется каждый час.

Чтобы проверить

1 хеш

Любой узел, даже дешёвый ноутбук, хеширует 80-байтовый заголовок один раз и сравнивает его с целью значительно меньше чем за миллисекунду.

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

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

Интерактив · добудьте блок прямо в браузере

Настоящий proof of work на SHA-256, упрощённый заголовок

Блок №1Предыдущий хеш0000000000000000000000000000000000000000000000000000000000000000Nonce0

Хеш блока (двойной SHA-256)

Измените транзакции: хеш полностью меняется даже от одной буквы.

Попыток: 0

Ваш хешрейт: н/д

Время: 0,0 с

Что такое правило самой длинной цепочки и что такое атака 51%?

Иногда два майнера находят блок почти в один и тот же момент, и в сети на короткое время появляются две версии. Узлы следуют цепочке с наибольшим суммарным объёмом работы. Её называют самой длинной цепочкой, но на самом деле она самая тяжёлая: несколько блоков при высокой сложности могут перевесить большее число блоков при низкой.

Чтобы отменить платёж, атакующему пришлось бы построить более тяжёлую цепочку, чем у всех остальных, начиная с момента до этого платежа. Каждый новый блок сверху (подтверждение) отбрасывает атакующего ещё дальше назад. White paper рассчитал эти шансы; подвиньте ползунок, чтобы их увидеть:

Интерактивно · может ли атакующий наверстать отставание?

Формула из white paper биткоина, раздел 11

  • 0
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

Блоков, на которые отстаёт атакующий (подтверждений). На столбцах используется логарифмическая шкала, от одного шанса из миллиона до почти полной уверенности.

При 10% хешрейта шанс переписать платёж после 6 подтверждений составляет 0,024%, а после 1 подтверждения он равен 20,5%.

При 50% или больше атакующий в итоге побеждает. Это и есть атака 51%. Она серьёзна, но у неё есть пределы:

Обладая большей частью хешрейта, атакующий может

  • Заменить недавние блоки своей собственной цепочкой
  • Совершить двойную трату монет, которые сами же отправили
  • Исключить некоторые транзакции из своих блоков

Даже тогда они не могут

  • Потратить монеты из чужих кошельков
  • Создать монеты сверх вознаграждения за блок
  • Изменить правила биткоина для всех остальных

Именно поэтому биржи ждут несколько подтверждений для крупных депозитов. Шесть это общепринятое эмпирическое правило.

Почему proof of work потребляет так много энергии?

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

Куда уходит энергия и что она покупает

  1. Вознаграждение за блок и комиссии

    Новый BTC плюс комиссии за каждый блок, выплачиваемые тому, кто его найдёт.

  2. Устройства и электроэнергия

    Майнеры тратят ровно столько, сколько для них стоит вознаграждение.

  3. Хешрейт сети

    Все эти затраты проявляются в виде хешей в секунду.

  4. Стоимость переписывания истории

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

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

Сколько именно это электроэнергии и откуда она берётся это предмет справедливых споров. Индекс Cambridge отслеживает оценки, а наше руководство по энергопотреблению майнинга биткоина подробно разбирает цифры. Каждый халвинг сокращает часть вознаграждения, приходящуюся на новые монеты, поэтому со временем комиссиям приходится нести всё большую часть этого бюджета безопасности.

Proof of work против proof of stake: в чём разница?

Proof of stake (PoS) выбирает производителя следующего блока среди тех, кто заблокировал монеты в качестве депозита, а не среди тех, кто сжигает электроэнергию. Ethereum перешёл с proof of work на proof of stake в 2022 году. Вот честное сравнение:

Proof of workProof of stake
Кто добавляет следующий блокПервый майнер, нашедший хеш ниже целиВалидатор, выбранный пропорционально его доле
Что обеспечивает его безопасностьЭлектроэнергия и оборудование, потраченные вне сетиМонеты, заблокированные внутри сети, которые можно забрать за мошенничество
ЭнергопотреблениеВысокая, специально по замыслуНизкий
Чтобы принять участиеУстройства и дешёвая электроэнергияМонеты для стейкинга
УрегулированиеСтановится безопаснее с каждым подтверждениемЯвные контрольные точки финализации
Главная претензияЭнергопотребление и концентрация майнингаКонцентрация стейка и более сложная конструкция
Послужной списокБиткоин, с 2009 годаEthereum, с 2022 года

Разработчики биткоина сохранили proof of work, потому что его стоимость находится вне самой системы, поэтому никто не может купить контроль на уже имеющиеся монеты. Сторонники proof of stake указывают на экономию энергии и более быструю финализацию.

Можно ли зарабатывать биткоин от майнинга, не выполняя proof of work самостоятельно?

Да. С CloudMineCrypto вы майните биткоин бесплатно с телефона или браузера, без оборудования, шума или счёта за электроэнергию. Активируйте бесплатный 8-часовой план и добавляйте больше бесплатных планов, смотря рекламу, играя в игры, выполняя офферы и отмечаясь каждый день. Ваш баланс BTC растёт, пока работают ваши планы, а вывод происходит на ваш собственный кошелёк, в том числе через Lightning.

У каждого плана есть хешрейт. Твоё примерное вознаграждение рассчитывается как доля этого хешрейта от хешрейта всей сети, умноженная на 6 блоков в час и награду за блок. Это формула, которую приложение использует для расчёта примерного вознаграждения (действуют правила и ограничения). Хочешь увеличить скорость? Платный план можно подключить по желанию. Он увеличит хешрейт, а цена будет показана перед подтверждением.

Важно знать: вознаграждения это оценки, которые меняются вместе с сетью и не гарантированы, а план не даёт права собственности на какое-либо устройство или пул. К выводу средств могут применяться лимиты или проверка личности. Подробности в правилах вознаграждений и в руководстве по бесплатному майнингу биткоина. Действуют условия.

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

Что такое proof of work простыми словами?

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

Что такое nonce в биткоине?

4-байтовое число в заголовке блока, которое майнеры меняют при каждой попытке. У него около 4,3 миллиарда возможных значений. Когда они заканчиваются, майнеры меняют дополнительный nonce внутри coinbase-транзакции, что даёт новый корень Меркла и новый набор хешей.

Почему биткоин использует SHA-256 дважды?

Биткоин хеширует 80-байтовый заголовок алгоритмом SHA-256, а затем хеширует результат ещё раз. Сатоши никогда не объяснял этот выбор. Обычно это трактуют как защиту от атак удлинения и дополнительный запас надёжности.

Что позволяет сделать атака 51%?

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

Лучше ли proof of stake, чем proof of work?

Он потребляет намного меньше энергии, а безопасность обеспечивается монетами, заблокированными в качестве стейка. Proof of work привязывает безопасность к внешним затратам, электроэнергии и оборудованию, и лежит в основе биткоина с 2009 года. У каждого подхода свои компромиссы, поэтому что лучше зависит от того, что вы цените.

Можно ли зарабатывать биткоин от майнинга без собственного оборудования?

Да. В приложении CloudMineCrypto вы активируете бесплатные планы майнинга (бесплатный план, реклама, игры, офферы и ежедневная отметка), и ваш баланс BTC растёт, пока они работают, а затем вы выводите средства на свой собственный кошелёк. Вознаграждения это оценки на основе хешрейта вашего плана и актуальных данных сети, они не гарантированы, и план не даёт права собственности на какое-либо оборудование.

Источники и дополнительное чтение

  1. Bitcoin: система электронных денег peer-to-peer (белая книга) · Сатоши Накамото, bitcoin.org
  2. Руководство по блокчейну: заголовки блоков, proof of work, coinbase · документация для разработчиков Bitcoin
  3. Руководство по майнингу: соло-майнинг, пулы, getblocktemplate · документация для разработчиков Bitcoin
  4. Сложность · Bitcoin Wiki
  5. Подтверждение · Bitcoin Wiki
  6. Cambridge Bitcoin Electricity Consumption Index · Cambridge Centre for Alternative Finance
  7. Панель майнинга: хешрейт, сложность, недавние блоки · mempool.space

Данные в реальном времени на этой странице (хешрейт сети, награда за блок, цена BTC) поступают из API CloudMineCrypto, обновляются каждый час и помечены там, где появляются. Это руководство носит образовательный характер и не является финансовой консультацией. CloudMineCrypto не является инвестиционным продуктом; награды в приложении это оценки и не гарантированы.

Вы прочитали, как это работает. Теперь посмотрите на это в действии.

Заберите бесплатный 8-часовой тариф в приложении CloudMineCrypto и смотрите, как растёт ваш оценочный BTC на основе данных сети в реальном времени. Без оборудования, без карты.