Цепочка решений · Правила и техника

От процессора до ASIC: как менялись правила майнинга Биткоина

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

РЕДАКЦИОННЫЙ ОБЗОР · Подготовлен редакцией проекта на основе указанных источников.

2009: один компьютер — один майнер

В первой версии Bitcoin центральный процессор одновременно обслуживал кошелёк, проверял блоки и пытался найти следующий допустимый заголовок. Субсидия составляла 50 BTC, а комиссии почти не имели значения.

Уже тогда сложность пересчитывалась через каждые 2 016 блоков. Рост вычислительной мощности не мог надолго ускорить эмиссию: сеть отвечала более трудной целью.

2010: видеокарты и первые пулы

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

Тогда же возникли первые пулы. Участники объединили мощности и начали делить доход пропорционально выполненной работе. Для сети блок по-прежнему создавался одним участником; распределение награды происходило уже внутри пула.

2011–2012: майнер собирает блок сам

Ранний механизм getwork передавал оборудованию почти готовое задание. BIP 22 описал getblocktemplate: майнер получил структуру будущего блока и возможность выбирать или исключать необязательные транзакции.

На высоте 210 000 в ноябре 2012 года произошло первое сокращение субсидии: 50 BTC превратились в 25 BTC. Это было исполнение исходного расписания, а не новое решение разработчиков.

2013: высота блока внутри награды

BIP 34 обязал майнеров помещать высоту создаваемого блока в coinbase-транзакцию — первую транзакцию блока, создающую субсидию и собирающую комиссии. После достижения заданного порога старые версии блоков перестали приниматься.

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

2015: сигнал поддержки не заменяет проверку

BIP 66 потребовал строгого DER-формата подписей. Некоторые майнеры сигнализировали поддержку, но продолжали строить блоки без полной проверки. Летом 2015 года это породило недействительные ответвления цепочки.

Эпизод показал, что заявить о готовности соблюдать правило — не то же самое, что действительно его проверить. Позднее BIP 65 добавил CHECKLOCKTIMEVERIFY: майнеры стали проверять условия, не позволяющие потратить выход раньше заданного времени или высоты.

2016: второе сокращение и биты готовности

На блоке 420 000 субсидия уменьшилась с 25 до 12,5 BTC. BIP 9 предложил использовать отдельные биты версии блока для координации совместимых обновлений.

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

2017: SegWit меняет устройство блока

Segregated Witness вынес подписи в отдельную структуру witness. Вместо прежнего ограничения только по размеру появилось понятие веса блока с пределом 4 000 000 единиц.

Майнеру, включавшему SegWit-транзакции, потребовалось добавлять в coinbase специальное обязательство, связывающее witness-данные с блоком. Неправильно собранный блок обновлённые узлы отвергали.

2020–2021: комиссии и Taproot

На высоте 630 000 субсидия сократилась с 12,5 до 6,25 BTC. Комиссии стали более заметной частью дохода, а оператор сохранил свободу выбирать допустимые транзакции для своего блока.

В 2021 году готовность к Taproot должны были показать не менее 1 815 из 2 016 блоков. После достижения порога новые правила активировались на высоте 709 632, добавив подписи Schnorr и более гибкие условия расходования.

2024: субсидия 3,125 BTC

На высоте 840 000 четвёртое сокращение уменьшило субсидию с 6,25 до 3,125 BTC. Рост мощности оборудования не изменил график выпуска: очередной пересчёт сложности приспособил сеть к конкуренции.

До следующего сокращения майнер может добавить к 3,125 BTC комиссии, но попытка присвоить лишние новые монеты сделает блок недействительным.

Что на самом деле может решать майнер

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

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

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

Источники и проверка

  1. Bitcoin Developer Guide: майнинг
  2. Bitcoin Developer Reference: сложность и субсидия
  3. BIP 22: getblocktemplate
  4. BIP 34: высота в coinbase
  5. BIP 66: строгий DER-формат подписей
  6. BIP 65: CHECKLOCKTIMEVERIFY
  7. BIP 9: сигнализация обновлений
  8. BIP 141: Segregated Witness
  9. BIP 341: Taproot

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

Если не указано иное, текст, выводы, структура и редакционная компоновка созданы редакцией проекта. Факты, цитаты и материалы источников принадлежат их авторам и правообладателям.

Вернуться к рубрике