Биткоин — это цепочка решений, а не одна дата · 2013

Ночь, когда существовали две версии Биткоина

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

Блок 225 430

11 марта 2013 года майнер создал блок с необычно большим количеством входов транзакций. Bitcoin 0.8 смог его обработать и продолжил строить цепочку. Некоторые узлы предыдущих версий исчерпали внутренний лимит блокировок базы данных Berkeley DB, отвергли тот же блок и начали продолжать другую ветвь.

Одинаковые правила оказались не совсем одинаковыми

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

Почему более мощная ветвь не победила

Новую цепочку поддерживало около 60% вычислительной мощности. Обычное ожидание не гарантировало быстрого объединения сети. Кроме того, многие пользователи и сервисы всё ещё работали на старых версиях. Продолжение новой ветви означало бы оставить их в другой истории.

Решение вернуться назад

Разработчики связались с крупными пулами BTC Guild и Slush. Те добровольно перевели узлы с версии 0.8 на 0.7, хотя именно их новая ветвь имела больше накопленной работы. Старая цепочка стала сильнее, а новые узлы перестроились на неё. Сеть снова начала подтверждать одну общую последовательность блоков.

Это не было появлением новой монеты

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

Какой урок сохранила эта ночь

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

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

Проверить первоисточники

  1. Официальное сообщение о разделении цепочки 11–12 марта 2013
  2. BIP 50: технический разбор инцидента
  3. Обновление Bitcoin-Qt 0.8.1 с исправлением совместимости

Исторический и образовательный материал. Не является финансовой рекомендацией.

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