Хардфорк BSV: вопросы безопасности

Аннотация. 10 ноября 2022 года Bitcoin SV (BSV) Association выпустила новый клиент для возможного хардфорка, BSV 1.0.13. Новый клиент содержит потенциальное изменение протокола хардфорка. Трудно точно понять, что включает в себя это обновление или как оно работает. Но, похоже, оно может позволить любому сотрудничающему с майнерами лицу или администратору централизованно контролируемого «белого списка» конфисковать монеты BSV у любого пользователя в любое время. В связи с банкротством FTX и опасениями по поводу резервов криптовалютных бирж биржам и кастодиальным хранителям, которые используют BSV, стоит понимать и учитывать потенциальные риски безопасности нового протокола BSV.

Обзор

Bitcoin SV (BSV) — это токен Bitcoin Cash, запущенный в ноябре 2018 года. BSV в основном продвигает Крейг Стивен Райт — человек, который приводил различные мошеннические доказательства, пытаясь доказать, что является Сатоши Накамото, создателем биткоина. Похоже, BSV проводит крупномасштабное обновление протокола. 10 ноября 2022 года вышел новый клиент BSV — в самый разгар скандала в связи с крахом FTX, поэтому это событие могло пройти незамеченным. Не исключено, что выпуск клиента именно сейчас может быть продиктован желанием избежать внимания, хотя у нас нет доказательств этого. Насколько можно судить, в новой версии BSV в протоколе появились весьма значительные изменения, а именно такое явление, как «конфискационные транзакции». Эти изменения не были должным образом освещены в официальных примечаниях к релизу. В этой статье мы попытаемся объяснить изменения протокола, их потенциальные последствия и риски.

Объяснение в примечаниях к релизу BSV

В примечаниях к релизу нового клиента BSV, BSV 1.0.13, описывается процесс под названием «возврат цифровых активов» (Digital Asset Recovery). В нем используется «протокол транзакций конфискации», по которому в поле OP_Return транзакции может упоминаться «постановление суда». В частности, в примечаниях к релизу говорится следующее:

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

Похоже, это значит, что любые монеты BSV могут быть конфискованы, и пользователь, у которого нет закрытого ключа или данных скрипта, обычно необходимых для авторизации траты, может произвольно конфисковать средства и воспользоваться монетами, ему не принадлежащими. По официальной версии BSV, эта функция каким-то образом позволяет блокчейну выполнять судебные постановления о конфискации средств, что, по мнению адептов монеты, делает блокчейн более законным с юридической точки зрения. Возможность конфискации монет якобы распространяется только на UTXO, включенные в «белый список», и этот «белый список», по-видимому, контролируется централизованно в частном порядке. Но как именно работает этот «белый список», до конца не ясно. 

Механизм конфискации монет

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

  • В транзакциях нового типа под названием «ConfiscationTx» стандартные правила проверки транзакций пропускаются. Поэтому обновленный клиент не будет проверять авторизацию в таких транзакциях, прежде чем принять транзакцию как действительную (например, подпись не требуется).
  • ConfiscationTx просто означает, что в скрипт транзакции добавлены определенные поля (флажки). Они могут быть добавлены кем угодно к любой транзакции.
  • Транзакция ConfiscationTx все равно (с большой вероятностью) будет считаться нестандартной транзакцией, поэтому для ее добавления в блокчейн BSV может потребоваться сотрудничество с майнером.
  • Протокол предусматривает еще одну новую проверку, которая была или будет реализована, — проверка того, включена ли транзакция ConfiscationTx в «белый список».
  • Сведения о «белом списке» не включены в репозиторий, поэтому неясно, какие транзакции включены в «белый список» и как транзакции можно в него добавить.
  • Замысел разработчиков, по-видимому, заключается в том, что проверка по «белому списку» применяется только тогда, когда блок находится в пределах шести блоков от конца. Поэтому, как только блок набрал шесть подтверждений, узлы могут принимать транзакции ConfiscationTx как действительные, даже если их нет в «белом списке».

В целом, похоже, что новый протокол позволяет любому человеку украсть любые монеты BSV, если ему удастся договориться с майнерами. Если эти майнеры смогут создать цепочку глубиной в шесть блоков, кража может быть успешной. При этом администратору «белого списка» для успешного совершения кражи достаточно добыть только один блок в любое время. Следует отметить, что наш анализ (выше) основан только на базовой проверке кода, и мы не уверены в точности сделанных выводов. 

Потенциальные мотивы для введения функции конфискации монет

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

  1. Получение прибыли за счет конфискации чужих монет и последующей продажи их на рынке.
  2. Конфискация монет, которые якобы принадлежат Сатоши Накамото или другим крупным игрокам, и использование их в качестве дополнительного мошеннического доказательства того, что г-н Райт является Сатоши.

