Proof of Work — механизм консенсуса, при котором право добавить блок в цепочку получает тот участник, который первым найдёт хеш заголовка блока, удовлетворяющий условию сложности. Работа не имеет полезного выхода за пределами самого блокчейна: её единственная функция — сделать подделку истории экономически невыгодной.
Майнер собирает кандидат-блок: заголовок предыдущего блока, корень Merkle-дерева транзакций, метку времени и произвольное число — nonce. Заголовок хешируется (в Bitcoin используется SHA-256, применённый дважды). Если результат меньше целевого значения (target), блок считается валидным. Если нет — майнер меняет nonce и повторяет.
Целевое условие задаётся через параметр сложности (difficulty). Чем ниже target, тем больше хешей в среднем нужно перебрать. В Bitcoin при текущей сложности порядок величины — десятки квинтиллионов (10¹⁹) попыток на один блок.
Важно: проверка найденного блока тривиальна. Любой узел сети может за одно хеширование убедиться, что nonce действительно даёт хеш ниже target. Асимметрия между поиском (дорого) и верификацией (дёшево) — ключевое свойство PoW.
Энергозатраты выполняют роль экономического барьера. Чтобы переписать историю, атакующему нужно контролировать больше вычислительной мощности, чем все честные участники вместе. Это означает:
Энергия здесь — не побочный эффект, а механизм привязки безопасности к физическому миру. Подделать блок «на бумаге» можно, но чтобы сеть его приняла, нужно предъявить доказательство работы, которое стоит реальных ресурсов.
Если бы сложность оставалась постоянной, рост вычислительной мощности привёл бы к ускорению выпуска блоков. Чтобы интервал между блоками оставался стабильным, протокол периодически пересчитывает target.
В Bitcoin корректировка происходит каждые 2016 блоков (примерно раз в две недели при целевом интервале 10 минут). Алгоритм сравнивает фактическое время генерации последних 2016 блоков с ожидаемым и пропорционально изменяет сложность. Если блоки находились быстрее — сложность растёт, если медленнее — падает.
Это создаёт отрицательную обратную связь: приток новых майнеров не ускоряет эмиссию, а лишь повышает конкуренцию и сложность.
Участник, контролирующий более половины суммарного хешрейта, может:
Чего он не может:
Чем больше блоков накоплено поверх транзакции, тем дороже её отменить. Именно поэтому биржи и сервисы ждут нескольких подтверждений перед зачислением средств.
Подробнее о структуре блоков и консенсусе Bitcoin — в материале Как работает блокчейн Bitcoin: блоки, майнинг, консенсус и почему цепочку нельзя переписать.
Proof of Stake заменяет вычислительную работу экономическим залогом. Валидатор блокирует собственные средства (стейк) и получает право предложить блок пропорционально размеру залога. Попытка нарушить правила ведёт к потере залога (slashing).
Децентрализация майнинга ограничена географией дешёвой энергии и доступностью ASIC. В PoS барьер смещается к капиталу: чем больше токенов, тем больше влияние. Оба подхода имеют риски концентрации, но разного типа.
Модель атаки. В PoW атакующий тратит деньги на электричество и оборудование, которые после атаки остаются (хоть и обесцениваются). В PoS залог сжигается протоколом — потеря необратима и привязана к правилам сети.
Восстановление после атаки. В PoW сеть может «переждать» атакующего или повысить сложность. В PoS протокол может принудительно удалить (slash) злонамеренных валидаторов, но это требует координации оставшихся участников.
Ethereum перешёл с PoW на PoS в сентябре 2022 года (событие The Merge). После этого майнинг в сети Ethereum невозможен. Подробнее о механике валидации, стейкинге и слашинге — в материале Proof of Stake в Ethereum: как работают валидаторы, стейкинг, слашинг и чем PoS отличается от майнинга.
«PoW бесполезен, потому что тратит энергию впустую». Работа бесполезна за пределами блокчейна, но именно это делает её дорогостоящей для атакующего. Если бы доказательство было «полезным» (например, научные вычисления), его можно было бы переиспользовать для атаки без дополнительных затрат.
«Любой может переписать блокчейн». Технически — да, если контролировать большинство хешрейта. Экономически стоимость атаки на крупные сети превышает потенциальную выгоду.
«PoW защищает от всех атак». Нет. PoW не защищает от багов в клиентском ПО, атак на маршрутизацию (BGP hijack), сговора майнеров на цензуру или атак на уровне приложений (смарт-контракты, кошельки).
«Сложность всегда растёт». Нет. Если майнеры отключаются, сложность снижается. Это произошло, например, после запрета майнинга в Китае в 2021 году: хешрейт временно упал, затем сложность скорректировалась вниз.
Механика: хеш, nonce и целевое условие
Майнер собирает кандидат-блок: заголовок предыдущего блока, корень Merkle-дерева транзакций, метку времени и произвольное число — nonce. Заголовок хешируется (в Bitcoin используется SHA-256, применённый дважды). Если результат меньше целевого значения (target), блок считается валидным. Если нет — майнер меняет nonce и повторяет.
Целевое условие задаётся через параметр сложности (difficulty). Чем ниже target, тем больше хешей в среднем нужно перебрать. В Bitcoin при текущей сложности порядок величины — десятки квинтиллионов (10¹⁹) попыток на один блок.
Код:
Заголовок блока (упрощённо):
┌──────────────────────────────────────────────┐
│ version │ prev_block_hash │ merkle_root │ │
│ timestamp │ difficulty_target │ nonce │
└──────────────────────────────────────────────┘
SHA-256(SHA-256(заголовок)) < target → блок найден
Важно: проверка найденного блока тривиальна. Любой узел сети может за одно хеширование убедиться, что nonce действительно даёт хеш ниже target. Асимметрия между поиском (дорого) и верификацией (дёшево) — ключевое свойство PoW.
Почему энергия — это не баг
Энергозатраты выполняют роль экономического барьера. Чтобы переписать историю, атакующему нужно контролировать больше вычислительной мощности, чем все честные участники вместе. Это означает:
- Прямые затраты. Оборудование и электричество на уровне, сопоставимом со всей сетью.
- Альтернативные издержки. Та же мощность могла бы добывать блоки легально и получать награду.
- Риск обесценивания. Успешная атака подрывает доверие к сети, что снижает курс актива и обесценивает вложения атакующего.
Энергия здесь — не побочный эффект, а механизм привязки безопасности к физическому миру. Подделать блок «на бумаге» можно, но чтобы сеть его приняла, нужно предъявить доказательство работы, которое стоит реальных ресурсов.
Регулировка сложности
Если бы сложность оставалась постоянной, рост вычислительной мощности привёл бы к ускорению выпуска блоков. Чтобы интервал между блоками оставался стабильным, протокол периодически пересчитывает target.
В Bitcoin корректировка происходит каждые 2016 блоков (примерно раз в две недели при целевом интервале 10 минут). Алгоритм сравнивает фактическое время генерации последних 2016 блоков с ожидаемым и пропорционально изменяет сложность. Если блоки находились быстрее — сложность растёт, если медленнее — падает.
Это создаёт отрицательную обратную связь: приток новых майнеров не ускоряет эмиссию, а лишь повышает конкуренцию и сложность.
Атака 51% и её пределы
Участник, контролирующий более половины суммарного хешрейта, может:
- Цензурировать транзакции, не включая их в свои блоки.
- Реорганизовать последние блоки (double-spend на ограниченную глубину).
Чего он не может:
- Украсть средства из чужих адресов (для этого нужна подпись).
- Изменить правила протокола без согласия остальных узлов.
- Переписать всю историю — стоимость растёт линейно с глубиной.
Чем больше блоков накоплено поверх транзакции, тем дороже её отменить. Именно поэтому биржи и сервисы ждут нескольких подтверждений перед зачислением средств.
Подробнее о структуре блоков и консенсусе Bitcoin — в материале Как работает блокчейн Bitcoin: блоки, майнинг, консенсус и почему цепочку нельзя переписать.
PoW против PoS: разные модели безопасности
Proof of Stake заменяет вычислительную работу экономическим залогом. Валидатор блокирует собственные средства (стейк) и получает право предложить блок пропорционально размеру залога. Попытка нарушить правила ведёт к потере залога (slashing).
| Параметр | PoW | PoS |
|---|---|---|
| Ресурс для участия | Вычислительная мощность + электричество | Заблокированный капитал (стейк) |
| Стоимость атаки | Аренда/покупка хешрейта > 50% сети | Покупка > ⅓ или > ⅔ стейка (зависит от протокола) |
| Наказание за нарушение | Косвенное (потеря дохода от майнинга) | Прямое (slashing — сжигание залога) |
| Энергопотребление | Высокое, пропорционально хешрейту | Минимальное, сравнимо с обычным сервером |
| Аппаратная зависимость | Специализированные ASIC или GPU | Стандартный сервер или VPS |
| Барьер входа | Капитал на оборудование + дешёвая энергия | Капитал на покупку токенов для стейка |
Что это меняет на практике
Децентрализация майнинга ограничена географией дешёвой энергии и доступностью ASIC. В PoS барьер смещается к капиталу: чем больше токенов, тем больше влияние. Оба подхода имеют риски концентрации, но разного типа.
Модель атаки. В PoW атакующий тратит деньги на электричество и оборудование, которые после атаки остаются (хоть и обесцениваются). В PoS залог сжигается протоколом — потеря необратима и привязана к правилам сети.
Восстановление после атаки. В PoW сеть может «переждать» атакующего или повысить сложность. В PoS протокол может принудительно удалить (slash) злонамеренных валидаторов, но это требует координации оставшихся участников.
Ethereum перешёл с PoW на PoS в сентябре 2022 года (событие The Merge). После этого майнинг в сети Ethereum невозможен. Подробнее о механике валидации, стейкинге и слашинге — в материале Proof of Stake в Ethereum: как работают валидаторы, стейкинг, слашинг и чем PoS отличается от майнинга.
Типичные заблуждения о PoW
«PoW бесполезен, потому что тратит энергию впустую». Работа бесполезна за пределами блокчейна, но именно это делает её дорогостоящей для атакующего. Если бы доказательство было «полезным» (например, научные вычисления), его можно было бы переиспользовать для атаки без дополнительных затрат.
«Любой может переписать блокчейн». Технически — да, если контролировать большинство хешрейта. Экономически стоимость атаки на крупные сети превышает потенциальную выгоду.
«PoW защищает от всех атак». Нет. PoW не защищает от багов в клиентском ПО, атак на маршрутизацию (BGP hijack), сговора майнеров на цензуру или атак на уровне приложений (смарт-контракты, кошельки).
«Сложность всегда растёт». Нет. Если майнеры отключаются, сложность снижается. Это произошло, например, после запрета майнинга в Китае в 2021 году: хешрейт временно упал, затем сложность скорректировалась вниз.
Ограничения PoW
- Масштабируемость. Пропускная способность ограничена размером блока и интервалом. Увеличение любого из параметров повышает требования к узлам.
- Финальность. В PoW нет абсолютной финальности — только вероятностная. Каждый новый блок снижает вероятность реорганизации, но не обнуляет её.
- Централизация майнинга. Экономия на масштабе ведёт к пулам и крупным фермам. Протокол не может этому противостоять напрямую.
- Экологический и регуляторный риск. Высокое энергопотребление привлекает внимание регуляторов и может приводить к ограничениям в отдельных юрисдикциях.
Проверка понимания: короткий чек-лист
- [ ] Можете объяснить, почему верификация блока дешевле его нахождения.
- [ ] Понимаете, как регулировка сложности поддерживает стабильный интервал блоков.
- [ ] Можете назвать, что атакующий с 51% хешрейта может и чего не может.
- [ ] Различаете модели безопасности PoW и PoS: стоимость атаки, наказание, барьер входа.
- [ ] Не путаете вероятностную финальность PoW с абсолютной финальностью в некоторых PoS-протоколах.
