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

# Как перейти на Bitcoin XT?

Процесс перехода прост: достаточно скачать клиент с нашего сайта и запустить его. Bitcoin XT использует те же директории с данными, что и Bitcoin Core, поэтому если у вас был ранее установлен Bitcoin Core, то вам не придётся заново скачивать весь блокчеин (всю цепь блоков). Если вы захотите, то вы точно так же сможете вернуться назад на старый клиент без скачивания блокчеина.

# Есть ли какие-нибудь риски, связанные с использованием Bitcoin XT?

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

# Зачем был создан форк Bitcoin XT?

Причиной создания Bitcoin XT стали фундаментальные разногласия между разработчиками Bitcoin Core. Разногласия появились в следующих сферах: "Должен ли блокчеин расти в соответствии с запросами пользователей?", "Какую информацию должен предоставлять протокол Биткоина пользователям?" и "Как должны приниматься технические решения?"

Самое крупное и неразрешимое разногласие было по вопросу о размере блоков: пользователи Bitcoin XT считают, что размер блока должен расти вслед за ростом пользовательской базы Биткоина. Разработчики же Bitcoin Core не сделали ни одного шага для того, чтобы увеличить блоки, потому что они хотят стимулировать разработку и использование альтернативной, не основанной на блокчеине, финансовой системы Lightning network. Это оказалось непреодолимой разницей во взглядах на будущее криптовалюты.

Также разработчики Bitcoin Core сделали определённые заявления, которые дают понять, что они больше не заинтересованы в решении проблем безопасности для неподтверждённых транзакций и для лёгких P2P-кошельков, несмотря на то, что многие пользователи ждали решений именно по этим вопросам. Неясно, смогут ли эти вопросы быть решены без форка.

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

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

Вы можете прочесть длинную статью Майка Хирна на эту тему: "Для чего создан форк Биткоина?".

# Как произойдёт переход на 2-мегабайтные блоки?

Каждый, кто майнит с помощью Bitcoin XT или с помощью других исплементаций полной ноды, поддерживающих BIP109 Гевина Андресена, помечает свои блоки с помощью специального числа в поле "номер версии блока" - это означает поддержку в пользу больших блоков. Если 75% из последней тысячи блоков "голосуют" с помощью этой пометки, то у всех XT-нод активизируется специальный флаг, и они переходят в так называемый промежуточный четырёхнедельный период (все ноды будут оставлять упоминание об этом в логах). В течение этих двух недель большие блоки ещё не будут приниматься, а майнеры, предприниматели и поставщики услуг, связанные с Биткоином, которые ещё не перешли на Bitcoin XT, будут иметь возможность вовремя обновиться. Необходимо отметить, что после достижения планки в 75% переход на новый протокол состоится, даже если в течение промежуточных двух недель поддержка упадёт до значения менее 75%.

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

# Почему нет альтернатив хард-форку?

Ограничение на размер блока - это правило сети, которое проверяет каждая нода. Само по себе ограничение было встроено Сатоши Накамото, и всегда подразумевалось, что оно будет убрано. Это в любом случае означает необходимость хард-форка, потому что ноды, использующие старую версию, будут отклонять блоки, созданные новыми. Существует альтернатива под названием Lightning network, создаваемая компанией Blockstream, которая подразумевает под собой совершенно иной подход: для этой системы потребуются абсолютно другие кошельки, замена для биткоин-адресов и QR-кодов, новое программное обеспечение для нод и так далее. Lightning network устанавливает сеть взаимоотношений между централизованными (частично узаконенными) участниками рынка, которые будут периодически рассчитываться друг с другом, используя блокчеин. Сама Lightning network на текущий момент не реализована, а многие её принципиальные элементы не определены.

Если вкратце, то единственной серьёзной альтернативой Bitcoin XT на сегодняшний день является прощание с Биткоином, каким мы его знаем сегодня, в пользу ещё недоработанной и потенциально более опасной Lightning network.

# Можно ли использовать софт-форк? Не будет ли это лучшим вариантом?

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

# Не приведёт ли хард-форк к тому, что Биткоин разделится на две независимые валюты?

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

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

Маловероятно, что ситуация, в которой обе цепи развиваются параллельно, сможет продлиться долго. После хард-форка с поддержкой в 75% от вычислительных сил майнеров, менее поддерживаемая сторона будет быстро заброшена, так как время подтверждения транзакций на стороне с поддержкой в 25% будет намного большим, чем при работе сети в нормальном режиме. Это означает, что очередь из транзакций будет намного больше до тех пор, пока не будет пересчитана сложность сети. Таким образом возникает больший риск двойной траты для тех, кто остаётся на более слабой цепи. Продавцы и биржи в свою очередь должны будут сделать свой выбор в пользу ветви с большей вычислительной силой. В любом случае, рост Биткоина важен для их бизнеса. Вследствие всего этого, монеты, которые были намайнены более слабой цепью после форка, будет невозможно потратить у этих продавцов или обменять на биржах, что приведёт к тому, что майнеры на слабой цепи будут заинтересованы как можно быстрее перейти на основную.

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

# Зачем в XT включены изменения, не относящиеся к размеру блоков? Нельзя ли поддерживать версию, где единственным изменением было бы увеличение блоков?

Bitcoin XT соответствует первоначальному видению Биткоина: простые, надёжные, дешёвые транзакции для каждого в мире. Разработчики Bitcoin Core больше не считают эти цели приоритетными. Этот раскол наиболее заметен в обсуждении проблемы размера блоков, но также влияет и на другие проблемы, такие как безопасная работа с лёгкими P2P-кошельками и с неподтверждёнными транзакциями. Bitcoin XT намерен разрешить многие проблемы, связанные с разработкой Bitcoin Core, которые мешают массовому применению для Биткоина. Проблема планирования места в блоках для транзакций - лишь одна из них.

Хотя мы и не предоставляем для скачивания бинарники версии, которая включает в себя только изменение размера блоков, сам патч поддерживается отдельно на GitHub. Вы можете скомпилировать код самостоятельно и получить версию, идентичную Core, с единственным изменением: поддержкой блоков более 8 Мб.

# Что случится с testnet?

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

# Как принимаются решения?

Решения принимаются текущем мейнтейнером на основе предложений комадны разработчиков Bitcoin XT. В случае разногласий, последнее слово остаётся за мейнтейнером. Если какой-либо предлагаемый новый патч будет соответствовать основополагающим принципам проекта, то он будет рассмотрен на предмет возможности его включения в Bitcoin XT. Если разработчик патча сможет помочь с его включением в Git проекта, то это упростит открытие вопроса о рассмотрении на включение.