Например, г-н Райт уже давно утверждает, что «Tulip Trust», который, согласно подложным документам, был создан в 2011 году, контролирует более миллиона биткоинов. Говорят, что «Tulip Trust» принадлежат 80 000 ВТС по адресу 1FeexV6bAHb8ybZjqQMjJrcCrHGW9sb6uF. Но на самом деле эти монеты были украдены с биржи MtGox в марте 2011 года. После обновления сети BSV эти монеты могут быть украдены и потрачены. Затем вор может продать монеты с целью получения прибыли или заявить, что контроль над ними доказывает, что г-н Райт является Сатоши Накамото. Конечно, кража монет, добытых в 2009 году первым и крупнейшим майнером, а не украденных с MtGox, скорее убедит общественность в то, что г-н Райт является Сатоши. С другой стороны, кража монет из этих соображений кажется абсурдной, поэтому, какие именно монеты будут украдены, не так уж важно.

Временные рамки хардфорка

Даты или методики активации хардфорка не указаны. Новый клиент BSV, 1.0.13, просто предусматривает смягчение правил протокола. Разделение блокчейна не должно произойти до тех пор, пока не будет создан блок, нарушающий старые правила, например, до тех пор, пока в блок не будет включена конфискационная транзакция. Это может произойти в любой момент. По данным сайта Blockchair.com, по состоянию на 11 ноября 2022 года существует 18 узлов BSV, 12 из которых находятся на краю блокчейна или рядом с ним. Все узлы на краю или рядом с ним используют клиент BSV 1.0.11, в котором действуют старые правила консенсуса. Похоже, в настоящее время ни один узел не использует клиент BSV 1.0.13. Поэтому хардфорк может произойти еще не скоро, так как нет узлов, которые могли бы перейти в новый, образовавшийся в результате хардфорка, блокчейн. Тем не менее, риск для безопасности остается, и разделение блокчейна может произойти в любой момент. Все, кто использует BSV, и все биржи с поддержкой BSV должны быть начеку.

Обозреватели блоков

По состоянию на 12 ноября 2022 года Blockchair.com больше не поддерживает BSV, что может быть связано со сложностями с запуском BSV-узлов. Трудно найти сторонний сайт-обозреватель блоков (Block Explorer) с поддержкой BSV. Coin.dance пока поддерживает BSV, но это не полноценный обозреватель. Возможно, популяризаторы монеты рассчитывают именно на то, что сторонние лица не будут запускать узлы BSV из-за трудностей синхронизации. Отсутствие узлов и обозревателей блоков может привести к путанице в выборе блокчейна, а также увеличить концентрацию влияния и контроля над блокчейном BSV.

ForkMonitor.info

Поддерживаемый BitMEX Research сайт мониторинга узлов ForkMonitor.info прекратил поддержку BSV несколько лет назад. Это произошло потому, что было трудно удерживать узел на краю блокчейна. Кроме того, казалось, что интерес к BSV идет на спад. Но теперь, в связи с возможным хардфорком с функцией конфискации монет, ForkMonitor намерен снова на время добавить поддержку BSV, чтобы отслеживать события, связанные с потенциальным обновлением хардфорка и новой системой конфискации монет.

ForkMonitor использует два клиента:

  • Bitcoin SV 1.0.11 (более старый клиент, который может не поддерживать конфискацию монет), и 
  • Bitcoin SV 1.0.13 (более новый клиент, который может поддерживать конфискацию монет).

В настоящее время оба узла синхронизируются.

Биржи

По данным CoinMarketCap, среди бирж с поддержкой BSV по объему торгов лидируют следующие: 

Источник: Coinmarketcap.com

Ходили слухи, что Bitfinex не любит и не поддерживает BSV, но оставляет токен на своей платформе, чтобы сделать рынок более устойчивым к манипуляциям (чтобы определенным организациям было сложнее искусственно завышать цену BSV). Еще одной серьезной площадкой для торговли BSV может быть биржа Robinhood, но она не включена в список CoinMarketCap выше. Robinhood описывает BSV следующим образом:

Токен Bitcoin SV (BSV) — SV означает «Satoshi’s Vision» (видение Сатоши) — был создан в 2018 году как ответвление («хардфорк») Bitcoin Cash (BCH), который сам является ответвлением биткоина (BTC). Как и биткоин, Bitcoin SV — это цифровая валюта, которая может использоваться для пиринговых транзакций.

Robinhood включила BSV в свое «семейство биткоинов», которое называет «валютами на основе биткоина». К таким монетам относятся ВТС, Bitcoin Cash и BSV.

Учитывая характер этого обновления с возможностью образования хардфорка, у бирж, поддерживающих BSV, могут возникнуть проблемы с сохранностью средств. После банкротства FTX и нового всплеска опасений по поводу платежеспособности бирж требования к системам подтверждения резервов растут. В этих условиях следует проявить осторожность и учесть потенциальные риски, прежде чем запускать клиент BSV 1.0.13 в синхронизированных производственных системах. Если хардфорк произойдет, средства клиентов могут оказаться под угрозой. Еще один риск для бирж заключается в краже токенов BSV и последующем использовании одной из торговых платформ, поддерживающих BSV, для продажи украденных монет.